Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) duvida em delphi


magrinho_andrade

Pergunta

ola pessoal;

sou iniciante no delphi, e me deparei com a seguinte equação:

tenho dois fatores que preciso usar os divisores "MOD E DIV" MAS ESTES FATORES ESTÃO NA CONDIÇÃO DE FLOAT E NÃO ESTOU CONSEGUINDO CONVERTE-LOS POIS O DELPHI ME DA O SEGUINTE [Error] Unit1.pas(42): Operator not applicable to this operand typ

A EQUAÇÃO É A SEGUINTE:

QUANT:= NUM1 DIV NUM2; "SERIA 7 DIV 3 = 2"

QUANT2:=NUM1 MOD NUM2; "SERIA 7 MOD 3 = 1"

SE ALÇGUEM TIVER UMA SOLUÇÃO PARA ESTE PROBLEMA EU AGRADEÇO A AJUDA.

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

olha rafael meu problema É que basicamente eu sou iniciante e a pessoa que tira duvidas minhas só vejo uma vez por semana e como disse anteriormente sou iniciante: o que eu preciso é de como faço para aplicar as opções "mod e div" uma vez que faço isso o programa não executa e eu preciso tirar de uma divisão o numero inteiro que seria usando o operador div.

e da mesma divisão eu preciso apenas da diferença que seria usando o operador mod. mas não sei como aplicar estes operadores já que usando numeros ele aceita. mas usando as variaveis não.

e como que se usa a opção trunc já que todas as apostilas que baixei não me da um exemplo de uso. sem mais obrigado pela atenção.

3.7 Ao postar uma mensagem, procure usar o tamanho de fonte padrão do fórum, não deixando as letras grandes ou pequenas demais; evite o uso de cores fortes, as quais prejudicam a leitura, e não insira textos totalmente em caixa alta (ESTE É UM TEXTO EM CAIXA ALTA). Tópicos que violarem essa regra serão editados sem prévio aviso.
Editado por Jhonas
Regras do forum
Link para o comentário
Compartilhar em outros sites

  • 0

Vamos lá Magrinho! Acabei de fazer um exemplo aqui pra voce. O que você vai precisar é o seguinte:

Um Formulário, Dois componentes Label e Dois botões.

BOTAO MOD > propriedade name = btnMod

BOTAO DIV > propriedade name = btnDiv

Label 1 > propriedade name = label1

Label2 > propriedade name = label2

exmagrinho.jpg

Ok, vamos agora declarar as variáveis no topo da aplicação ( declarei elas como globais, mas não impede de você usá-las dentro do procedimento... Mas fiz assim pra ficar mais prático pra mim ).

Variáveis e Implementações:

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls;

type

TForm1 = class(TForm)

BtnMod: TButton;

BTNDIV: TButton;

Label1: TLabel;

Label2: TLabel;

procedure BtnModClick(Sender: TObject);

procedure BTNDIVClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

QUANT,QUANT2 : DOUBLE;

X,Y,RESULT: INTEGER;

implementation

{$R *.DFM}

Até aí tudo bem, agora vamos trabalhar com nossos botões e labels. Eu fiz assim, quando o usuário clicar no botão selecionando se quer DIV ou MOD, o label vai receber o resultado. Eu coloquei meus próprios valores nas variáveis, mas isso não te impede de criar um diálogo perguntando ao usuário com quais valores você quer trabalhar ( Mas aí é outro caso ok? ).

Bom, agora vamos aos procedimentos dos cliques dos botões:

procedure TForm1.BtnModClick(Sender: TObject);

begin

QUANT:= 10.2;

QUANT2:= 5.3;

x:= Trunc(quant);

y:= trunc(quant2);

RESULT:= x mod y;

Label1.caption := IntToStr(RESULT);

end;

procedure TForm1.BTNDIVClick(Sender: TObject);

begin

QUANT:= 10.2;

QUANT2:= 5.3;

x:= Trunc(quant);

y:= trunc(quant2);

RESULT:= x div y;

Label2.caption := IntToStr(RESULT);

end;

Cara, é isso aí. Qualquer dúvida que você tiver pode postar aí que eu te explico ok?! Até mais!

Editado por Rafael Pasc.
Link para o comentário
Compartilhar em outros sites

  • 0
A EQUAÇÃO É A SEGUINTE:

QUANT:= NUM1 DIV NUM2; "SERIA 7 DIV 3 = 2"

QUANT2:=NUM1 MOD NUM2; "SERIA 7 MOD 3 = 1"

procedure TForm1.Button1Click(Sender: TObject);
var QUANT, QUANT2, NUM1, NUM2 : integer;
begin
  NUM1 := 7;
  NUM2 := 3;
  QUANT:= NUM1 DIV NUM2;
  QUANT2:=NUM1 MOD NUM2;
  showmessage( 'QUANT = ' + inttostr(QUANT));
  showmessage( 'QUANT2 = ' + inttostr(QUANT2));
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0
A EQUAÇÃO É A SEGUINTE:

QUANT:= NUM1 DIV NUM2; "SERIA 7 DIV 3 = 2"

QUANT2:=NUM1 MOD NUM2; "SERIA 7 MOD 3 = 1"

procedure TForm1.Button1Click(Sender: TObject);
var QUANT, QUANT2, NUM1, NUM2 : integer;
begin
  NUM1 := 7;
  NUM2 := 3;
  QUANT:= NUM1 DIV NUM2;
  QUANT2:=NUM1 MOD NUM2;
  showmessage( 'QUANT = ' + inttostr(QUANT));
  showmessage( 'QUANT2 = ' + inttostr(QUANT2));
end;

abraço

Jhonas, ele disse que as variáveis quant e quant2 estão como float, e não dá pra usar os operadores MOD e DIV com pontos flutuantes. Abraços!

Link para o comentário
Compartilhar em outros sites

  • 0
Jhonas, ele disse que as variáveis quant e quant2 estão como float, e não dá pra usar os operadores MOD e DIV com pontos flutuantes. Abraços!

Outra maneira:

procedure TForm1.Button1Click(Sender: TObject);
var NUM1, NUM2 : integer; QUANT, QUANT2 : real;
begin
  NUM1 := 7;
  NUM2 := 3;

  QUANT := NUM1 DIV NUM2;
  QUANT2 := NUM1 MOD NUM2;

  showmessage( 'QUANT = ' + floattostr(QUANT));
  showmessage( 'QUANT2 = ' + floattostr(QUANT2));
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

rafael muito obrigado:

foi perfeita sua resposta.

agradeço muito pois consegui fazer um programinha muito util para mim.

agora se puder me fazer mais um favor gostaria de yuma indicação sua de apostila para criar um programa com armazenamento de dados mas não consigo achar uma apostila de passo a passo e ai fica um tanto dificil .

se puder indicar eu agradeço.

abraço até a proxima

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...