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)

Documentos relacionados
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)

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

Estrutura para número definido de repetições. Utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido.

Aula 7 Oficina de Programação Estruturas de Repetição no C. Profa. Elaine Faria UFU

Algoritmos e Programação

Desenvolvimento de Aplicações Desktop

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

Algoritmos e Técnicas de

9. Comando de repetição com variável de controle (para.. de.. até.. faça)

Introdução à Programação. Estruturas de Repetição

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

... contador = contador + 1; //contador++; ... <fim_da_estrutura_de_repetição> soma = 0; <estrutura_de_repetição_com_variável_x> soma = soma + x;

Introdução à Programação. Estruturas de Repetição

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

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

LINGUAGEM C: COMANDOS DE REPETIÇÃO

PROCESSAMENTO DA INFORMAÇÃO LAÇOS E REPETIÇÕES. Prof. Dr. Francisco Isidro Massetto

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

Linguagem C estruturas de repetição

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Fig.1: Ilustração de Estrutura de Controle Fonte:Internet

Algoritmos e Técnicas de Programação. Professora: Luciana Faria

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

ECT1203 Linguagem de Programação

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

Introdução à Ciência da Computação

Programação de Computadores

Programação de Computadores III

INFORMÁTICA APLICADA AULA 05 ALGORITMOS

Programação de Computadores:

05/11/2018. Linguagem de Programação e Estruturada

Algoritmos: Estruturas de Controle

LÓGICA DE PROGRAMAÇÃO (JAVA) ESTRUTURAS REPETIÇÃO. Professor Carlos Muniz

Universidade Veiga de Almeida Algoritmos e Linguagem I

Estruturas de Repetição

Fundamentos de programação

Programação de Computadores III

Algoritmos Estruturas de Controle

Programação de Computadores I. Linguagem C Estruturas de Repetição

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I)

Estruturas de Repetição

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

Algoritmos Estruturas de Controle

Linguagem C Estruturas de Repetição

Aula 4 Oficina de Programação Algoritmos - Parte 3. Profa. Elaine Faria UFU

Aula 7 Estruturas de Repetição Cleverton Hentz

PDA - Repetição. Estruturas de repetição. Slides adaptação de Deise Saccol

Programação I Estruturas de Repetição

Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição. Estruturas de Repetição Condicionais

E X E R C Í C I O S 01. Sobre o comando CASO, marque as alternativas como verdadeira (V) ou falsa (F):

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

Estruturas de repetição

Python - Comandos de Repetição

Estruturas de Controle

LP II Estrutura de Dados

Algoritmos - 5. Alexandre Diehl. Departamento de Física - UFPel

Aula 03 -Introdução àlinguagc Programação: Estrutura-Repetição. OPL e IC1 Prof: Anilton Joaquim da Silva

Estrutura de decisão

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

Linguagem C (repetição)

Estrutura de Repetição

ESTRUTURAS DE CONTROLE

Linguagem de Programação I. Aula 03 Estruturas de Controle

4. Constantes. Constantes pré-definidas

Controle de Fluxo. Laços e Desvios incondicionais

UNIDADE 4 ESTRUTURAS DE CONTROLE

Algoritmos e Estruturas de Dados I

Estrutura Condicional

Aula 5 Controle do Fluxo de Execução

Programação de Computadores. Professor Ilaim Costa Junior

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

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

Este conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução.

Programação Estruturada Aula - Estruturas de Repetição

Estrutura de Repetição

Linguagem de Programação

Estruturas de Repetição

Métodos Computacionais. Comandos Condicionais e de Repetição em C

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

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

Estruturas de Repetição Parte I ENQUANTO

Estruturas de Repetição

Estruturas de Repetição

08/05/2012. Tipos de dados. Tipos de dados. Elementos Básicos. Tipos de dados. Elementos Básicos Tipos de dados. Dados e seus tipos:

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta?

Linguagem C++ Estruturas de controle Parte II Estruturas de repetição

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

Fundamentos da programação de computadores.

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

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 de Fluxo Estruturas de Repetição. Givanaldo Rocha

Algoritmos. Prof. Jonatas Bastos Site:

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

INFORMÁTICA APLICADA AULA 05 LINGUAGEM DE PROGRAMAÇÃO C++

Estruturas de Repetição

Programação de Computadores Profa Jacqueline 1

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C.

Transcrição:

Algoritmos e Programação de Computadores1 Prof. Eduardo 1 1. ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição é utilizada para fazer com que um pedaço (trecho) do programa seja executado n vezes, ou seja, quando um trecho do algoritmo ou até mesmo o algoritmo principal precisa ser repetido. O número de repetições pode ser fixo ou estar atrelado a uma condição. Assim, existem estruturas para tais situações. Existem 3 tipos de comandos de repetição: para / for (com teste numérico) enquanto / while (com teste lógico no ) repita até que / do...while (com teste lógico no fim) As estruturas de repetição definem os chamados loops (laços); loops numéricos e loops lógicos (com teste no e com teste no fim). 1.1. O comando para ou for Neste caso tem-se uma estrutura que define um loop numérico (ou automático). Essa estrutura de repetição é utilizada quando se sabe o número de vezes que um trecho do algoritmo deve ser repetido. Forma geral (algoritmo): para ivalor até valorfim faça inicio comando;... Fim para Forma geral (em C): No trecho de algoritmo, o comando1 e o comando serão executados utilizando-se a variável i como controle 1, e seu conteúdo irá variar do valor até o valorfim. Também pode ser informada a 1 Utilizamos uma variável que será incrementada a cada repetição, isto é, a cada repetição contamos +1 na variável, até um valor de acordo com o número de vezes que queremos repetir.

Algoritmos e Programação de Computadores1 Prof. Eduardo informação do passo (entre colchetes porque é opcional). O passo indica como será a variação de controle, veja: Forma geral com a informação do passo (algoritmo): para VarCont até fim faça [passo] inicio comando;... Fim para Por exemplo, quando for indicado passo, a variável de controle será aumentada em unidades a cada iteração até atingir o valor final. Quando a informação do passo for suprimida, isso significa que o incremento ou o decremento da variável de controle será de 1 unidade. Quando houver apenas um comando a ser repetido, os marcadores de bloco inicio ou e fim para ou poderão ser suprimidos. Exemplos: para i1 até 10 faça escreva(i); for(i=1;i<=10;i++) printf(i); O comando escreva(i) será executado dez vezes, ou seja, para i variando de 1 a 10. Assim, os valores de i serão: 1,, 3, 4, 5, 6, 7, 8, 9 e 10. para j1 até 9 faça [passo ] escreva(j); for(j=1;j<=9;j=j+)//j+= printf(j); O comando escreva(j) será executado cinco vezes, ou seja, para j variando de 1 a 10, de em. Assim, os valores de j serão: 1, 3, 5, 7 e 9. Quando se utiliza a estrutura de um loop numérico deve-se sempre observar o seguinte: 1) Embora o C permita, dentro do loop é perigoso fazer atribuições à variável de controle, pois seu valor deve ser alterado pela própria estrutura. ) É permitido criar laços aninhados; assim todas as instruções do laço mais interno serão integralmente executadas prioritariamente para cada valor da variável de controle do laço mais externo. No trecho do código abaixo a palavra Palmeiras será exibida 0 vezes, pois como o loop mais externo (controlado pela variável i) roda 4 vezes, então a cada rodada de i o loop mais interno (controlado por j) rodará 5 vezes. para i1 até 4 faça para j até 5 faça escreva( Palmeiras ); fim para for(i=1;i<=4;i++) for(j=1;j<=5;j++) printf( Palmeiras ); 1.. O comando enquanto ou while Essa estrutura de repetição é utilizada quando não se sabe o número de vezes que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada quando se conhece esse número. Essa estrutura baseia-se na análise de uma condição. A repetição será feita enquanto a condição mostrar-se verdadeira. Existem situações em que o teste condicional dessa estrutura, que fica no, resulta em um valor falso logo na primeira comparação. Nesses casos, os comandos de dentro da estrutura de repetição não serão executados.

Algoritmos e Programação de Computadores1 Prof. Eduardo 3 Forma geral (em algoritmo): enquanto(condição) Forma geral (em C): while(condição) Enquanto a condição for verdadeira, o comando1 será executado. enquanto(condição) comando; fim enquanto while(condição) comando; Enquanto a condição for verdadeira, o comando1 e o comando serão executados. Observe que, como o teste lógico é realizado no, deverá haver alguma instrução para forçar a entrada no loop, ou seja, uma inicialização fazendo com que a condição se torne verdadeira, pelo menos na primeira execução. Veja: Veja uma simulação: x1; y5; enquanto(x < y) faça xx + ; y y + 1; fim enquanto Simulação: x y Valores 1 5 Valores iniciais 3 6 5 7 7 8 9 9 Valores obtidos dentro da estrutura de repetição 1.3. O comando repita até Neste outro tipo de loop lógico o teste é feito no fim do bloco de instruções. Essa estrutura de repetição é utilizada quando não se sabe o número de vezes que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada quando se conhece esse número. Essa estrutura baseia-se na análise de uma condição. A repetição será feita enquanto a condição mostrar-se verdadeira. A diferença entre a estrutura enquanto e a repita é que nesta última os comandos serão repetidos pelo menos uma vez, já que a condição de parada se encontra no final.

Algoritmos e Programação de Computadores1 Prof. Eduardo 4 Forma geral (em algoritmo): repita comandos; até(condição); Forma geral (em C): do comandos; while(condição); No caso do algoritmo, ou seja repita até, os comandos serão executados até a condição se tornar verdadeira. Já no caso em C, ou seja, do...while, os comandos serão executados até a condição se tornar falsa. Veja uma simulação: x1; y5; repita xx + ; y y + 1; até(x >= y) Simulação: x y Valores 1 5 Valores iniciais 3 6 5 7 7 8 9 9 Valores obtidos dentro da estrutura de repetição 1.4. Execuções dos laços As estruturas de repetições levam a execuções de trechos de códigos uma ou várias vezes. Mas quantas vezes uma estrutura de repetição é executada? O programador pode obter uma prévia noção de quantas vezes determinado trecho de código do seu algoritmo será executado. Quando se utiliza apenas uma estrutura (um laço), descobrir essa quantidade é trivial, porém, em situações em que são utilizadas estruturas de repetição aninhadas, ou seja, um laço dentro de outro laço, obter essa quantidade nem sempre é simples e geralmente é obtida pelo método do chute ou, ainda, baseando-se em progressão aritmética (PA) e progressão geométrica (PG). O objetivo é que, ao elaborar um algoritmo, o aluno consiga evidenciar quantas vezes um trecho de algoritmo (código de programa) será repetido dentro de uma sequência de repetições.

Algoritmos e Programação de Computadores1 Prof. Eduardo 5 Uma série em que a a 1 r, onde r é constante, é uma PA. Utilizam-se as seguintes fórmulas: (1) a a ( 1) r 1, onde a é um termo de ordem, r a razão e a quantidade de termos; ( a a ) () a soma da PA, ou seja, S 1. Uma série a a 1,,, a, onde a a. r, com r 1 constante é uma PG. Utilizamos as seguintes fórmulas: (1) a a. 1 1 r e () a soma da PG, a.( r 1) ou seja, S 1, se > 1. r 1 A seguir serão apresentados cinco exemplos. Em alguns é usada a função menor inteiro (ou piso) que é a função que converte um número real x no maior número inteiro menor ou igual a x e é representada por x. Exemplos: (1) para i1 até n faça escreva( O valor de i é:,i); O laço executa n vezes. () para i1 até n faça para ji até n faça S; Fim para i j Executa S 1 1..n n..n n-1 3 3..n n-...... n n 1 O laço executa: (P.A.): n + n-1 + n- + n-3 +... + 1 a1 = n a = 1 r = -1 = n *( a 1 a ) n* ( n 1) n n

Algoritmos e Programação de Computadores1 Prof. Eduardo 6 (3) i = 1; enquanto( i 10 ) C; i = i + 1; Executa n vezes. (4) i = 4; enquanto( i n) C; i = i + n O laço executa 1 vezes. A variável i assume valores em PA. (5) i := 1; enquanto( i n) C; i := i * A variável i assume valores em PG. O laço executa: (P.G.): 1,, 4, 8,..., n a1 = 1 a = n r = =? a a r * 1 1 1 n 1* 1 n 1 log log 1 log n log n 1 n