Dev - C++ - problemas con arreglo bidimencional

 
Vista:

problemas con arreglo bidimencional

Publicado por luis c (2 intervenciones) el 12/08/2019 16:13:56
Hola.
porfavor quien me puede ayudar con el siguiente problema.

Usando un arreglo de dos dimensiones, se requiere un sistema que permita recibir las
notas de los estudiantes de un curso. Al iniciar el sistema debe preguntar cuántos
estudiantes se van a digitar. Después de eso, por cada estudiante, el sistema debe
recibir 3 notas (números decimales entre 0 y 5). Al finalizar de digitar todas las notas el
sistema debe mostrar:
* El listado de promedios de las tres notas de cada estudiante
* Cuantos estudiantes obtuvieron un promedio superior a 3.0

este es el código que he realizado pero no me da el resultado que me piden:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
int main()
{
    int cant;
    float nota[3];
    float promedio[5];
    float suma;
 
 
    cout<<"PROMEDIO DE NOTAS"<<endl;
    cout<<""<<endl;
    cout<<"INGRESAR CANTIDAD DE ALUMNOS A CONSULTAR:  "; cin>>cant;
 
    for(int i=0; i<cant; i++){
        cout<<"INGRESAR NOTAS DEL ALUMNO "<<i+1<<":"<<endl;
 
        for(int i=0; i<3; i++){
            cout<<"NOTA "<<i+1<<":     "; cin>>nota[i];
 
            if (nota[i]<=5 && nota[i]>0){
            suma+=nota[i];
        }else{
        cout<<"ERROR.. LA NOTA DEBE SER ENTRE 0 - 5"<<endl;
        return 0;
        }
 
        for(int j=0; j<cant; j++){
            promedio[j]=suma/3;
        }
      }
    }
 
     for(int i=0; i<cant; i++){
            cout<<""<<endl;
        cout<<"EL ALUMNO "<<i+1<<endl;
           for(int j=0; j<1; j++){
        cout<<""<<endl;
        cout<<" TIENE UN PROMEDIO DE: "<<promedio[j]<<endl;
           }
     }
 
 
    return 0;
}

Quedo atento a sus comentarios... Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Rodrigo
Val: 509
Bronce
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

problemas con arreglo bidimencional

Publicado por Rodrigo (120 intervenciones) el 13/08/2019 02:25:07
Serviria que incluyeras que entrada usaste para probar y cual es el resultado que esperas y cual es el que te dio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 190
Bronce
Ha aumentado 1 puesto en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

problemas con arreglo bidimencional

Publicado por dario (109 intervenciones) el 13/08/2019 05:25:48
Hola, voy dejando esto, tu ya lo terminas. Fijate en tus errores al declarar el array.
Saludos.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
 
using namespace std;
 
const int ALUMNOS = 100; //numero maximo de alumnos
 
int main()
{
    int cant;
    float suma,notas[ALUMNOS][3];
 
    cout << "PROMEDIO DE NOTAS" << endl;
    cout <<"" << endl;
    cout << "INGRESAR CANTIDAD DE ALUMNOS A CONSULTAR: ";
    cin >> cant;
 
    for (int i=0; i<cant; i++) {
        cout << "INGRESAR NOTAS DEL ALUMNO " << i+1 <<":" << endl;
        suma = 0;
        for(int j=0; j<3; j++) {
            cout<<"NOTA "<<j+1<<":     "; cin>>notas[i][j];
            suma+=notas[i][j];
        }
 
        cout << "Estudiante # " << i+1 << " promedio " << suma/3 << endl;
    }
 
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

problemas con arreglo bidimencional

Publicado por luis c (2 intervenciones) el 15/08/2019 02:48:11
Muchas gracias por la ayuda.
he realizado el problema de la siguiente forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream>
#include <stdio.h>
 
using namespace std;
 
int main()
{
 
 
 float notas[30][3]; /*Matriz de tiempos en cada vuelta de los competidores*/
 float promNotas[30]; /*Vector de tiempos promedio de los competidores*/
 float suma = 0;
 int n = 0, mayor = 0;
 cout << "INFORMACION DE PROMEDIO DE NOTAS DE LOS ALUMNOS" << endl;
 cout<<""<<endl;
 cout<<"INGRESAR CANTIDAD DE ALUMNOS:  ";cin>>n;
 
 /*Llenando la matriz */
for (int j=0;j<n;j++)
{
 suma=0;
 cout<<"INGRESAR NOTAS DEL ALUMNO "<<j+1<<endl;
 cout<<""<<endl;
 for(int k=0;k<3;k++)
 {
 cout<<"NOTA #"<<k+1<<" ....... ";
 cin>>notas[j][k];
 if(notas[j][k]<=5 || notas[j][k]>0){
 suma+=notas[j][k];
 }else{
 cout<<"ERROR .... EL VALOR DEBE SER ENTRE 0 - 5"<<endl;
 }
 }
 /*Guardando el promedio */
 promNotas[j]=suma/3;
 if(promNotas[j]>3){
    mayor++;
 }
 }
 /*Imprimiendo los resultados*/
 for (int j=0;j<n;j++)
 {
 cout<<"LAS NOTAS DEL ALUMNO "<<j+1<<"   ";
 for(int k=0;k<3;k++)
 {
 cout<<"\t"<<notas[j][k];
 
 }
 cout<<"\tPROMEDIO DE NOTAS:      "<<promNotas[j]<<endl;
 }
 cout<<""<<endl;
 cout<<"LOS ALUMNOS CON PROMEDIO SUPERIOR A 3 FUE DE:  "<<mayor<<endl;
 return 0;
}

me dio un buen resultado.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar