ada-1-trabalho [CLP - BCC/UFPEL]
Trace: • ada-1-trabalho
Estrutura Básica de um Programa em Ada
Programa Alô Mundo
Declarações de Variaveis
Exemplo de um programa em Ada
Jonathan Mathias Gonczoroski
Rafael Radunz Borba
Rodrigo de Brum Acosta
A linguagem de programação Ada é:
- Alto nível: Nível de abstração elevado.
- Imperativa: Descreve a computação como ações, enunciados ou comandos que mudam o estado (variáveis) de um programa.
- Tipicamente compilada: onde o código fonte nessa linguagem é executado diretamente pelo sistema operacional ou pelo processador.
É uma linguagem baseada em Pascal, que foi criada através de um concurso realizado pelo DoD (U. S. Departament of Defense) sendo o principal projetista o francês Jean Ichbiah. Tal concurso foi realizado para por ordem na situação em que o DoD se encontrava pois eles em 1974 usavam cerca de 450 linguagens ou dialetos de programação e não havia uma linguagem adequada. A linguagem foi primeiramente padronizada em 1983, pelo ANSI e em 1985 pela ISO (Organização Internacional de Padronização) e em 1995 a ISO padronizou uma versão melhorada conhecida como Ada 95. Ada 95 foi a primeira linguagem de programação orientada ao objeto padronizada internacionalmente.
Ada foi desenvolvida para ser mais do que apenas mais uma linguagem de programação, já que ela inclui muitos dos princípios modernos de engenharia de software. Por exemplo, o conceito de ocultação de informação foi inserido na linguagem ao invés de ser implementado como uma técnica de programação.
Um identificador é qualquer objeto em Ada e deve ser formado seguindo algumas regras bastante rígidas. Um identificador tem que começar com uma letra do alfabeto e pode ser formado de letras, números e underlines, contanto que não hajam underlines duplos ou triplos e assim por diante e que ele não seja o último caracter.
Ada não é "case-sensitive". Não podem ser usados espaços em branco ou caracteres especiais como parte de um identificador. É desejável que os identificadores sejam significativos.
- Declarações de bibliotecas:
Procedure nome_do_programa is
- Declaracoes de variaveis
- Corpo do programa
end nome_do_programa;
obs: Na linguagem Ada tanto faz escrever minusculo ou maiusculo.
De acordo com o "Ada 95 Reference Manual" essas são as palavras reservadas em Ada. Tanto faz letras maiusculas ou minusculas. Umas 47 dessas são abordadas nesse manual ou são de uso óbvio.
abort abs abstract accept access aliased all
and array at begin body case constant
declare delay delta digits do else elsif
end entry exception exit for function generic
goto if in is limited loop mod
new not null of or others out
package pragma private procedure protected raise range
record rem renames requeue return reverse select
separate subype tagged task terminate then type
untill use when while with xor
Algumas bibliotecas da linguagem Ada são:
Ada.Text IO (ou simplesmente Text IO)
Ada.Integer Text IO
Ada.Float Text IO
Exemplo para declarar uma biblioteca:
Procedure AloMundo is
Ada.text_IO.**Put_Line**("Alo Brasil!!!");
Ada.Text_IO.**Put_Line**("Alo Mundo!!!");
end AloMundo;
Para declarar a variável x como sendo float, é só fazer:
Para declarar a variável y como sendo do tipo inteiro e atribuir o valor 5 e a constante PI de valor 2.1415 basta fazer:
y:integer :=5;
Pi : constant float :=3.1415;
As declarações em geral devem ficar entre o cabeçalho do programa e o begin, mas o mesmo pode ser feito para funções ou procedimentos sendo nesse caso variaveis locais e não globais.
Para fazer o Get ler do teclado e por numa variável x basta fazer:
With Ada.Integer Text IO, Ada.Text IO;
Use Ada.Integer Text IO, Ada.Text IO;
Procedure mostraget is
Put_Line("Entre um numero natural");
Put_Line("O numero que voce entrou foi: ");
end mostraget;
Exemplo de comentarios em Ada:
–Isso é um comentario.
Esse é o unico tipo de comentário existente em Ada. Não existe nada análogo ao /* e */ do C e ao { e } ou (* e *) do Pascal.
O if(se) pode ser usado assim:
sequencia de comandos (executada se a condição é verdadeira)
outra sequencia de comandos (executada se a comdição é falsa)
if x > 4 and x < 10 then
y:=x+2;
O for (para) pode ser usado da seguinte forma: (Isso é um meio exemplo)
for **a** in 1..10 loop
a não precisa estar declarado a menos que você o use explicitamente não só como indice. Esse meio exemplo executa uma sequencia de comandos para a=1 até a=10. Para fazer na ordem contraria basta fazer:
for a in reverse 1..10 loop
O While (enquanto) é usado da seguinte forma: (Outro meio exemplo)
while a /=3 and b <=15 and c=3.0 loop;
onde " /= " quer dizer diferente.
O loop é usado para repetições infinitas
Mas é claro que podemos parar, veja:
exit when a=3;
outra sequencia de comandos
No exemplo acima o loop irá parar quando a for igual a 3. A primeira sequencia de comandos será executada quando for 3 mas a outra posterior ao exit não. Um aspecto agradável em Ada é que todas as repetições terminam em end loop; o que torna fácil modifica-las de uma para outra sem jamais confundir com um if ou case por exemplo.
O case (caso) pode ser usado assim:
when 1 => executa alguma coisa
when 2 => executa outra coisa
when 3..10 => executa outra coisa ainda
when others => Put Line("Oi");
Nesse meio exemplo, se x for 1 vai executar alguma coisa, se for 2 outra, se estiver entre 3 e 10 incluindo 3 e 10 vai executar outra coisa ainda e irá escrever "Oi" caso não seja nenhum desses.