Vous êtes sur la page 1sur 28

Introduo Programao

Aula 4

Sumrio
Representao de algoritmos Elementos bsicos Algoritmos com qualidade

Representaes de algoritmos
Uma das forma de representar de algoritmos
Pseudo-cdigo

Pseudo-cdigo
Caractersticas:
Sintaxe mais simples que a de uma Linguagem de Programao.

nfase nas idias e no nos detalhes.


Facilita construir um programa em Linguagem de Programao.

Pseudo-cdigo
Exemplo: Fazer um bolo Ingredientes: farinha, acar, leite, etc. Separar os ingredientes Misturar os ingredientes

Colocar massa no forno


Esperar 30 minutos Retirar bolo do forno

Elementos bsicos de um algoritmo


Algoritmo <nome_do_algoritmo>
<declaraes de variveis>

inicio
<comandos>

fim

Elementos bsicos de um algoritmo :: Exemplo


Algoritmo perimetro_circunferncia // declarao de constantes e variveis const pi = 3,1415

float raio
float perim

// comandos
ler (raio) perim = 2 * pi * raio escrever (perim) fim

Elementos bsicos de um algoritmo


Dados (variveis e constantes) Tipos de dados Operadores Comandos Funes Comentrios

Elementos bsicos de um algoritmo :: Exemplo


Algoritmo perimetro_circunferncia // declarao de variveis const PI = 3,1415 dado constante dado varivel

float raio
float perim

tipo de dado // comandos


ler (raio) perim = 2 * PI * raio escrever (perim) fim funo comentrio

operador

Elementos bsicos de um algoritmo :: Dados


Dados Constantes
O valor de uma constante no se altera aps sua definio.

Exemplos:
N_NEPERIANO = 2,7182 UNIVERSIDADE = Uni-CV'

Dados Variveis
Elemento que tm a funo de associar um nome a uma pedao da memria onde um dado pode ser armazenado.

Elementos bsicos de um algoritmo :: Tipos de dados


Definem a natureza do dado, as operaes que podem ser realizadas com o dado e o espao a ser ocupado na memria.

Exemplos:
Inteiro: String de caracteres: Lgico: 10 -5 -128 13,4 -5,0 'Abril' FALSE (0) Real (ponto flutuante): 1,34 TRUE (1)

'quarta-feira'

Elementos bsicos de um algoritmo :: Operadores


Atribuio Aritmticos Relacionais Lgicos

Elementos bsicos de um algoritmo :: Operador Atribuio


Utilizado para atribuir um valor a uma varivel

nome da varivel

Valor

Notao:
x1 23;
temp x2;

Elementos bsicos de um algoritmo :: Operadores Aritmticos


Dados de entrada: tipo numrico (int ou float) Resultado: tipo numrico (int ou float) Exemplos:
x_2 2 + 3;

alfa
ang resto

1 / 5;
1 / 5.0; 10 % 3;

resto
delta

1 % 4;
5 * 5 4 * 1 * 4;

Elementos bsicos de um algoritmo :: Operadores Relacionais


Dados de entrada: tipo numrico (int ou float) Resultado: tipo lgico Exemplos:
cond1 2 == 3;

cond2 1.6 5.0;


cond3 1 > 5; cond4 (1 + 2) < 5; cond5 10 3; cond6 1 ( 4 / 3);

Elementos bsicos de um algoritmo :: Operadores Lgicos


Dados de entrada: tipo lgico Resultado: tipo lgico Exemplos:
cond1 V AND F;

cond2 F OR F;
cond3 NOT cond1; cond4 (V AND F) OR (5 > 3);

Elementos bsicos de um algoritmo :: Precedncia de Operadores


1. 2. 3. 4. 5. 6. 7. NOT * + == AND OR / < (negao) % > (subtrao)

Elementos bsicos de um algoritmo :: Exerccios sobre Operadores


d + y - z * a / p d / y y / a b / z r % q y % d y=2 z = 4.0 a=8 b = 6.0 d = 12 p=4 q=3 r = 10

((z / a) + b*a ) - d

Elementos bsicos de um algoritmo :: Exerccios sobre Operadores


(B == A * C) AND (LOG OR T) (B > A) OR (B == A) LOG OR (B / A C) AND NOT(A C) NOT LOG OR T AND (A + B C)

NOT LOG OR (B * 2 - C == 0)
LOG OR NOT (B * B C * 10 + A * B)

A=2 B=7 C = 3.5 LOG = F

Elementos bsicos de um algoritmo :: Funes


Pr-definidas Definidas pelo programador Exemplos:
seno(angulo) pow(x,y) sqrt(resto) exp(tempo) ler(var1,var2,...) escrever(resul1,result2,...)

Elementos bsicos de um algoritmo :: Comentrios


Utilizados para descrever o algoritmo, esclarece pedaos do cdigo Notao em Linguagem C:
//

/* <comentrio> */

Algoritmos com qualidade


Devem ser feitos para serem lidos por seres humanos! Escreva os comentrios no momento em que estiver a escrever o algoritmo.

Algoritmos com qualidade


Os comentrios devem acrescentar alguma coisa, e no frasear o comando:

// Multiplicao de b por h: area b * h;

// Clculo da rea do retngulo: area b * h;

Algoritmos com qualidade


Utilizar comentrios no prlogo:

/***************************************** UNIVERSIDADE DE CABO VERDE CELESTINO BARROS DATA: 10/11/2009 LTIMA MODIFICAO: 11/11/2009 ALGORITMO DE DEMONSTRAO *****************************************/

Algoritmos com qualidade


Utilizar espaos em branco para melhorar a legibilidade:

hipsqrt(cat1*cat1+cat2*cat2);

hip sqrt(cat1 * cat1 + cat2 * cat2);

Algoritmos com qualidade


Escolha nomes elucidativos para as variveis:

p c + l;

preco custo + lucro;

Algoritmos com qualidade


Utilize um comando por linha. Utilize parnteses para melhorar a compreenso e evitar erros.

Utilize identao (recuo de texto).

Questes

Vous aimerez peut-être aussi