ILA - Unisinos
ILA - Unisinos
ILA - Unisinos
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 20<br />
programas que podem ser executados de forma integrada é chamado software. Por seu turno, as<br />
unidades do computador, associadas a outros equipamentos chamados periféricos, como uma<br />
impressora, constituem o hardware. O que nos é útil é um conjunto software + hardware. Um<br />
conjunto deste tipo é chamado de um sistema de computação. De agora em diante, os nossos<br />
processadores serão sistemas de computação. Isto é, queremos escrever programas que sejam<br />
executado por um sistema de computação.<br />
Como foi dito acima, o desenvolvimento de um programa que gerencie o dia a dia comercial<br />
de uma farmácia requer um compilador (ou um interpretador) que o traduza para a linguagem de<br />
máquina. Antigamente, as empresas que desenvolviam compiladores desenvolviam apenas estes<br />
programas, de tal sorte que o programador necessitava utilizar um processador de texto à parte para<br />
edição do programa fonte. Atualmente, os compiladores são integrados num sistema de computação<br />
que contém, entre outros:<br />
1. Processador de texto, para a digitação dos programas fontes;<br />
2. Depurador, que permite que o programa seja executado comando a comando, o que facilita<br />
a descoberta de erros de lógica;<br />
3. Help, que descreve as sintaxes e as semânticas de todas as instruções da linguagem;<br />
4. Linker, que permite que um programa utilize outros programas.<br />
Rigorosamente falando, um sistema constituído de um compilador e os softwares listados<br />
acima deveria ser chamado de ambiente de programação; é mais comum, entretanto, chamá-lo<br />
simplesmente de compilador.<br />
O ambiente de programação utilizado neste livro, denominado <strong>ILA</strong>, contém um interpretador,<br />
um depurador e um help e foi desenvolvido pelo Professor Sérgio Crespo, da Universidade do Vale<br />
do rio dos Sinos, UNISINOS. O interpretador interpreta programas desenvolvidos numa linguagem<br />
algorítmica na qual os comandos são escritos em português e possuem sintaxes bastante simples.<br />
Como o <strong>ILA</strong> não tem integrado um editor de texto, os programas devem editados num processador<br />
de texto que grave os textos editados em código ASCII, como, por exemplo, o bloco de notas do<br />
Windows.<br />
1.11 Exercícios propostos<br />
1. Três índios precisam afastar de suas terras três brancos invasores. Para tal e dispondo de um<br />
barco cuja capacidade é de apenas duas pessoas, precisam atravessar um rio. Por questões de<br />
segurança, os índios não querem ficar em minoria, em nenhum momento e em nenhuma das<br />
margens. Escreva um algoritmo que oriente os índios para realizarem a travessia nas condições<br />
fixadas. (Cabe observar que, usualmente, este exercício é enunciado envolvendo três jesuítas e três<br />
canibais. A alteração feita é uma modesta contribuição para o resgate da verdadeira história dos<br />
índios).<br />
2. O jogo conhecido como Torre de Hanói consiste de três torres chamadas origem, destino e<br />
auxiliar e um conjunto de n discos de diâmetros diferentes, colocados na torre origem na ordem<br />
decrescente dos seus diâmetros. O objetivo do jogo é, movendo um único disco de cada vez e não<br />
podendo colocar um disco sobre outro de diâmetro menor, transportar todos os discos para torre<br />
destino, podendo usar a torre auxiliar como passagem intermediária dos discos. Escreva algoritmos<br />
para este jogo nos casos n = 2 e n = 3.<br />
3. Imagine que se disponha de três esferas numeradas 1, 2 e 3 iguais na forma, duas delas com<br />
pesos iguais e diferentes do peso da outra. Escreva um algoritmo que, com duas pesagens numa<br />
balança de dois pratos, determine a esfera de peso diferente e a relação entre seu peso e o peso das<br />
esferas de pesos iguais.<br />
4. A média geométrica de n números positivos é a raiz n-ésima do produto destes números.<br />
Supondo que o processador é capaz de calcular raízes n-ésimas, escreva um algoritmo para<br />
determinar a média geométrica de n números dados.<br />
5. Sabendo que o dia 01/01/1900 foi uma segunda-feira, escreva um algoritmo que determine