|
![]() |
||
Calculadora em Pascal. Ajuda.
|
||
. Nós temos 759.173 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.
![]() |
|
|
Opções do Tópico |
|
|
#1 (permalink) |
|
Veterano
|
Galera, fiz uma calculadora em pascal só que o Turbo Pascal informa que há algo de errado com o código na parte do if/then, usei o case/of no lugar do if/then mas tbm deu algum tipo de erro que eu não sei o que foi. O que será isso? Se alguem souber me dizer o que está errado mas sem mudar a estrutura do programa eu agradeço.
Código:
Código:
|
|
|
|
|
|
#2 (permalink) |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.781
Reputação: 1756
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Acostume-se a indentar o seu código, com quase toda a certeza você esqueceu de fechar algum par 'begin/end', ou então colocou um ponto-e-vírgula antes de algum else. Só que sem indentação fica quase impossível de ver.
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
#3 (permalink) |
|
Novo Membro
Registrado em: Jan 2006
Mensagens: 84
Reputação: 13
![]() |
Bem, em pascal eu não mexo já faz muito tempo...
Mas de uma coisa eu sei: '1': writeln ('A soma entre os valores e'' ', valor1 + valor2); com certeza um 'break' (em C ou php é break) está faltando no final de cada cláusula desse case. O correto: '1': writeln ('A soma entre os valores e'' ', valor1 + valor2); break; ![]() |
|
|
|
|
|
#4 (permalink) |
|
Veterano
Registrado em: Jan 2003
Localização: Juiz de Fora-MG
Mensagens: 1.362
Reputação: 118
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
O problema que eu vi foi a ausência de aspas simples nas comparações. Quando a variável é char, é preciso fazer:
Código:
Código:
Atribuições e comparacões sem aspas são para variáveis numéricas.
__________________
Beware of the slippery stairs...you could easily fall...and break your neck! |
|
|
|
|
|
#5 (permalink) | |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.781
Reputação: 1756
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
magaupe, indenta o código aí pra gente conseguir ver o que se passa...
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
|
#6 (permalink) |
|
Veterano
|
Galera ja descobri os erros, a dica do IronManDCN era valida, outra coisa é que eu estava colocando ; nos ends que não deviam e no segundo programa eu esqueci de um end no final. heh. vlw pela ajuda!
![]() IronManDCN, eu só não entendi uma coisa que vc falou que "Atribuições e comparacões sem aspas são para variáveis numéricas." Tipo tem vezes que qnd eu faço isso o programa pede aspas, tem vezes que não. Ex: if idade>=18 the.. (Nesse caso o programa n pede aspas) if sinal='1' then.. (Aqui o programa socilicita o uso) Pq isso? Eu ainda n entendi. |
|
|
|
|
|
#7 (permalink) | |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.781
Reputação: 1756
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
Já no segundo caso, você deve ter declarado 'sinal' como um char ou uma string. Essa é uma diferença fundamental de Pascal pra C (eu acabei de citar outra na minha última mensagem). Em C, '0' é uma constante que tem valor numérico (48, que é o código ASCII do caracter '0'). Então você pode fazer uma expressão (c - '0'), que ele vai pegar o código numérico do '0', e subtrair da variável. Em Pascal, não; inteiro é inteiro, caracter é caracter. Mais ainda: um caracter também é uma string[1]. Então você pode comparar livremente strings e caracteres. Aliás, a comparação de strings no Pascal é outra diferença fundamental. Enquanto em C não se pode comparar diretamente uma string com outra (já que não existe um tipo string), em Pascal não há problema nenhum em fazer isso. Ou seja, Código:
Código:
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
|
#8 (permalink) | |
|
GeeK
|
Citação:
Dei uma lida no tópico agora mas o que mais me chamou atenção foi o seu tópico.. realmente não sabia dessas diferenças (ainda não mexo em C, pretendo), muito útil saber!! Acredito que o código tenha ficado assim: Código:
Código:
__________________
Tis -> TE AMO !!! ![]() Sony Vaio VPC-EB17FX/W Intel Core i3 M330 - 4GB DDR3 - 500GB Sata II - ATI 5470HD 512Mb - 15.5 LED FullHD - Blu-Ray |
|
|
|
|
|
|
#9 (permalink) |
|
Veterano
|
gto , eu diria q esse ultimo ficaria assim, mas parece dar no mesmo:
Código:
|
|
|
|
|
|
#10 (permalink) | |
|
Veterano
Registrado em: Nov 2004
Mensagens: 1.055
Reputação: 17
![]() |
Citação:
- "Esse programa aqui está dando erro, faz tempo que tô tentando consertar e não consigo." - "Que erro, de compilação ou de execução?" - "De compilação." - "E qual é o erro que está dando?" - "Sei lá, tá dando um erro lá, não compila." - "Você vai ter que me dizer qual é a mensagem de erro do compilador." - "Ah, parece que a mensagem é... "Invalid não-sei-o-que-lá". - "Ah, tá." EDITADO: moderadores, que maluquice é essa que faz com que toda vez que eu escrevo e-r-r-o, fica com "E" maiúsculo?
__________________
Jeferson Charles Mayer "Como é que eu vou enxergar a tal floresta, com todas essas árvores atrapalhando a visão?" |
|
|
|
|
|
|
#11 (permalink) | |
|
Highlander
Registrado em: May 2002
Localização: Tijuca/RJ
Idade: 9
Mensagens: 87.781
Reputação: 1756
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Citação:
__________________
Visite Quepolis (link de indicação) | "chmod 777 nunca ajudou ninguém" (c) 2002-2010 JQueiroz/FGdH
CCNP: √ ² CCSI: □ | Conheça o Novo Bebuns ![]() |
|
|
|
|
|
|
#12 (permalink) | |
|
GeeK
|
Citação:
Código:
__________________
Tis -> TE AMO !!! ![]() Sony Vaio VPC-EB17FX/W Intel Core i3 M330 - 4GB DDR3 - 500GB Sata II - ATI 5470HD 512Mb - 15.5 LED FullHD - Blu-Ray |
|
|
|
|
|
|
#13 (permalink) | |
|
Veterano
Registrado em: Nov 2004
Mensagens: 1.055
Reputação: 17
![]() |
Citação:
Prometo não ficar sujando o tópico com comentários adicionais desse tipo, mas essa foi engraçada! O negócio considera que "erro" sempre deve iniciar com letra maiúscula... Deixa eu tentar escrever compro...
__________________
Jeferson Charles Mayer "Como é que eu vou enxergar a tal floresta, com todas essas árvores atrapalhando a visão?" |
|
|
|
|
![]() |
| Opções do Tópico | |
|
|