Hola
Briss,
cuasatar tiene razón, no estás logrando mucho por tu cuenta y la idea es que entiendas y aprendas, yo lo haría así, trata de entender lo que estamos haciendo, o sea que no sea solo un copy-paste, he comentado algunas lineas:
Código PHP:
$acumulador=0; // En esta variable guardaré una suma de notas
$contador=0; // En esta variable guardaré la cantidad de notas
for($lastgrado=0; $sql= mysql_fetch_assoc($res); $lastgrado=$sql['grado']){
if($sql['grado']!=$lastgrado){
if($lastgrado!=0){
echo "</table>"; // se cierra la tabla si cambia
echo "Promedio: ".($acumulador/$contador); // y se muestra el promedio
}
echo "<h3><font color='black'>Semestre"." ". $sql['grado'];
echo "</font></h3>"; // Despues de poner un título y cambiar el texto debes cerrar las etiquetas
echo "<table class='normal7' >"; // y abre la tabla siguiente
echo "<thead>";
echo "<td width='250'> Materia </td>";
echo "<td>Parcial 1</td>";
echo "<td>Parcial 2</td>";
echo "<td>Parcial 3</td>";
echo "<td>Promedio</td></tr>"; // he agregado una columna de promedio
echo "<br>";
echo "</thead>";
$acumulador=0; // Como es un grado nuevo reiniciamos el acumulador
$contador=0; // Como es un grado nuevo reiniciamos también el contador
}
echo "<td bgcolor='#CCCCCC'>".$sql['materia']."</td>";
echo "<td bgcolor='#CCCCCC'> ".$sql['parcial1']."</td>";
echo "<td bgcolor='#CCCCCC'> ".$sql['parcial2']."</td>";
echo "<td bgcolor='#CCCCCC'> ".$sql['parcial3']."</td>";
$promedio=($sql['parcial1']+$sql['parcial2']+$sql['parcial3'])/3; // Bueno,
// esto es solo un promedio de las 3 notas parciales
echo "<td bgcolor='#CCCCCC'> ".$promedio."</td></tr>";
$acumulador+=$promedio; // agregamos el promedio al acumulador
$contador++; // aumentamos el contador en 1
}
echo "</table>";
echo "Promedio: ".($acumulador/$contador); // y se muestra el promedio