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 29<br />

Numerico Num, Unidade<br />

Inicio<br />

Escrever "Digite um inteiro"<br />

Ler Num<br />

Unidade = Resto(Num, 10)<br />

Escrever "O algarismo das unidades de ", Num, " é ", Unidade<br />

Fim<br />

4. Se quiséssemos um programa para inverter um número com dois algarismos (por exemplo,<br />

se a entrada fosse 74, a saída deveria ser 47) poderíamos utilizar o seguinte fato: se x e y são os<br />

algarismos de um número (casa das dezenas e das unidades, respectivamente), então este número é<br />

x . 10 + y. Assim, a inversão seria y . 10 + x (no exemplo, 74 = 7 . 10 + 4; 47 = 4 . 10 + 7) e bastaria<br />

extrair os dois algarismos do número dado e utilizar a expressão acima. A extração do algarismo da<br />

casa das unidades foi mostrada acima. E o algarismo da casa das dezenas? Basta ver que ele é o<br />

quociente da divisão do número por 10 e o exemplo 2 apresenta uma solução para se determinar o<br />

quociente de uma divisão inteira. Temos então o seguinte programa.<br />

//Programa que inverte um número com dois algarismos<br />

Variaveis<br />

Numerico Num, Invertido, Unidade, Dezena<br />

Inicio<br />

Escrever "Digite o numero"<br />

Ler Num<br />

Unidade = Resto(Num, 10)<br />

Dezena = (Num - Unidade)/10<br />

Invertido = Unidade*10 + Dezena<br />

Escrever "O invertido de ", Num, " ‚ ", Invertido<br />

Fim<br />

Dificilmente, o caro leitor vai escrever um programa com este objetivo (para que serve<br />

inverter um número com dois algarismos?). Esta questão e algumas outras estão sendo discutidas<br />

aqui apenas como exemplos para o desenvolvimento da lógica de programação.<br />

5. Imagine agora que queiramos um programa que determine o maior múltiplo de um inteiro<br />

dado menor que um outro inteiro dado. Por exemplo, se a entrada fosse 13 e 100, a saída deveria ser<br />

91 (91 é o maior múltiplo de 13 que é menor que 100).<br />

Como dividendo = divisor x quociente + resto e resto < divisor, temos que o valor da<br />

expressão dividendo - resto é o múltiplo procurado.<br />

//Programa que determina o maior múltiplo de um inteiro menor que outro inteiro<br />

Variaveis<br />

Numerico Num, Divisor, MaiorMultiplo<br />

Inicio<br />

Escrever "Digite o numero do qual se quer o múltiplo"<br />

Ler Divisor<br />

Escrever "Digite o inteiro que deve ser maior do que o múltiplo"<br />

Ler Num<br />

MaiorMultiplo = Num - Resto(Num, Divisor)<br />

Escrever "O maior múltiplo de ", Divisor, " menor do que ", Num, " é ", MaiorMultiplo.<br />

Fim<br />

6. O programa a seguir, além de ser muito interessante no sentido do desenvolvimento da<br />

lógica de programação, será utilizado (a sequência de comandos do programa principal) em outros<br />

programas. O objetivo dele é permutar os conteúdos de duas variáveis. Ou seja, suponhamos que,<br />

através de comandos de entrada o programa armazenou nas variáveis x e y os valores 7 e 18 e

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

Saved successfully!

Ooh no, something went wrong!