Skip to content

Instantly share code, notes, and snippets.

@osnipezzini
Last active May 6, 2020 23:20
Show Gist options
  • Save osnipezzini/505506d0be705068fa636a171c1c1c65 to your computer and use it in GitHub Desktop.
Save osnipezzini/505506d0be705068fa636a171c1c1c65 to your computer and use it in GitHub Desktop.
program Avaliacao;
var
valor1, valor2: real;
operacao: char;
i, cont: integer;
begin
repeat
writeln('Primeiro valor');
read(valor1);
writeln('Segundo valor');
read(valor2);
writeln('Operação');
read(operacao);
case (upcase(operacao)) of
'+': writeln('Soma = ', valor1 + valor2: 2: 2);
'-': writeln('Subtração = ', valor2 - valor1: 2: 2);
'*': writeln('Multiplicação = ', valor1 * valor2: 2: 2);
'/': if (valor2 > 0) then
writeln('Divisão = ', valor1 / valor2: 2: 2)
else
writeln('Não foi possível dividir!');
'P':
begin
if (int(valor1) mod 2 = 0) then
writeln(int(valor1), ' é par!')
else
writeln(int(valor1), ' não é par!');
if (int(valor2) mod 2 = 0) then
writeln(int(valor2), ' é par!')
else
writeln(int(valor2), ' não é par!');
end;
'I':
begin
if (int(valor1) mod 2 <> 0) then
writeln(int(valor1), ' é impar!')
else
writeln(int(valor1), ' não é impar!');
if (int(valor2) mod 2 <> 0) then
writeln(int(valor2), ' é impar!')
else
writeln(int(valor2), ' não é impar!');
end;
'N':
begin
cont := 0;
for i := 1 to int(valor1) do
begin
if (int(valor1) mod i = 0) then
Inc(cont);
if (cont > 2) then
break;
end;
if (cont < 3) then
writeln(int(valor1), ' é primo!');
cont := 0;
for i := 1 to int(valor2) do
begin
if (int(valor2) mod i = 0) then
Inc(cont);
if (cont > 2) then
break;
end;
if (cont < 3) then
writeln(int(valor1), ' é primo!');
end;
'E': writeln('Valor 1 ao quadrado = ', sqr(valor1): 2: 2);
end;
repeat
writeln('Fazer outra operação (S/N)?');
readln(operacao);
until (upcase(operacao) = 'S') or (upcase(operacao) = 'N');
until (upcase(operacao) = 'N');
end.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment