Transcript aula08.ppt

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Algoritmos e linguagens de
programação 1
(aula 08)
Prof. Alessandro Bernardo
[email protected]
http://bsi.k6.com.br
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Estruturas de repetição
Estruturas de controle utilizadas para criar repetições controladas de blocos de
instruções.
O C++ dispõe de duas dessas instruções:
Loop FOR:
número de repetições determinadas onde o incremento é feito
automaticamente.
Loop WHILE:
número de repetições pode ser determinado ou não e onde um contador
(variável que pode ser incrementada ou decrementada) pode ser utilizado.
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo:
Língua portuguesa:
Aperte o botão cinco vezes e em cada uma informe o número de
vezes que você já apertou.
Em algoritmo:
PARA contador DE 1 ATÉ 5 FAÇA
INÍCIO
apertar botão
ESCREVER contador
FIM
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
FORMA GERAL
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
FORMA GERAL
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Inicialização: declaração e/ou inicialização (atribuição do valor inicial) de um
ou mais contadores.
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
FORMA GERAL
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Inicialização: declaração e/ou inicialização (atribuição do valor inicial) de um
ou mais contadores.
Condição: condição de continuação do loop (semelhante ao while).
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
FORMA GERAL
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Inicialização: declaração e/ou inicialização (atribuição do valor inicial) de um
ou mais contadores.
Condição: condição de continuação do loop (semelhante ao while).
Incremento: determinação de como serão incrementados ou decrementados
os contadores internos do laço.
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
FORMA GERAL
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
inicialização: declaração e/ou inicialização (atribuição do valor inicial) de um
ou mais contadores.
condição: condição de continuação do loop (semelhante ao while).
incremento: determinação do tipo de incremento do(s) contador(es) internos
do laço.
seqüência de instruções: linhas de comandos executadas enquanto
condição for verdadeira.
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; condição; incremento)
{
// seqüência de instruções;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; incremento)
{
// seqüência de instruções;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
// seqüência de instruções;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
// seqüência de instruções;
}
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = XXX
condição: XXX
Execução:
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 1
condição: XXX
Execução:
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 1
condição: verdadeira
Execução:
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 1
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 2
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 2
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 2
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Continuando até contador ser igual a 5...
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 5
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 6
condição: verdadeira
Execução:
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
contador = 6
condição: falsa
Execução:
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplo (escrever um texto 5 vezes)
for (int contador = 1; contador <= 5; contador++)
{
cout << “Este texto eh escrito 5 vezes” << endl;
}
Pulo para o final do loop
contador = XXX
condição: XXX
Execução:
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
Este texto eh escrito 5 vezes
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
seqüência de instruções;
}
Execução?
Exemplo
for ( int i = 1; i <= 7 ; i++)
{
cout << i << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
seqüência de instruções;
}
Execução?
Exemplo
for ( int i = 1; i < 3 ; i++)
{
cout << i << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
seqüência de instruções;
}
Execução?
Exemplo
for ( int i = 1; i > 20 ; i++)
{
cout << i << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
seqüência de instruções;
}
Execução?
Exemplo
for ( int i = 0; i < 1000 ; i+=150)
{
cout << i << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Forma geral
for (inicialização; condição; incremento)
{
seqüência de instruções;
}
Execução?
Exemplo
for ( int i = 200; i > 100; i-=25)
{
cout << i << endl;
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exemplos:
(1) Faça um programa para escrever todos os números de 1 até 100.
(2) Faça um programa para escrever todos os números pares de 2 até
20 e todos os números ímpares de 19 até 1.
(3) Faça um programa para escrever todos os números divisíveis por 3
de 3 até 51.
(4) Faça um programa para escrever todos os números inteiros de 1 até
um valor inserido pelo usuário.
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
(1) Faça um programa para escrever todos os números de 1 até 100.
using namespace std;
#include <iostream>
int main()
{
for (int cont = 1; cont <= 100; cont++)
cout << cont << endl;
system("pause");
return(0);
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
(2)Faça um programa para escrever todos os números pares de 2 até
20 e todos os números ímpares de 19 até 1.
using namespace std;
#include <iostream>
int main()
{
for (int cont = 2; cont <= 20; cont+=2)
cout << cont << endl;
for (int cont = 19; cont >= 1; cont-=2)
cout << cont << endl;
system("pause");
return(0);
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
(3) Faça um programa para escrever todos os números divisíveis por 3
de 3 até 51.
using namespace std;
#include <iostream>
int main()
{
for (int cont = 3; cont <= 51; cont+=3)
cout << cont << endl;
system("pause");
return(0);
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
(4) Faça um programa para escrever todos os números inteiros de 1
até um valor inserido pelo usuário.
using namespace std;
#include <iostream>
int main()
{
int num;
cout << "Insira um número inteiro: ";
cin >> num;
for (int cont = 1; cont <= num; cont++)
cout << cont << endl;
system("pause");
return(0);
}
FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICAS
Tecnologia em Redes de Computadores
Instrução FOR
Exercícios:
(1) Faça um programa para escrever todas as dezenas de 10 até 100.
(2) Faça um programa para escrever os números de 1 até 100 onde o
incremento é escolhido pelo usuário.
(3) Faça um programa que leia um número do teclado e escreva todos
os números pares de 2 até o número inserido.