Informática e Computação
Aula 10
Estrutura de Repetição
Réplica do Calculador Diferencial criado por
Charles Babbage –Wikipédia
Informática e Computação
Estrutura de Repetição
Aprender:
•Como vincular a repetição de
blocos à condições
•Quando utilizar cada uma das
estruturas disponíveis
Informática e Computação
Estrutura de Repetição
Conteúdo:
• Comando while
• Comando do...while
• Op. de incremento; formas simplificadas
• Comando for
Informática e Computação
while
Estrutura de Repetição
• Executa sentenças (comandos) enquanto a
condição for verdadeira.
• Condição (expressão ou teste) é verificada antes do
bloco de comandos.
Sintaxe:
início
início;
while (expressão) {
comando 1;
comando 2;
...
}
fim;
expressão
1v
Comandos
fim
0 falso
Informática e Computação
Estrutura de Repetição
Exemplo1
while
MOSTRAR NA TELA OS NUMEROS DE 1 ATÉ 10
cab. etc..
inicio
int numero = 1;
while (numero <= 10)
{
cout << numero;
numero = numero + 1;
}
fim
início;
while (expressão) {
comando 1;
comando 2;
...
}
fim;
Resultado na tela:
EXECUÇÃO
1
numero
Sintaxe:
2
1
3
2
4
5
11
6
7
8
9
10
Informática e Computação
Estrutura de Repetição
Exemplo1
while
MOSTRAR NA TELA OS NUMEROS DE 1 ATÉ 10
#include <iostream>
using namespace std;
main()
{
int NUMERO =1;
while (NUMERO <=10) {
cout<< NUMERO;
NUMERO = NUMERO +1;
}
system ("PAUSE");
mostra numero.exe
}
Informática e Computação
Estrutura de Repetição
Exemplo2: while
Calcular a soma dos números pares de 2 até 200
Solução:
Iniciar o primeiro par = 2 e a soma= 0
Repetir enquanto o par <= 200
acumulamos o par na soma:
soma = soma + par
obtemos próximo par somando 2 ao par anterior
par = par + 2
Informática e Computação
Estrutura de Repetição
Exemplo2: while
Calcular a soma dos números pares de 2 até 200
#include <iostream >
Sintaxe:
using namespace std;
Solução:
main()
início;
Iniciar o primeiro par = 2 e a soma= 0
{
while (expressão) {
Repetir enquanto o par <= 200
int SOMA, PARES;
acumulamos o par na soma:
comando 1;
soma
=
soma
+
par
// inicialização das variáveis
comando 2;
obtemos próximo par som. 2
SOMA = 0;
...
ao par anterior
PARES = 2;
par = par + 2
}
while (PARES <= 200)
fim;
{
SOMA = SOMA + PARES; // soma dos pares
PARES = PARES + 2; // incremento para o próximo par
}
// mostra o valor acumulado na soma
2
cout << "A soma dos pares eh " << SOMA << ".“ << endl; PARES
system (“PAUSE”);
}
somapares.exe
SOMA 0
Informática e Computação
Estrutura de Repetição
Outro Exemplo
// SOMA_PARES de um limite inferior até um limite superior
#include <iostream>
Sintaxe:
using namespace std;
início;
PARES
while (expressão) {
main()
comando 1;
{
SOMA 0
comando 2;
int SOMA = 0, PARES, LIMSUP;
...
cout << "digite o limite inferior e superior"<<endl;
}
cin >> PARES >> LIMSUP;
fim;
// enquanto (expressão ?)
LIMSUP
PRECISO DE LIMITE
while (PARES <= LIMSUP)
INFERIOR ??
NÃO!
{
POSSO USAR NO
SOMA = SOMA + PARES; // soma dos pares
INICIO EM PARES
PARES = PARES + 2; // incremento para o próximo par
}
cout <<"A soma dos pares eh " << SOMA << "."<< endl;
System (“PAUSE”);
}
somapares_limites.exe
Informática e Computação
Estrutura de Repetição
do - while
do-while
Sintaxe:
• Executa sentenças enquanto a condição for verdadeira.
• Condição é verificada depois do bloco.
início
início;
do {
comando 1;
comando 2;
...
}
while (expressão);
fim;
comandos
1
expressão
0
fim
Tem o ; ponto e vírgula
Informática e Computação
Estrutura de Repetição
Exemplo1 do-while
MOSTRAR NA TELA OS NUMEROS DE 1 ATÉ 10
int numero = 1;
do
{
cout << numero;
numero = numero + 1;
} while (numero <= 10);
fim
Resultado na tela:
EXECUÇÃO
numero
1
Inicio
1
11
2
3
4
5
6
7
8
9
10
Informática e Computação
Estrutura de Repetição
Exemplo2 do-while
Código validação de dado de entrada:
ex:
nota
de
0
a
10
float NOTA;
cout<< "Digite uma nota: "<< endl;
do
{
cin >> NOTA;
}
while ((NOTA < 0) || (NOTA > 10));
Se a nota
digitada for
( menor que
zero ou maior
que 10) o
programa não
deve aceitar
validacaonota.exe
Informática e Computação
Estrutura de Repetição
Exemplo2 do-while
Código validação de dado de entrada:
ex:
nota
de
0
a
10
float NOTA;
cout<< "Digite uma nota: "<< endl;
Nota inválida o
programa não aceita
Mas podemos melhorar
pedir que digite
novamente
do
{
cin >> NOTA;
if ( (NOTA <0) || (NOTA> 10) )
cout<<"nota invalida, digite novamente"<<endl;
}
while ((NOTA < 0) || (NOTA > 10));
validacao_nota.exe
Programação de Computadores – UCG
Estrutura de Repetição
Operadores de incremento:
• Antes:
• Agora:
numero = numero + 1;
++numero;
numero = numero - 1;
- - numero;
Informática e Computação
Estrutura de Repetição
Expressão Original
Expressão Equivalente
x=x+k
x = x - k;
x = x * k;
x = x / k;
x+ = k;
x - = k;
x * = k;
x / = k;
Informática e Computação
Estrutura de Repetição
Uma estrutura de repetição tem 4 componentes:
1. Inicialização
int numero = 1;
2. Condição
while (numero <= 10) {
3. Sentenças
cout << numero;
4. Atualização
numero = numero + 1;
}
Informática e Computação
Estrutura de Repetição
for
• Executa sentenças (comandos) enquanto a condição
(expressão ou teste) for verdadeira.
• faz a inicialização o teste e atualização num
início
único comando
início;
for (inicialização; teste; atualização)
Sintaxe:
{
comando 1;
comando 2;
...
}
fim;
inicialização
0
teste
1
comandos
atualização
fim
Informática e Computação
Estrutura de Repetição
Exemplo1 for
MOSTRAR NA TELA OS NUMEROS DE 1 ATÉ 10
inicio:
int numero;
for (numero=1
numero<=10; numero++
numero++)
numero=1; numero<=10
{
início;
for (inicialização; teste; atualização)
cout >> numero;
{
comando 1;
}
comando 2;
...
}
fim;
EXECUÇÃO
numero
1
11
Resultado na tela:
1
2
3
4
5
6
7
8
9
10
Estruturas de Repetição
while
do - while
for
Download

Estrutura de Repetição