DO
LOOP O exemplo acima trata-se de uma série convergente. Quando
não sabe-se a serie seja convergente, o algoritmo do programa acima pode
entrar em loop infitito. Neste caso, talvez é interessante
estabelecer apriori, o valor máximo nmax e utlize o recurso
de DO -loop. O syntax de um DO é
DO N=n1,n2 (,n3)
comandos
.
.
comandos
END DO
ou
comandos
.
.
comandos
m CONTINUE
O bloco de DO faz simplesmente exeção dos comandos dentro
do bloco acrescentando o índice N de n1 a n1
com acrescimo n3. O parametro n3 é opcional. Quando
n3 não for especifcado, o valor de default de acrescimo é 1.
Um bloco de DO pode conter outro bloco de DO.
DO m1 N=n1,n2
comandos
DO m2 L=l1,l2
comandos
m2 CONTINUE
comandos
m1 CONTINUE
Na hora de utilizar o DO, deve tomar cuidado de o índice
do DO não seja utlizado fora do DO. Em particular, não é permitido alterar
o índice dentro do bloco. Quando usa o bloco de DO dentro de outro bloco,
o bloco interno tem que ser completamente embutido dentro do bloco de fora.
Não é permitido a superposição de dois blocos de DO. É permitido sair no
meio de um bloco de DO, mas não é permitido entrar no meio de bloco de
fora.
Utilizando o DO-loop, reescreva o programa acima.
Prof. Takeshi Kodama
Ultima Alteração: 04 de novembro de 1996