Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Algoritmo e Estrutura de Dados I
Aula 8 – Linguagem C - Comandos for, while e do-while Márcia Marra
2
Comando for o loop for é usado para repetir um comando, ou bloco de comandos, diversas vezes, de maneira que se possa ter um bom controle sobre o loop. Sua forma geral é: for(inicialização;condição;incremento) declaração;
3
Funcionamento do for O loop for é equivalente a fazer: inicialização;
if (condição) { declaração; incremento; "Volte para o comando if" }
4
Primeiro exemplo de utilização do comando for
#include <stdio.h> int main () { int count; for (count=1; count<=100; count++) printf ("%d ",count); printf(“\n”); return(0); }
5
Execução do primeiro exemplo
6
Segundo exemplo #include <stdio.h> int main () { int i, cont;
int tamanhoString = 100; /* String de ate 99 caracteres */ char string[tamanhoString]; printf("\n\nDigite uma frase: "); /* Le a string */ fgets(string, tamanhoString, stdin); printf("\n\nFrase digitada:\n%s", string); cont = 0; for (i=0; string[i] != '\0'; i=i+1) if ( string[i] == 'c' ) cont = cont +1; } printf("\nNumero de caracteres c = %d\n", cont); return(0);
7
Execução do segundo exemplo
8
Terceiro exemplo #include <stdio.h> int main() { char letra;
for(letra = 'A' ; letra <= 'Z'; letra =letra+1) printf("%c ", letra); printf("\n"); return(0); }
9
Execução do terceiro exemplo
10
Flexibilidade do comando for
Temos acesso a inicialização, a condição e ao incremento: Aceitam qualquer expressão desde que ela seja válida Alguns exemplos: for ( count = 1; count < 100 ; count++) { ... } for (count = 1; count < NUMERO_DE_ELEMENTOS ; count++) { ... } for (count = 1; count < BusqueNumeroDeElementos() ; count+=2) { ... }
11
Loop infinito Em um loop infinito não existe condição de parada:
os comandos são executados para sempre, até que ele seja interrompido com o comando break; Forma geral: for(inicialização; ;incremento) declaração;
12
Exemplo de loop infinito – dia aniversário
#include <stdio.h> int main(){ int count; int valorLido; int diaAniversario = 01; printf("Tente acertar a dia do meu aniversario!! \n\nEm que dia voce acha que eu comemoro o meu aniversario?\n"); for(count=0;;count++){ scanf("%d", &valorLido); // Testa se o dia eh valido if ((valorLido < 1) || (valorLido > 31)) printf("\nEste nao eh um dia valido. Tente novamente:"); else { if (valorLido != diaAniversario) { printf("\nVoce errou o dia! Tente novamente:\n"); } printf("\nParabens!! Voce acertou o dia!!\n\n"); break; return 0;
13
Execução do programa com loop infinito
14
Comando while Forma geral: while (condição) declaração;
O comando while é equivalente a fazer: if (condição) { declaração; "Volte para o comando if" }
15
Exemplo utilizando o while
#include <stdio.h> int main () { int i = 0; while ( i < 100) printf(" %d", i); i++; } return(0);
16
Segundo comando utilizando while
#include <stdio.h> int main(){ int count; int valorLido; int diaAniversario = 01; printf("Tente acertar a dia do meu aniversario!!\n\nEm que dia voce acha que eu comemoro o meu aniversario?\n"); scanf("%d", &valorLido); while (valorLido != diaAniversario) { // Testa se o dia eh valido if ((valorLido < 1) || (valorLido > 31)) { printf("\nEste nao eh um dia valido. Tente novamente:"); } else { printf("\nVoce errou o dia! Tente novamente:\n"); printf("\n\nParabens!! Voce acertou o dia!!\n\n"); return 0;
17
Comando while-do Forma geral:
{ declaração; } while (condição); O comando executa a declaração até que a condição seja verdadeira.
18
Exemplo utilizando o do-while – menu de frutas
#include <stdio.h> int main () { int i; do printf ("\n\nEscolha a fruta pelo numero:\n\n"); printf ("\t(1)...Mamao\n"); printf ("\t(2)...Abacaxi\n"); printf ("\t(3)...Laranja\n\n"); scanf("%d", &i); } while ((i<1)||(i>3)); switch (i) case 1: printf ("\t\tVoce escolheu Mamao.\n"); break; case 2: printf ("\t\tVoce escolheu Abacaxi.\n"); case 3: printf ("\t\tVoce escolheu Laranja.\n"); } return(0);
19
Execução do programa com while-do
20
Pratique a estrutura de repetição
Reescreva o problema de contagem dos bois utilizando as estruturas de repetição vistas em sala de aula.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.