Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
luizcarlosjunior Novato

Registrado: Sexta-Feira, 10 de Mai de 2013 Mensagens: 17
|
Enviada: Sex Mai 10, 2013 2:40 am Assunto: problema grave com calculadora |
|
|
eu fiz tudo certo mas quando eu vo soma um valor grande tipo 9999999999999999999999999999 o meu programa da erro
olha aqui como eu fiz
procedure TForm1.Button1Click(Sender: TObject);
Var
A,B,C: Int64;
begin
A:= StrToInt64(Edit1.Text);
B:= StrToInt64(Edit2.Text);
C:= A+B;
Label1.Caption:= IntToStr(C);
end;
end. |
|
Voltar ao Topo |
|
 |
faccruz Colaborador

Registrado: Terça-Feira, 20 de Julho de 2010 Mensagens: 1563
|
Enviada: Sex Mai 10, 2013 8:26 am Assunto: |
|
|
Qual erro? _________________ Facc System - Sistemas para Computador |
|
Voltar ao Topo |
|
 |
felipekk Colaborador


Registrado: Quinta-Feira, 5 de Janeiro de 2012 Mensagens: 1531 Localização: Pirapora - MG
|
Enviada: Sex Mai 10, 2013 10:26 am Assunto: |
|
|
Bom dia,
ja que vc esta usando o tipo int64 como variável acho que na conversão também tem que ser usado.
Segue: Código: | procedure TForm1.Button1Click(Sender: TObject);
Var
A,B,C: Int64;
begin
A:= StrToInt64(Edit1.Text);
B:= StrToInt64(Edit2.Text);
C:= A+B;
Label1.Caption:= Int64ToStr(C);
end;
end. |
Espero que ajude.
Abraços. _________________ "Esteja ligado em melhora contínua: hoje melhor do que ontem e pior do que amanhã."
 |
|
Voltar ao Topo |
|
 |
luizcarlosjunior Novato

Registrado: Sexta-Feira, 10 de Mai de 2013 Mensagens: 17
|
Enviada: Sex Mai 10, 2013 1:50 pm Assunto: |
|
|
o erro é esse: '99999999999999999999999999999999999999' is not a valid integer value
aqui não ta funcionando o Int64ToStr , fica dando undeclared identifier |
|
Voltar ao Topo |
|
 |
felipekk Colaborador


Registrado: Quinta-Feira, 5 de Janeiro de 2012 Mensagens: 1531 Localização: Pirapora - MG
|
Enviada: Sex Mai 10, 2013 2:14 pm Assunto: |
|
|
Só uma pergunta vc ta somando quais valores?
Acho que seria melhor colocar como double a variável.
Pois pode ocasionar de ter resultados com números decimais. _________________ "Esteja ligado em melhora contínua: hoje melhor do que ontem e pior do que amanhã."
 |
|
Voltar ao Topo |
|
 |
luizcarlosjunior Novato

Registrado: Sexta-Feira, 10 de Mai de 2013 Mensagens: 17
|
Enviada: Sex Mai 10, 2013 4:55 pm Assunto: |
|
|
eu to somando 99999999999999999999999999999999999 + 99999999999999999999999999999999999
com double o resultado fica mt estranho, olha só ele:
2E 35 |
|
Voltar ao Topo |
|
 |
felipekk Colaborador


Registrado: Quinta-Feira, 5 de Janeiro de 2012 Mensagens: 1531 Localização: Pirapora - MG
|
Enviada: Sex Mai 10, 2013 5:04 pm Assunto: |
|
|
Desculpe a pergunta mais essa soma serve pra que? _________________ "Esteja ligado em melhora contínua: hoje melhor do que ontem e pior do que amanhã."
 |
|
Voltar ao Topo |
|
 |
CesarRocha Mestre

Registrado: Segunda-Feira, 30 de Mai de 2011 Mensagens: 794 Localização: São Paulo - SP
|
Enviada: Sex Mai 10, 2013 5:09 pm Assunto: |
|
|
O valor simplesmente não está cabendo na variável. Lembra-se que cada variável pode suportar até n bits?
Sobre o double, não está "estranho". Ele simplesmente colocou em notação cientifica...
~ |
|
Voltar ao Topo |
|
 |
luizcarlosjunior Novato

Registrado: Sexta-Feira, 10 de Mai de 2013 Mensagens: 17
|
Enviada: Sex Mai 10, 2013 5:25 pm Assunto: |
|
|
é pq eu queria fazer uma calculadora sem erros, mas eu não consigo somar esses numeros grandes
tem algum outro jeito??? |
|
Voltar ao Topo |
|
 |
|