Você está na página 1de 4

Exerccios

1) Faa um programa que converta uma medida


de temperatura dada em Celsius (C) para
Fahrenheit (F).

Estrutura Condicional

9
F = C + 32
5

Introduo Cincia da Computao I


Prof. Denis F. Wolf

2) Dado o raio de um crculo, calcular seu


permetro e sua rea.
0

Estruturas de Controle

Estruturas de Deciso

ESTRUTURA SEQUENCIAL
ESTRUTURAS CONDICIONAIS

Classificados em trs tipos:


Comando Condicional Simples
Comando Condicional Composto
Seleo entre duas ou mais seqncias de
comandos

Estrutura Condicional Simples


Estrutura Condicional Composta
Seleo entre duas ou mais Seqncias de Comandos

ESTRUTURA DE REPETIO
Repetio com Teste no Incio
Repetio com Teste no Final
Repetio Contada

Comando Condicional Simples

Comando Condicional Composto

Estrutura deciso que permite a escolha do


grupo de aes a ser executado quando
determinada condio satisfeita.
sim

Estrutura deciso que permite a escolha entre


dois grupos de aes a serem executado
dependendo de se uma condio ou no
satisfeita.

no
sim

no

O Comando IF

Exemplo - IF
#include <stdio.h>
int main () {
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
if (num > 10)
printf ("\n\n O numero e maior que 10");
if (num == 10) {
printf ("\n\n Voce acertou!\n");
printf ("O numero e igual a 10.");
}
if (num < 10)
printf ("\n\n O numero e menor que 10");
return 0;
}

if ( expresso lgica )
execute comando ou bloco de comandos ;
Ex:
if ( num == 0 )
printf("O numero digitado eh zero");

O comando IF-ELSE

O comando IF-ELSE

Podemos pensar no comando else como sendo


um complemento do comando if. O comando if
completo tem a seguinte forma geral:

A expresso da condio ser avaliada:


Se ela for diferente de zero, a
seqncia_comandos_1 ser executada.
Se for zero a seqncia_comandos_2 ser
executada.

if (condio) {
seqncia_de_comandos_1;
}
else {
seqncia_de_comandos_2;
}

importante nunca esquecer que, quando


usamos a estrutura if-else, estamos
garantindo que uma das duas declaraes
ser executada.
8

Aninhamento de IF

Exemplo IF ELSE
#include <stdio.h>
int main ( ) {
int num;
printf ("Digite um numero: ");
scanf ("%d", &num);
if (num == 10) {
printf ("\n\n Voce acertou!\n");
printf ("O numero e igual a 10.\n");
}
else {
printf ("\n\n Voce errou!\n");
printf ("O numero e diferente de 10.\n");
}
return 0;
}

possvel aninhar
construes do tipo ifelse em diversos nveis:
O if aninhado
simplesmente um if dentro
da declarao de um outro
if mais externo.
O nico cuidado que
devemos ter o de saber
exatamente a qual if um
determinado else est
ligado.
10

if (cond1)
if (cond2)
comandos if2;
else
comandos else2;
else
if (cond3)
if (cond4)
comandos if4;
else
comandos else4;
else
comandos else3;
11

Aninhamento de IF

Aninhamento de IFs

#include <stdio.h>

Observe sempre a
correspondncia entre
ifs e elses

int main () {
int num;
printf ("Digite um numero: ");
scanf ("%d", &num);
if (num == 10) {
printf ("\n\n Voce acertou!\n");
printf ("O numero e igual a 10.\n");
}
else {
if (num > 10)
printf ("O numero e maior que 10.");
else
printf ("O numero e menor que 10.");
}

Note que neste caso, a


definio de um bloco
de comandos garante a
correta interpretao
do aninhamento dos
comandos

return 0;
}

if (cond1)
if (cond2)
comandos if2;
else
comandos else1;
if (cond1) {
if (cond2)
comandos if2;
}
else
comandos else1;

12

Encadeamento IF-ELSE-IF

13

Encadeamento IF-ELSE-IF
A estrutura if-else-if apenas uma extenso da estrutura ifelse. Sua forma geral :

if (teste_1) <comando_1>;
else if (teste _2) <comando _2>;
else if (teste _3) <comando _3>;
...
else <comando _n>;

if (condio_1) {
seqncia_de_comandos_1;
}
else if (condio_2) {
seqncia_de_comandos_2;
}
...
else if (condio_n) {
seqncia_de_comandos_n;
}
else {
seqncia_de_comandos_default;
}

No encadeamento apenas um dos n comandos ser


executado: o primeiro cujo teste for verdadeiro

14

Exemplo ELSE-IF

15

Encadeamento IF-ELSE-IF
Exemplo: escrever o nome de um dgito
0zero, 1um, etc.

#include <stdio.h>
int main () {
int num;

...
if (ch == 0) printf(Zero);
else if (ch==1) printf(Um);
else if (ch==2) printf(Dois);
else if ...
else if (ch==9) printf(Nove);
else printf(Nao era um digito!);
...

printf ("Digite um numero: ");


scanf ("%d",&num);
if (num > 10)
printf ("\n\n O numero e maior que 10");
else if (num == 10) {
printf ("\n\n Voce acertou!\n");
printf ("O numero e igual a 10.");
}
else if (num < 10)
printf ("\n\n O numero e menor que 10");
return 0;
}
16

17

Exerccios
2) Escrever um programa que leia 3 valores A, B
e C, e os escreva em ordem crescente.
3) Faa um programa que leia uma data
qualquer (dia, ms e ano) e calcule a data do
prximo dia. Lembre-se que em anos
bissextos o ms de fevereiro tem 29 dias.
(Dica: um ano bissexto quando for divisvel
por 4)
18