Ir ao conteúdo
  • Cadastre-se

Pascal/Delphi como dividir por nº de valores colocados em delphi


Posts recomendados

Citação

unit Unit1;

{$mode delphi}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

{ TForm1 }

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Label1: TLabel;
    Label10: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Edit4Change(Sender: TObject);
    procedure Edit5Change(Sender: TObject);
    procedure Edit6Change(Sender: TObject);
    procedure Edit7Change(Sender: TObject);
    procedure Edit8Change(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure RadioButton1Change(Sender: TObject);
    procedure RadioButton2Change(Sender: TObject);
    procedure RadioButton3Change(Sender: TObject);
    procedure RadioButton4Change(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.RadioButton1Change(Sender: TObject);
begin
  If (radiobutton1.checked=true) then
   begin
   Edit6.enabled:=False;
   Edit7.enabled:=False;
   Edit8.enabled:=False;
   Edit9.enabled:=False;
   Edit6.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';
  end;

end;

procedure TForm1.RadioButton2Change(Sender: TObject);
begin
  If (radiobutton2.checked=true) then
   begin
   Edit6.enabled:=True;
   Edit6.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';
  end;
end;

procedure TForm1.RadioButton3Change(Sender: TObject);
begin
  If (radiobutton3.checked=true) then
   begin
   Edit6.enabled:=False;
   Edit7.enabled:=False;
   Edit8.enabled:=False;
   Edit9.enabled:=False;
   Edit6.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';
  end;

end;

procedure TForm1.RadioButton4Change(Sender: TObject);
begin
  If (radiobutton4.checked=true) then
   begin
   Edit6.enabled:=False;
   Edit7.enabled:=False;
   Edit8.enabled:=False;
   Edit9.enabled:=False;
   Edit6.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
//Simples ----------------------------------------------------------------------
  soma:real;
  somac2:real;

//Ponderada --------------------------------------------------------------------
  soma2:real;
  soma3:real;

//Geométrica -------------------------------------------------------------------
  vezes:real;

//Harmônica --------------------------------------------------------------------
begin

 //-ERRO ---------------------------------------------------------------------------------------------------------------------------<
 //-ERRO ---------------------------------------------------------------------------------------------------------------------------<

//Média Aritmética Simples------------------------------------------------------

  soma:=(strtofloat(edit1.text) + strtofloat(edit2.text) +
   strtofloat(edit3.text) + strtofloat(edit4.text));

  somac2:=(strtofloat(edit1.text) + strtofloat(edit2.text));


  If (radiobutton1.checked=true) then
  begin
  if (edit1.text='') and (edit2.text='') then
   begin
   end
   else begin
     Edit5.text:= FloatToStr((somac2)/4);
   end
  end;

 //-ERRO ---------------------------------------------------------------------------------------------------------------------------<
 //-ERRO ---------------------------------------------------------------------------------------------------------------------------<

//Média Ponderada --------------------------------------------------------------


  If (radiobutton2.checked=true) then
   begin
   Edit5.text:=floattostr(strtofloat(edit1.text) + strtofloat(edit2.text) +
   strtofloat(edit3.text) + strtofloat(edit4.text)
   /(strtofloat(edit6.text) + strtofloat(edit7.text) +
   strtofloat(edit8.text) + strtofloat (edit9.text)));
  end;

//Média Geométrica -------------------------------------------------------------

  Vezes:=(strtofloat(edit1.text) *
   strtofloat(edit2.text) * strtofloat(edit3.text) *
   strtofloat(edit4.text));

  If (radiobutton3.checked=true) then
   begin
   Edit5.text:= FloatToStr(sqrt(vezes));
  end;

//Média Harmônica Simples ------------------------------------------------------

  If (radiobutton4.checked=true) then
   begin
   Edit5.text:=(floattostr((strtofloat(edit1.text) / 1) +
   (strtofloat(edit2.text) / 1) + (strtofloat(edit3.text) / 1) +
   (strtofloat(edit4.text) / 1)/4));
  end;

end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Edit1.text:='';
  Edit2.text:='';
  Edit3.text:='';
  Edit4.text:='';
  Edit5.text:='';
  Edit6.text:='';
  Edit7.text:='';
  Edit8.text:='';
  Edit9.text:='';

end;

procedure TForm1.Edit1Change(Sender: TObject);
begin
  if (Edit1.text='') then
  begin
   edit2.enabled:=False;
   Edit2.text:='';
   Edit3.text:='';
   Edit4.text:='';

  end
  else begin
   edit2.enabled:=True
  end;

// Ponderada variavel ---

  If (radiobutton2.checked=true) then
  begin
  if (Edit1.text='') then
  begin
   edit6.Enabled:=False;
   Edit2.text:='';
   Edit3.text:='';
   Edit4.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit2.enabled:=False;
   edit6.enabled:=True;
  end;
  end

end;


procedure TForm1.Edit2Change(Sender: TObject);
begin
  if (Edit2.text='') then
  begin
   edit3.enabled:=False;
   Edit3.text:='';
   Edit4.text:='';

  end
  else begin
   edit3.enabled:=True;
   button1.enabled:=True
  end;

// Ponderada variavel ---

  If (radiobutton2.checked=true) then
  begin
  if (Edit2.text='') then
  begin
   edit7.Enabled:=False;
   Edit3.text:='';
   Edit4.text:='';
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit3.enabled:=False;
   edit7.enabled:=True;
  end;
  end

end;

procedure TForm1.Edit3Change(Sender: TObject);
begin
  if (Edit3.text='') then
  begin
   edit4.enabled:=False;
   Edit4.text:='';

  end
  else begin
   edit4.enabled:=True
  end;

// Ponderada variavel ---

  If (radiobutton2.checked=true) then
  begin
  if (Edit3.text='') then
  begin
   edit8.Enabled:=False;
   Edit4.text:='';
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit4.enabled:=False;
   edit8.enabled:=True;
  end;
  end

end;

procedure TForm1.Edit4Change(Sender: TObject);
begin
// Ponderada variavel ---

  If (radiobutton2.checked=true) then
  begin
  if (Edit4.text='') then
  begin
   edit9.Enabled:=False;
   Edit9.text:='';

  end
  else begin
   edit9.enabled:=True;
  end;
  end

end;

procedure TForm1.Edit5Change(Sender: TObject);
begin

end;

procedure TForm1.Edit6Change(Sender: TObject);
begin
  If (radiobutton2.checked=true) then
  begin
  if (Edit6.text='') then
  begin
   edit2.Enabled:=False;
   Edit2.text:='';
   Edit3.text:='';
   Edit4.text:='';
   Edit7.text:='';
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit2.enabled:=True;
  end;

  end;
end;

procedure TForm1.Edit7Change(Sender: TObject);
begin
  If (radiobutton2.checked=true) then
  begin
  if (Edit7.text='') then
  begin
   edit3.Enabled:=False;
   Edit3.text:='';
   Edit4.text:='';
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit3.enabled:=True;
  end;

  end;

end;

procedure TForm1.Edit8Change(Sender: TObject);
begin
  If (radiobutton2.checked=true) then
  begin
  if (Edit8.text='') then
  begin
   edit4.Enabled:=False;
   Edit8.text:='';
   Edit9.text:='';

  end
  else begin
   edit4.enabled:=True;
  end;
  end
end;

procedure TForm1.FormCreate(Sender: TObject);
begin

end;

procedure TForm1.FormResize(Sender: TObject);
begin

end;

end.

 

 desculpe o código muito grande, penso q se mostrar todo será melhor para seu entendimento

 Ola estou com uma duvida em meu programa que tem por objetivo pôr de 2 á 4 valores para tirar sua média, porém não sei como fazer para que o programa divida os valores colocados em cada Edit pela quantidade de valores ( se 2, 3 ou 4), por exemplo: edit1=15 , edit2=16, edit3=20 , edit4=' ' são três Edit's sendo usados, dessa forma somo apenas os três e divido pelo número 3, variando de acordo com os edit's usados.  Agradeço qualquer ajuda.

aqui uma das minhas tentativas: 


  if (edit1.text='') and (edit2.text='') then
   begin
   end
   else begin
     Edit5.text:= FloatToStr((somac2)/4);
   end
  end;
 

Link para o comentário
Compartilhar em outros sites

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!