Definição Exemplos Atividade Guiada Exercícios. Loops aninhados. Leonardo Larback 1 de junho de 2019

Documentos relacionados
Aula 16: Laços aninhados e desvios

Aula 15 - Estruturas de Repetição (p3)

CURSO BÁSICO DE PROGRAMAÇÃO AULA 6. Revisão Laços de Repetição

Estruturas de Repetição

BCC701 Programação de Computadores I Lista de Exercícios 03: Estruturas de Iteração

Aula 11: Laços e exercícios

Introdução à Programação. 4ª aula. Prof. José Honorato F. Nunes

Programação II. Victor Amorim dos Santos

Linguagem de Programação Java Terceira aula. Prof. Rogério Albuquerque de Almeida

Aula 5 Controle do Fluxo de Execução

Lista de Exercícios 3

Algoritmos e Estruturas de Dados I

PCI- Estrutura de Repetição II. Profa. Mercedes Gonzales Márquez

Fundamentos de Programação1

ESTRUTURAS DE REPETIÇÃO - PARTE 1

Sistemas Operacionais e Introdução à Programação. Introdução à Lógica de Programação: estruturas de repetição

Aula 10: Manipulação do fluxo de laços

Aula 8: Estruturas de Repetição: O comando while

AULA 07. HABILIDADES TRABALHADAS: Desenvolver algoritmos utilizando laços a partir da leitura de fluxogramas ou algoritmos em portugol.

para / for (com teste numérico) enquanto / while (com teste lógico no início) repita até que / do...while (com teste lógico no fim)

Fixação de conteúdo teórico

BCC701 Programação de Computadores I Lista de Exercícios 03: Estruturas de Iteração

Universidade Federal de Uberlândia Faculdade de Computação. Estruturas de repetição

AULA 02. Lógica de Programação. Centro Educação Profissional Ezequiel Ferreira Lima CEPEF. Curso Técnico em Eletrônica.

Estruturas de Repetição

Programação Procedimental

ESTRUTURAS DE CONTROLE - LAÇOS OU MALHAS DE REPETIÇÃO

Carga Horária: 60 h Créditos: 3 Pré-requisito: Não se aplica Professor(a): A definir Matricula: A definir Titulação: A definir

CURSO BÁSICO DE PROGRAMAÇÃO AULA 10. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

COMANDOS DE REPETIÇÃO (ENQUANTO)

Algoritmos I Aula 10 Estrutura de controle: repetição

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo

Aula 4B. Lógica e Algoritmos. Profª. Fabiany

Estruturas de Repetição

Repetição com contador. DO varcontrole = valorinicial, valorfinal, [passo] instruções END DO

Universidade Federal de Ouro Preto -UFOP Departamento de Computação - DECOM Programação de Computadores I BCC701. Aula Teórica 08.

LP II Estrutura de Dados

ET51D - INFORMÁTICA. Algoritmos - Introdução. Prof: Glauber G. O. Brante e Mariana Furucho.

Introdução à Programação

algoritmo "exercício 22 resposta incorreta" var A, i: inteiro eh_primo: logico inicio repita escreva ("Entre com um valor inteiro positivo: ") leia

Grupo B Estruturas de Repetição

Aula 15: Repetição (Parte 3)

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Lista de Exercícios Estrutura de Repetição

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Unidade 3: Estruturas de Controle Parte 2 - Lógica, SWITCH, FOR, WHILE e DO WHILE Prof. Daniel Caetano

Linguagem C Estruturas de Repetição

Aula 14: Repetição (Parte 2)

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701

Estrutura de controle repetitiva: Para (for)

Estruturas de Repetição

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição - GABARITO Repetição com Variável de Controle - Para Professor: Danilo Giacobo

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

LINGUAGEM C: COMANDOS DE REPETIÇÃO

Desenvolvimento de Aplicações Desktop

Capítulo 2 Introdução à Programação Estrutura de Controle

Técnicas de Programação

UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ ALGORITMOS E PROGRAMAÇÃO. Estruturas de repetição. Prof. Alex Camargo

Essa estrutura de repetição é utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido.

Parte I - Expressões lógicas e operadores

Introdução a programação Comandos de repetição

PROGRAMA HelloWorld.java ESTRUTURA SEQUENCIAL. Programa HelloWorld.java

Programação de Computadores I BCC 701 Lista de Exercícios Módulo

CURSO TÉCNICO DE NÍVEL MÉDIO EM INFORMÁTICA - PLANO DE DISCIPLINA 2015 LINGUAGEM DE PROGRAMACAO 1 LP1

algoritmo "primo" var num, cont, x, i:inteiro inicio

Controle de Fluxo Comandos de repetição

Programação para GI. Subprogramas

Python - Comandos de Repetição

Estruturas de Repetição. João Medeiros FATERN

Programação de Computadores 1 Lista 2. Prof. Álvaro A. F. de Souza DECSI - ICEA - UFOP

Programação Estruturada Prof. Rodrigo Hausen Condicionais e Laços

Lógica e Linguagem de Programação Aula 04 - Estruturas de Repetição Repetição com Teste no Início Enquanto - GABARITO Professor: Danilo Giacobo

Algoritmos: Estruturas de Controle

VisuALG Estruturas de Repetição. Professor: Alex Sandro Forghieri

Registros, Vetores e Matrizes

CAPÍTULO 5 ESTRUTURAS DE REPETIÇÃO

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For

Lista 01 Estruturas de Repetição

Aula 02. Algoritmos e Pseudocódigo

1 TECNOLOGIA ELEMENTAR CAPÍTULO 4 E-books PCNA. Vol. 1 TECNOLOGIA ELEMENTAR CAPÍTULO 4 ROTINAS DE REPETIÇÃO. Página 1

Aula 11 - Repetições Encaixadas

CURSO BÁSICO DE PROGRAMAÇÃO AULA 19. Netbeans - Linguagem JAVA - Vetores - Matrizes - Métodos

Algoritmos e Programação (While Do While - Do) Prof. Me. Adelson Felipe Dias Nogueira

LINGUAGEM DE PROGRAMAÇÃO

Python 3.x Estrutura de Repetição while

Programação de Computadores

Lista de Exercícios 03a Algoritmos Repetição. 1) Escreva um algoritmo em PORTUGOL que imprima todos os números inteiros de 0 a 50.

Controle de Fluxo Comandos de repetição: while e do-while

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição

CURSO BÁSICO DE PROGRAMAÇÃO AULA 5. Revisão Laços de Repetição

UNIVERSIDADE ESTADUAL VALE DO ACARAÚ EXERCÍCIOS RESOLVIDOS Estruturas de Repetição

Introdução à Ciência da Computação. Sumário. Modularização de Algoritmos. Agradecimentos. Modularização de Algoritmos e Funções em C

Fundamentos de programação

Estruturas de Repetição. for() while() do-while() break; continue;

Programação II. Victor Amorim dos Santos

Algoritmos e Programação

Transcrição:

Loops aninhados Leonardo Larback leo@larback.com.br http://www.larback.com.br 1 de junho de 2019 Loops aninhados 1/16

Conteúdo Definição Exemplos Atividade Guiada Exercícios Loops aninhados 2/16

Laços aninhados Algumas aplicações exigem que uma estrutura de repetição seja implementada dentro de outra estrutura de repetição. Quando isso acontece, dizemos que os laços estão aninhados. A cada iteração do laço externo, todas as iterações do laço interno serão executadas. Loops aninhados 3/16

Laços aninhados Como desenvolver um algoritmo que produza a saída ao lado? Loops aninhados 4/16

1 programa 2 { 3 funcao inicio() 4 { 5 inteiro i, j 6 para (i=1; i<=10; i++) 7 { 8 para (j=1; j<i; j++) 9 { 10 escreva (i) 11 } 12 escreva ("\n") 13 } 14 } 15 } Loops aninhados 5/16

Exemplo 1 Bart Simpson está aprendendo a jogar xadrez, mas tem dificuldade em saber para qual direção ele pode mover sua Torre. Sabemos que um tabuleiro de xadrez é composto por 8 linhas e 8 colunas, e que a Torre se move ortogonalmente, ou seja, pelas linhas (horizontais) e pelas colunas (verticais). Escreva um programa que solicite ao Bart o número da linha e da coluna que indicam a posição de sua Torre. O programa deve imprimir quais são os possíveis movimentos da Torre. Utilize - para indicar uma casa para a qual a Torre não pode ser movida e x para indicar uma casa para a qual ela pode ser movida. Loops aninhados 6/16

1 programa{ 2 funcao inicio(){ 3 inteiro linha, coluna, li, c 4 escreva("em qual linha esta a torre?\n") 5 leia(linha) 6 escreva("em qual coluna esta a torre?\n") 7 leia(coluna) 8 para (li=1; li<=8; li++){ 9 para (c=1; c<=8; c++){ 10 se (linha==li ou coluna==c){ 11 escreva (" X ") 12 } senao { 13 escreva (" - ") 14 } 15 } 16 escreva("\n") 17 } 18 } 19 } Loops aninhados 7/16

Exemplo 2 Bart Simpson está aprendendo a multiplicar. Lisa tentou forçalo a decorar a tabuada, mas como bom programador que é, Bart resolveu desenvolver um programa que imprime a tabuada de multiplicação dos números inteiros entre 1 e 10. Loops aninhados 8/16

1 programa{ 2 funcao inicio() { 3 inteiro x, y 4 para (x=1; x<=10; x++){ 5 escreva ("Tabuada do " + x +"\n") 6 para (y=1; y<=8; y++){ 7 escreva (x + " * " + y + " = " + (x*y)+"\n") 8 } 9 escreva("\n\n") 10 } 11 } 12 } Loops aninhados 9/16

Perguntas? Loops aninhados 10/16

Exercício 1 Elabore uma aplicação que permita calcular o fatorial de N números informados pelo usuário. A aplicação se encerra quando o valor de N for -1. Loops aninhados 11/16

Exercício 1 1 programa{ 2 funcao inicio() { 3 inteiro n, fat 4 escreva("informe um numero ou -1 para sair\n") 5 leia (n) 6 enquanto(n!=-1){ 7 fat = 1 8 enquanto (n>0){ 9 fat = fat*n 10 n-- 11 } 12 escreva ("O fatorial e " + fat + "\n") 13 escreva("informe um numero ou -1 para sair\n") 14 leia (n) 15 } 16 } 17 } Loops aninhados 12/16

Exercício 2 Elabore uma aplicação que exiba todos os números primos menores que 100. Loops aninhados 13/16

Exercício 1 1 programa{ 2 funcao inicio() { 3 inteiro i, j, divisores 4 escreva("lista dos numeros primos menores que 100:\n") 5 para (i=2;i<100;i++){ 6 divisores = 0 7 para (j=1;j<=i;j++){ 8 se(i % j == 0){ 9 divisores++ 10 } 11 } 12 se (divisores==2){ 13 escreva(i +"\n") 14 } 15 divisores = 0 16 } 17 } 18 } Loops aninhados 14/16

Exercícios 1. Elabore um programa que imprima os números entre 1 e 100 e a quantidade respectiva de divisores que cada um possui. 2. Resolva o problema 1150 do URI JUDGE - O código gerado usa loops aninhados? Por que? 3. Resolva o problema 1143 do URI JUDGE - Seu código deve, obrigatoriamente, utilizar loops aninhados. 4. Faça um programa que leia 10 números inteiros e imprima, a cada número lido, o valor do somatório entre 1 e N (sendo N o número lido). Loops aninhados 15/16

Referências CARVALHO, Marco Antonio Moreira de. Projeto e análise de algoritmos. 01 mar. 2018, 15 jun. 2018. Notas de Aula. UFOP. DEITEL, Paul J.; DEITEL, Harvey M. Java: como programar. Pearson Educación, 2008. FORBELLONE, André Luiz Villar; EBERSPÄCHER, Henri Frederico. Lógica de programação: a construção de algoritmos e estrutura de dados. 3.ed. São Paulo: Makron Books do Brasil, 2010. TOFFOLO, Túlio. Introdução à programação. 2018. Notas de Aula. UFOP. Os algoritmos foram implementados utilizando-se o software Portugol Studio Loops aninhados 16/16