Vous êtes sur la page 1sur 22

Algoritmos e Programao

Prof. Eduardo Magalhes


Linguagem C

Estruturas de controle

Aula 04
Estruturas de Controle

Normalmente, instrues em um programa so


executadas uma aps a outra, na ordem em que
so escritas.
Isso chamado de execuo sequencial.
Estruturas de Controle

s vezes, precisamos quebrar essa sequncia,


seja por querer executar o mesmo comando (ou
bloco de comandos) mais de uma vez ou por
querer executar determinado conjunto de
comandos somente se uma condio especfica
for verdadeira.
Estruturas de Controle
Em vista disso, existem as estruturas de
controle, que podem ser os comandos de
seleo ou de repetio (loops).
Eles servem para alterarmos o fluxo normal de
execuo de nossos algoritmos e, assim,
conseguirmos o objetivo.
Estruturas de Controle

Veremos ento dois tipos de comandos de:


Seleo
Repetio
Estruturas de Controle
Comandos de Seleo

Certo momento precisamos realizar algum tipo de


teste e, a partir desse resultado, executar um bloco
de comandos ou no. Com este fim, temos os
comandos de seleo, que podem ser divididos em
comandos de seleo simples ou seleo
encadeada ou ainda seleo mltipla.
Estruturas de Controle
Comandos de Seleo

Os comandos de seleo que C possui so:


1. if (seleo simples)
2. if-else e if-else-if (seleo encadeada)
3. switch (seleo mltipla)
Estruturas de Controle
Comando de seleo if

Usamos o comando if quando queremos testar


uma condio e executar uma parte do cdigo
somente se ela for verdadeira. Este comando
possui a seguinte sintaxe:

if (condio) comandos;
Exemplo 1:
#include<stdio.h>
int main(){
int idade;
printf(Digite sua idade:);
scanf(%i, &idade);
if (idade>=18)
printf(Voce e maior de idade. Possui %i anos , idade);

return 0;
}
Estruturas de Controle
1 Exemplo comando simples

Usamos um dos operadores relacionais. O resultado da


avaliao dessa expresso s pode ser verdadeiro ou
falso, que so os valores que o comando if ir avaliar.
Estruturas de Controle
1 Exemplo comando simples

Se o resultado da expresso for verdadeiro ele entra nos


comandos do if e executa o printf da linha 7.
Se o resultado da comparao idade >= 18 for falsa,
ento ele pular para o prximo comando.
Exemplo 2: #include <stdio.h>
int main (){
int num;
printf ("Digite um numero: ");
scanf ("%d",&num);
if (num>10)
printf ("\n\nO numero e maior que 10");
if (num==10) {
printf ("\n\nVoce acertou!\n");
printf ("O numero e igual a 10."); }
if (num<10)
printf ("\n\nO numero e menor que 10");
return (0); }
Estruturas de Controle
2 Exemplo comando simples

Nesse caso, temos duas linhas de cdigo a serem


executadas se a condio idade > 18 for satisfeita. Com
isso necessrio que coloquemos os delimitadores {
(abre-chaves) e } (fecha-chaves), pois assim o programa
ir reconhecer que os dois comandos esto englobados
pela estrutura de seleo if.
Estruturas de Controle
3 Exemplo comando simples

J no terceiro exemplo o programa pedir ao usurio


para entrar com a mdia de um aluno qualquer e,
dependendo do valor da mdia ir mostrar a mensagem
Aprovado, se a mdia for maior ou igual a 7, Prova
final, se a mdia for maior ou igual a 4 e menor que 7 e
Reprovado, se a mdia for menor que 4.
Exemplo 3:
#include <stdio.h>
int main (){
float media;
printf ("Digite a media do aluno: ");
scanf ("%f", &media);
if (media>=7) {
printf (Aprovado"); }
if (media<7 && media>=4 ) {
printf (Prova final); }
if (media<4) {
printf (Reprovado); }
return (0); }
Estruturas de Controle
3 Exemplo comando simples

tnhamos trs casos diferentes de mdia para testar, fizemos


trs if, uma para cada caso. Percebam que na linha 13 usamos
o operador booleano E (&&) para unir duas condies (media
< 7 && media >= 4). A construo 4 <= media < 7, apesar de
correta matematicamente, no est correta em nossa
linguagem de programao.
Exerccios propostos

1. Faa um programa que leia trs valores do teclado e


verifique se o primeiro maior que a soma dos outros
dois.
2. Faa um programa que leia um nmero e informe se
ele igual ao seu dia de nascimento. Imprimir
NMERO CORRETO se for igual e imprimir
NMERO INCORRETO, caso contrrio.
Exerccios propostos

3. Faa um programa que receba as 3 notas de um aluno


e calcule a mdia final, mostrando ainda o resultado,
seguindo a seguinte regra: se a mdia for maior ou igual
a 7, APROVADO; se a mdia for maior ou igual a 4 e
menor que 7, PROVA FINAL; se a mdia for menor que
4, REPROVADO.
Exerccios propostos

4. Faa um programa que leia a velocidade mxima permitida


em uma avenida e a velocidade que um motorista estava
dirigindo nela e calcule a multa que ele ter que pagar,
sabendo que so pagos: R$50 se o motorista ultrapassar at
10km/h a velocidade permitida (ex: se a velocidade mxima
permitida for 50km/h e ele estiver a 53 ou 60km/h); R$100 se
o motorista ultrapassar de 11 a 30hm/h a velocidade
permitida; e R$ 200 se ele estiver acima de 30km/h da
velocidade permitida.
Exerccios propostos

5. Faa um programa que leia dois valores reais (float) do


teclado e calcule a diviso entre eles. Se o segundo for zero
imprima (DIVISO POR ZERO) .
6. Faa um programa que receba trs nmeros e imprima o
menor deles.
7. Faa um programa que receba dois nmeros e os imprima
em ordem crescente.
8. Faa um programa que leia um nmero e verifique se ele
par ou mpar.
Exerccios propostos

9. Faa um programa que leia quatro nmeros e imprima


a soma dos que forem par.

10. Faa um programa que receba um ano e verifique se


ele bissexto. Um ano bissexto se for divisvel por
quatrocentos ou se ele for divisvel por quatro mas no
por cem.

Vous aimerez peut-être aussi