Você está na página 1de 39

Estudar conceitos sobre linguagens de programao e seus paradigmas, tornandose apto a adotar decises de projetos que envolvem a seleo

de linguagens de programao mais adequadas para o desenvolvimento de aplicaes computacionais.

Os computadores executam milhes de operaes a velocidades incrveis. As operaes so organizadas por meio de um conjunto de instrues. Esse conjunto de instrues o programa. Quem executa o programa o processador.

O processador interage com outros componentes.

necessrio que os programas sejam escritos em uma linguagem que o computador entenda. Essa linguagem chamada linguagem de mquina. 0100 1111 1010 0110 pouco intuitiva para os seres humanos. Foram desenvolvidas linguagens de mais alto-nvel.

O cdigo escrito em linguagem de alto nvel convertido em linguagem de mquina pelo compilador ou interpretador.

Compiladas: todas as instrues so traduzidas para instrues de baixo nvel antes da execuo do programa.
Interpretadas: as instrues so traduzidas para instrues de baixo nvel medida que vo sendo executadas.

A elaborao de programas complexos requer a utilizao de um mtodo sistemtico de programao que permita obter programas confiveis, flexveis e eficientes. Salvetti (1998, p. 5) Sugere-se adotar um mtodo de programao em etapas.

1.
2.

3.

4.

anlise do problema a ser resolvido; projeto do programa que resolver o problema, incluindo a elaborao de um algoritmo e a definio das estruturas de dados a serem utilizadas; implementao (codificao) do programa; testes.

O que um algoritmo?
a descrio de uma sequncia de passos

ordenadas e finita que deve ser seguida para a realizao de uma tarefa. uma descrio de como realizar uma tarefa independente da linguagem/hardware. No se preocupa com detalhes de implementao em uma linguagem.

Faz uso de uma notao baseada em linguagem natural. Um algoritmo composto por um nome, as variveis e o bloco principal.
nome do algoritmo

variveis

bloco principal

Os tipos abstratos de dados, ou, simplesmente, tipos de dados, definem quais tipos de informaes podem ser processadas pelo computador.

Define a forma que as instrues so executadas.


Estrutura de sequncia: uma instruo aps a

outra. Estrutura de seleo: h a necessidade de tomar uma deciso, de acordo com determinadas condies. Estrutura de repetio: quando h a necessidade de repetir um conjunto de instrues.

Funo: um mdulo que sempre retorna uma resposta a quem chamou. ex: x := sqrt (4) //retorna a raiz-quadrada
Procedimento: no retorna nenhuma resposta. ex: clrscr; //limpar a tela no pascal

Foi um dos primeiros paradigmas criados e muito utilizado at hoje na computao. estruturado com base em mtodos. Apia-se no conceito de estado de um programa, que a situao momentnea das variveis, e que podem ser alteradas pelos mtodos.

Os programas gerados so eficientes. Fcil modelagem para aplicaes do mundo real. Capacidade de modularizao do cdigofonte. Muito utilizado no meio acadmico e comercial.

Problemas de legibilidade do cdigo. Maior possibilidade de introduo de erros durante o processo de manuteno. O programador especifica como fazer para obter os resultados.

Suporta execuo sequncial de instrues. Suporta especificao de mtodos. Suporta especificao do tipo de parmetros e variveis. Permite chamar mtodos em mdulos distintos do programa.

Modularizao
O uso de mtodos permite a modularizao, que consiste no uso de mtodos com interfaces bem definidas e que atendam a determinadas funcionalidades da aplicao.

De maneira geral, um programa em linguagem imperativa organizado em duas regies:


rea de declarao (mtodos, variveis)
Corpo do programa.

Programas em linguagem imperativa fazem uso de variveis para armazenar valores que so utilizados nos processamentos. Cada varivel pode armazenar um determinado tipo de dado.

SELEO
if condicao then begin //caso condio verdadeira end else begin //caso condio falsa end;
case condicao of valor1: begin end; valor2: begin

end; else: begin


end;

REPETIO
for i:= valor_inicial to valor_final do begin //bloco de cdigo end; repeat //bloco de cdigo until (condicao);

while (condicao) do begin //bloco de cdigo end;

um tipo de dado estruturado unidimensional que consiste de um nmero fixo de elementos, sendo que todos os elementos devem ser do mesmo tipo (char, integer, real, string ....) Definio na linguagem Pascal:
nome_do_array: ARRAY [inicio..fim] of tipo;

Exemplo:
notas: ARRAY [1..4] of real;
notas[1] notas[2] notas[3] notas[4]

Acessando os dados: notas[1]:= 5.0; notas[2]:= 4.0;

um tipo de dado estruturado bidimensional que consiste de um nmero fixo de elementos, sendo que todos os elementos devem ser do mesmo tipo (char, integer, real, string ....)
utilizado para armazenar tabelas, imagens etc. Manipulao muito semelhante aos vetores.

Definio na linguagem Pascal:


nome: ARRAY [inicio..fim, inicio..fim] of tipo_dados; linhas colunas

Exemplo:

m_notas: ARRAY [1..4, 1..4] of real;

uma estrutura de dados composta e heterognea, que permite armazenar valores, onde esses valores podem ser de diferentes tipos.

Definio em linguagem Pascal:

type nome_tipo = record campo1: tipo1; campo2: tipo2; ... end; var nome_variavel : nome_tipo

Exemplo:

reg_alunos RA nome idade telefone

type t_aluno = record RA: integer; nome: string; idade: integer; telefone: string; end; var reg_alunos : t_aluno

Acessando os campos do registro:


reg_alunos

RA
10050

nome
Renato

idade
23

telefone
3660-1777

reg_alunos.RA:= 10050; reg_alunos.nome:= Renato; reg_alunos.idade:= 23; reg_alunos.telefone:= 3660-1777;

procedure nome_procedimento (var par1: tipo1; var par2: tipo2); begin


end;

Exemplo: procedure mostraBoasVindas (var nome: string); begin writeln(Bom dia , nome, . Seja bem-vindo); end;

function nome_funcao (var par1: tipo1; var par2: tipo2): tipo_retorno; begin nome_funcao := valor_a_ser_retornado; end;
Exemplo: function media (var a: real; var b: real): real; begin media:= (a + b) / 2; end;

Você também pode gostar