Escolar Documentos
Profissional Documentos
Cultura Documentos
br
Frase do Dia: O
segredo para fazer os sonhos se tornarem realidade pode ser
resumido em quatro C’s: Curiosidade, Confiança, Coragem e Constância, e o
maior de todos esses é a Confiança. (Walt Disney )
Resultados lógicos em C
0 – para Falso
1 – para verdadeiro
If (1) {
printf(“1 é sempre verdade”);
}
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
(Condição) → pode ser uma expressão lógica (ou um valor lógico) que após ser avaliado gera
um resultado lógico (Falso =0 ou Verdadeiro=1)
Na Seleção simples se a condição for verdadeira, executa-se os comandos da cláusula “então”
- . Já se a condição for falsa apenas encerra-se a seleção (fimse) e nenhum comando é
executado.
Exemplo 1:
Construa um programa que receba a idade de um jovem e mostre se ele pode ir ou não se
alistar e servir no serviço militar. Considera-se apto ao serviço militar, jovens com idade igual ou
superior a 18 anos.
Implementação em C: Bloco verdade com apenas mais de uma linha de comando, obrigatório
o uso de chaves para delimitar o início e fim do bloco.
Exemplo 2:
Construa um algoritmo que receba dois números e avalie se o primeiro número é maior do que
o segundo.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
Para Praticar
R= num % 5 == 0
55 % 5 == 0
0 == 0
1 → verdadeiro
Se (condicao ) else
{ comandos_bloco_falsidade;
comandos_bloco_verdade
} OU
senao
{ If ( condição ) {
comandos_bloco_falsidade comandos_bloco_verdade;
} } else{
comandos_bloco_falsidade;
comando_n;
}
Exemplo 1:
Construa um programa que receba um número e informe se ele é PARA ou IMPAR.
Implementação no Portugol Studio:
Implementação em C:
Exemplo 2:
Construa um programa que receba a idade de uma pessoa e informe se ele é maior de idade
ou menor de idade.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
Implementação em C
6.4.1. Se-Então-Se
Linguagem Portugol
Se (condicao 1 ) então
Se (condicao 2 ) então
Se (condicao 3) então
Se (condicao 4) então
comando_W;
fimse
fimse
fimse
fimse
Nesse tipo de construção existe um padrão: não existe senão, e após cada então existe um outro se.
Como o comando W só é executado se todas as condições forem verdadeiras, essa estrutura pode ser
simplificada agrupando as condições utilizando o operador lógico E.
Linguagem Portugol
Se ((condicao 1 ) E (condicao 2 ) E (condicao 3) E (condicao 4) ) então
comando_W;
fimse
Teste de Mesa
SE( 1 e 1 e 1 e 0) então = FALSO → E é um operador de multiplicação V e F = F
SE( 1 e 1 e 1 e 1) então = VERDADEIRO
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
V V F F Não executa W
V F F F Não executa W
… … Não executa W
Exemplo:
Construa um algoritmo que informe se uma pessoa pode votar (W) no Brasil. As condições para
que uma pessoa possa votar é que seja brasileiro, maior de 16 anos, que tenha um título de
eleitor.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
Ocorre em problemas onde uma variável pode assumir vários valores diferentes e para cada
valor um comando diferente é executado.
Considere que a variável “X” possa receber os valores V1, V2, V3, V4 e para cada valor,
respectivamente, serão executados os comandos C1, C2, C3 e C4. Na tabela a seguir, é
apresentada uma solução que não utiliza seleção encadeada, portanto, todas as condições
deverão ser avaliadas.
x = V1 x = V2 x = V3 x = V4 Ação executada
V F F F C1
F V F F C2
F F V F C3
F F F V C4
Se (x = V2) entao
C2
senão
Se (x = V3) entao
C3
senão
Se (x = V4) entao
C4
fimse
fimse
fimse
fimse
x = V1 x = V2 x = V3 x = V4 Ação executada
V - - - C1
F V - - C2
F F V - C3
F F F V C4
Na estrutura de seleção encadeada o número médio de execuções é reduzido, quase que pela
metade.
1. Exemplo 1: Construa um algoritmo que receba números inteiros de 1 a 5, que
representam a região de nascimento de uma pessoa. Caso o valor informado seja 1
mostre a mensagem “Nasceu na região norte”, 2 = “Nasceu na região nordeste”, 3 =
“Nasceu na região centro oeste”, 4 = “Nasceu na região sul”, 5 = “Nasceu na região
sudeste”.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
6 >= 5 e 6 <=7
V e V
V
9 >= 5 e 9 <=7
V e F
F
Portugol Na Linguagem C
Se (condicao 1 ) entao if (condicao 1 )
Se (condicao 2 ) entao {
comando_1 if (condicao 2 )
….. {
comando_n comando_1
fimse comando_n
senão }
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
1. Exemplo 1: Dados três valores A, B, C, verificar se eles podem ser os comprimentos dos lados de
um triângulo e, se forem, verificar se compõem um triângulo equilátero, isósceles ou escaleno. Informar se
não compuserem nenhum triângulo.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
EXERCÍCIOS:
1. Converta para a linguagem C e para o Portugol Studio, o algoritmo que lê a idade de
uma pessoa e informe a sua classe eleitoral:
Não eleitor (abaixo de 16 anos);
Eleitor obrigatório (entre a faixa de 18 e menor de 65 anos);
Eleitor facultativo (de 16 até 18 anos e maior de 65 anos, inclusive).
Algoritmo “Eleitor”
Inicio
inteiro: IDADE;
escreva(“Insira a idade da pessoa..: ”);
leia(IDADE);
se ( IDADE < 16 ) então
escreva("não eleitor");
senão
se (( IDADE < 18 ) ou (IDADE >= 65))entao
escreva("eleitor facultativo");
senao
escreva("eleitor obrigatório");
fimSe
fimSe
fim.
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br
2. Construa um algoritmo em ‘C’ que dada a idade de uma pessoa, determine sua
classificação segundo a seguinte tabela:
Maior de idade;
Menor de idade;
Pessoa idosa (idade superior ou igual a 65 anos).
Toda vez que tivermos uma estrutura de seleção encadeada homogênea do tipo se-senão-se,
podemos usar uma estrutura de seleção por múltipla escolha escolha-caso, que é mais
adequada para tais situações.
Observações:
1. Em Portugol Studio multipla escolha só pode ser utilizado para casos em que a variável do
escolha, seja do tipo INTEIRO.
2. Em C, usando a estrutura switch-case, só é possível para valores do tipo INTEIRO e
CHAR. Não é possível fazer comparações utilizando operadores lógicos e relacionais.
Solução em C –
PARA PRATICAR:
a. Criar um algoritmo em PORTUGOL que leia um número inteiro entre 1 e 12 e escrever o
mês correspondente. Caso o usuário digite um número fora desse intervalo, deverá aparecer uma
mensagem informando que não existe mês com este número.
b. Escreva um algoritmo que leia três valores inteiros e mostre-os em ordem crescente.
Utilize para tal uma seleção encadeada;
a. Tendo como dados de entrada a altura e o sexo de uma pessoa, construa um algoritmo
que calcule seu peso ideal, utilizando as seguintes fórmulas, utilizando as seguintes
fórmulas;
Para homens (72.7 * h) -58;
Para mulheres (62.1 * h) – 44.7;
Professor Me. Gunnar Ramos Fermino - e-mail: gunnar.ramos@unemat.br