Escolar Documentos
Profissional Documentos
Cultura Documentos
DEPARTAMENTO DE COMPUTAO
ESTRUTURAS
DE
CONTROLE
DE
Essas estruturas so usadas para a repetio de uma quantidade de aes (processamento) dentro de um bloco de programa. So controladas por variveis de controle, as quais determinam o incio e o fim do lao de repetio (loop). As principais estruturas de controle de repetio so: enquanto...faca...fimenquanto, repita...ate e para...ate...passo...faca...fimpara. Vejamos a seguir como funciona cada estrutura.
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 1
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
Sintaxe repita <bloco de instrues> ate (teste lgico FALSO) Exemplo: Cont 1 repita escreva(Cont) Cont Cont + 1 ate (Cont > 10)
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 2
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
DB Imprime_01_a_10 Incio
Cont: inteiro
Cont
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 3
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
enquanto (Cont <= 10) faca escreva(Cont) Cont Cont + 1 fimenquanto fimalgoritmo
Cont: inteiro
Cont
Cont
Cont
Cont + 1
algoritmo "Imprime_01_a_10" var Cont: inteiro inicio Cont <- 1 repita escreva(Cont) Cont <- Cont + 1 ate (Cont > 10) fimalgoritmo
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 4
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
na
Estrutura
de
Controle
de
Repetio
DB Imprime_01_a_10 Incio
Cont: inteiro
Cont, 1, 10 V
Fim Cont
algoritmo "Imprime_01_a_10" var Cont: inteiro inicio para Cont de 1 ate 10 passo 1 faca escreva(Cont) fimpara fimalgoritmo
7.5 Lao de Repetio Controlado pelo Usurio Os laos apresentados acima so controlados pelo programador (com incio e fim determinados por ele), no entanto, s vezes o lao controlado pelo usurio do programa. Esses laos so controlados por respostas emitidas pelo usurio ao programa. Para exemplificarmos este tipo de lao usaremos o problema proposto a seguir. Problema proposto: Imprimir nmeros digitados pelo usurio. Dar a opo ao usurio em continuar ou no o programa. Soluo: 1. Pedir nmeros para o usurio digitar os nmeros (criar a varivel Nro);
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 5 semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
2. Imprimir esses nmeros dentro do lao; 3. Perguntar ao usurio se ele deseja continuar (criar uma varivel de Resposta). 7.5.1 Lao de Repetio (enquanto...faca...fimenquanto) Controlado pelo Usurio com a Estrutura
DB Imprime_Numero_Digitado_Pelo_Usuario
Incio
Resp
SIM
Fim Nro
Nro
Resp
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 6
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
algoritmo "Imprime_Numero_Digitado_Pelo_Usuario" var Nro: real Resp: caracter inicio Resp SIM enquanto (Resp = SIM) faca escreva(Digite um nmero: ) leia(Nro) escreva(Nro) escreva(Deseja continuar? <SIM/NO>: ) leia(Resp) fimenquanto fimalgoritmo
Digite um nmero:
Nro
Resp
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 7
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
1 2
Resp = NO V Fim
Exerccios propostos: Os exerccios devero ser resolvidos em Pseudocdigo e DB. No DB utilize somente a estrutura de controle de repetio enquanto...faca...fimenquanto. 1. Crie um conjunto de instrues que a partir da leitura de um nmero inteiro realize o clculo da tabuada de 1 a 10. 2. Crie um conjunto de instrues que apresente todos os valores numricos inteiros pares situados na faixa de 100 a 200. 3. Crie um conjunto de instrues que apresente todos os valores numricos inteiros mpares situados na faixa de 1 a 20. 4. Crie um conjunto de instrues que realize a leitura de N nmeros digitados pelo usurio e imprima somente os nmeros positivos. 5. Crie um conjunto de instrues que realize a leitura de N nmeros digitados pelo usurio e imprima somente os nmeros negativos. 6. Crie um conjunto de instrues que realize a leitura de N nmeros inteiros digitados pelo usurio e calcule a mdia dos nmeros inteiros positivos e a soma dos nmeros inteiros pares. 7. Crie um conjunto de instrues que a partir de um nmero inteiro digitado pelo usurio apresente todos os nmeros que so divisveis por ele. Exemplo: Se o
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 8
semestre 2011/1
GOVERNO DO ESTADO DE MATO GROSSO SECRETARIA DE CINCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITRIO DE ALTO ARAGUAIA DEPARTAMENTO DE COMPUTAO
usurio digitar o nmero 10, o programa dever verificar se o nmero divisvel por (1, 2, 3, 4, 5, 6, 7, 8, 9 e 10). 8. Crie um conjunto de instrues que calcule a potncia de uma base e um expoente digitado pelo usurio. Faa o clculo considerando a base elevada ao expoente. D opo ao usurio para continuar ou parar o programa. 9. Crie um conjunto de instrues que calcule a potncia de uma base e um expoente digitado pelo usurio. No entanto no para ser usada a base elevada ao expoente. Faa da seguinte maneira: por exemplo, 53 = 5 x 5 x 5 = 125, ou seja a base multiplicada por ela mesma trs vezes (nmero do expoente). 10. Crie um conjunto de instrues que calcule o fatorial de um nmero inteiro e positivo digitado pelo usurio.
Aspectos Formais da Computao e Algoritmo Prof. Carlinho Viana de Sousa profcarlinho@gmail.com Pgina 9
semestre 2011/1