Algoritmos Aula 6 Estrutura de Repetição Prof. Luiz [email protected] Estrutura de Repetição Utilizamos os comandos de repetição quando desejamos que um determinado conjunto de instruções ou comandos sejam executados um número definido ou indefinido de vezes, ou enquanto um determinado estado de coisas prevalecer ou até que seja alcançado. [email protected] for () { } Para número definido de repetições. Essa estrutura de repetição é utilizada quando se sabe o numero de vezes que um trecho do algoritmo deve ser repetido. O incremento, ou seja, o contador é adicionado automático. for () { } Em C: void main() { int i, soma; for (i=1; i<= 100; i++) { printf(“%d”,i); soma = soma + i; } printf(“%i”,soma); } for () { } INICIO num = 1 num<=10? não soma FIM sim num num = num + 1 soma =soma+ num while(<condição>){} Para número indefinido de repetições e teste no inicio. É utilizada quando não se sabe o número de vezes que um trecho do algoritmo vai ser repetido, embora também possa ser utilizada quando se conhece esse número. Essa estrutura baseia-se na análise de uma condição. A repetição será feita enquanto a condição for verdadeira. [email protected] while(<condição>){} Síntaxe em C: while (<condição>) { <Comandos> } [email protected] while(<condição>){} Em C: void main() { int x, y; x = 0; y = 10; while (x < y) { x = x + 2; } } [email protected] while(<condição>){} INICIO x=1 y = 10 sim x < y? x=x+2 não FIM [email protected] do {} while(); Para número indefinido de repetições e teste no final. A diferença entre a estrutura enquanto e a estrutura repita é que nesta ultima os comandos serão repetidos pelo menos uma vez, já que a condição de parada se encontra no final. do {} while(); Em C: void main() { int x,y; x = 1; y = 5; do { x = x + 2; y = y + 1; } while ( x <= y) ; } do {} while(); INICIO x=1 y=5 não x=x+2 x >= y? y=y+1 sim FIM Exercícios Elaborar um programa para ler 20 notas, calcular e mostrar a média das notas. Exercícios Faça um programa que leia um valor m. Calcular a soma de todos os números entre 1 até o valor m. Faça um programa para somar os números pares entre 5 e 500 (inclusive). [email protected] Exercícios Faça um programa que leia 10 notas, calcule e mostre a média e o conceito conforme a tabela abaixo: Média Conceito >=80 e <=100 A >=70 e < 80 B >= 60 e < 70 C >= 50 e < 60 D >= 0 e < 50 E [email protected] Exercícios Faça um algoritmo que leia um número e calcule e mostre a tabuada desse número. Exercícios Faça um programa que leia a idade, altura e o peso de 25 pessoas, calcule e mostre quantas pessoas tem idade superior a 50 anos e porcentagem de pessoas com peso inferior a 40 quilos. Exercícios Faça um programa que leia 10 notas, calcule e mostre a média e o conceito conforme a tabela abaixo: Média Conceito >=80 e <=100 A >=70 e < 80 B >= 60 e < 70 C >= 50 e < 60 D >= 0 e < 50 E Exercícios Faça um programa que leia 10 valores reais e imprima o quadrado de cada um deles. Ao fim, imprima também o somatório dos 10. Faça um programa que calcule a média de 10 números inteiros dados como entrada e imprima o resultado. Faça um programa que imprima todos os números pares no intervalo de 1 a 100. Exercícios Faça um programa que fique em um laço solicitando a digitação de números inteiros e só pare de solicitar a digitação de novos números quando o usuário informar o número 0. Quando o número 0 for informado, o programa deve exibir a quantidade de números digitados, a quantidade de números pares, a quantidade de números ímpares e a média dos valores dos números digitados. Exercícios Construa um programa capaz de ler uma série de números até que apareça um número entre 1 e 5. Ao final, exiba a quantidade de números digitados, o valor da soma dos números digitados e a média dos valores dos números digitados. Referência Bibliográfica FOBERLLONE, André Luiz Villar; EBERSPÄCHER, Henri Frederico. Lógica de programação a construção de algoritmos e estrutura de dados. 3. ed. Makron, 2000. ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene Aparecida Veneruchi de. Fundamentos da programação de computadores. 2. ed. Pearson Prentice Hall, 2007. MORAES, Paulo Sérgio de. Curso Básico de Lógica de Programação. Unicamp, 2000.