14.03.2015 Views

ILA - Unisinos

ILA - Unisinos

ILA - Unisinos

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (<strong>ILA</strong>) - Página 90<br />

Se Dia > 31 entao<br />

Verifica = falso<br />

Fim_se<br />

Fim_se<br />

Fim_se<br />

Senao<br />

Verifica = falso<br />

Fim_se<br />

Retornar Verifica<br />

Fim<br />

7. Imagine agora a seguinte questão. O interpretador <strong>ILA</strong> ao interpretar um comando Faca<br />

enquanto espera encontrar depois da palavra Faca um espaço em branco e a palavra enquanto.<br />

Desta forma se o digitador digitasse mais de um espaço em branco entre as duas palavras, o<br />

interpretador acusaria erro. Como é possível que o digitador possa, inadvertidamente, digitar mais<br />

de um espaço em branco entre duas palavras, é interessante que, antes da interpretação, os espaços<br />

em branco em excesso sejam suprimidos. O programa abaixo realiza esta ação e, para tal, faz uso da<br />

função Delete do exemplo 1 desta seção.<br />

//Programa que exclui espaços em branco em excesso entre duas palavras de uma frase dada.<br />

Variaveis<br />

Caracter s<br />

Numerico i, c, p, n, j<br />

Inicio //Programa principal<br />

Escrever "Digite a cadeia"<br />

Ler s<br />

c = Comprimento(s)<br />

i = 1<br />

Faca enquanto i < c<br />

j = i<br />

Faca enquanto (Parte(s, i, 1) = " ") e (Parte(s, i + 1, 1) = " ")<br />

i = i + 1<br />

Fim_enquanto<br />

Se i > j entao<br />

i = i - j<br />

s = Delete(s, j + 1, i)<br />

c = Comprimento(s)<br />

i = i + 1<br />

Fim_se<br />

i = i + 1<br />

Fim_enquanto<br />

Escrever s<br />

Fim<br />

8. A questão a seguir é bem interessante. Trata de um programa que determine o dígito<br />

verificador de um número de uma conta corrente, de um número de matrícula de um estudante de<br />

uma escola, etc.. Este dígito verificador, como já foi dito acima, serve para a prevenção de possíveis<br />

erros de digitação. Por exemplo, se a matrícula 30245-7 fosse digitada erroneamente como 39245-7,<br />

o erro seria detectado pois o dígito verificador da conta 39245 seria 6 e não 7. Existem vários<br />

métodos para a determinação do dígito verificador. Um deles é dado pelo seguinte algoritmo.<br />

1. Multiplica-se os números correspondentes aos dígitos da conta, da direita para esquerda,<br />

por 2, por 3, etc..<br />

2. Soma-se os produtos obtidos no item 1.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!