C++ algoritmos

Disponível somente no TrabalhosFeitos
  • Páginas : 15 (3733 palavras )
  • Download(s) : 0
  • Publicado : 21 de outubro de 2012
Ler documento completo
Amostra do texto
51

Algoritmos / Linguagem C – Prof. Dr. Antônio Marcos SELMINI

Capítulo 5 Estruturas de Repetição
5.1 Introdução
Nos capítulos anteriores foi mostrado que no desenvolvimento de programas de computadores normalmente há a necessidade de se fazer testes lógicos para que o programa possa executar determinadas instruções, ou seja, através do teste lógico existe a seleção de instruções a seremexecutadas. Até este ponto do curso, os algoritmos desenvolvidos realizavam apenas um conjunto de instruções uma única vez e o algoritmo era finalizado. Suponha a seguinte situação: em uma sala com 50 alunos, deseja-se calcular a média semestral de cada aluno considerando que todos realizaram duas provas. Para resolver esse problema com os conceitos de programação apresentados até agora seria necessárioexecutar o mesmo programa 50 vezes. Isso não parece algo eficientes, mas resolveria o problema. Uma outra solução e a mais recomendada é a utilização de estruturas de repetição. Uma estrutura de repetição nada mais é do que uma instrução que indica ao computador para repetir um conjunto de comandos várias vezes. O número de repetições pode ser controlado pelo programador ou até mesmo pelooperador do sistema. A quantidade de vezes que um conjunto de instruções será executado depende de um teste lógico. As estruturas de repetição em programação também são conhecidas como laços de repetição. Basicamente serão estudadas três estruturas básicas de repetição. O número de estruturas de repetição e a sua sintaxe são específicos de cada linguagem de programação, mas o conceito central é o mesmo.O que difere uma estrutura de repetição da outra é a ordem de execução do teste lógico. Em algumas estruturas o teste é realizado no início e em outras no final.

5.2 Estrutura de Repetição while()
A estrutura de repetição while() é utilizada para repetir um conjunto de instruções várias vezes de acordo com um teste lógico que é realizado no início da instrução. A sintaxe para a estrutura while()é:
while(condição_lógica) { //Instrução_1; //Instrução_2; //. . . //instrução_n; }

onde a condição_lógica é uma expressão composta por operadores relacionais e lógicos. O conjunto de instruções dentro do bloco de repetição só será executado caso a condição_lógica resulte em um valor verdadeiro, caso contrário, não será executado. Ao atingir o final da instrução while(), o

52

Algoritmos /Linguagem C – Prof. Dr. Antônio Marcos SELMINI

computador automaticamente retorna para o início da instrução e testará novamente a condição e todo o processo se repetirá até que a condição resulte em um valor falso. Exemplo 1: programa em C para imprimir os valores de 1 até 10 no vídeo.
#include #include int main() { int cont; cont = 1; while( cont <= 10 ) { printf(“%d”, cont); cont= cont + 1; } getch(); return(0); }

Exemplo 2: programa em C para calcular a média dos números pares entre 1 e 100.
#include #include int main() { int cont, soma; cont = 1; soma = 0; while(cont <= 100) { if(cont % 2 == 0 ) soma = soma + cont; cont = cont + 1; } printf(“A soma dos números pares é %d”, soma); getch(); return(0); }

Exemplo 3: programa em C para calcular eimprimir a média dos 50 alunos de uma sala de aluno. Suponha que cada aluno fez duas provas durante o semestre.
#include #include int main() { int cont; float p1, p2, media; cont = 1; while(cont <= 50) { printf(“Digite a primeira nota: “); scanf(“%f”, &p1); printf(“Digite a segunda nota: “); scanf(“%f”, &p2); media = (p1+p2)/2; printf(“A media do aluno %d é %f”, cont, media);

53Algoritmos / Linguagem C – Prof. Dr. Antônio Marcos SELMINI

cont = cont + 1; } getch(); return(0); }

5.3 Estrutura de Repetição do-while()
Como já destacado na introdução deste capítulo, o que difere uma estrutura de repetição de outra é a ordem de realização do teste lógico. Na estrutura while(), o teste lógico é realizado logo no início da estrutura e dependendo do valor do teste, o...
tracking img