AJUDE-ME, DEU BRANCO !

Delphi

06/03/2003

ai pessoal!

dado as informações nota1,nota2 e nº de faltas,
preciso elaborar uma aplicação que leia esses
valores e calcule o conceito do aluno conforme
MEDIA=(NOTA1*4)+(NOTA2*6)/10

se media >=0 e média < 2 CONCEITO E
se media >=2 e média < 4 CONCEITO D
se media >=4 e média < 6 CONCEITO C
se media >=6 e média < 8 CONCEITO B
se media >=8 e média < 10 CONCEITO A
se nº de faltas > 16 aluno reprovado por falta.


eu fiz assim, declarei ´NF´ como variavle global,
var
Form1: TForm1;
nf:integer;

implementation

{$R *.DFM}

{ TForm1 }

{ TForm1 }

procedure conceito(NT1, NT2: real; var Med: real);
begin
Med:= (NT1*4) +(NT2*6)/10;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var NT1, NT2, Med: real;
begin
NT1:=StrToFloat(Edit5.Text);
NT2:=StrToFloat(Edit2.Text);
NF:= StrToint(Edit3.Text);
conceito(NT1,NT2,Med); //chamada por referencia aqui!

if (Med >= 0) and (Med < 2) then
if (nf > 16) then
Form1.Edit4.Text:= ´ conceito E ´
else
Form1.Edit4.Text:= ´ reprovado por falta ´;
if (Med >= 2) and (Med < 4) then
if (nf > 16) then
Form1.Edit4.Text:= ´ conceito D ´
else
Form1.Edit4.Text:= ´ reprovado por falta ´;
if (Med >= 4) and (Med < 6) then
if (nf > 16) then
Form1.Edit4.Text:= ´ conceito C ´
else
Form1.Edit4.Text:= ´ reprovado por falta ´;
if (Med >= 6) and (Med < 8) then
if (nf > 16) then
Form1.Edit4.Text:= ´ conceito B ´
else
Form1.Edit4.Text:= ´ reprovado por falta ´;
if (Med >= 8) and (Med < 10) then
if (nf > 16) then
Form1.Edit4.Text:= ´ conceito A ´
else
Form1.Edit4.Text:= ´ reprovado por falta ´;

end;

o programa compila, não dá erro, porem não mostra nenhum resultado.

SE ALGUEM PUDER ME AJUDAR, AGRADEÇO.


Harry

Harry

Curtidas 0

Respostas

Anonymous

Anonymous

06/03/2003

Veja o exemplo abaixo, verifique se não contem erros pois não fiz nenhum refinamento:

function TForm1.Media(Nota1Peso4, Nota2Peso6: String): Double;
begin
Media:= ((StrToFloat(Nota1Peso4)*4)+(StrToFloat(Nota2Peso6)*6))/10;
end;

procedure TForm1.Button1Click(Sender: TObject);
var nMedia: Double;
cConceito: Char;
begin
nMedia:= Media(m.lines[0],m.Lines[1]);
  If nMedia >= 8 then cConceito := ´A´ else
  If nMedia >= 6 then cConceito := ´B´ else
  If nMedia >= 4 then cConceito := ´C´ else
  If nMedia >= 2 then cConceito := ´D´ else
  If nMedia >= 0 then cConceito := ´E´;
  if StrToInt(m.lines[2]) >= 16 then
  ShowMessage(´Reprovado por faltas´) else
if cConceito>´C´ then
  ShowMessage(´Reprovado´) else
  ShowMessage(´Aprovado´);
p.Caption:= ´Conceito ´+cConceito;
end;



GOSTEI 0
Anonymous

Anonymous

06/03/2003

A propósito, eu utilizei um memo (m) e um panel (p) para RADgilizar o exemplo.

Aroldo Zanela
aroldo_zanela@hotmail.com


GOSTEI 0
POSTAR