Você está na página 1de 46

Aula 03 - Estrutura de Seleção

Algoritmos e Programação

07/05/2018
Profa. Tainá Medeiros
taina.medeiros@unp.br

07/05/2018 1
Vamos lembrar...
#include<stdio.h> BIBLIOTECAS

main() {
char nome [10]; int idade; DECLARAÇÃO DE VARIÁVEIS
float peso;
printf("Informe seu nome: ");
scanf("%s", &nome);
printf("Informe sua idade: ");
scanf("%d", &idade); PARTE LÓGICA DO SISTEMA
printf("Informe seu peso: ");
scanf("%f", &peso);
printf("%s possui %d anos e %f kg", nome, idade, peso);
}

07/05/2018 2
Bibliotecas
• stdio.h
– printf() Função usada para imprimir dados na tela
– scanf() Função usada para capturar dados do
usuário
– system() Função usada para executar comandos no
sistema operacional
• Stdlib.h
– Contém protótipos de funções variadas para:
conversão de números em texto e texto em números,
alocação de memória, números aleatórios; e outras
funções com várias finalidades.

07/05/2018 3
Operadores aritméticos de atribuição
• Combinam operações aritméticas com a
operação de atribuição, oferecendo uma
maneira curta e clara de escrita de certas
expressões de atribuição.

07/05/2018 4
Operadores aritméticos de atribuição

• Exemplos:
c += 6; equivale a c = c + 6;
d–=8 equivale a d = d – 8;
x *= 10; equivale a x = x * 10;
P /= 4 equivale a p = p / 4;
m %= 5 equivale a m = m % 5;

h *= y + 1 equivale a h = h * (y + 1);

07/05/2018 5
Comando de Seleção
• Os comandos de um programa seguem uma
sequência linear de execução, ou seja, cada
instrução (linha do programa) é executada
uma após a outra.
• Quando queremos ter sequências de execução
diferentes de acordo com os dados de
entrada, fazemos uso dos comandos de
escolha.
– if e switch.

07/05/2018 6
Comando de Seleção: IF

07/05/2018 7
Comando de Seleção: IF
• O comando if é o mais básico de todos os
comandos de seleção.
– Ele determina que o programa deve executar um
certo comando ou seção de código apenas se um
determinada condição for verdadeira.
• A forma geral do comando if é:
○ if (condição) comando;

07/05/2018 8
Comando de Seleção: IF

07/05/2018 9
Comandos de Seleção

Operador Comparação
== Igual
!= Diferente
< Menor
<= Menor ou Igual
> Maior
>= Maior ou Igual

07/05/2018 10
Comandos de Seleção

• Exemplo: Comparação se dois número são


IGUAIS #include <stdio.h>
main() {
int x, y;
printf("Informe o valor de x: ");
scanf("%d", &x);
printf("Informe o valor de y: ");
scanf("%d", &y);
if(x == y) {
printf("Os valores de x e y são iguais.");
}
}

07/05/2018 11
Comandos de Seleção

• Exemplo: Comparação se dois número são


DIFERENTES #include <stdio.h>
main() {
int x, y;
printf("Informe o valor de x: ");
scanf("%d", &x);
printf("Informe o valor de y: ");
scanf("%d", &y);
if(x != y) {
printf("Os valores de x e y são diferentes.");
}
}

07/05/2018 12
Comandos de Seleção

#include <stdio.h>

main() {
int idade = 20;
if(idade >= 18) {
printf("O aluno atingiu a maioridade");
} else {
printf("O aluno não atingiu a maioridade");
}
}

07/05/2018 13
Prática[1]
• Desenvolva um sistema que receba um
número informado pelo usuário e verifique se
este é um número positivo.

07/05/2018 14
Prática[1]

07/05/2018 15
Prática[2]
A prefeitura de Natal está tendo problemas com a
velocidade dos carros na principal avenida da cidade.
Desenvolva um sistema para um radar de transito, o qual
aplicará multas aos motoristas caso os mesmos
ultrapassem a velocidade máxima de 40 km/h.
• Como entrada, este sistema deve pedir a velocidade do
veiculo.
– Se este veiculo estiver acima da velocidade máxima
permitida, o sistema deve pedir a placa do mesmo para
aplicar a multa.
– Se o veiculo passar na velocidade permitida, o sistema
apresentará uma mensagem com a velocidade que ele
passou.

07/05/2018 16
Prática[2]

07/05/2018 17
Comandos de Seleção
#include <stdio.h>

main() {
int idade;
idade = 20;
if(idade >= 18) { #include <stdio.h>
printf("O aluno atingiu a
maioridade"); main() {
} int idade = 20;
} if(idade >= 18) {
printf("O aluno atingiu a
maioridade");
} else {
printf("O aluno não atingiu a
maioridade");
}
}
07/05/2018 18
Prática[3]
Desenvolva um sistema que receba dois
números, estes informados pelo usuário, e
verifique qual dos números é maior.
Ao fim da verificação, o maior numero deve ser
exibido na tela.

07/05/2018 19
Prática[3]

07/05/2018 20
Prática[4]
Desenvolva um sistema para informar ao
usuário qual é a melhor opção de
abastecimento: etanol ou gasolina.
O critério de decisão será:
• Caso o valor do preço do etanol seja maior
que 70% do preço da gasolina, a melhor opção
para abastecimento será a gasolina.
• Caso contrário, a melhor opção de
combustível será o álcool.

07/05/2018 21
Prática[4]

07/05/2018 22
Operadores Lógicos

• Os operadores lógicos são utilizados quando é


necessário, verificar-se mais que uma
condição em uma estrutura de seleção
(decisão).
• A partir do conjunto dos resultados das
seleções e do operador lógico utilizado pode
ser obtido um novo resultado.

07/05/2018 23
Operadores Lógicos
• Para verificar duas ou mais condições
– Os operadores lógicos devolvem valores
verdadeiro ou falso.
• Os operadores lógicos são:
– “E” lógico &&
– “OU” lógico ||
– "Não" negação !

07/05/2018 24
Operadores Lógicos

07/05/2018 25
Operadores Lógicos

• Operador: E
• Exemplo:
X=4
Y=3

X=YeY<3
X=YeX<5
X>YeX<1
X = 4eX >1

07/05/2018 26
Operadores Lógicos

• Operador: E
• Exemplo:
X=4
Y=3

X=YeY<3 FALSO + FALSO = FALSO


X=YeX<5 FALSO + VERDADEIRO = FALSO
X>YeX<1 VERDADEIRO + FALSO = FALSO
X = 4eX >1 VERDADEIRO + VERDADEIRO = VERDADEIRO

07/05/2018 27
Operadores Lógicos

• Operador: OU
• Exemplo:
X=4
Y=3

X = Y ou Y < 3
X = Y ou X < 5
X > Y ou X < 1
X = 4 ou X > 1

07/05/2018 28
Operadores Lógicos

• Operador: OU
• Exemplo:
X=4
Y=3

X = Y ou Y < 3 FALSO + FALSO = FALSO


X = Y ou X < 5 FALSO + VERDADEIRO = VERDADEIRO
X > Y ou X < 1 VERDADEIRO + FALSO = VERDADEIRO
X = 4 ou X > 1 VERDADEIRO + VERDADEIRO = VERDADEIRO

07/05/2018 29
Prática[5]

Um teatro oferece desconto aos seus clientes


pela idade. O desconto é aplicado quando se
tem abaixo de 18 anos ou acima ou igual a 60.
Desenvolva para um sistema para este teatro
que mediante a entrada da idade dos clientes
exiba se o desconto será aplicado.

07/05/2018 30
Prática[5]

07/05/2018 31
Prática[6]
Um cinema está oferecendo uma promoção aos
seus clientes mirins. Caso três amigos que forem
juntos a sessão de cinema tiverem todos menos
de 16 anos, todos pagam meia entrada (R$ 7,00),
caso contrário todos pagam entrada inteira (R$
14,00). Desenvolva para o cinema um sistema
que mediante a entrada da idade dos clientes
exiba se o desconto será aplicado.

07/05/2018 32
Prática[6]

07/05/2018 33
Comando switch
• O comando switch permite selecionar
uma entre várias ações alternativas.
• Embora instruções if-else possam executar
testes para escolha de uma entre várias
alternativas, muitas vezes são deselegantes.
• O comando switch possui um formato limpo e
claro.

07/05/2018 34
Comando switch
switch(variável) {
case valor1:
bloco de comandos;
break;
case valor2:
bloco de comandos;
break;
case valor3:
bloco de comandos;
break;
default:
bloco de comandos;
break;
}

07/05/2018 35
Comando switch
#include <stdio.h>
#include <conio.h>
• Exemplo: main() {
int numero;
printf("Informe um numero de 1 a 3: ");
scanf("%d", &numero);
switch(numero) {
case 1:
printf("Numero 1 escolhido.");
break;
case 2:
printf("Numero 2 escolhido.");
break;
case 3:
printf("Numero 3 escolhido.");
break;
default:
printf("Valor invalido.");
break;
}
getch();
}

07/05/2018 36
Comando break
numero = 2; numero = 2;
switch(numero) { switch(numero) {
case 1: case 1:
printf("Número 1 escolhido."); printf("Número 1 escolhido.");
break;
case 2: case 2:
printf("Número 2 escolhido."); printf("Número 2 escolhido.");
break;
case 3: case 3:
printf("Número 3 escolhido."); printf("Número 3 escolhido.");
break;
default: default:
printf("Valor inválido."); printf("Valor inválido.");
break;
} }

SAÍDA Número 2 escolhido.


Número 2 escolhido. Número 3 escolhido.
Valor inválido.
07/05/2018 37
Prática[7]
• Desenvolva um sistema que receba dois
números decimais e possibilite ao usuário
escolher entre: somar, subtrair, multiplicar e
dividir.
• Utilize o comando switch para a resolução.

07/05/2018 38
Prática[7]

07/05/2018 39
Prática[8]
• Desenvolva um sistema que receba o peso do usuário no planeta
terra e exiba qual seria seu peso no planeta que o usuário escolher.
A relação de planetas e gravidades relativas é dada a seguir:
Planeta Gravidade Relativa
Mercúrio 0,37
Vênus 0,88
Marte 0,38
Júpiter 2,64
Saturno 1,15
Urano 1,17
Netuno 1,19

• Para calcular o peso no planeta, utilize a seguinte fórmula:


• Peso no planeta = Peso na Terra * Gravidade do Planeta

07/05/2018 40
Prática[8]

07/05/2018 41
Função getche() e getch()

• A função getche() retorna o caractere lido do


teclado.
• A função getch() é similar a getche(), exceto
pelo fato de o caractere digitado não ser
impresso no vídeo. A função getch() não ecoa
no vídeo

• Ambas necessitam da biblioteca conio.h

07/05/2018 42
Função getche() e getch()
#include <stdio.h>
#include <conio.h>

main() {

printf("Pressione qualquer tecla...\n");


getche();
}

07/05/2018 43
Função getche() e getch()
#include <stdio.h>
#include <conio.h>

main() {

printf("Pressione qualquer tecla...\n");


getch();
}

07/05/2018 44
07/05/2018 45
Obrigada!

07/05/2018 46

Você também pode gostar