sábado, 27 de setembro de 2014

Algoritmo para ler salários, onde o Flag será um Salário igual a 0 e escreva quais os três //maiores valores dos salários lidos.





//Faça uma algoritmo para ler salários, onde o Flag será um Salário igual a 0 e escreva quais os três

//maiores valores dos salários lidos.

program salariosLer;

uses crt;

var

i,flag,primeiro,segundo,terceiro,auxiliar:integer;

begin

writeln('********************');

writeln('* Salarios *');

writeln('********************');

writeln('informe no minimo 3 valores de salario');

flag:=1;

i:=0;

while (flag<>0) do

begin

i:=i + 1;

writeln('---> 0 para sair <----');

writeln('informe o salario:');

repeat

readln(flag);

if (flag <0) then

begin

writeln('Invalido! deve ser maior que 0.');

end;

until flag>=0;

if (flag <> 0) then

begin

if (i <= 3) then

begin

case i of

1: primeiro:=flag;

2: segundo:=flag;

3: terceiro:=flag;

end;

end else begin

if (flag >= primeiro) then

begin

auxiliar:=primeiro;

primeiro:=flag;

terceiro:=segundo;

segundo:=auxiliar;

end else begin

if (flag >=segundo) then

begin

auxiliar:=segundo;

segundo:=flag;

terceiro:=auxiliar;

end else begin

if (flag >= terceiro) then

begin

terceiro:=flag;

end;

end;

end;

end;

//ordenação de 3 numeros

if (i =3) then

begin

if(primeiro > segundo)or( primeiro > terceiro)then

begin

if(terceiro > segundo) then

begin

auxiliar:=primeiro;

primeiro:=segundo;

segundo:=auxiliar;

end else begin

auxiliar:=primeiro;

primeiro:=terceiro;

terceiro:=auxiliar;

end;

end;

if(segundo > terceiro)then

begin

auxiliar:=segundo;

segundo:=terceiro;

terceiro:=auxiliar;

end;

// troca primeiro com terceiro

auxiliar:=primeiro;

primeiro:=terceiro;

terceiro:=auxiliar;

end;

end else begin

i:=i-1;

if (i<3)then

begin

writeln('ERRO: quantidade de salario menor que 3');

end else begin

writeln('maior salario informado = ',primeiro);

writeln('segundo maior salario informado = ',segundo );

writeln('terceiro maior salario informado = ',terceiro);

end;

end;

end;

readkey;

end.

Nenhum comentário:

Postar um comentário

Pascal - Lazarus