Algoritmos e linguagens de programação 1 (aula 08) Prof. Alessandro Bernardo [email protected]

35
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

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 [email protected] 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 [email protected]

Page 1: 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 [email protected]://bsi.k6.com.br

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

Page 2: 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

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

Page 3: 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

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

Page 4: 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

Instrução FOR

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

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

}

FORMA GERAL

Page 5: 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

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.

Page 6: 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

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

Page 7: 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

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.

Page 8: 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

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.

Page 9: 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

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)

Page 10: 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

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)

Page 11: 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

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)

Page 12: 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

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)

Page 13: 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

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

Page 14: 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

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

Page 15: 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

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

Page 16: 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

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

Page 17: 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

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

Page 18: 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

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

Page 19: 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

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

Page 20: 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

Instrução FOR

Continuando até contador ser igual a 5...

Page 21: 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

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

Page 22: 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

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

Page 23: 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

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

Page 24: 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

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

Page 25: 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

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

Page 26: 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

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

Page 27: 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

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

Page 28: 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

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

Page 29: 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

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

Page 30: 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

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

Page 31: 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

(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); }

Page 32: 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

(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);}

Page 33: 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

(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);}

Page 34: 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

(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);}

Page 35: 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

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