Kelvin Dules 0 Denunciar post Postado Fevereiro 4, 2009 Bom... ai está meu primeiro programinha feito em pascal (sei que é muito antigo). Uma calculadora simples... legazinha xD EDIT: Código ao invés do executável Program Calculadora_Especial; var //Variaveis opcao,opcao2:integer; resposta1,resposta2:real; num1,num2:real; resposta:real; termo1,termo2,termo3:real; repetir:string; Begin //Inicio dos comandos //Inicio da repetição repeat writeln('=====--- || CalculaK ® by Kelvin Dias Dules || ---====='); //Apresentação writeln('|| versão 0.9 ||'); 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=====================|||');//Início Info 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.9, 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 etc...'); writeln('||-- Vai ser uma calculadora totalmente completa!'); writeln('||-- [OBS]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('================================================================||'); //Fim info 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); end; //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 opcao2=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 opcao2=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 //Cubo da Soma else if opcao2=4 then begin writeln('Informe o primeiro termo:'); read(termo1); writeln('Informe o segundo termo:'); read(termo2); resposta1:=(termo1+termo2); resposta2:=(resposta1*resposta1*resposta1); writeln('O resultado final é:',' ',round(resposta2)); end //Cubo da Diferença else if opcao2=5 then begin writeln(' Informe o primeiro termo:'); read(termo1); writeln(' Informe o segundo termo:'); read(termo2); resposta1:=(termo1-termo2); resposta2:=(resposta1*resposta1*resposta1); writeln('O resultado final é:',' ',round(resposta2)); end //Produto da Soma pela Diferença else if opcao2=6 then begin writeln('Informe o primeiro termo:'); read(termo1); writeln('Informe o segundo termo:'); read(termo2); resposta1:=(termo1*termo1-termo2*termo2); writeln('O resultado final é:',' ',round(resposta1)); end; writeln('Deseja repetir o programa?'); //Pergunta para repetição do programa read(repetir); clrscr; until(repetir ='não'); End. //Fim da Versão 0.9 do CalculaK //Data: 04/02/2009 //Autor: Kelvin Dias Dules //--------------------------------------|| Comentem sobre ele... deem dicas etc.. toda ajuda é bem vinda. Obrigado! (PS: Tem 2 dias que eu to estudando pascal.. então pega leve ai uishaiusa) Agradecimentos à EDIT: BeraldO por me responder no outro tópico onde não estava achando o erro xD FLW! Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 4, 2009 Agradecimentos à Beraldi por me responder no outro tópico onde não estava achando o erro xDBeraldo. :P hehe Poste o código aqui. Baixar o arquivo é ruim. ALém disso, você postou o executável, não o fonte. Outra coisa: nem todos usam Windows e podem rodar qualquer executável... :rolleyes: Compartilhar este post Link para o post Compartilhar em outros sites
Kelvin Dules 0 Denunciar post Postado Fevereiro 4, 2009 Pelo jeito só você anda olhando meus posts BeraldO suihauishiahusia Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 4, 2009 Aqui, tive de adicionar um Uses CRT antes de Var, para poder usar clrscr(). Não sei se em Windows é assim. No caso da divisão, verifique se o divisor não é zero, para não gerar erro de divisão por zero. Use indentação e faça modularização, ou seja divida seu programa em subprogramas (funções e procedimentos). Compartilhar este post Link para o post Compartilhar em outros sites
Kelvin Dules 0 Denunciar post Postado Fevereiro 4, 2009 Por mais incrivel que pareça... não entendi muito o que você disse.. principalmente como eu iria "dividir o programa em partes(sub-programas)"....... :blink: Aqui (windows) tá funcionando normalmente.. EDIT: Qual parte do programa você acha que eu deveria organizar? (foi o que entendi por identação). Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 4, 2009 Indentação é é organizzar o código hierarquicamente: veja a diferença: if (condicao) { acao switch (acao) { case 1: teste; break. } } else { bla bla bla } if (condicao) { acao switch (acao) { case 1: teste; break. } } else { bla bla bla } Veja como o código com indentação é mais fácil de ser lido. Modularizar é criar funções. Estude funções, que entenderá o que eu disse. if (opcao == 5) funcao1(); else if (opcao == 6) fucao2(); Desculpe-me ppor usar sintaxe de C em ev\z de Pascal. Odeio Pascal e nem sei se lembro como usar a sintaxe dele. :P Compartilhar este post Link para o post Compartilhar em outros sites
Kelvin Dules 0 Denunciar post Postado Fevereiro 4, 2009 Aproveitando que você falou em C.... eu ja baixei algumas apostilas de linguagem C pra começar a estudar... ela vem junto com uns exercicios e exemplos.. varias coisas la.. POREM http://forum.imasters.com.br/public/style_emoticons/default/upset.gif não to achando um compilador C que funcione... baixei o Borland mas nao consegui instalar :blink: Baixei o Dev C++ e já não gostei porque nao tava conseguindo compilar.. dava um erro la num arquivo .win sei la Baixei o VISUAL STUDIO 2008 pelo jeito 2gb desperdiçados ... erro na instalação = 1330 = Diz que um arquivo .cab la ta corrompido mas ja baixei duas vezes por fontes diferentes.. e nada ¬¬ se puder.. adiciona ai kelvindules@hotmail.com da uma luz sobre um compilador.. qualquer coisa pra usar C VLW EDIT: Deixei o pascal porque além de antigo... não ia me ajudar muito em programação. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 4, 2009 eu uso o GCC, que é o padrão do Linux. Em Windows, geralmente usa-se o Dev C++, que segue o padrão do GCC. Já instalei o DEV uma vez em Windows e não tive problemas. Tente de novo e, se não conseguir, poste no fórum de C. Compartilhar este post Link para o post Compartilhar em outros sites
NEI.ESC 0 Denunciar post Postado Fevereiro 16, 2009 Bem legal continue evoluindo. Compartilhar este post Link para o post Compartilhar em outros sites