CAPÍTULO 7 - ESTRUTURAS DE CONTROLE DE ITERAÇÕES

Tamanho: px
Começar a partir da página:

Download "CAPÍTULO 7 - ESTRUTURAS DE CONTROLE DE ITERAÇÕES"

Transcrição

1 CAPÍTULO 7 - ESTRUTURAS DE CONTROLE DE ITERAÇÕES INTRODUÇÃO As estruturas de controle de iterações são comuns nos algoritmos. Elas são necessárias quando um determinado trecho do algoritmo, representando o mesmo comportamento padrão, deve ser escrito, seqüencialmente, mais de uma vez. Através do uso das estruturas de controle de iterações, nós escrevemos o trecho algorítmico apenas uma vez, mas o mesmo poderá ser executado várias vezes. Sobre o controle do número de vezes que um trecho do algoritmo deve ser executado, cabe-nos dizer que ele poderá ser conhecido ou não. Quando o número de vezes que um trecho de algoritmo deve ser repetido é conhecido, dizemos que a repetição será controlada por um contador de iterações. Quando o número de repetições exigidas é desconhecido, dizemos que a mesma será controlada por condição de iterações. Esteticamente, não existem diferenças entre estas duas naturezas de estrutura. As diferenças entre elas se escondem na lógica que rege o funcionamento da ação de repetição, ou seja, ela será mais nítida na parte dinâmica do algoritmo (quando o estivermos executando). Um exemplo prático destas situações, poderia ser: A - correr 10 voltas em uma pista de atletismo; B - correr em volta de uma pista de atletismo, até chover. Na situação A a repetição da ação correr em volta da pista está sendo controlado por um contador que começa de zero e é incrementado de uma unidade para cada volta completada. Quando o contador atingir o valor 10, a repetição da ação deverá ser interrompida. Na situação B a repetição da ação pode ser interrompida em qualquer instante entre zero e infinitas voltas. Só depende das condições meteorológicas. Neste caso, a interrupção da repetição da ação será feita logicamente, bastando que a cada instante o atleta verifique as condições do tempo para continuar correndo ou não. Note que se ele entra na pista e em seguida verificar as condições do tempo, e constatar que está chovendo, ele não correrá nenhuma volta. Agora, por outro lado, se nunca mais chover naquele local, o atleta ficará "eternamente" correndo em volta da pista de atletismo (entrará em looping) ITERAÇÕES CONTROLADAS POR CONTADOR Vamos supor o seguinte problema: Faça um algoritmo que some os números inteiros entre 1 e 5, inclusive.

2 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 75 var num1, num2, num3, num4, num5, soma : inteiro; leia (num1, num2, num3, num4, num5); soma num1 + num2 + num3 + num4 + num5; escreva (soma); Esta é uma solução trivial do problema dado. Note que se expandíssemos o limite superior de 5 para a solução poderia ser feita utilizando o mesmo padrão. Entretanto, para esta nova solução você teria um "pouquinho" mais de trabalho para construir a expressão aritmética. Vamos tentar uma nova solução utilizando os identificador soma (ver figura 7.1), o qual terá a função de somar os números pertencentes ao intervalo dado, e o identificador i que terá a função de gerar os números pertencentes ao intervalo um a um. var soma, i : inteiro; soma 0; i 1; soma soma + i; {não foi somado ninguém ainda} {i começa representando o 1. valor do intervalo} {atribua a soma o valor associado a ela somado com o valor associado a i} {obtenha o próximo valor do intervalo somando uma unidade ao valor atual de i} soma soma + i; {acumule em soma o novo valor de i} {gere o próximo valor de i} {as próximas ações são idênticas} soma soma + i; soma soma + i; soma soma + i; escreva (soma); Obviamente, se eu tivesse que fazer isto um milhão de vezes, eu escolheria o padrão da primeira solução, por ser mais sintético que o segundo padrão de solução.

3 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 76 soma 0; i 1; soma soma + 1; soma soma + 1; soma soma + 1; soma soma + 1; soma soma + 1; soma soma + 1; escreva (soma); Figura 7.1 Somatório de números pertencentes a um dado intervalo. Mas no segundo padrão, podemos notar que as instruções: soma soma + i;

4 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 77 aparecem repetidas e em seqüência, apesar de em cada figuração destas instruções elas estão manipulando valores diferentes. O uso da estrutura de iteração permitirá o mesmo efeito que o efetuado pelas repetições textuais, com a diferença de que as instruções repetidas, serão escritas uma única vez. A sintaxe geral da estrutura de repetição é: enquanto condição inst1; inst2; inst3; ; instn; enquanto condição inst1; inst2;...; instn; onde: enquanto é a estrutura de controle de iterações. condição pode ser um identificador do tipo lógico, ou uma expressão relacional, ou uma expressão lógica. inst1;...; instn forma o conjunto de instruções que podem ser executadas várias vezes. Como condição fornecerá sempre um valor do tipo lógico, a semântica desta estrutura é dada da seguinte forma: Se o valor avaliado em condição for verdadeiro, então o bloco que compõe as instruções de instl a instn é executado uma vez. Após a primeira execução do bloco de instruções, o valor de condição é reavaliado. Caso o seu resultado continue sendo verdadeiro, o bloco de instruções é executado novamente, e após o seu término uma nova avaliação de condição deve ser feita. Somente quando o valor avaliado em condição fornecer o valor falso é que este ciclo será interrompido. Note que, no momento em que a avaliação do valor de condição produzir o valor falso o bloco de instruções será ignorado, e o controle de execução deverá ser desviado para a primeira instrução após a estrutura enquanto. V F enquanto condição instx; inst1; inst2; inst3;...; instn; falso verdadeiro Fluxo a ser seguido quando o valor da condição for verdadeiro. Fluxo a ser seguido quando o valor da condição for falso.

5 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 78 Assim o nosso algoritmo para somar os 5 primeiros números naturais, fica da seguinte forma: var soma, i : inteiro; soma 0; i l ; enquanto i <= 5 soma soma + i; escreva (soma); soma 0; i 1; enquanto i <= 5 soma soma + 1; escreva (soma); Fazendo um teste de mesa: AÇÕES OBJETOS CONDIÇÃO var soma, i : inteiro; soma i i <= 5 * soma 0; i 1; enquanto i <= verdadeiro soma soma + i; enquanto i <= verdadeiro soma soma + i; enquanto i <= verdadeiro soma soma + i; enquanto i <= verdadeiro soma soma + i; enquanto i <= verdadeiro soma soma + i;

6 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 79 enquanto i <= falso escreva (soma); * Apesar da expressão relacional i <= 5 não ser um objeto do algoritmo, ela foi colocada no teste de mesa devido ao fato do funcionamento da estrutura de repetição depender diretamente do valor, a qual sofre reavaliação a cada iteração. Agora se quiséssemos estender o limite superior para , basta apenas trocar a relação i <= 5 para i <= Mas podemos generalizar ainda mais esta solução, se o limite superior da série for um argumento de entrada. var soma, i, n : inteiro; {n = representa o limite superior do intervalo} leia (n); soma 0; i 1; enquanto i <= n soma soma + 1; {acumule em soma o valor de i} i i +1; {incremente uma unidade no valor de i} escreva (soma); Este algoritmo faz o somatório dos números inteiros positivos entre 1 e n, onde o valor de n deve ser fornecido em tempo de execução do algoritmo EXERCÍCIOS RESOLVIDOS R Sendo conhecido um conjunto com 10 números inteiros, um algoritmo que calcule a soma entre estes valores. Solução: Refinamento 1 - definir os objetos necessários; - atribuir valores iniciais; - conhecer cada um dos valores do conjunto, um a um. E para cada valor conhecido acumule-o no identificador soma; - informar o valor de soma.

7 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 80 Refinamento 2 {objetos necessários} - contador de iterações (i) para garantir que os 10 valores serão conhecidos e somados; - identificador (num) para representar cada valor do conjunto (um de cada vez); - identificador (soma) para ser o acumulador de cada número conhecido do conjunto. {atribuir valores iniciais} - o identificador i é o contador de iterações. Como no conjunto têm 10 valores para serem conhecidos e acumulados, poderemos fazer com que i comece com o valor 1, devendo ir até 10 de um em um; - o identificador soma é o somador dos números que estão sendo conhecidos. Como os valores no do processo não foram conhecidos nenhum número ainda, seu valor inicial deve ser zero; - o identificador num não possui valor inicial, pois ele deverá representar de um conjunto de números, que são argumentos de entrada; {conhecer cada um dos valores do conjunto, um a um. E para cada valor conhecido acumule-o no identificador soma } - enquanto i for inferior ou igual a 10, conheça um valor do conjunto, acumule-o em soma e incremente uma unidade em i; {informar o valor de soma} - escreva (soma); Refinamento 3 (ver figura 7.2) var num, soma, i : inteiro; {como argumentos de entrada existe um conjunto de 10 números, que serão representados por num, um a um} {valores iniciais} soma 0; i 1; enquanto i <= 10 leia(num); {conheça um número do conjunto} soma soma + num; {acumule-o em soma} {incremente uma unidade em i} escreva (soma); Faça um teste de mesa neste algoritmo para os valores [2, 5, 3, 0, -4, 4, 8, 9, 19, 22].

8 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 81 soma 0; i 1; enquanto i <= 10 leia (num); soma soma + num; escreva (soma); Figura 7.2 Fluxograma do exercício resolvido R.7.1. R Faça um algoritmo que calcule o fatorial de um número dado. Solução: Refinamento 1 - definir os objetos necessários; - atribuir valores iniciais; - conhecer o valor do número para cálculo do fatorial; - calcular o fatorial; - informar o valor do fatorial. Refinamento 2 O fatorial de um número n, inteiro positivo, é definido como sendo o produto entre todos os números entre 1 e n. e por definição 0! = 1, 1! = 1. n! = 1 * 2 * 3 *... * (n - 1) * (n)

9 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 82 Logo, o padrão de comportamento da função fatorial é: - comece o fatorial com o valor 1; - gerar os valores entre 1 e n, e para cada valor gerado multiplique-o com o valor atual do fatorial, atribuindo o resultado ao próprio fatorial; assim, {definir os objetos necessários} - Usaremos o identificador n para representar o número que se deseja calcular o fatorial; - Usaremos o identificador fat para representar o valor do fatorial; - Usaremos o identificador i para gerar os números entre 1 e n para serem usados no produtório; {atribuir valores iniciais} O padrão de comportamento do cálculo da função fatorial é: - comece o fatorial com o valor 1; - gerar os valores entre 1 e n, e para cada valor gerado multiplique-o com o valor atual do fatorial, atribuindo o resultado ao próprio fatorial; Assim, fat deve começar com 1, e i também deve começar com 1. {conheça o valor do número para cálculo do fatorial} leia (n); {calcular o fatorial} - gerar os valores entre 1 e n, e para cada valor gerado multiplique-o com o valor atual do fatorial, atribuindo o resultado ao próprio fatorial; {informe o valor do fatorial} escreva (fat); Refinamento 3 (ver figura 7.3) var n, fat, i : inteiro; {n representa o valor para cálculo do fatorial} {fat representa o valor do fatorial de n} {valores iniciais} fat 1; i 1; leia (n); enquanto i <= n {para todo i entre 1 e n} fat fat * i; {multiplique o valor de fat com o valor de i, armazene o resultado em fat} escreva (fat);

10 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 83 TESTE DE MESA (Cálculo de 3! ) AÇÕES OBJETOS CONDIÇÃO var n, fat, i : inteiro; n fat i i <= n fat 1; i 1; leia(n); enquanto i <= n verdadeiro fat fat * i; enquanto i <= n verdadeiro fat fat * i; enquanto i <= n verdadeiro fat fat * i; enquanto i <= n falso escreva (fat); fat 1; i 1; leia (n); enquanto i <= n fat fat * i; escreva (fat); Figura 7.3 Fluxograma do exercício resolvido R.7.2.

11 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES ITERAÇÕES CONTROLADAS POR CONDIÇÃO A sintaxe e a semântica das estruturas de iterações controladas por contador e por condição são idênticas. A única diferença está na forma de interrupção da repetição das ações. Na controlada por contador está sempre prevista, já a controlada por condição, a interrupção depende da ocorrência de determinado(s) fato(s) descritos nas instruções que formam o bloco de instruções que está sendo repetido. A situação, ou o conjunto de situações que provocam a interrupção do ciclo normalmente é chamado de flag. Quando trabalhamos com flags como forma de instrução de estruturas, devemos tomar os seguintes cuidados: 1.) garantir a hipótese de execução das instruções que compõe o bloco de instruções que podem ser executadas de forma iterativa; 2.) garantir que a execução iterativa do bloco de instruções pode ser interrompido em qualquer instante. Uma estrutura de repetição controlado por condição, deverá ter sempre o seguinte aspecto: Situação que pode provocar a ocorrência do flag enquanto não ocorrer o flag instl ; inst2;...; instn; situação que pode provocar a ocorrência do flag; enquanto não flag inst1; inst2;...; instn; flag; V F Note que deveremos ter sempre uma ação que permita uma situação que pode provocar a ocorrência do flag antes da estrutura, para que se tenha a possibilidade de executar as instruções que compõe o bloco de instruções da estrutura, e dentro do bloco de instruções da estrutura deveremos ter a mesma ação, devendo figurar como sendo a última instrução do bloco. Vejamos o seguinte exemplo (exemplo1): Faça um algoritmo que some os números pertencentes a um conjunto. Neste conjunto só existem números inteiros e positivos. Note que não é dito no enunciado do problema que o número de elementos que o compõe seja conhecido. Mas é dada uma restrição; os elementos nele contidos são inteiros e positivos.

12 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 85 Refinamento 1 - definir os objetos necessários; - atribuir os valores iniciais; - conhecer o primeiro número do conjunto; - enquanto o número conhecido for válido, próximo número; - informar o valor do somatório. Refinamento 2 {objetos necessários} num para representar os elementos do conjunto um a um; soma para acumular os elementos válidos do conjunto. {valores iniciais} soma deve começar com o valor zero, por se tratar de um identificador somador. {núcleo do processo de somatória} leia (num); {conhecendo o primeiro valor do conjunto} enquanto num for um elemento válido acumule num em soma; leia(num); {conheça o próximo valor do conjunto} escreva (soma); Refinamento 3 (ver figura 7.4) var num, soma : inteiro; {valores iniciais} soma 0; leia (num); {conheça o 1. número do conjunto} enquanto num > 0 {enquanto for um número válido} soma soma + num; {acumule-o em soma} leia (num); {conheça o próximo número do conjunto} escreva (soma); Observe que, num serve como flag para interrupção da estrutura iterativa. Como, leia (num) é a única instrução que pode modificar o valor de num neste algoritmo, então ela deve aparecer no algoritmo em duas situações. Uma antes da estrutura de iteração, para

13 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 86 garantir a possibilidade de execução das instruções que compõe a estrutura, e a outra, como sendo a última instrução do bloco de instruções da estrutura, para garantir que os outros elementos do conjunto tenham seus valores conhecidos e ter a possibilidade de fazer a interrupção da execução. Para interromper a execução da estrutura, em uma das instruções leia (num), temos que fornecer um número menor ou igual a zero. Se isto for feito na primeira instrução leia (num), então as instruções que compõe a estrutura não serão executadas nenhuma vez, fazendo com que o valor associado ao identificador soma seja zero, cujo valor lhe foi atribuído como valor inicial. Caso contrário, isto poderá ser feito em qualquer instante, quando estivermos executando a instrução leia (num) pertencente ao bloco de instruções da estrutura iterativa. soma 0; leia (num); enquanto num > 0 soma soma + num; leia (num); escreva (soma); Figura 7.4 Fluxograma do exemplo1. TESTE DE MESA (somatório de [5,8,3]) AÇÕES OBJETOS CONDIÇÃO var num, soma : inteiro; num soma num>0 soma 0; leia (num); enquanto num > verdadeiro soma soma + num; leia (num); 8 5 -

14 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 87 enquanto num > verdadeiro soma soma + num; leia (num); enquanto num > verdadeiro soma soma + num; leia (num); enquanto num > falso escreva (soma); EXERCÍCIOS RESOLVIDOS R Faça um algoritmo que calcule o somatório a seguir, até que um de seus termos produza um valor inferior a 0, S = x 2 + x 3 + x 4 + x 5 + x para qualquer x > 0. Solução: Vejamos primeiro, o padrão de comportamento da série apresentada. - Todos os termos possuem um numerador e um divisor (denominador); - Os numeradores são constituídos apenas por constantes numéricas, não têm parte literal; - O numerador do primeiro termo é l. Para obter o numerador do segundo termo, basta somar uma unidade no valor do primeiro. E para obter o terceiro, somamos uma unidade no valor do segundo, e assim sucessivamente; - O divisor (denominador) de cada termo é constituído de uma única parte literal, somado com uma constante. O valor desta constante tem a mesma variação que o numerador para cada termo; - Entre termos existe uma alternância de sinal. O primeiro termo é positivo, o segundo é negativo,...e assim por diante; - Para o cálculo do valor da série apresentada, é necessário ser conhecido, previamente, o valor do identificador x.

15 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 88 Refinamento 1 - definir os objetos necessários á solução algorítmica do problema; - atribuir valores iniciais necessários; - conhecer o valor do argumento de entrada; - calcular o valor da série apresentada; - informar o resultado. Refinamento 2 - objetos necessários x é o argumento de entrada ao algoritmo; s é o argumento de saída do algoritmo; termo será usado no cálculo de cada termo da série; sinal será usado para fazer a alternância de sinal entre os termos.os únicos valores que poderão ser atribuídos ao identificador sinal serão +1 e -1; i representará o numerador de cada termo. - valores iniciais s : poderá ser inicializado com o valor zero, ou com o valor do primeiro termo da série. sinal : como o primeiro termo da série é positivo, o valor de sinal será + l. i : o valor do numerador do primeiro termo é 1; - conhecer o valor do argumento de entrada leia (x); - calcular o valor da série - calcule o valor do primeiro termo; - enquanto o valor do termo for superior a 0, acumule o valor do termo, com sinal apropriado em s; - troque o valor de sinal; - calcule o numerador do próximo termo; - calcule o próximo termo; - informar o resultado; escreva (s);

16 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 89 Refinamento 3 (ver figura 7.5) var i, sinal : inteiro; x, s, termo : real; {valores iniciais} s 0; sinal 1; i 1; leia (x); termo i / (i + x); enquanto termo > s s + sinal * termo; sinal - sinal ; i i + l; termo i / (i + x) ; escreva (s); {cálculo do 1. termo} {cálculo dos próximos termos} {alterando o valor de sinal} {numerador do próximo termo} s 0; sinal 1; i 1; leia (x); termo i / (i + x); enquanto termo > s s + sinal * termo; sinal -sinal; termo i / (i + x); escreva (s); Figura 7.5 Fluxograma do exercício resolvido R.7.3.

17 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 90 R Foi feita uma pesquisa na universidade entre os acadêmicos devidamente matriculados na instituição. Todos os acadêmicos que estavam presentes no dia da pesquisa preencheram o seguinte questionário: Sexo? (M - Masculino, F - Feminino): Idade? (em anos): Gosta do curso que está fazendo? (S - Sim, N - Não): O número de pessoas que responderam ao questionário é indeterminado. Faça um algoritmo que seja capaz de fazer os seguintes cálculos: a) o número de homens entrevistados; b) o número de mulheres entrevistadas; c) o percentual de mulheres entre todos os entrevistados; d) quantos homens com menos de 23 anos não gostam do curso que estão fazendo. Solução: Refinamento 1 - definir objetos necessários; - atribuir os valores iniciais; - conhecer os dados de cada ficha de entrevista e para cada ficha verificar se foi respondida por um homem ou por uma mulher. Se for homem conte mais uma pessoa do sexo masculino, e verifique a sua idade, se for inferior a 23 anos então, verifique a sua resposta se gosta ou não do curso. Se ele não gostar do curso; conte mais um homem que não gosta do curso; - os cálculos finais; - informar os resultados. Refinamento 2 - objetos necessários Sexo : representará o sexo de cada um dos indivíduos entrevistados; Idade: representará a idade de cada um dos entrevistados; Resp : representará a resposta, se gosta ou não do curso, de cada um dos entrevistados; ContaM: terá a função de contar o número de pessoas do sexo masculino que foram entrevistados; ContaF: terá a função de armazenar o número de pessoas do sexo feminino que foram entrevistadas; Perc: terá a função de armazenar o cálculo do percentual de pessoas do sexo feminino que foram entrevistadas; ContaI: terá a função de contar quantos homens com menos de 23 anos estão insatisfeitos com o curso.

18 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 91 OBS.: {Sexo e Resp são definidos do tipo caractere pelo motivo de receberem como dados as letras M ou F (Sexo), S ou N (Resp)} - valores iniciais Todos os objetos contadores deverão começar com o valor zero. - Conhecer dados das fichas, fazer as verificações e contagens leia dados da primeira ficha; enquanto houver ficha para ser processada se a ficha foi respondida por uma mulher então conte mais uma pessoa do sexo feminino; senão conte mais uma pessoa do sexo masculino; se sua idade for inferior a 23 anos então, se não gosta do seu curso então conte mais um homem com menos de 23 anos insatisfeito com o curso; leia os dados da próxima ficha; Um problema é saber determinar se há ou não mais fichas para serem processadas. Podemos utilizar um flag para saber se a última ficha já foi processada ou não. Para a escolha do flag podemos utilizar um dos identificadores do conjunto de argumentos de entrada do algoritmo, como por exemplo, o identificador Sexo. Sabemos que o identificador Sexo somente pode assumir os valores F ou M, logo qualquer outro valor que seja atribuído a este identificador não terá uma conotação válida e, portanto, podendo servir como forma de interrupção da estrutura de repetição. - cálculos finais - calcule o percentual de mulheres entre os entrevistados. % mulheres = Total de Mulheres Total de Mulheres X100 + Total de Homens - informar os resultados escreva (ContaM, ContaF, Perc, ContaI);

19 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 92 Refinamento 3 (ver figura 7.6) var ContaM, ContaF, ContaI, Idade : inteiro; Perc : real; Sexo, Resp : caractere; {valores iniciais} ContaM 0; ContaF 0; ContaI 0; leia (Sexo, Idade, Resp); {conheça os dados da 1ª. Ficha} enquanto (Sexo = 'M') ou (Sexo = 'F') se Sexo = 'F' {se a ficha foi respondida por uma mulher} então ContaF ContaF + 1 {mais uma mulher} senão {só pode ser homem} ContaM ContaM + l; se Idade < 23 {com menos de 23 anos} então se Resp = 'N' {insatisfeito com o curso} então ContaI ContaI + 1; leia (Sexo, Idade, Resp); {conheça os dados da próxima ficha} Perc ContaF / (ContaF + ContaM) * 100; escreva (ContaF, ContaM, Perc, ContaI); QUEBRA DE NÍVEL Existem muitos problemas que para serem resolvidos de forma satisfatória, necessitam do aninhamento de estruturas iterativas. O fato de uma estrutura iterativa estar dentro de outra estrutura, dizemos que o algoritmo que as contém é quebrado em nível. Para haver a quebra de nível, necessita-se ter, pelo menos, duas estruturas iterativas aninhadas. enquanto condição1... enquanto condição

20 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 93 ContaM 0; ContaF 0; ContaI 0; leia (Sexo, Idade, Resp); enquanto Sexo= F ou Sexo= M se Sexo = F ContaF ContaF + 1; ContaM ContaM + 1; se Idade < 23 se Resp = N ContaI ContaI + 1; leia (Sexo, Idade, Resp); Perc ContaF / (ContaF + ContaM) * 100; escreva (ContaF, ContaM, Perc, ContaI); Figura 7.6 Fluxograma do exercício resolvido R.7.4.

21 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES EXERCÍCIOS RESOLVIDOS R Dado um conjunto contendo dez números inteiros positivos, um algoritmo que calcule o fatorial de cada um deles. Solução: Refinamento 1 - definir os objetos necessários; - atribuir valores iniciais; - conhecer cada um dos valores do conjunto, e para cada valor conhecido calcular o seu fatorial, informando o resultado obtido. Refinamento 2 - objetos necessários variação será de l a 10 de uma em uma unidade; num : para representar um a um, os números pertencentes ao conjunto de valores dados; fat : para representar o cálculo do fatorial de cada valor do conjunto de dados; cont : contador de iterações para conhecimento dos valores do conjunto de dados. Como existem 10 valores no conjunto, sua faixa de i : será usado como objeto auxiliar no cálculo do fatorial de um número qualquer. - valores iniciais Como no conjunto existem 10 valores, os quais precisam ter seus valores conhecidos, um a um, precisamos de um contador que nos indique qual a posição (1ª., 2ª.,...) do número no conjunto que deverá ter seu fatorial calculado. Isto, para evitar que algum número seja esquecido, ou que seja solicitado uma maior quantidade de números do que aquela existente no conjunto. Sabendo que no conjunto existem 10 números, e quem irá controlar a posição do número que será conhecido para o cálculo do fatorial é o identificador cont, podemos fazer com que seu valor inicial seja 1, indicando que será manipulado o primeiro número do conjunto. O valor final de cont será 10 e sua variação será de uma unidade (1). - conhecer os valores do conjunto, calcular os fatoriais e informar os resultados. - enquanto não forem conhecidos os 10 valores do conjunto, - conheça um valor de dado; - calcule o seu fatorial; - informe o resultado do fatorial calculado.

22 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 95 Refinamento 3 ae(num); as(fat); {Conjunto de números inteiros e positivos} {Conjunto de valores de fatoriais} objetos num, fat, cont, i : inteiro; cont 1; enquanto cont <= 10 - conhecer um valor de dado do conjunto; - calcule o fatorial do valor conhecido; - informe o valor do fatorial calculado; - cont cont + l; {aponte para o próximo número} Refinamento 4 ae(num); as(fat); {Conjunto de números inteiros e positivos} {Conjunto de valores de fatoriais} objetos num, fat, cont, i : inteiro; cont 1; enquanto cont <= 10 - leia (num); {calcule o fatorial de num} - atribua os valores iniciais para o cálculo do fatorial; - calcule o fatorial de num e atribua o resultado ao identificador fat; - escreva (fat); - cont cont + 1; {aponte para o próximo número}

23 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 96 Refinamento 5 var num, fat, cont, i : inteiro; cont 1; enquanto cont <= 10 leia (num); {valores iniciais para o cálculo do fatorial} i 1; fat 1; enquanto i <= num fat fat * i; escreva (fat); cont cont + 1; {aponte para o próximo número} R Uma determinada empresa, em fase de organização, deseja fazer um levantamento do montante gasto com a folha de pagamento. O resultado deste levantamento deverá conter os seguintes dados: - Qual o total da folha de pagamento entre todos os funcionários da empresa? - Qual o total da folha de pagamento em cada setor da empresa? - Qual o valor do salário do funcionário melhor remunerado de cada setor? Faça um algoritmo que seja capaz de fazer estes levantamentos, sabendo que os dados estão organizados da seguinte forma: - Cada setor possui um número inteiro positivo para a sua identificação; - Todos os salários, individuais, dos funcionários estão separados por setor; - Para cada setor existe uma planilha contendo: o número da identificação do setor, e os ganhos salariais de cada um dos funcionários que o compõe. Solução: Refinamento 1 - definir os objetos necessários; - atribuir valores iniciais; - conhecer para cada setor, o salário de cada funcionário, acumular o salário de cada funcionário no total gasto pelo setor, verificar qual o maior salário deste setor. Acumular o total gasto por setor no total gasto pela empresa. Informe os resultados obtidos.

24 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 97 Refinamento 2 - objetos necessários Setor : para representar um a um, os setores da empresa. Como não é mencionado o total de setores existentes na empresa, adotaremos o seguinte critério: o setor número zero não existe, e a especificação deste valor indicará que não existem mais setores a serem processados, ou que todos os setores já foram processados, ou que todos os setores já foram processados, e portanto este setor (zero) deve ser desconsiderado; Sal : para representar o salário de cada funcionário da empresa. Como, também, não existem informações sobre o número de funcionários existentes em cada setor, adotaremos o critério de que o valor do salário zero é de um funcionário inexistente, e portanto não deverá ser considerado, mas este valor (zero) de salário servirá para indicar que ou não existem funcionários lotados naquele setor, ou todos os salários dos funcionários pertencentes ao mesmo já foram processados; TotSet : representará o acumulador de salários para cada setor da empresa; Maraja : representara o valor do maior salário de cada setor da empresa; TotEmp : representará o acumulador de salários gasto em cada setor. - Valores iniciais Existem duas situações para atribuição de valores iniciais, uma quando estamos tratando da empresa como um todo, no caso o montante gasto pela empresa na sua folha de pagamento, e a outra quando estivermos tratando dos setores da empresa, no caso o montante gasto por setor em salário mais alto de cada setor. No caso dos dois acumuladores de salários, por se tratarem de totalizadores (TotSet, TotEmp), seus valores iniciais devem ser zero (lembre-se, o zero é um elemento neutro na adição e subtração). E o representante do maior salário de cada setor (Maraja), pelas restrições do problema (não existe salário inferior ou igual a zero) deverá ser inicializado com o valor zero, pois certamente existe alguém em cada setor que ganha mais do que isto. - Ações - atribuir valores iniciais; - conhecer o número identificação da cada setor da empresa; - para cada setor conhecido e enquanto houver setor não computado, conheça o salário de cada funcionário integrante deste setor; - para cada salário válido conhecido, acumule-o em TotSet, e verifique se o mesmo é o maior salário até este momento para este setor; - acumule o total de salários de cada setor em TotEmp (total de salários pago pela empresa; - informar os resultados já obtidos.

25 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 98 Refinamento 3 ae(setor, Sal); {Conjunto de setores, conjunto de salários} as(totset, Maraja, TotEmp); {Conjunto de salários acumulados, conjunto de maiores salários, total gasto pela empresa} objetos Setor : inteiro; Sal, TotEmp, TotSet, Maraja : real; TotEmp 0; conheça identificação do setor que será processado enquanto o setor for válido conheça o salário de cada funcionário do setor e, para cada salário válido conhecido acumule-o em TotSet verificando também, se este é o maior salário, até o momento, para este setor; acumule o total de salários de cada setor em TotEmp (total de salários pago pela empresa; informe o total gasto neste setor; informe o maior salário deste setor; conheça a identificação do próximo setor; informar o total gasto pela empresa; Refinamento 4 ae(setor, Sal); {Conjunto de setores, conjunto de salários} as(totset, Maraja, TotEmp); {Conjunto de salários acumulados, conjunto de maiores salários, total gasto pela empresa} objetos Setor : inteiro; Sal, TotEmp, TotSet, Maraja : real; TotEmp 0; leia (Setor); enquanto Setor > 0 {enquanto houver setor válido} conheça o salário de cada funcionário do setor e, para cada salário válido conhecido acumule-o em TotSet verificando também, se este é o maior salário, até o momento, para este setor; TotEmp TotEmp + TotSet; escreva (TotSet); escreva (Maraja); leia (Setor); escreva (TotEmp);

26 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 99 Refinamento 5 Dentro de cada setor existem funcionários, dos quais temos que conhecer os salários para podermos totalizar o montante gasto em salários em cada setor e também, podemos verificar qual o valor do salário mais alto de cada setor. Para conhecermos o total de salários de cada setor utilizaremos o identificador somador TotSet. Como se trata de um somador, seu valor inicial deve ser zero. Mas note que, este valor inicial deve ser atribuído à TotSet toda vez que formos processar um novo setor. E o mesmo acontece com o identificador Maraja, mesmo não se tratando de um somador, ele terá a função de armazenar o maior salário do setor, processados até um determinado instante. Assim, necessitamos de um valor inicial para servir como parâmetro de comparação. Assim teremos: ae(setor, Sal); {Conjunto de setores, conjunto de salários} as(totset, Maraja, TotEmp); {Conjunto de salários acumulados, conjunto de maiores salários, total gasto pela empresa} objetos Setor : inteiro; Sal, TotEmp, TotSet, Maraja : real; TotEmp 0; leia (Setor); enquanto Setor > 0 {enquanto houver setor válido} - atribuir valores iniciais, necessários ao processamento dos dados de cada setor; leia (Sal); {conhecendo o salário do 1º. Funcionário do setor} enquanto o salário for válido - acumule este salário conhecido no total gasto por este setor em TotSet; - verifique se este salário é o maior até o momento, se for atribua-o ao identificador Maraja; - conheça o próximo salário deste setor; TotEmp TotEmp + TotSet; escreva (TotSet); escreva (Maraja); leia (Setor); escreva (TotEmp);

27 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 100 Refinamento 6 ae(setor, Sal); {Conjunto de setores, conjunto de salários} as(totset, Maraja, TotEmp); {Conjunto de salários acumulados, conjunto de maiores salários, total gasto pela empresa} objetos Setor : inteiro; Sal, TotEmp, TotSet, Maraja : real; TotEmp 0; leia (Setor); enquanto Setor > 0 {enquanto houver setor válido} TotSet 0; marajá 0; {alguém receberá mais do que isto. Este valor serve como base para a 1ª. Comparação} leia (Sal); {conhecendo o salário do l. funcionário do setor} enquanto Sal > 0 TotSet TotSet + sal; se Sal > Maraja {existe alguém que recebe mais que o Maraja atual} então Maraja Sal; {Temos um novo Maraja} conheça(sal); TotEmp TotEmp + TotSet; escreva (TotSet); escreva (Maraja); leia (Setor); escreva (TotEmp); OUTRAS ESTRUTURAS DE CONTROLE DE CICLOS Além da estrutura enquanto ainda existem mais duas estruturas que podem ser usadas no controle de ciclos. A estrutura repita até e a estrutura para até passo REPITA ATÉ A estrutura repita até é muito parecida com a estrutura enquanto, por ter a interrupção da execução das ações controladas por uma condição. A sua sintaxe:

28 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 101 repita até condição; inst1; inst2; ; instn; onde: repita até é a instrução de controle de ciclo; inst1;...; instn são as instruções que compõe o bloco de instruções que podem ser executadas várias vezes; condição pode ser uma expressão relacional, ou uma expressão lógica, ou um identificador lógico. As diferenças entre as duas estruturas são: A estrutura enquanto tem interrupção do ciclo no, enquanto a estrutura repita até em interrupção do ciclo no Isto quer dizer que na estrutura repita até o bloco de instruções é executado pelo menos uma vez, para depois ser avaliado o valor de condição. Na estrutura enquanto o número mínimo de vezes que um ciclo pode ser executado é zero; A forma de interrupção do ciclo é diferente nas duas estruturas. Na estrutura enquanto o ciclo é repetido enquanto a condição avaliada fornecer o valor verdadeiro. Na estrutura repita até o ciclo será repetido até que a condição avaliada forneça o valor verdadeiro, ou seja, o valor falso de condição indica a ação de repitibilidade do bloco de instruções. repita O bloco de instruções deve ser executado pelo menos uma vez, independente do valor avaliado em condição. inst1; inst2;...; instn; até condição; FALSO VERDADEIRO instx; EXERCÍCIO RESOLVIDO R Dado um número n inteiro, um algoritmo que seja capaz de informar o valor 0 (zero) se o mesmo for primo, ou 1 (um) se não for primo.

29 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 102 Solução: Por definição, todo o número primo só pode ser dividido por 1 e por ele mesmo. Logo, para verificar se um número é primo ou não, basta dividí-lo por um conjunto de números entre 2 e n - 1. Se neste intervalo houver algum valor que é divisor de n, então ele não é primo, caso contrário o será. Com esta definição, podemos fazer algumas simplificações matemáticas, para evitar operações desnecessárias. - Qualquer número n, só pode ser dividido, em uma divisão inteira por um número que seja igual ou inferior á sua metade; - Os números inteiros positivos inferiores ou igual a 3 são primos. Assim: var n, meio, resto, divisor, res : inteiro; NãoPrimo : lógico; {n - representa o número que se quer saber se é primo, ou não; meio - guardará a metade inteiro de n; resto - para verificar se n é divisível por divisor; divisor - guardará um valor entre 2 e a metade de n, e será utilizado como divisor de n; res - guardará o resultado final do problema 0, ou 1; NãoPrimo - será utilizado como auxiliar, para descobrir se um determinado número é primo ou não. Os seus valores possíveis são verdadeiro, indicando que o número não é primo, ou falso, indicando que o número é primo} leia (n); NãoPrimo falso; {assumindo que n é primo} se n > 3 então divisor 2; meio n / 2 ; repita resto n - divisor * n / divisor ; se resto = 0 então NãoPrimo verdadeiro senão NãoPrimo falso; divisor divisor + l; até NãoPrimo ou ( divisor > meio); se NãoPrimo então res 1 senão res 0; escreva (res);

30 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES PARA ATÉ PASSO FAÇA A estrutura para até passo, difere das outras duas por ser controlada por um contador, e não por condição, como já foi visto. A sintaxe geral desta instrução é: para vc vi até vf passo vp inst1; inst2;...; instn; onde: para até passo é a estrutura de controle de ciclo, controlado por contador; vc é a variável de controle; vi representa o valor inicial de vc; vf representa o valor final de vc; vp representa o valor do passo com que vc deve ser incrementado a cada iteração; inst1;...; instn compõe o bloco de instruções que poderá ser executado várias vezes. A semântica de funcionamento desta instrução será ilustrada no exemplo a seguir.... para i até 5 passo 2 inst1; inst2;...; instn;... Quando iniciarmos a execução desta instrução, a variável de controle i recebe o valor inicial 1. Se este valor for inferior ou igual ao valor final, no caso 5, então o bloco de instruções é executado uma vez. Ao terminar a execução do bloco, a variável de controle i deve ter o seu valor atual incrementado com o valor do passo, 2, e este resultado, passa a ser o valor atual da variável de controle, i i + vp, ou seja, i Se este valor continuar sendo inferior ou igual ao valor final, então o bloco de instruções deve ser executado mais uma vez, e ao término da execução, a variável de controle deve ser incrementada com o valor do passo, repetindo a verificação da condição i <= vf. Quando a condição i <= vf não se verificar mais, a repetição da execução do bloco de instruções é encerrado, e o controle de execução deve ser passado para a primeira instrução que vier após esta estrutura.

31 CAPÍTULO 7 ESTRUTURAS DE CONTROLE DE ITERAÇÕES 104 Esta estrutura deve ser aplicada somente nos casos em que se conhece o número de vezes que o bloco de instruções vai ser repetido. O valor do passo é incrementado automaticamente na variável de controle ao fim de cada iteração EXERCÍCIO RESOLVIDO R Calcular o fatorial de um número inteiro positivo. Solução: var n, fat, i : inteiro; leia (n); fat 1; para i l até n passo 2 fat fat * i; escreva (fat);

CAPÍTULO 5 - UMA LINGUAGEM ALGORÍTMICA

CAPÍTULO 5 - UMA LINGUAGEM ALGORÍTMICA 5.1 - INTRODUÇÃO CAPÍTULO 5 - UMA LINGUAGEM ALGORÍTMICA Até agora, escrevemos alguns algoritmos utilizando uma linguagem com caráter narrativo. Nós praticamente contamos a história das ações praticadas

Leia mais

Estruturas de Controle

Estruturas de Controle UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Prof. Yandre Maldonado - 1 Estruturas de Controle Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Estrutura de Seleção Prof. Yandre

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 1

ESTRUTURAS DE REPETIÇÃO - PARTE 1 AULA 15 ESTRUTURAS DE REPETIÇÃO - PARTE 1 15.1 O comando enquanto-faca- Considere o problema de escrever um algoritmo para ler um número inteiro positivo, n, e escrever todos os números inteiros de 1 a

Leia mais

Estruturas de Controle. Estrutura de Seleção. Estrutura de Seleção

Estruturas de Controle. Estrutura de Seleção. Estrutura de Seleção UNIVERSIDADE ESTADUAL DE MARINGÁ DEPARTAMENTO DE INFORMÁTICA Prof. Yandre Maldonado - 1 Estruturas de Controle Prof. Yandre Maldonado e Gomes da Costa yandre@din.uem.br Estrutura de Seleção Prof. Yandre

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 3

ESTRUTURAS DE REPETIÇÃO - PARTE 3 AULA 17 ESTRUTURAS DE REPETIÇÃO - PARTE 3 17.1 O cálculo da média aritmética Considere o seguinte problema: dados um número inteiro positivo, n, e uma seqüência, x 1, x 2,..., x n, com n números reais,

Leia mais

Programação Estruturada

Programação Estruturada Algoritmos e Técnicas - Estruturas de Controle de Fluxo - Programação Estruturada Programação estruturada é a técnica de construir e formular algoritmos de uma forma sistemática. Utilizada para apresentar

Leia mais

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

Algoritmos - 5. Alexandre Diehl. Departamento de Física - UFPel Algoritmos - 5 Alexandre Diehl Departamento de Física - UFPel Estruturas usadas num algoritmo Estrutura sequencial Estrutura condicional Estrutura de repetição PCF2017 2 Estruturas usadas num algoritmo

Leia mais

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

Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas Condicionais e de Repetição 1 Comando while Deseja-se calcular o valor de: 1 + 2 + 3 +... + N. Observação: não sabemos, a priori, quantos termos

Leia mais

CONCEITOS DE ALGORITMOS

CONCEITOS DE ALGORITMOS CONCEITOS DE ALGORITMOS Fundamentos da Programação de Computadores - 3ª Ed. 2012 Editora Prentice Hall ISBN 9788564574168 Ana Fernanda Gomes Ascênsio Edilene Aparecida Veneruchi de Campos Algoritmos são

Leia mais

VETORES Motivação AULA 19

VETORES Motivação AULA 19 AULA 19 VETORES 19.1 Motivação Considere o problema de calcular a média aritmética das notas de 5 alunos de uma disciplina e determinar e escrever o número de alunos que obtiveram nota superior à média

Leia mais

Aula 5 Controle do Fluxo de Execução

Aula 5 Controle do Fluxo de Execução Aula 5 Controle do Fluxo de Execução 1. Introdução Muitas vezes precisamos executar ações diferentes em função dos dados de entrada. Até o momento só trabalhamos com um único fluxo de execução, veremos

Leia mais

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 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 Repetição com Teste no Final - Repita Até - GABARITO Professor: Danilo Giacobo Este guia irá lhe ajudar a entender o laço de repetição

Leia mais

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

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta? 23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas

Leia mais

ESTRUTURAS DE CONTROLE

ESTRUTURAS DE CONTROLE ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura Condicional Composta Seleção entre duas ou mais

Leia mais

Universidade Veiga de Almeida Algoritmos e Linguagem I

Universidade Veiga de Almeida Algoritmos e Linguagem I Aula 9 Conteúdo: 12. Estruturas de repetição 12.1. Laços contados 12.2. Laços condicionais 13. Estruturas de controle encadeadas ou aninhadas 12. Estruturas de Repetição São muito comuns as situações em

Leia mais

UNIDADE 4 ESTRUTURAS DE CONTROLE

UNIDADE 4 ESTRUTURAS DE CONTROLE 1 UNIDADE 4 ESTRUTURAS DE CONTROLE Na criação de algoritmos, utilizamos os conceitos de bloco lógico, entrada e saída de dados, variáveis, constantes, atribuições, expressões lógicas, relacionais e aritméticas,

Leia mais

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

9. Comando de repetição com variável de controle (para.. de.. até.. faça) 9. Comando de repetição com variável de controle (para.. de.. até.. faça) Com o uso das estruturas enquanto e repita é possível elaborar rotinas que efetuam a execução de um looping um determinado número

Leia mais

ESTRUTURA CONDICIONAL E SELEÇÃO

ESTRUTURA CONDICIONAL E SELEÇÃO Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ESTRUTURA CONDICIONAL E SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE OU DECISÃO) Até o momento da disciplina vimos algoritmos e programas

Leia mais

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:

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: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DA PARAÍBA CAMPUS CAMPINA GRANDE 1 2 Elementos Básicos Tipos de dados Dados e seus tipos: Computadores lidam com diversos tipos de dados: numéricos,

Leia mais

Programação Procedimental

Programação Procedimental Programação Procedimental Maria Adriana Vidigal de Lima Universidade Federal de Uberlândia - 2013 1 Escrita de Algoritmos 1.1 Técnicas de Programação e Algoritmos Na elaboração de programas maiores e complexos

Leia mais

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)

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

Leia mais

Estruturas de Repetição Parte I ENQUANTO-FAÇA

Estruturas de Repetição Parte I ENQUANTO-FAÇA Estruturas de Repetição Parte I ENQUANTO-FAÇA Prof. João Henrique Kleinschmidt Material elaborado pelos professores de PI Objetivos Reconhecer a necessidade do uso de estruturas de repetição Aprender a

Leia mais

Grupo B Estruturas de Repetição

Grupo B Estruturas de Repetição Grupo B Estruturas de Repetição Exercício Descrição 1. Escrever um algoritmo que lê 5 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação. 2. Escrever

Leia mais

Lista de Exercícios Estrutura de Repetição

Lista de Exercícios Estrutura de Repetição Universidade Federal Fluminense Instituto de Computação Programação de Computadores III Luciana Brugiolo Gonçalves Lista de Exercícios Estrutura de Repetição E15. Desenvolva um algoritmo para exibir todos

Leia mais

Estruturas de Repetição Parte I ENQUANTO

Estruturas de Repetição Parte I ENQUANTO Estruturas de Repetição Parte I ENQUANTO Material produzido por professores da UFABC Objetivos Reconhecer a necessidade do uso de estruturas de repetição Aprender a sintaxe da Estrutura de Repetição ENQUANTO-FAÇA

Leia mais

Algoritmos e Estruturas de Dados I

Algoritmos e Estruturas de Dados I Algoritmos e Estruturas de Dados I Algoritmos com Repetição Profa. Márcia Cristina Moraes Profa. Milene Selbach Silveira Prof. Iara C. de Almeida Material para estudo: Forbellone, A. e Eberspächer, H.

Leia mais

Estruturas de Repetição Parte I ENQUANTO-FAÇA

Estruturas de Repetição Parte I ENQUANTO-FAÇA Estruturas de Repetição Parte I ENQUANTO-FAÇA Prof. Dr. Edson Pimentel Centro de Matemática, Computação e Cognição Objetivos Reconhecer a necessidade do uso de estruturas de repetição Aprender a sintaxe

Leia mais

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

Este conceito é bastante simples e será útil e conveniente nos itens seguintes, na definição das estruturas básicas de controle de execução. Capítulo 7 Controle de Fluxo de Execução Até o momento os algoritmos estudados utilizam apenas instruções primitivas de atribuição, e de entrada e saída de dados. Qualquer conjunto de dados fornecido a

Leia mais

SSC304 Introdução à Programação Para Engenharias

SSC304 Introdução à Programação Para Engenharias Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Estruturas de Controle de Fluxo GE4 Bio GE4Bio Grupo de

Leia mais

ESTRUTURAS DE REPETIÇÃO - PARTE 2

ESTRUTURAS DE REPETIÇÃO - PARTE 2 AULA 16 ESTRUTURAS DE REPETIÇÃO - PARTE 2 16.1 A seqüência de Fibonacci Um problema parecido, mas ligeiramente mais complicado do que o do cálculo do fatorial (veja as notas da Aula 14), é o do cálculo

Leia mais

Programação Estruturada Aula VisualG

Programação Estruturada Aula VisualG Programação Estruturada Aula VisualG Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 CRIANDO ALGORITMO CRIANDO ALGORITMO Passos para construir Algoritmos Ler enunciado do problema, compreendendo-o

Leia mais

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

Aula 4B. Lógica e Algoritmos. Profª. Fabiany Fundamentos de Programação 1 Aula 4B Lógica e Algoritmos. Profª. Fabiany Lógica A lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo. Sequência Lógica São passos

Leia mais

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

... contador = contador + 1; //contador++; ... <fim_da_estrutura_de_repetição> soma = 0; <estrutura_de_repetição_com_variável_x> soma = soma + x; Instituto Federal de Santa Catarina - Câmpus Chapecó Engenharia de Controle e Automação Programação I Professora: Lara Popov Zambiasi Bazzi Oberderfer Estruturas de Repetição São muito comuns as situações

Leia mais

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO Baseado nos slides de autoria de Rosely Sanches Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura

Leia mais

Estruturas de Controle de Fluxo

Estruturas de Controle de Fluxo 139 Estruturas de Controle de Fluxo algoritmo "exercício 15 laço de repetição repita a" var num, contador: inteiro inicio contador

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Até o momento da disciplina vimos comandos de entrada, processamento e saída

Leia mais

ALGORITMOS 3ª Aula. 3. Introdução Tipos de dados, variáveis e operadores Tipos de dados

ALGORITMOS 3ª Aula. 3. Introdução Tipos de dados, variáveis e operadores Tipos de dados 3. Introdução Segundo alguns especialistas, qualquer programa de computador pode ser escrito utilizando apenas três estruturas básicas: Seqüência, Condição e Repetição. Isto significa que, na construção

Leia mais

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE)

ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Algoritmos e Estruturas de Dados 1 Prof. Eduardo 1 ALGORITMOS COM SELEÇÃO 1 - ESTRUTURA CONDICIONAL (ESTRUTURAS DE CONTROLE) Já vimos entrada, processamento e saída, que compõem os algoritmos puramente

Leia mais

Exercícios Repetição

Exercícios Repetição Curso de Engenharia de Controle e Automação Disciplina: Informática para a Automação Professor: Marcelo Cendron Exercícios Repetição 1.1 8.3 Exercícios 1. Faça um programa utilizando o comando while, que

Leia mais

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Estruturas de Dados I (DCC/003) Estruturas de Repetição Aula Tópico 4 (while, for) 1 Problema 10 Suponha que soma (+) e subtração (-) são as únicas operações disponíveis em C. Dados dois números

Leia mais

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

Introdução à Ciência da Computação Introdução à Ciência da Computação Estruturas de Controle Parte II Prof. Ricardo J. G. B. Campello Créditos Parte dos slides a seguir foram adaptados dos originais de A. L. V. Forbellone e H. F. Eberspächer

Leia mais

CAPÍTULO V. Estruturas de Repetição CAPÍTULO V ESTRUTURAS DE REPETIÇÃO. Estrutura de Repetição com Teste no Início: E QUA TO-FAÇA...

CAPÍTULO V. Estruturas de Repetição CAPÍTULO V ESTRUTURAS DE REPETIÇÃO. Estrutura de Repetição com Teste no Início: E QUA TO-FAÇA... NBT110 Algoritmos e Estruturas de Dados Profa. Rosanna Mara Rocha Silveira Fevereiro/2013 - Versão 1.1 CAPÍTULO V ESTRUTURAS DE REPETIÇÃO 42 Em programação de computadores, é muito comum nos depararmos

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Lógica de Programação Prof. Kleber Rezende Considerações Iniciais Uma das principais características que consolidaram o sucesso na utilização dos computadores para a resolução de

Leia mais

LINGUAGEM DE PROGRAMAÇÃO

LINGUAGEM DE PROGRAMAÇÃO Técnico em Informática LINGUAGEM DE PROGRAMAÇÃO Profª Ana Paula anapaula_mandelli@hotmail.com Estruturas de Repetição Em muitos casos, o algoritmo solução para uma determinada classe de problemas, apresenta

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição O conceito de repetição (looping) é utilizando quando se deseja repetir certo trecho de instruções por um número de vezes. O número de repetições pode ser conhecido antes ou não,

Leia mais

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

Estruturas de Repetição. João Medeiros FATERN Estruturas de Repetição João Medeiros FATERN 2010.2 Quais seriam os passos do algoritmo? 1. colocar café solúvel na xícara 2. colocar água quente 3. Colocar açucar na xícara 4. mexer 5. mexer 6. mexer

Leia mais

LINGUAGEM C: COMANDOS DE REPETIÇÃO

LINGUAGEM C: COMANDOS DE REPETIÇÃO LINGUAGEM C: COMANDOS DE REPETIÇÃO Prof. André Backes ESTRUTURAS DE REPETIÇÃO Uma estrutura de repetição permite que uma sequência de comandos seja executada repetidamente, enquanto determinadas condições

Leia mais

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012

Waldemar Celes e Roberto Ierusalimschy. 29 de Fevereiro de 2012 Capítulo 5: Repetições Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Construção de laços Uma das principais características de um computador é sua capacidade para realizar cálculo e

Leia mais

Exercícios TVC2 PARTE I:

Exercícios TVC2 PARTE I: Exercícios TVC2 Esta lista de exercícios foi elaborada como preparatório para a segunda avaliação que será realizada em breve, abordando repetições, vetores numéricos e strings. Algumas instruções: Desenvolva

Leia mais

Programação II. Victor Amorim dos Santos

Programação II. Victor Amorim dos Santos Programação II Victor Amorim dos Santos Estrutura de repetição - Loops Definição Loop é uma palavra inglesa, que originalmente significa aro, anel ou sequência. Início X verdadeiro X!= 0 Exemplo: Ler um

Leia mais

Técnicas de Programação

Técnicas de Programação Técnicas de Programação Algoritmos Anderson Gomes Eleutério Lógica A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir

Leia mais

1ª LISTA DE EXERCÍCIOS

1ª LISTA DE EXERCÍCIOS UNIVERSIDADE SALGADO DE OLIVEIRA CURSO DE SISTEMAS DE INFORMAÇÃO DISCIPLINA: TEORIA DA COMPUTAÇÃO E ALGORITMOS PROF: GIULIANO PRADO DE MORAIS GIGLIO 1ª LISTA DE EXERCÍCIOS 1) Sobre variáveis, responda

Leia mais

Algoritmos. Prof. Jonatas Bastos Site:

Algoritmos. Prof. Jonatas Bastos   Site: Algoritmos Prof Jonatas Bastos Email: jonatasfbastos@gmailcom Site: http://jonatasfbastoswordpresscom/ 1 Estrutura de Repetição Computadores não reclamam por executar alguma tarefa, nem se cansam em fazer

Leia mais

Estrutura de decisão

Estrutura de decisão Estrutura de decisão Os comandos de decisão ou desvio fazem parte das técnicas de programação que conduzem a estruturas de programas que não são totalmente sequenciais. Com as instruções de SALTO ou DESVIO

Leia mais

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO

ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO ESTRUTURAS DE CONTROLE ESTRUTURAS DE REPETIÇÃO Baseado nos slides de autoria de Rosely Sanches Estruturas de Controle ESTRUTURA SEQUENCIAL ESTRUTURAS CONDICIONAIS Estrutura Condicional Simples Estrutura

Leia mais

Programação em C. Victor Amorim dos Santos

Programação em C. Victor Amorim dos Santos Programação em C Victor Amorim dos Santos Proposições Lógicas Expressões Lógicas e o tipo Boolean Importante para a tomada de decisão; Tipo Boolean: tipo de dados para representar a satisfação ou não de

Leia mais

Aula 7: Estrutura de Decisão

Aula 7: Estrutura de Decisão Aula 7: Estrutura de Decisão Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Estrutura de Decisão Programação de Computadores IV 1 / 27 Agenda 1 Revisão

Leia mais

69) Acrescentar uma mensagem de VALOR INVÁLIDO no exercício [68], caso o segundo valor informado seja ZERO.

69) Acrescentar uma mensagem de VALOR INVÁLIDO no exercício [68], caso o segundo valor informado seja ZERO. Exercícios 65 ao 72 - Estrutura de Repetição: Enquanto 65) Escreva um algoritmo para ler um valor entre 1 (inclusive) e 10 (inclusive). Se o valor lido não estiver entre 1 (inclusive) e 10 (inclusive),

Leia mais

Amanda Gondim de Oliveira

Amanda Gondim de Oliveira ESTRUTURAS DE REPETIÇÃO Amanda Gondim de Oliveira ESTRUTURAS DE REPETIÇÃO É comum a repetição de procedimentos para se realizar tarefas. Esse procedimentos não são repetidos eternamente, mas se encerram

Leia mais

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior

LÓGICA DE PROGRAMAÇÃO. Algoritmos Computacionais. Sérgio Carlos Portari Júnior LÓGICA DE PROGRAMAÇÃO Algoritmos Computacionais Sérgio Carlos Portari Júnior portari.uemgfrutal@gmail.com Tópicos abordados Algoritmos Computacionais Estrutura de Dados Tipos Primitivos Constantes Variáveis

Leia mais

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

A resposta apresentada em aula, no quadro, (em Chapin e/ou Português Estruturado) está correta? 23 Algoritmos com Repetição Nos exemplos e exercícios vistos até agora, sempre foi possível resolver os problemas com uma sequência de instruções que eram executadas apenas uma vez. Existem três estruturas

Leia mais

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

Universidade Federal de Uberlândia Faculdade de Computação. Linguagem C: estruturas de repetição While / Do While / For Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: estruturas de repetição While / Do While / For Prof. Renato Pimentel 1 Estruturas de repetição O real poder dos computadores está

Leia mais

Estrutura Condicional

Estrutura Condicional Estrutura Condicional É a estrutura que permite a tomada de decisão, em um algoritmo, mediante a análise lógica de uma condição; Condição: comparação que somente possui dois valores possíveis (verdadeiro

Leia mais

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

PDA - Repetição. Estruturas de repetição. Slides adaptação de Deise Saccol PDA - Repetição Estruturas de repetição Slides adaptação de Deise Saccol 1 Existem situações em que o processamento de um valor uma única vez não é suficiente para resolver o problema. Quando isto ocorre,

Leia mais

LINGUAGEM ALGORÍTMICA

LINGUAGEM ALGORÍTMICA LINGUAGEM ALGORÍTMICA Adriano Mauro Cansian André Proto UNESP - São José do Rio Preto Linguagem Computacional Introdução! Para uma melhor padronização de nosso estudos, vamos agora definir uma linguagem

Leia mais

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

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 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 Este guia irá lhe ajudar a entender o laço de repetição

Leia mais

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini

Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Oficina de Introdução de Programação usando Linguagem Python Prof. Ms. Perini Apresentação do Professor Professor: José Carlos Perini E-mail: jose.perini@metrocamp.edu.br Blog: http://profperini.com Formação

Leia mais

CAPÍTULO 4 - OPERADORES E EXPRESSÕES

CAPÍTULO 4 - OPERADORES E EXPRESSÕES CAPÍTULO 4 - OPERADORES E EXPRESSÕES 4.1 - OPERADORES ARITMÉTICOS Os operadores aritméticos nos permitem fazer as operações matemáticas básicas, usadas no cálculo de expressões aritméticas. A notação usada

Leia mais

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

Fig.1: Ilustração de Estrutura de Controle Fonte:Internet 4. Estrutura de Controle Os algoritmos são criados para solucionar problemas propostos utilizando conceitos de bloco lógico, entrada e saída de dados, constantes, variáveis, expressões lógicas, atribuições

Leia mais

ESTRUTURAS DE REPETIÇÃO

ESTRUTURAS DE REPETIÇÃO ESTRUTURAS DE REPETIÇÃO PROGRAMAÇÃO 1) Dar um nome ao programa 2) Declarar as variáveis 3) inicio 4) Escrever instruções sequenciais (algoritmo)* 5) fimalgoritmo * INDENTAÇÃO não é obrigatório, porém recomendável!

Leia mais

Programação de Redes de Computadores

Programação de Redes de Computadores 1: Introdução 1 MINISTÉRIO DA EDUCAÇÃO SECRETARIA DE EDUCAÇÃO PROFISSIONAL E TECNOLÓGICA INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA CAMPUS SÃO JOSÉ SANTA CATARINA Programação de Redes de Computadores

Leia mais

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

VisuALG Estruturas de Repetição. Professor: Alex Sandro Forghieri VisuALG Estruturas de Repetição Professor: Alex Sandro Forghieri asforghieri79.yes@gmail.com O Problema. Estruturas de Repetição: Introdução; Enquanto faca; Exemplo; Exercícios Repita ate; Exemplo; Exercícios;

Leia mais

Estruturas Condicionais

Estruturas Condicionais Estruturas Condicionais Lógica de Programação Prof. Kleber Rezende Considerações Iniciais Nos capítulos anteriores foram apresentados alguns conceitos básicos sobre as estruturas e comandos que são utilizados

Leia mais

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

Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701 Universidade Federal de Ouro Preto - UFOP Departamento de Computação - DECOM Programação de Computadores I - BCC701 www.decom.ufop.br/red 2017-1 Aula Teórica 05 Laços 1 Conteúdos da Aula Instrução de Repetição

Leia mais

EXERCÍCIOS DE RECORDAÇÃO DE ALGORITMOS

EXERCÍCIOS DE RECORDAÇÃO DE ALGORITMOS UNIVERSIDADE SALGADO DE OLIVEIRA CURSO DE SISTEMAS DE INFORMAÇÃO DISCIPLINA: LINGUAGEM DE PROGRAMAÇÃO I PROF: GIULIANO PRADO DE MORAIS GIGLIO EXERCÍCIOS DE RECORDAÇÃO DE ALGORITMOS 0) Faça um algoritmo

Leia mais

1. Faça uma função que recebe por parâmetro o raio de uma esfera e calcula o seu volume.

1. Faça uma função que recebe por parâmetro o raio de uma esfera e calcula o seu volume. Instituto Federal do Pará Professor: Ricardo José Cabeça de Souza Disciplina: - Algoritmos e Construção de Programas LISTA DE EXERCÍCIOS 1. Faça uma função que recebe por parâmetro o raio de uma esfera

Leia mais

- Aula 01, 02, 03 e 04 Apresentação da disciplina.

- Aula 01, 02, 03 e 04 Apresentação da disciplina. 1 - Aula 01, 02, 03 e 04 Apresentação da disciplina. Disciplina: Algoritmos (Disciplina é pré-requisito para outras disciplinas). Plano de Ensino: Estrutura Sequencial, Estrutura de Decisão (Desvio Condicional

Leia mais

Programação científica C++

Programação científica C++ Programação científica C++ NIELSEN CASTELO DAMASCENO Slide 3 Exercícios Escreva um programa para armazenar o valor 20 em uma variável X e o valor 5 em uma variável Y. A seguir, armazenar a soma do valor

Leia mais

Estruturas de Repetição

Estruturas de Repetição Estruturas de Repetição Introdução As estruturas de repetição, permitem executar mais de uma vez um mesmo trecho de código. Trata-se de uma forma de executar blocos de comandos somente sob determinadas

Leia mais

<identificador>[<tamanho>]: <tipo>;

<identificador>[<tamanho>]: <tipo>; Vetores e Constantes Imagine uma situação na qual fosse necessário armazenar 100 valores para processamento. Por exemplo, pode ser necessário armazenar as notas de 100 provas de uma turma de alunos. Uma

Leia mais

Introdução a Computação

Introdução a Computação Edirlei Soares de Lima Introdução a Computação Aula 02 Lógica de Programação Lógica de Programação Lógica de Programação é a técnica de criar sequências lógicas de ações para atingir

Leia mais

n1, /,n2, =,res n1, n2, res: real res <- n1 / n2 Digite o Dividendo: n2<>0 Digite o Divisor: verdadeiro falso

n1, /,n2, =,res n1, n2, res: real res <- n1 / n2 Digite o Dividendo: n2<>0 Digite o Divisor: verdadeiro falso Exercícios trabalhados Estruturas de Controle de Fluxo Fluxograma/Exercício 16 Com base no que foi exposto, construa um fluxograma para obter o resultado da divisão entre dois números. OBS.: Caso um dos

Leia mais

Estruturas de Repetição. Leonardo Murta

Estruturas de Repetição. Leonardo Murta Estruturas de Repetição Leonardo Murta leomurta@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Dois tipos de Repetição: } Repetição condicional: executa

Leia mais

Introdução a Algoritmos Parte 08

Introdução a Algoritmos Parte 08 Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 08 (Baseado no Material do Prof. Marcelo Linder) Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br

Leia mais

INTRODUÇÃO AO JAVA SCRIPT

INTRODUÇÃO AO JAVA SCRIPT INTRODUÇÃO AO JAVA SCRIPT PROFESSORA: NAAN CARDOSO https://naancardoso.wordpress.com/ INTRODUÇÃO ojavascript é uma linguagem de script oos scripts são executados pelos browsers ojavascript é texto puro

Leia mais

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

Lista de Exercícios 03a Repetição. 1) Escreva um programa que imprima todos os números inteiros de 0 a 50. Instituto de Ciências Eatas e Biológicas ICEB Lista de Eercícios 03a Repetição 1) Escreva um programa que imprima todos os números inteiros de 0 a 50. 2) Escreva um programa que imprima todos os números

Leia mais

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES

CAPÍTULO IV. Estruturas Condicionais CAPÍTULO IV ESTRUTURAS CONDICIONAIS ESTRUTURA CONDICIONAL SIMPLES NBT110- Algoritmos e Estruturas de Dados Profa. Rosanna Mara Rocha Silveira Fevereiro/2013 - Versão 1.1 CAPÍTULO IV ESTRUTURAS CONDICIONAIS 31 Dentro dos algoritmos temos comandos especiais utilizados

Leia mais

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35

BCC Introdu c ao ` a Programa c ao Portugol Guillermo C amara-ch avez UFOP 1/35 BCC 201 - Introdução à Programação Portugol Guillermo Cámara-Chávez UFOP 1/35 Introdução I Lógica A lógica é usada no dia a dia das pessoas que trabalham com computação para solucionar problemas de forma

Leia mais

Estruturas de Repetição

Estruturas de Repetição Algoritmos e Lógica de Programação Construção de Algoritmos Estruturas de Repetição Reinaldo Gomes reinaldo@cefet-al.br Estruturas de Repetição Com o conhecimento adquirido até aqui, ainda não é possível

Leia mais

Estruturas de Repetição. Vanessa Braganholo

Estruturas de Repetição. Vanessa Braganholo Estruturas de Repetição Vanessa Braganholo vanessa@ic.uff.br Estruturas de Repetição } Permitem que um bloco de comandos seja executado diversas vezes } Repetição condicional: executa um bloco de código

Leia mais

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares

Algoritmo e Programação. Capítulo 2 Tópicos Preliminares Algoritmo e Programação Capítulo 2 Tópicos Preliminares Tópicos Preliminares Neste capítulo Tipos Primitivos Variáveis Expressões Aritméticas, Lógicas e Relacionais Comandos de Entrada e Saída Blocos Tópicos

Leia mais

Introdução a Lógica de Programação

Introdução a Lógica de Programação Introdução a Lógica de Programação O processo de programação é uma conversa controlada entre um ser humano (tecnicamente preparado) e um computador Linguagem Linguagem de baixo nível Grande dificuldade,

Leia mais

Alguns exercícios em pseudocódigo

Alguns exercícios em pseudocódigo Alguns exercícios em pseudocódigo Enunciado do problema: Escreva um programa em pseudocódigo que determine as raízes de um polinômio do segundo grau dado por a x 2 +b x+c usando o algoritmo de Báskara.

Leia mais

Curso: Técnico em Informática Integrado Disciplina: Algoritmos Carga horária: 60h (80h/a) Período: 2º Ano Professor: Edmilson Barbalho Campos Neto

Curso: Técnico em Informática Integrado Disciplina: Algoritmos Carga horária: 60h (80h/a) Período: 2º Ano Professor: Edmilson Barbalho Campos Neto INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Campus João Câmara Avenida Antônio Severiano da Câmara / BR 406, Km 101, s/n Zona Rural. Bairro Amarelão João Câmara/RN - CEP:

Leia mais

Algoritmos Estruturas de Controle

Algoritmos Estruturas de Controle Algoritmos Estruturas de Controle Introdução à Programação para Biologia Molecular Rosane Minghim Apoio na confecção: Danilo Medeiros Eler Rogério Eduardo Garcia Algoritmo Execução sequencial: Uma vez

Leia mais

MATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21

MATRIZES - PARTE Definição e Manipulação de Matrizes AULA 21 AULA 21 MATRIZES - PARTE 1 21.1 Definição e Manipulação de Matrizes Sabemos como definir variáveis de um novo tipo de dados, denominado vetor, que representam seqüências de valores de um mesmo tipo. Por

Leia mais