Estruturas de Repetição

Slides:



Advertisements
Apresentações semelhantes
Estruturas de Repetição
Advertisements

Algoritmos.
Visualg. Definição É um programa que executa algorítmos em forma de cálculos e a linguagem utilizada por ele é o Portugal, que é uma adaptação da linguagem.
Programação de Computadores - 3
Linguagem de Programação I Parte III
Algoritmos - exercícios
Algoritmo e Programação
Informática e Computação Aula Estrutura de Repetição
Exercícios (Algoritmo Narrativo, Fluxograma e Pseudocódigo) RESOLVIDO
Lógica de Programação Aula 25 Prof. Auler Gomes. Introdução - subrotina Muitos problemas grandes ou nem tão grandes, mas de solução mais complexa podem.
Pseudocódigo É a técnica na construção de algoritmos mais próxima de uma linguagem de programação. Estrutura básica: Algoritmo [Variáveis:, : ] Início.
Algoritmos e Programação utilizando Visualg
Aula 3 - Estruturas de Repetição
Algoritmos e Estruturas de Dados I
Algoritmo e Lógica Programação Vetores e Matrizes
Estruturas de Repetição
Algoritmo e Lógica Programação Modularização: Funções e Subalgoritmos
LIÇÃO DE PROGRAMAÇÃO EV3 AVANÇADA
Grupos de Slides No 7. Prof. SIMÃO
Algoritmos e Estruturas de Dados I
Algoritmos e Lógica de Programação
Introdução a Algoritmos
Estruturas de Decisão.
Fundamentos de Programação 1
Profa. Mercedes Gonzales Márquez
Estruturas de Repetição
Introdução ao VisuALG Prof. Andrew Rodrigues
Algoritmos e Estruturas de Dados I
Algoritmos e Estruturas de Dados I
Estruturas de Repetição
Estrutura de Repetição
Estruturas de Repetição
Prof. Wellington Franco
FUNDAMENTO DE PROGRAMAÇÃO
Fundamentos de Programação 1
Prof. Wellington Franco
FUNDAMENTO DE PROGRAMAÇÃO PROF. BRUNO DE CASTRO H. SILVA
FUNDAMENTO DE PROGRAMAÇÃO PROF. BRUNO DE CASTRO H. SILVA
FUNDAMENTO DE PROGRAMAÇÃO
Algoritmos e Lógica de Programação
Algoritmos e Estruturas de Dados I
PASCAL – Estruturas de repetição Prof. Ernani Viriato de Melo
Estruturas de Dados Vetores.
FUNDAMENTO DE PROGRAMAÇÃO PROF. BRUNO DE CASTRO H. SILVA
Algoritmos e Técnicas CEFET/RN.
Lógica de Programação e Algoritmos - LPA Professora: Ecila Alves de Oliveira UNIP – 2.Sem/2015 Décima Primeira Aula - Função.
Lógica de Programação e Algoritmos - LPA Professora: Ecila Alves de Oliveira UNIP – 2.Sem/2015 Décima Primeira Aula - Função.
Estruturas de Repetição
IP – Repetições Prof. Eduardo Falcão.
Estruturas de Repetição
IP – Repetições for Prof. Eduardo Falcão.
Algoritmos e Programação I
Estrutura de Repetição
Algoritmos e Estruturas de Dados I
Módulo I Capítulo 4: Operador de Repetição
Algoritmos Prof.: Carlos Alberto _1:
Estruturas de Repetição
Aula 22 Modularização 22/10/08.
LÓGICA DE PROGRAMAÇÃO LÓGICA: parte da filosofia que trata das formas do pensamento em geral (dedução, indução, hipótese, inferência).
Algoritmo e Programação
LÓGICA DE PROGRAMAÇÃO Estruturas de Decisão
Programação de Computadores I – Arquivos
Vetores – Exercícios de Fixação
Profa. Mercedes Gonzales Márquez
Prof.: Carlos Alberto Algoritmos Prof.: Carlos Alberto
Computação Eletrônica Vetores e Matrizes
Algoritmos Prof.: Carlos Alberto
Construção de Algoritmos AULA 03
Representação de Algoritmos
Aula 3 Professores: Conteúdo: Dante Corbucci Filho
Transcrição da apresentação:

Estruturas de Repetição Prof. Esp. Douglas Mariano dos Santos douglas.santos@ifpr.edu.br

Estruturas de Repetição São muito comuns as situações em que se deseja repetir um determinado trecho de um programa um certo número de vezes. As estruturas de repetição são muitas vezes chamadas de Laços ou também de Loops. Classificação: Laços Contados Conhecimento previo de quantas vezes o comando no interior da construção será executado; Laços Condicionais Não se conhece de antemão o número de vezes que o conjunto de comandos no interior do laço será repetido. Amarrado a uma condição sujeita à modificação pelas instruções do interior do laço.

Laços condicionais O conjunto de comandos em seu interior é executado até que uma determinada condição seja satisfeita. Laços condicionais mais comuns nas linguagens de programação modernas: Enquanto - laço condicional com teste no início Repita - laço condicional com teste no final A variável que é testada dever sempre estar associada a um comando que a atualize no interior do laço. Caso isso não ocorra, o programa ficará repetindo indefinidamente este laço, gerando um “laço infinito”.

Laços Condicionais com Teste no Início (enquanto ... faca) Caracteriza-se por uma estrutura que efetua um teste lógico no início de um laço, verificando se é permitido ou não executar o conjunto de comandos no interior do laço. enquanto <condição> faca <comando_composto> fimenquanto

Fluxograma

Laços condicionais (enquanto ... faca) algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) i <- num_inicial enquanto (i <= num_final) faca escreval(i) i <- i + 1 fimenquanto escreva("fim") fimalgoritmo

Exemplo algoritmo "exemplo_enquanto" var soma, num : inteiro inicio num <- 1 soma <- num enquanto soma < 1000 faca escreval(num, " - ", soma) num <- num + 1 soma <- soma + num fimenquanto fimalgoritmo

Exemplo

Laços Condicionais com Teste no Final ( repita ... ate ) Efetua um teste lógico no final de um laço, verificando se é permitido ou não executar novamente o conjunto de comandos no interior do mesmo. Na construção Repita o comando é executado uma ou mais vezes (pelo menos uma vez). Além disso, a variável pode ser inicializada ou lida dentro do laço. Na construção Enquanto o comando é executado zero ou mais vezes. repita <comando_composto> ate <condição>

Laços condicionais (repita ... ate) algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) i <- num_inicial repita escreval(i) i <- i + 1 ate (i > num_final) escreva("fim") fimalgoritmo

Fluxograma

Exemplo algoritmo "exemplo_repita" var num : inteiro inicio repita leia(num) escreval(num, " - ", num * 2) num <- num * 2 ate num % 2 = 0 fimalgoritmo

Fluxograma

Laços contados São úteis quando se conhece previamente o número exato de vezes que se deseja executar um determinado conjunto de comandos. Estrutura dotada de mecanismos para contar o número de vezes que o corpo do laço é executado. para <variável> de <início> ate <final> faca <comando_composto> fimpara

Laços contados (para ... de ... ate ... faca) algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) para i de num_inicial ate num_final faca escreval(i) fimpara escreva("fim") fimalgoritmo

Laços contados Existe uma condição especial em que a contagem pode ser de forma decrescente, onde o valor da variável é decrementado. para <variável> de <início> ate <final> passo –1 faca <comando_composto> fimpara

Fluxograma

Exemplo algoritmo "tabuada" var i, tab, num : inteiro inicio escreva("Tabuada: ") leia(tab) escreva("Até que número: ") leia(num) para i de 1 ate num faca escreva(i, " x ", tab, " = ", i * tab) fimpara fimalgoritmo

Fluxograma

Estruturas de Controle Encadeadas ou aninhadas Um aninhamento ou encadeamento é o fato de se ter qualquer um dos tipos de construção apresentados anteriormente dentro do conjunto de comandos (comando composto) de uma outra construção. Em qualquer tipo de aninhamento é necessário que a construção interna esteja completamente embutida na construção externa. Aninhamento inválido Aninhamento válido

Exercícios – (enquanto - faca) Faça um algoritmo que escreva na tela os números de um número inicial a um número final. Os números inicial e final devem ser informados pelo usuário. Escrever um algoritmo que imprima a tabuada de um número informado pelo usuário; Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200; Em uma turma há 10 alunos. Cada aluno tem 2 notas. Um professor precisa calcular a média das duas notas de cada aluno. Crie um programa que resolva este problema.

Exercícios – (repita – ate) Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0); Escreva um algoritmo que leia valores inteiros e encontre o maior e o menor deles. Termine a leitura se o usuário digitar zero (0); Escreva uma programa que lê o sexo de uma pessoa. O sexo deverá ser com o tipo de dado caractere o programa deverá aceitar apenas os valores “M” ou “F”. Escreva um programa que leia dois valores reais. Ambos valores deverão ser lidos até que o usuário digite um número no intervalo de 1 a 100. Apresentar a soma dos dois valores lidos.

Exercícios ( para – faca) Escreva um programa que, solicite ao usuário um número e calcule seu fatorial. Escreva um programa que leia o número de jogadores de um time, em seguida leia a altura de cada um dos jogadores e, ao final, informe a altura média do time. Escreva um programa que simule a tabuada, porém, executando a soma dos algarismos ao invés de multiplica-los.

Exercícios ( mistos ) Criar um algoritmo capaz de verificar se um número lido é primo ou não Criar um algoritmo que gere um laço de 1 a 100, inclusive, e que mostre todos os números múltiplos de 6. Criar um algoritmo para mostrar 20 números da sequência de Fibonacci (0, 1, 1, 2, 3, 5, 8, 13,...).

Exercícios ( mistos ) Construir um algoritmo que calcule a média aritmética de vários valores inteiros positivos, lidos externamente. O final da leitura acontecerá quando for lido um valor negativo. (Use a estrutura enquanto-faça) Escreva um algoritmo que leia 10 valores inteiros e positivos e (Use a estrutura enquanto-faça): a) encontre o maior valor; b) encontre o menor valor; c) calcule a média dos números lidos. Uma loja tem 3 clientes cadastrados e deseja mandar uma correspondência a cada um deles anunciando um bônus especial. Escreva um algoritmo que leia o nome do cliente e o valor das suas compras no ano passado e calcule um bônus de 10% se o valor das compras for menor que 500.00 e de 15% bonus, caso contrário 10% bonus. (Use a estrutura repita ate).