Lógica de programação - Loopings

Embed Size (px)

Citation preview

  • 8/17/2019 Lógica de programação - Loopings

    1/32

    Lógica de ProgramaçãoEstruturas de Controle – Laços de Repetição

    Prof. Vinícius Breda

  • 8/17/2019 Lógica de programação - Loopings

    2/32

    Laços de Repetição ou

    Loopings● Até agora foram estudadas as estruturas

    linear e de desvio condicional, que nospermitem criar um programa que éexecutado do início ao fim linearmente ousendo capaz de traçar diferentes “rotas!aseado em decis"es.

    ● Porém existem ocasi"es em que é necess#rioefetuar a repetiç$o de um trec%o deprograma por um determinado n&mero de

    vezes. Para isso utilizamos os laços dere eti ão, tam!ém c%amados de loo in s.

  • 8/17/2019 Lógica de programação - Loopings

    3/32

    Laços de Repetição ou

    Loopings● 's loopings s$o estruturas de controle que

    permitem que um trec%o do c(digo se)aexecutado repetidamente.

    ● *$o usados quando um programa deveexecutar uma tarefa por um determinadon&mero de vezes, ou até que algumacondiç$o se)a satisfeita.

    ● +x executar a média de todos os alunos de

    uma escola- Apresentar um menu até queal uma o $o se a escol%ida.

  • 8/17/2019 Lógica de programação - Loopings

    4/32

    Laços de Repetição ou

    Loopings● magine um programa que peça a leitura de

    um valor para a vari#vel /, multiplique essevalor por 0, e apresente a resposta navari#vel 1, repetindo essa sequ2ncia portr2s vezes.

    ● 3om o con%ecimento o!tido até agora, oaluno iria escrever o mesmo trec%o deprograma, repetindo4o pelo n&mero devezes necess#rias, como no exemplo a

    seguir

  • 8/17/2019 Lógica de programação - Loopings

    5/32

    Laços de Repetição ou

    Loopingsalgoritmo Pede5numeroIníciovar inteiro /, 1-

    escreva6“7igite o valor de /8-leia6/8-1 9 / : 0-escreva618-

      escreva6“7igite o valor de /8-  leia6/8-

      1 9 / : 0-  escreva618-

      escreva6“7igite o valor de /8-  leia6/8-  1 9 / : 0-

      escreva618-  Fim

  • 8/17/2019 Lógica de programação - Loopings

    6/32

    Laços de Repetição ou

    Loopings● Pode4se notar que isso n$o é pr#tico, pois se

    fossem necess#rias ;

  • 8/17/2019 Lógica de programação - Loopings

    7/32

    Repetição do Tipo: Teste Lógico noInício do Looping En!uanto

    ● = uma estrutura que efetua um teste l(gico noinício de um looping, verificando se épermitido executar o trec%o de instruç"essu!ordinado a esse looping.

    ● +ssa estrutura é denominada de en!uanto.

  • 8/17/2019 Lógica de programação - Loopings

    8/32

    Repetição do Tipo: Teste Lógico noInício do Looping En!uanto

    ● +ssa estrutura poder# executar umdeterminado con)unto de instruç"esenquanto a condiç$o verificada forverdadeira. >o momento em que essacondiç$o se torna falsa, o processamentoda rotina é desviado para fora do looping.

    ●   *e a condiç$o for falsa logo de início, asinstruç"es contidas no looping s$oignoradas.

     

  • 8/17/2019 Lógica de programação - Loopings

    9/32

    Looping En!uanto

    "iagrama de #locos3uidado para n$o

    confundir esta novaestrutura com aestrutura de decis$ousada anteriormente.

     Aqui existe um

    retorno ? condiç$oap(s a execuç$o do!loco de operaç"es,até que a condiç$o

    se torne falsa.

  • 8/17/2019 Lógica de programação - Loopings

    10/32

    Looping En!uanto

    Pseudocódigoen!uanto 6@condiç$o8 $aça  @instruç"es executados dentro do looping$im%en!uanto

      @instruç"es ap(s sair do looping

  • 8/17/2019 Lógica de programação - Loopings

    11/32

    Looping En!uanto

    E&emplo Agora faremos o exemplo dado no início deste

    matérial, mas utilizando a estruturaen!uanto

    azer um programa que faça a leitura de umvalor para a vari#vel /, multiplique esse valorpor 0, e apresente a resposta na vari#vel 1,repetindo essa sequ2ncia por tr2s vezes.

  • 8/17/2019 Lógica de programação - Loopings

    12/32

    Looping En!uantoE&emplo 'lgoritmo

    ; C 3riar uma vari#vel para servir comocontador com valor inicial ;-

    D C +nquanto o valor do contador for menor ouigual a 0, processar os passos 0, E, F e G-

    0 C Her um valor para a vari#vel /-E C azer 1 9 / : 0-F C Apresentar o valor de 1-G C Acrescentar I; a vari#vel do contador,

    definida no passo ;-J C Kuando o contador for maior que 0,

    encerrar o processamento do looping.

  • 8/17/2019 Lógica de programação - Loopings

    13/32

    Looping En!uantoE&emplo – "iagrama de #locos

    Início Cont = 1

    Cont

  • 8/17/2019 Lógica de programação - Loopings

    14/32

    Looping En!uantoE&emplo – Pseudocódigo

    algoritmo Hooping5enquantoIníciovar inteiro cont, /, 1-

    en!uanto 6 cont @9 0 8 $aça

    escreva6“7igite o valor de /8-leia6/8-1 9 / : 0-escreva618-cont 9 cont I ;-

      $im%en!uanto 

    Fim

  • 8/17/2019 Lógica de programação - Loopings

    15/32

    Looping En!uantoE&ercício

    azer um programa que peça a leitura de umvalor para a vari#vel /, multiplique esse valorpor 0, e apresente a resposta na vari#vel 1.+sse processo deve ser executado enquato ousu#rio dese)ar.

    Ltilizar a estrutura en!uanto. 

  • 8/17/2019 Lógica de programação - Loopings

    16/32

    Repetição do Tipo: Teste Lógico noFim do Looping Repita

    ● = uma estrutura que efetua um teste l(gico nofim de um looping, verificando se o trec%ode instruç"es su!ordinado ao looping deveser executado novamente.

    ● +ssa estrutura é denominada de repita.

  • 8/17/2019 Lógica de programação - Loopings

    17/32

  • 8/17/2019 Lógica de programação - Loopings

    18/32

    Looping Repita"iagrama de #locos

     As instruç"es s$oexecutadas e ent$oa condiç$o éverificada. +nquantoa condiç$o forverdadeira, asinstruç"es ser$orepetidas. Kuandofor falsa, o programasegue em frente.

    Instruções eecuta!asen"uanto a con!iç#o$ %alsa

    Con!iç#o&

     '

  • 8/17/2019 Lógica de programação - Loopings

    19/32

    Looping RepitaPseudocódigo

    repita  @instruç"es executados dentro do loopingen!uanto 6@condiç$o8-

      @instruç"es ap(s sair do looping

  • 8/17/2019 Lógica de programação - Loopings

    20/32

    Looping RepitaE&emplo

     Agora faremos o mesmo exemplo dado noinício deste matérial, mas utilizando aestrutura repita

    azer um programa que faça a leitura de umvalor para a vari#vel /, multiplique esse valorpor 0, e apresente a resposta na vari#vel 1,repetindo essa sequ2ncia por tr2s vezes.

  • 8/17/2019 Lógica de programação - Loopings

    21/32

    Looping RepitaE&emplo 'lgoritmo

    ; C 3riar uma vari#vel para servir comocontador com valor inicial ;-

    D C Her um valor para a vari#vel /-

    0 C azer 1 9 / : 0-E C Apresentar o valor de 1-F C Acrescentar I; a vari#vel contador,

    definida no passo ;-G C 1epetir os passos D, 0, E e F enquanto o

    contador for menor ou igual a 0.

  • 8/17/2019 Lógica de programação - Loopings

    22/32

    Looping RepitaE&emplo – "iagrama de #locos

    Início Cont = 1

    Cont

  • 8/17/2019 Lógica de programação - Loopings

    23/32

    Looping RepitaE&emplo – Pseudocódigo

    algoritmo Hooping5repitaIníciovar inteiro cont, /, 1-

    repita

    escreva6“7igite o valor de /8-leia6/8-1 9 / : 0-escreva618-cont 9 cont I ;-

      en!uanto 6cont @9 08- 

    Fim

  • 8/17/2019 Lógica de programação - Loopings

    24/32

    Looping RepitaE&ercício

    azer um programa que peça a leitura de umvalor para a vari#vel /, multiplique esse valorpor 0, e apresente a resposta na vari#vel 1.

    +sse processo deve ser executado enquato ousu#rio dese)ar. Ltilizar a estrutura repita.

     

  • 8/17/2019 Lógica de programação - Loopings

    25/32

    Repetição do Tipo: (ari)vel deControle Para

    ● Mrata4se de uma estrutura feita para facilitar aimplementaç$o de loopings em que seexigem contadores.

    'u se)a, é uma estrutura especialmentedesenvolvida para loopings que possuemum n&mero finito de execuç"es. 7eixandoas estruturas do tipo en!uanto e repita para os loopings em que n$o se con%ece deantem$o o n&meo de vezes que o loopingdever# ser executado.

    ● +ssa estrutura é denominada de ara.

  • 8/17/2019 Lógica de programação - Loopings

    26/32

    Repetição do Tipo: (ari)vel deControle Para

    ● A estrutura para tem o seu funcionamentocontrolado por uma vari#vel denominadacontador. *endo assim, poder# executar um

    determinado con)unto de instruç"es umdterminado n&mero de vezes.

     

  • 8/17/2019 Lógica de programação - Loopings

    27/32

    Looping Para"iagrama de #locos

     A vari#vel var5contadorrece!e o valor5inicial.' looping é executadoenquanto a condiç$ofor verdadeira.

     A cada execuç$o dolooping a vari#velvar5contador éincrementada pelo

    valor de ncremento.

    Instruções

    var(conta!or =valor(inicial)

    Con!iç#o) Incremento

  • 8/17/2019 Lógica de programação - Loopings

    28/32

    Looping ParaPseudocódigo

    para @vari#vel 9 @valor5inicial, @condiç$o,@incremento $aça

      @instruç"es executados dentro do looping$im%para  @instruç"es ap(s sair do looping

    +x Lm looping que ser# executado ;< vezes.

    para cont 9 ;, cont @9 ;

  • 8/17/2019 Lógica de programação - Loopings

    29/32

  • 8/17/2019 Lógica de programação - Loopings

    30/32

    Looping ParaE&emplo 'lgoritmo

    ; C 7efinir um contador variando de ; a 0-D C Her um valor para a vari#vel /-0 C azer 1 9 / : 0-

    E C Apresentar o valor de 1-F C 1epetir os passos D, 0, e E até que o

    contador se)a encerrado.

  • 8/17/2019 Lógica de programação - Loopings

    31/32

    Looping ParaE&emplo – "iagrama de #locos

    Início

    Digite um valor para X

    X

    R = X * 3

    Fim

    cont = 1) cont

  • 8/17/2019 Lógica de programação - Loopings

    32/32

    Looping ParaE&emplo – Pseudocódigo

    algoritmo Hooping5paraIníciovar inteiro count, /, 1-

    para cont 9 ;, cont @9 0, cont 9 cont I ; $aça

    escreva6“7igite o valor de /8-leia6/8-1 9 / : 0-escreva618-

      $im%para 

    Fim