Algoritmos e linguagens de programação 1 (aula 08) Prof. Alessandro Bernardo alebernardo@unb.br

Post on 02-Jan-2016

28 views 5 download

description

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 alebernardo@unb.br http://bsi.k6.com.br. Estruturas de repetição. - PowerPoint PPT Presentation

Transcript of Algoritmos e linguagens de programação 1 (aula 08) Prof. Alessandro Bernardo alebernardo@unb.br

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Algoritmos e linguagens de programação 1

(aula 08)

Prof. Alessandro Bernardoalebernardo@unb.brhttp://bsi.k6.com.br

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

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.

Estruturas de repetição

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia 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 devezes que você já apertou.

Em algoritmo:

PARA contador DE 1 ATÉ 5 FAÇAINÍCIO apertar botão ESCREVER contadorFIM

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

FORMA GERAL

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

FORMA GERAL

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ÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

FORMA GERAL

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ÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

FORMA GERAL

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ÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

FORMA GERAL

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ÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

Forma geral

for (int contador = 1; condição; incremento){

// seqüência de instruções;

}

Exemplo (escrever um texto 5 vezes)

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

Forma geral

for (int contador = 1; contador <= 5; incremento){

// seqüência de instruções;

}

Exemplo (escrever um texto 5 vezes)

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

Forma geral

for (int contador = 1; contador <= 5; contador++){

// seqüência de instruções;

}

Exemplo (escrever um texto 5 vezes)

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (inicialização; condição; incremento){

// seqüência de instruções;

}

Forma geral

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = XXX Execução:

condição: XXX

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 1 Execução:

condição: XXX

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 1 Execução:

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 1 Execução: Este texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 2 Execução: Este texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 2 Execução: Este texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 2 Execução: Este texto eh escrito 5 vezesEste texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

Continuando até contador ser igual a 5...

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 5 Execução: Este texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 6 Execução: Este texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezes

condição: verdadeira

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = 6 Execução: Este texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezes

condição: falsa

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for (int contador = 1; contador <= 5; contador++){

cout << “Este texto eh escrito 5 vezes” << endl;

}

Exemplo (escrever um texto 5 vezes)

contador = XXX Execução: Este texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezesEste texto eh escrito 5 vezes

condição: XXX

Pulo para o final do loop

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for ( int i = 1; i <= 7 ; i++){

cout << i << endl;

}

Exemplo

Execução?

for (inicialização; condição; incremento){

seqüência de instruções;

}

Forma geral

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for ( int i = 1; i < 3 ; i++){

cout << i << endl;

}

Exemplo

Execução?

for (inicialização; condição; incremento){

seqüência de instruções;

}

Forma geral

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for ( int i = 1; i > 20 ; i++){

cout << i << endl;

}

Exemplo

Execução?

for (inicialização; condição; incremento){

seqüência de instruções;

}

Forma geral

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for ( int i = 0; i < 1000 ; i+=150){

cout << i << endl;

}

Exemplo

Execução?

for (inicialização; condição; incremento){

seqüência de instruções;

}

Forma geral

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

Instrução FOR

for ( int i = 200; i > 100; i-=25){

cout << i << endl;

}

Exemplo

Execução?

for (inicialização; condição; incremento){

seqüência de instruções;

}

Forma geral

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

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.

Instrução FOR

FACULDADE DE CIÊNCIAS SOCIAIS E TECNOLÓGICASTecnologia em Redes de Computadores

(1)Faça um programa para escrever todos os números de 1 até 100.

Instrução FOR

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ÓGICASTecnologia em Redes de Computadores

(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.

Instrução FOR

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ÓGICASTecnologia em Redes de Computadores

(3) Faça um programa para escrever todos os números divisíveis por 3 de 3 até 51.

Instrução FOR

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ÓGICASTecnologia em Redes de Computadores

(4) Faça um programa para escrever todos os números inteiros de 1 até um valor inserido pelo usuário.

Instrução FOR

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ÓGICASTecnologia em Redes de Computadores

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.

Instrução FOR