Baixe o app para aproveitar ainda mais
Prévia do material em texto
Algoritmos Mairum Ceoldo Andrade Aula 7 Conteúdo • Característica de estruturas de repetição • Comando de repetição com variável de controle – PARA 2 Como executar diversas vezes a mesma ação? • Como a nota de 5 alunos? • E se quisermos ler 100 notas? – CTRL C e CTRL V .... 3 ler nota1; ler nota2; ler nota3; ler nota4; ler nota5. ler nota1; ler nota2; ler nota3; ....... ler nota99; ler nota100. Como executar diversas vezes a mesma ação? • Como fazer um programa despertador? – Basta fazer um programa emita um alarme em um determinado horário. • Quantos dias? – Tantos quantos o usuário quiser! 4 se (horario = x) { tocarAlarme(); } se (horario = x) { tocarAlarme(); } se (horario = x) { tocarAlarme(); } se (horario = x) { tocarAlarme(); } se (horario = x) { tocarAlarme(); } ... Estruturas de repetição • “Enquanto estiver ativo faça isso.” • “Faça isso enquanto for diferente daquilo.” • “Para x de 10 até 100 realize tal tarefa.” 5 Estruturas de repetição Estruturas de repetição são também conhecidas como estruturas de iteração ou laços, elas permitem que uma sequência de comandos seja executada repetidamente, até que determinada condição ou situação seja atendida. 6 Comando PARA - UAL 7 para(<valor inicial>; <expressão de teste>;<incremento>) { bloco de comandos } <valor inicial> nomeDaVariável <- valorInicial; • deve ser uma variável enumerável, um inteiro (int) • é atribuído um valor inicial, pode ser uma constante, uma variável ou uma expressão. • Exemplos: i<-0; i<- strtam(nome); i <- x+1; <expressão de teste> nomeDaVariável <, >, <=, >=, == valor; • Estrutura relacional ou condição que será utilizada como termo final do laço • O valor poder ser constante, variável ou expressão • Exemplos: i >= 10; i>strtam(nome); i <= x+10; <incremento> nomeDaVariável <- nomeDaVariável operador valor • é um comando de atribuição que incrementa a variável no laço • o operador pode ser qualquer operador aritmético ou expressão • Exemplos: i <- i+1; i<-i+2; i++; i--; Comando PARA – C++ 8 for(<valor inicial>; <expressão de teste>;<incremento>) { bloco de comandos } <valor inicial> nomeDaVariável = valorInicial; • deve ser uma variável enumerável, um inteiro (int) • é atribuído um valor inicial, pode ser uma constante, uma variável ou uma expressão. • Exemplos: i=0; i = strtam(nome); i = x+1; <expressão de teste> nomeDaVariável <, >, <=, >=, == valor; • Estrutura relacional ou condição que será utilizada como termo final do laço • O valor poder ser constante, variável ou expressão • Exemplos: i >= 10; i>strtam(nome); i <= x+10; <incremento> nomeDaVariável = nomeDaVariável operador valor • é um comando de atribuição que incrementa a variável no laço • o operador pode ser qualquer operador aritmético ou expressão • Exemplos: i = i+1; i<-i+2; i++; i--; Repetição com contador BLOCO DE COMANDOS V F Comando PARA - Fluxograma 9 Count<- 1, 3, 1 Digite numero>0 NUM Num * 2 fim Inicio F V Ler código e nota de 5 alunos 10 prog leituraAlunos int codigo; real nota; imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; fimprog CTRL C e CTRL V Ler código e nota de 5 alunos 11 prog leituraAlunos int codigo; real nota; int c; fimprog Estrutura de repetição para(c=1; c<=4;c=c+1) { } imprima “Código: ”; leia codigo; imprima “Nota: ”; leia nota; Comando PARA Possibilidades de iteração for(c= 1; c <= 5; c=c + 1) for(c= 1; c <= 5; c++) for(c= 1; c <= 5; c += 1) PA - crescente ➢ Valor inicial menor do que valor final ➢ Operador Relacional < ou <= 12 Comando PARA Possibilidades de iteração for(c= 5; c >= 1; c -= 1 ) for(c= 5; c >= 1; c-- ) for(c= 5; c >=1; c=c - 1 ) PA - decrescente ➢ Valor inicial maior do que valor final ➢ Operador Relacional > ou >= 13 Comando PARA Possibilidades de interação for(c= 3; c <= 243; c*=3) PG - crescente ➢ Valor inicial menor do que valor final ➢ Operador Relacional < ou <= 14 Comando PARA Possibilidades de iteração for(c=64; c >= 2; c=c /2) PG - decrescente ➢ Valor inicial maior do que valor final ➢ Operador Relacional > ou >= 15 Comando PARA Possibilidades de iteração 16 for(c= 1; c <= 5; c=c + 1) for(c= 3; c <= 243; c*=3) for(c= 1; c <= 5; c++) for(c= 1; c <= 5; c += 1) PA - crescente PG - crescente for(c=64; c >= 2; c=c /2) for(c= 5; c >= 1; c -= 1 ) for(c= 5; c >= 1; c-- ) for(c= 5; c >=1; c=c - 1 ) PG - decrescente PA - decrescente Ler 10 valores e apresentar a soma 17 Linguagem UAL Linguagem C++ prog exemplo int cont; real valor, acumulador; acumulador <- 0.0; para(cont<-1; cont<=10; cont++) { imprima “\nValor ”, cont, “: “; leia valor; acumulador <- acumulador + valor; } imprima “\nSoma dos valores: “, acumulador; fimprog #include <iostream> using namespace std; int main() { int cont; float valor, acumulador; acumulador = 0; for(cont=1; cont<=10; cont++) { cout << “\nNumero: “ << cont; cin >> valor; acumulador = acumulador + valor; } cout <<”\nSoma dos valores: ” << acumulador; } ACUMULADOR Ler 10 valores e apresentar a soma 18 Linguagem UAL Linguagem C++ prog exemplo int cont; real valor, acumulador; acumulador <- 0.0; para(cont<-1; cont<=10; cont++) { imprima “\nValor ”, cont, “: “; leia valor; acumulador <- acumulador + valor; } imprima “\nSoma dos valores: “, acumulador; fimprog #include <iostream> using namespace std; int main() { int cont; float valor, acumulador; acumulador = 0; for(cont=1; cont<=10; cont++) { cout << “\nNumero: “ << cont; cin >> valor; acumulador = acumulador + valor; } cout <<”\nSoma dos valores: ” << acumulador; } ACUMULADOR 19 Acumulador 1) O que é? 2) Como se cria? Declarando a variável Uma variável 20 Acumulador ✓Declare a variável, cujo tipo tem que ser compatível com o valor que irá receber. ✓ Inicialize com o elemento neutro da operação, na maioria das vezes (0 + - ou 1 * /). ✓Dentro da estrutura de repetição, coloque a expressão do acumulador: var op= valor; var++; var--. ✓Depois da estrutura de repetição, exiba, teste, etc. 3) Quais as regras para que tudo funcione perfeitamente? Algoritmos Mairum Ceoldo Andrade Atividade 7 22 Problema Elabore um algoritmo que calcule o total de números primos entre 1 e 1000 Números primos: divisíveis apenas por 1 e por ele mesmo. Solução 23
Compartilhar