Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá, esse é meu primeiro post no fórum e espero ser respondido :rolleyes:
OK... direto ao assunto...
Estou com um problema num código simples de pascal (comecei a estudar pascal ontem à tarde), o objetivo é criar uma calculadora simples, que calcule só dois números (básico) de uma soma,subtraçao,divisao, multiplicaçao etc.. até ai tudo bem. Logo veio a vontade de incrementar um pouco, colocando as funções de produtos notaveis.. quadrado da soma.. diferença etc. O problema é que o End. não ta "servindo" como deveria, ou seja, finalizar o programa, a mensagem que o interpretador me manda é ' . ' não esperado já tentei várias formas mas nao obtive sucesso...
Program Calculadora_Especial;
var //Variaveis
opcao:integer;
opcao2:integer;
resposta1:real;
resposta2:real;
num1,num2:real;
resposta:real;
termo1:real;
termo2:real;
Begin //Inicio dos comandos
writeln('=====--- || CalculaK ® by Kelvin Dias Dules || ---====='); //Apresentação
writeln('|| versão 0.5 ||');
writeln('|| ||');
writeln('|| ||');
writeln('---------------------------------------------------------');
writeln('||Digite o número correspondente à função para começar!||');
writeln('|||------------------|||'); //Menu de navegação
writeln('|||[1] Somar');
writeln('|||[2] Subtrair');
writeln('|||[3] Multiplicar');
writeln('|||[4] Dividir');
writeln('|||[5] Produtos Notáveis');
writeln('|||[6] Sobre o Programa');
writeln('|||------------------|||');
read(opcao);
//Soma
if opcao=1 then
begin
writeln('Digite o primeiro número da soma:');
read(num1);
writeln('Digite o segundo número da soma:');
read(num2);
resposta:=(num1+num2);
writeln('Resposta :',' ',round(resposta));
end
//Subtração
else if opcao=2 then
begin
writeln('Digite o primeiro número da subtração:');
read(num1);
writeln('Digite o segundo número da subtração:');
read(num2);
resposta:=(num1-num2);
writeln('Resposta:',' ',round(resposta));
end
//Multiplicação
else if opcao=3 then
begin
writeln('Digite o primeiro número da multiplicação:');
read(num1);
writeln('Digite o segundo número da multiplicação:');
read(num2);
resposta:=(num1*num2);
writeln('Resposta:',' ',round (resposta));
end
//Divisão
else if opcao=4 then
begin
writeln('Digite o dividendo (número a ser dividido):');
read(num1);
writeln('Digite o divisor (número de partes que o dividendo será dividido)');
read(num2);
resposta:=(num1/num2);
writeln('Resposta:',' ',round (resposta));
end
//Sobre o Programa
else if opcao=6 then
begin
writeln('||| ===================Sobre o Programa=====================|||');//Não leiam essa bobagem saiugsiagsyagu
writeln('||-- Por estar começando agora, esse é o primeiro programa');
writeln('||-- que durou mais de 30min para ser criado, então decidi');
writeln('||-- fazer esse "Sobre o Programa" por organização');
writeln('||-- O programa se encontra na versão 0.5, ou seja, não está completo,');
writeln('||-- ele deve chegar à uma versão 2.0 futuramente.');
writeln('||-- Bugs serão corrigidos e novas funções serão adicionadas como:');
writeln('||-- *Raiz, Potênciação, Produtos Notáveis etc...');
writeln('||-- Vai ser uma calculadora totalmente completa!');
writeln('||-- [OBS1]Nesta versão, depois de calcular uma operação, deve-se reiniciar o ||-- programa para realizar uma outra atividade!');
writeln('||-- [OBS2]Nesta versão, todos os resultados são aredondados no caso de de ||-- números decimais');
writeln('||-- Contato = kelvindules@hotmail.com');
writeln('||-- Obrigado!!!');
writeln('================================================================||');
writeln(' \\\ || /// Kelvin Dias Dules \\\ || /// ');
writeln('================================================================||');
end;
//Produtos Notáveis
if opcao=5 then
begin
writeln('===== Produtos Notáveis disponíveis ====='); //Início Menu
writeln('=1= Quadrado da Soma (2 termos)|');
writeln('=2= Quadrado da Diferença (2 termos)|');
writeln('=3= Quadrado da Soma (3 termos)|');
writeln('=4= Cubo da Soma (2 termos)|');
writeln('=5= Cubo da Diferença (2 termos)|');
writeln('=6= Produto da Soma pela Diferença|');
writeln('=== Digite o número correspondente à função para calcular ==='); //Fim Menu
read(opcao2);
//Quadrado da Soma*
if opcao2=1 then
begin
writeln('Informe o primeiro termo:');
read(termo1);
writeln('Informe o segundo termo:');
read(termo2);
resposta1:=(termo1+termo2);
resposta2:=(resposta1*resposta1);
writeln('O resultado final é:',' ',round(resposta2));
end
//Quadrado da Diferença
else if opcao=2 then
begin
writeln('Informe o primeiro termo:');
read(termo1);
writeln('Informe o segundo termo:');
read(termo2);
resposta1:=(termo1-termo2);
resposta2:=(resposta1*resposta1);
writeln('O resultado final é:',' ',round(resposta2));
end
//Quadrado da Soma 3t
else if opcao=3 then
begin
writeln('Informe o primeiro termo:');
read(termo1);
writeln('Informe o segundo termo:');
read(termo2);
writeln('Informe o terceiro termo:');
read(termo3);
resposta1:=(termo1+termo2+termo3);
resposta2:=(resposta1*resposta1);
writeln('O resultado final é:',' ',round(resposta2));
end;
readkey;
End.
OBS: Estou usando os if e else if porque não consegui usar os cases http://forum.imasters.com.br/public/style_emoticons/default/pinch.gif
Obrigado pela anteção!
Carregando comentários...