2 - DESENVOLVENDO ALGORITMOS
Mais um da série ...
2.1. PSEUDOCÓDIGO
O algoritmo deve ser fácil de se interpretar e fácil de codificar. Ou seja, ele deve ser o intermediário entre a linguagem falada e a linguagem de programação.
-Usar somente um verbo por frase
-Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática
-Usar frases curtas e simples
-Ser objetivo
-Procurar usar palavras que não tenham sentido dúbio
2.3. FASES
É importante ressaltar que qualquer tarefa que siga determinado padrão pode ser descrita por um algoritmo, como por exemplo:
COMO FAZER PARA ESTACIONAR O CARRO
ou então
CALCULAR A MÉDIA PARA APROVAÇÃO DOS ALUNOS NO CURSO DE INFORMÁTICA
Entretanto, ao montar um algoritmo, precisamos primeiro dividir o problema apresentado em três fases fundamentais.
ENTRADA: São os dados de entrada do algoritmo.
PROCESSAMENTO: São os procedimentos usados para chegar ao resultado final.
SAÍDA: São os dados já processados.
2.4. EXEMPLO DE ALGORÍTMO
Imagine o seguinte problema: Calcular a média final dos alunos da 3 Série. Os alunos realizarão quatro provas: P1, P2, P3 e P4.
Onde:
Média Final = (P1 + P2 + P3 + P4) / 4
Para montar o algoritmo proposto, faremos três perguntas:
a) Quais são os dados de entrada?
R: Os dados de entrada são P1, P2, P3 e P4
b) Qual será o processamento a ser utilizado?
R: O procedimento será somar todos os dados de entrada e dividi-los por 4 (quatro)
(P1 + P2 + P3 + P4) / 4
c) Quais serão os dados de saída?
R: O dado de saída será a média final
Algoritmo
Receba a nota da prova1
Receba a nota de prova2
Receba a nota de prova3
Receba a nota da prova4
Some todas as notas e divida o resultado por 4
Mostre o resultado da divisão
PROGRAMA MEDIA_FINAL;
VAR NOTA1, NOTA2, NOTA3, NOTA4, MEDIA: INTEIRO;
NOME : CARACTERE [35];
INICIO
LER (NOME);
LER (NOTA1, NOTA2, NOTA3, NOTA4);
MEDIA := (NOTA1 + NOTA2 + NOTA3 + NOTA4) / 4;
ESCREVER (NOME, MEDIA);
FIM.
Exemplo em Pascal
Program media_final;
uses wincrt; {faz uso da biblioteca wincrt, que executa o programa em janela no windows}
{Declaração de variáveis}
var
nota1, nota2, nota3, nota4, media:real; {variaveis do tipo real, admitem casas decimais}
nome: string[30]; {cadeia de caracteres}
Begin {Principal}
write('Entre com o nome do aluno: '); {escreve na tela}
readln(nome); {le a sequencia de caracteres e pula pra linha de baixo}
write('Entre com as 4 notas do aluno: '); {escreve na tela}
readln(nota1, nota2, nota3, nota4); {le as 4 notas, separadas por espaços e pula linha}
media:= (nota1 + nota2 + nota3 + nota4) / 4; {calcula a media e atribui valor à variavel media}
writeln('O aluno ',nome,' obteve media ',media:2:2); {escreve na tela}
{o valor de media tera 2 casa antes e 2 casa após o ponto}
writeln('');
write('Aperte qualquer tecla para sair.');
readkey; {espera qualquer tecla ser apertada}
donewincrt; {fecha janela}
End. {Principal}