1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

pascal

Discussão em 'Programação' iniciada por dio_123, 27 de Outubro de 2008. (Respostas: 9; Visualizações: 836)

  1. dio_123

    dio_123 Power Member

    bem tenho de fazer um programa no pascal que soma dois numeros no dev-pascal o problema é que dá erro na var o que tenho mal

    agedecia

    Código:
    program soma
    var a, b,:real;
    begin;
    writeln ('intruduza dois valores para a soma');
    read(a,b);
    soma:=a+b;
    write ('soma dos numeros é'=,soma);
    readln;
    End;
    
     
    Última edição pelo moderador: 27 de Outubro de 2008
  2. m00s

    m00s Power Member

    que tal tirar a vírgula a mais após a var b?

    tens:
    Código:
    var a, b,:real;
    substitui por:
    Código:
    var a, b:real;
    para além disso vais ter problemas aqui:
    Código:
    write ('soma dos numeros é'=,soma);
    que deves substituir por:
    Código:
    write ('soma dos numeros é = ',soma);
     
    Última edição: 27 de Outubro de 2008
  3. _Anderson_

    _Anderson_ Banido

    O que não falta ai são erros mesmo ;P

    Isto deve dar:

    Código:
    program ex1;
    var a,b,soma:integer;
    begin
    writeln ('intruduza dois valores para a soma');
    read(a,b);
    soma:=(a+b);
    write ('soma dos numeros é=',soma);
    readln;
    End.
    
    O pior erro que via ai era talvez tares a considerar uma soma como real, apesar de ele provavelmente aceitar, não é o mais correcto...
     
  4. m00s

    m00s Power Member

    ...eu só tinha visto por alto mas de facto tens bastantes erros.


    acho que nesta altura deves lêr bem os apontamentos pois estás no início... se continuas com dúvidas deste tipo mais lá para a frente então as coisas tornam-se mais difíeis.
     
  5. _Anderson_

    _Anderson_ Banido

    Confirmo, também estou a começar mas talvez "felizmente", tenho uma prof que não dá um minuto de descanso, já para não falar que aquilo é competição constante na plataforma de programação ;P

    Resumindo, dio, se num problema tão básico dás tantos erros, tens mesmo de correr atrás disso.

    Cumps
     
  6. dio_123

    dio_123 Power Member

    consegui fazer o programa da soma consegui fazer de subtracção tambem o de intruduzir o nome.
    Agora estou tentar fazer um que é intruduzir o nome depois intruduzir as notas dos dois testes e o final é o nome do aluno + media dos testes (a+b/2)
    o problema é que no final a média dá por exemplo 1.6500000000E+001
    Código:
    uses
    CRT;
    Var
      nota1, nota2, Sum1 : REAL;
      nome : string;
    Begin
      ClrScr;
      WriteLn ('intruduz o teu nome');
      ReadLn (nome);
      WriteLn('intruz as notas dos dois testes de portugues: ');
      ReadLn(nota1, nota2);
      Sum1 := (nota1+nota2)/2;
      WriteLn('A Aluno ',nome,'  teve media nos testes de',Sum1);
      readkey;
      End.
    
     
    Última edição pelo moderador: 28 de Outubro de 2008
  7. alfinete

    alfinete Power Member

    agra faz um que inseres o nome , quantas notas quer inserir, e calcular a media das notas inseridas.
     
  8. dio_123

    dio_123 Power Member

    tipo eu ja fiz em pascal Mas dá-me um numero esquesito no final 1.6500000000E+001
    Qual é o erro que tenho no codigo
    Código:
    uses
    CRT;
    Var
    nota1, nota2, Sum1 : REAL;
    nome : string;
    Begin
    ClrScr;
    WriteLn ('intruduz o teu nome');
    ReadLn (nome);
    WriteLn('intruz as notas dos dois testes de portugues: ');
    ReadLn(nota1, nota2);
    Sum1 := (nota1+nota2)/2;
    WriteLn('A Aluno ',nome,' teve media nos testes de',Sum1);
    readkey;
    End.
    
     
    Última edição pelo moderador: 28 de Outubro de 2008
  9. Ronnie_03

    Ronnie_03 Power Member


    Eu não percebo nada de Pascal, mas o numero que te deu é 16.5, por isso, acho que declaraste mal foi o tipo de variável. Devia ser do tipo float (não sei se isto existe em pascal). Devia ser um tipo que aceite numeros com casas decimais, mas com virgula flutuante, porque isso está em notação cientifica.

    Espero ter ajudado nalguma coisa, ou pelo menos, espero não ter baralhado mais.

    EDIT: Acho que não devias declarar as variáveis como reais. Deve haver outro formato em Pascal que seja mais apropriado para esse tipo de cálculos, que exigem poucas casas decimais e numeros pequenos.
     
    Última edição pelo moderador: 28 de Outubro de 2008
  10. CaMonnes

    CaMonnes Power Member

    boas!!!

    mais um aluno em programaçao....

    ainda bem!!

    eu ando agora no 11º ano e tamos a dar c++...

    quanto a pascal ja tive a minha conta o ano passado...

    isso da competiçao é mais que normal e é muito bom, assim aumentam os vossos conhecimentos e têm mais vontade de aprender para serem "melhores" que os outros...

    ora bem....

    quanto ao resultado esqesito fazes assim:

    quando declaras uma variável do tipo real( equivalente a float em c) tens de dizer com quantas casas inteiras e decimais queres que apareca o resultado)...

    vou exemplificar:

    WriteLn('A Aluno ',nome,' teve media nos testes de',Sum1:4:2);

    o 4 é o numero de casas inteiras que adicionei é o numero das casas inteiras, e o 2 o numero de casas decimais...

    tens de por sempre primeiro dois pontos ou seja,

    :4:2

    acho que da para perceber....

    continua com o pascal que vais ver que é engraçado xDDDDD

    eu vou agora brincar com o c++ xP
     

Partilhar esta Página