Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Linguagem e Técnicas de Programação Análise e Desenvolvimento de Sistemas Prof. MSc. Douglas Rodrigues E-mail: dogrodrigues@gmail.com Laços de Repetição Laços de Repetição Quando utilizar uma estrutura de repetição? Quando uma ação (ou conjunto de ações) deve ser executada um número determinado de vezes Existem 3 estruturas possíveis: 3 • Quando o número de repetições é conhecido • Quando o teste da condição deve ser feito antes de ser executado qualquer comando • Quando o teste da condição deve ser feito após a execução dos comandos Laços de Repetição Comando while Uso: quando é necessário testar uma condição antes de executar uma sequência de comandos Forma geral: while (condição) declaração; Modo de pensar e entender o comando while if (condição){ declaração; volte para o comando if; } 4 Laços de Repetição Comando while Nesse caso, o comando será executado enquanto a condição for verdadeira Como o teste é feito antes da execução, pode ocorrer zero repetições (quando a condição for falsa) Ou podem ocorrer infinitas repetições (quando a condição verdadeira não se alterar) 5 Laços de Repetição Exemplo 1: ler dez caracteres do teclado #include <stdio.h> void main(){ char c; int contador = 1; while (contador <= 10){ printf("\nDigite o caractere numero %d: ", contador); getche(c); contador++; } } 6 2 Laços de Repetição Exemplo 2: cálculo do fatorial de um número (teste se o número é negativo ou igual a zero) #include <stdio.h> void main(){ int cont = 1, n, fat; printf("Digite um numero: "); scanf("%d", &n); if (n < 0) printf("Erro!"); else if (n == 0) printf("Fatorial = 1"); 7 else{ fat = 1; while (cont <= n){ fat = cont * fat; cont++; } printf("Fatorial = %d", fat); } } Laços de Repetição Exemplo 3: testar se um número positivo digitado é par (sem utilizar o resto da divisão por 2) #include <stdio.h> void main(){ int n; printf("Digite um numero positivo: "); scanf("%d", &n); while (n > 0) n = n - 2; if (n == 0) printf("O numero eh par"); else printf("O numero eh impar"); } 8 Laços de Repetição Exemplo 4: testar se um número digitado é primo #include <stdio.h> void main(){ int n, divisor, primo; printf("Digite um numero (>1): "); scanf("%d", &n); primo = 1; //booleano V = 1 e F = 0 divisor = 2; 9 while (divisor < n && primo == 1){ if (n % divisor == 0) primo = 0; //falso else divisor++; } if (primo == 1) // verdadeiro printf("Primo"); else printf("Nao eh primo"); } Laços de Repetição Exemplo 5: testar se um número digitado é perfeito (clique aqui para entender o que é um número perfeito) #include <stdio.h> void main(){ int soma, n, divisor; printf("Digite um numero (>1): "); scanf("%d", &n); soma = 1; divisor = 2; 10 while (divisor < n){ if (n % divisor == 0) soma = soma + divisor; divisor++; } if (soma == n) printf("O numero eh perfeito"); else printf("O numero nao eh perfeito"); } Exercícios 11 Exercícios Faça programas em linguagem C para: 1) Ler um caractere N vezes (N é informado pelo usuário). 2) Calcular o perímetro de um polígono qualquer (o usuário informa o número de lados). 3) Calcular o resultado do somatório 4) Escrever a soma dos números inteiros entre 0 e 100 (usando o comando while). 12 𝑎=1 7 3𝑎2 + 𝑎 − 2
Compartilhar