Fórum Como calcular média em delphi ou sql ? #190838
27/10/2003
0
:shock:
Campos da tabela Nota1 Nota2 Nota3 Nota4 Media
Tenho 4 campos numéricos em uma tabela Paradox, desejo tirar a média das notas, sendo que dependendo da disciplina o número de notas pode ser 3 ou 2, o que quero é uma forma de fazer como no excel(lá seria média(a2:a5), ai ele soma o número de notas existentes e divide pelo número de notas existentes, não quero somar 4 e dividir por 4, pois a quantidade de notas variam, por gentileza caso alguém realmente saiba como fazer me ajude, caso contrário não escreva nada.
Campos da tabela Nota1 Nota2 Nota3 Nota4 Media
Tenho 4 campos numéricos em uma tabela Paradox, desejo tirar a média das notas, sendo que dependendo da disciplina o número de notas pode ser 3 ou 2, o que quero é uma forma de fazer como no excel(lá seria média(a2:a5), ai ele soma o número de notas existentes e divide pelo número de notas existentes, não quero somar 4 e dividir por 4, pois a quantidade de notas variam, por gentileza caso alguém realmente saiba como fazer me ajude, caso contrário não escreva nada.
Carlosdarienzo
Curtir tópico
+ 0
Responder
Posts
27/10/2003
Joefferson
criar um campo ´NumNotas´ nao ajudaria???
ou entao,
dependendo da materia tu faz o seguinte,
quando tiver cadastrando as notas, se a materia tiver duas notas p ex. tu preenche as outras duas com valor -1. dai no delphi tu faz
procedure TForm1.Button1Click(Sender: TObject);
var
NumNotas, i : Integer;
SumNotas, Media : Real;
Begin
NumNotas:=0;
SumNotas:=0;
Query1.SQL.Clear;
Query1.SQL.Add(´select nota1,nota2,nota3,nota4 from notas where materia=´matematica´´);
with Query1.fields do
for i:=0 to 3 do
begin
if field[i].asfloat>=0 then
begin
Inc(NumNotas);
SumNotas:= SumNotas + field[i].asfloat;
end;
end;
Media:=SumNotas/NumNotas;
ShowMessage(´Tua Media foi ==> ´ + FloatToStr(Media));
end;
Nao tenho certeza se o codigo tem algum erro de sintaxe, mas acho q eh assim mesmo, espero q resolva!!!.
Valew.
ou entao,
dependendo da materia tu faz o seguinte,
quando tiver cadastrando as notas, se a materia tiver duas notas p ex. tu preenche as outras duas com valor -1. dai no delphi tu faz
procedure TForm1.Button1Click(Sender: TObject);
var
NumNotas, i : Integer;
SumNotas, Media : Real;
Begin
NumNotas:=0;
SumNotas:=0;
Query1.SQL.Clear;
Query1.SQL.Add(´select nota1,nota2,nota3,nota4 from notas where materia=´matematica´´);
with Query1.fields do
for i:=0 to 3 do
begin
if field[i].asfloat>=0 then
begin
Inc(NumNotas);
SumNotas:= SumNotas + field[i].asfloat;
end;
end;
Media:=SumNotas/NumNotas;
ShowMessage(´Tua Media foi ==> ´ + FloatToStr(Media));
end;
Nao tenho certeza se o codigo tem algum erro de sintaxe, mas acho q eh assim mesmo, espero q resolva!!!.
Valew.
:shock:
Campos da tabela Nota1 Nota2 Nota3 Nota4 Media
Tenho 4 campos numéricos em uma tabela Paradox, desejo tirar a média das notas, sendo que dependendo da disciplina o número de notas pode ser 3 ou 2, o que quero é uma forma de fazer como no excel(lá seria média(a2:a5), ai ele soma o número de notas existentes e divide pelo número de notas existentes, não quero somar 4 e dividir por 4, pois a quantidade de notas variam, por gentileza caso alguém realmente saiba como fazer me ajude, caso contrário não escreva nada.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)