USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Calcular Notas de Candidatos
CarlinhosBrown
ALTO PARAÍSO DE GOIAS
GO - BRASIL
Postada em 28/11/2005 12:57 hs            
Galera é o seguinte:
 
Tenho uma tabela CadNotas (Insc, Nome, Materia, Nota)
 
q funciona da seguinte maneira, tenho um candidato, ele faz prova num concurso ondi teve pra ele 4 materias (Portugues, Matematica, Conh.Gerais, Ciencia)
 
naturalmente sera criado 4 linhas desse candidato na tabela, uma linha pra cada materia, sendo essas 4 linhas com o mesmo numero de inscricao...
 
preciso montar um loop, nao sei ao certo, mas q calcule isso, ou seja, fazer um loop inicial onde ira percorrer a tabela normal, e dentro desse loop, acho q teria q fazer outro loop pra agrupar, por exemplo, as 4 linhas do mesmo candidato... isso seria para saber qual a nota, exemplo:
 
Insc    Mat          Peso   Nota
01      Portugues   2       5,2
01      Matemaica  2       7,2
01      ciencias      1       6,1
01      conh. Ger    1       8,0
 
entao, teria q fazer um loop pra pegar essas 4 linhas, somar as notas numa variavel, o peso em outra variavel, ai daria a media...
 
depois disso eu vou salvar uma unica linha em outra tabela, essa parte de salvar é mole,,, entao vai ficar assim no final
 
Insc    candidato     Media
01      joao             5,0
 
Finalmente,,, entao é isso, preciso percorrer essa tabela CadNotas, inscricao por inscricao, e dentro de cada percorrer, eu somar as notas em uma unica variavel...
 
Se alguem puder me ajudar, é urgente isso...
 
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 28/11/2005 13:12 hs            
monta uma sql dessa forma:
SELECT Tabela2.Insc, Sum([Tabela2]![Peso]*[Tabela2]![Nota])/4 AS Media FROM Tabela2 GROUP BY Tabela2.Insc HAVING (((Tabela2.Insc)='01'));
 

dsmn
     
CarlinhosBrown
ALTO PARAÍSO DE GOIAS
GO - BRASIL
Postada em 28/11/2005 14:17 hs            
entao....
 
mas a quantidade de materia nem sempre sera 4, pode ser 3 ou 5,,, sera eleatorio de acordo com cada concurso...
 
e o calculo nao sera apenas do candidato nr 01,, sera de todos...
 
e ai q ta o problema,, tera q ser um loop pra passar por cada candidato, e outro loop dentro do primeiro, pra somar as notas de cada grupo de materia do mesmo candidato...
 
ta dificil ate de explicar...
 
 
     
Daniel
Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 28/11/2005 14:38 hs            
Então faça assim crie uma tabela com os campos:
Insc, Total_Nota,Qtde_Mat e Media
 
a 1ª SQL será de inclusão dessa forma:
INSERT INTO Tabela3 ( Insc, Nota_Total, Qtde_Mat ) SELECT Tabela2.Insc, Sum([Tabela2]![Peso]*[Tabela2]![Nota]) AS Nota_Total, Count(Tabela2.Mat) AS Qtde_Mat FROM Tabela2 GROUP BY Tabela2.Insc;
 
a 2ª SQL será de atualizacao assim:
UPDATE Tabela3 SET Tabela3.Media = [Tabela3]![Nota_Total]/[Tabela3]![Qtde_Mat];
 
e seu problema deve estar resolvido

dsmn
     
Alexandre C.G
Pontos: 2843 Pontos: 2843
PATOS DE MINAS
MG - BRASIL
Postada em 28/11/2005 18:23 hs            
carlinhos passe o codigo do aluno como parametro e chama a funcao quantas vezes for preciso é simples
por exemplo
 
select sum(nota) from tabela where codigo_aluno=" rsAluno.fields(0)
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página