Ir ao conteúdo

Pascal/Delphi Button não está trazendo a informação


Ir à solução Resolvido por Fazzioni,

Posts recomendados

Postado

Senhores, boa noite!

 

Estou com uma dúvida em um exercício em que eu tenho que mostrar qual número é o menor ou o maior inputado.

 

Porém não está trazendo o resultado correto.

 

Segue o código.

 

 

 

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    lblN1: TLabel;
    lblN2: TLabel;
    edtN1: TEdit;
    edtN2: TEdit;
    btnMostrar: TButton;
    procedure btnMostrarClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnMostrarClick(Sender: TObject);
var
  edtN1 : Integer;
  edtN2: Integer;

begin

    if edtN1.Size > edtN2.Size then
      ShowMessage('O número 1 é o maior!')
    else
      ShowMessage('O número 2 é o maior!');
end;

end.

 

  • Obrigado 1
  • Solução
Postado

Olá, os objetos criados não precisam de referência como acontece no java  e os valores das variáveis    não são tratados como propriedades,

acredito que seu códico deve ficar assim:

procedure TForm1.btnMostrarClick(Sender: TObject);
{var edtN1 : Integer; edtN2: Integer;  você não pode declarar essas variáveis, pois já existem edits com o mesmo nome, você so precisa citar o objeto}
var
a, b : integer;
begin

a := strtoint(edtN1.text); //no pascal é necessário converter de texto para inteiro, se não for inteiro irá gerar um exception, portanto, é necessário tratar
b := strtoint(edtN2.text);

// você pode fazer assim:
//if strtoint(edtN1.text) >  strtoint(edtN2.text) then
// ou
if a > b then
ShowMessage('O número 1 é o maior!')
else
ShowMessage('O número 2 é o maior! OU IGUAL');  

end;

 

para saber o número máximo que a variável suporta, você pode usar a função:

ShowMessage(IntToStr(high(a)));

// e

ShowMessage(IntToStr(low(a)));

 

  • Curtir 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!