Erro ao compilar Pascal

1. Erro ao compilar Pascal

Geovani Oliveira
manager

(usa Ubuntu)

Enviado em 31/01/2010 - 02:19h

Olá Galerinha... Estou lendo sobre programação e comecei a me interessar mesmo não sendo minha praia. Acontece que escolhi o Pascal para desenvolvimento de programas, é lógico que estou no estágio inicial. Estou tentando criar um pequeno programa que permitirá calcular área de um triângulo... o problema é que na hora de compilar dá erro e eu não tenho a menor idéia do que possa ser... Agradeço à atenção de vcs!!!!

Escrita do Programa:

Program Area_de_triangulos;
Uses CRT;

var b,a:real;
area:char;

Begin
ClrScr;
Writeln('Cálculo da área de triângulos');
Writeln;
Writeln('Digite o valor da altura');
Read(a);
Writeln;
Writeln('Digite o Valor da base');
Read('b');
Writeln;
area:-=(1/2*a*b);
Writeln;
Writeln('A área é:',area:5:3);
Writeln('Prima qualquer tecla para regressar...');

End.



E ao tentar compilar pelo terminal...

sudo fpc pascal1.pas

Free Pascal Compiler version 2.2.2-8 [2009/01/08] for x86_64
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for x86-64
Compiling aprendendo1.pas
pascal1.pas(15,14) Error: Variable identifier expected
pascal1.pas(17,10) Error: Illegal expression
pascal1.pas(17,10) Fatal: Syntax error, ";" expected but ":" found
Fatal: Compilation aborted
Error: /usr/bin/ppcx64 returned an error exitcode (normal if you did not specify a source file to be compiled)






  


2. erro na sintaxe do código

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 31/01/2010 - 03:08h

Veja amigo, vou tentar ajudar..
O compilador avisa sobre os erros encontrados no seu código:
pascal1.pas(15,14) Error: Variable identifier expected
-> Na linha 15 vc colocou "Read('b');" e neste caso o comando "read" está esperando uma variável e vc colocou uma string, pois colocou o b entre aspas, para resolver basta retirar as aspas.

ascal1.pas(17,10) Error: Illegal expression
pascal1.pas(17,10) Fatal: Syntax error, ";" expected but ":" found
-> Quer dizer que uma expressão ilegal vou encontrada, e logo abaixo o compilador informa sobre o erro. Neste caso na linha 17 vc escreveu
area:-=(1/2*a*b);
quando na verdade deveria ter escrito
area:=(1/2*a*b);

ok, espero ter ajudado, faz um tempo que não escrevo em pascal :-)


3. Novo Erro!

Geovani Oliveira
manager

(usa Ubuntu)

Enviado em 31/01/2010 - 11:55h

Ok, fiz as alterações que me passou porém agora começou dar outro erro. Já tentei várias formas e nada mudou...

Escrita do Programa:

Program Area_de_triangulos;
Uses CRT;

var b,a:real;
area:char;

Begin
ClrScr;
Writeln('Cálculo da área de triângulos');
Writeln;
Writeln('Digite o valor da altura');
Read(a);
Writeln;
Writeln('Digite o Valor da base');
Read(b);
Writeln;
area:=(1/2*a*b);
Writeln;
Writeln('A área é:',area:5:3);
Writeln('Prima qualquer tecla para regressar...');

End.




O novo erro:


sudo fpc pascal1.pas
Free Pascal Compiler version 2.2.2-8 [2009/01/08] for x86_64
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Linux for x86-64
Compiling aprendendo1.pas
pascal1.pas(17,12) Error: Incompatible types: got "Real" expected "Char"
pascal1.pas(19,36) Error: Illegal use of ':'
pascal1.pas(23) Fatal: There were 2 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/bin/ppcx64 returned an error exitcode (normal if you did not specify a source file to be compiled)

Agradeço desde já!!!!!!


4. Re: Erro ao compilar Pascal

Jefferson Diego
Diede

(usa Debian)

Enviado em 01/02/2010 - 01:19h

PS: Você não pode alocar um resultado 'real' dentro de um 'char'. Não entendi o porque do ':5:3' na área.

Program Area_de_triangulos;
Uses CRT;

var b,a:real;
area:single;

Begin
ClrScr;
Writeln('Cálculo da área de triângulos');
Writeln;
Writeln('Digite o valor da altura');
Read(a);
Writeln;
Writeln('Digite o Valor da base');
Read(b);
Writeln;
area:=(1/2*a*b);
Writeln;
Writeln('A área é:',area);
Writeln('Prima qualquer tecla para regressar...');

End.


5. area do triangulo

ednardo da silva teixiera
nerd994@yaroo

(usa Outra)

Enviado em 14/04/2010 - 12:49h

coleginha é preciso voce tirar alumas coisas, como é caso do char, coloque real, e quando for imprimir não precisa inserir numero Writeln('A área é:',area:5:3); esse : 5: 3 tire e vai da certo



6. Re: Erro ao compilar Pascal

Ricardo Cardoso
ricardo cardoso

(usa Debian)

Enviado em 14/04/2010 - 16:53h

vamos lá.

1. A variável area vai receber o um valor atribuído após uma operação matemática ou seja ela tem que ser declarada nesse caso como real e não como caracter.

2. Se me recordo, pois faz tempo q não estudo matemática, a área do triângulo é calculada assim base * altura dividio por 2, então tem q colocar assim area := (A*B)/2;

3. Você colocou read (a) o comando é readln

4. writln (" A área do triângulo é: +area"); o sinal de + é para concatenar


espero ter ajudado.

qualquer coisa poste aqui.


7. Re: Erro ao compilar Pascal

André
andrezc

(usa Debian)

Enviado em 14/04/2010 - 16:56h

Cara, nem me fale em Pascal, odeio Pascal rs.


8. Re: Erro ao compilar Pascal

White Hawk
WhiteHawk

(usa Ubuntu)

Enviado em 03/06/2010 - 16:57h

Olá. Também sou inciante em programação, mas espero que esta resposta te seja útil. Fiz algumas alterações em seu código. Por favor veja se funciona aí.

Program Area_de_triangulos;

Uses CRT;

var a, b, area : real;

Begin
ClrScr;
Writeln('-----Calculo de area de triangulos-----');
Writeln();
Write('Digite o valor da altura.: ');
Readln(a);
Writeln();
Write('Digite o valor da base.: ');
Readln(b);
Writeln();
area:= (b * a) / 2;
Writeln('Area = ', area:6:2);
Writeln();
Writeln('---------------------------------------');
Writeln();
Writeln('Pressione qualquer tecla para fechar.');
Readkey();

End.


Sobre o (area:5:3) isto indica que o valor da variável area será impresso em no máximo cinco casas antes da vírgula e três casas depois da vírgula. Você também pode colocar estruturas condicionais(if, else) em seu programa. Por exemplo: se o usuário digitar um número menor ou igual a zero para a base ou altura, imprima "A base ou altura não pode ser iguais ou menores que zero".

Qualquer coisa é só pedir. Boa Sorte.









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts