Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - max9100

#1
buenas tengo un programa con  lo siguiente esto es lo que me pieden
Escribir un programa que contenga los siguientes elementos:
1. Dos constantes de tipo entero cNotas = 3 y cEstudiantes = 100
2. Dos estructuras una llamada Estudiante y la otra llamada Notas.
3. La estructura Estudiante debe contener los siguientes atributos:
a. string cuenta
b. string nombre
c. int edad
d. char sexo
4. La estructura Estudiante debe contener los siguientes métodos:
a. Registrar_Estudiante: Donde se ingresan los datos del estudiante.
5. La Estructura RegistroNotas debe contener los siguientes atributos:
a. Estudiante alumno[cEstudiantes]
b. int notas[cNotas]
6. La Estructura RegistroNotas, debe recibir la cantidad de estudiantes a
procesar, además debe contener los siguientes métodos:
a. Registrar_Notas: Que realiza las siguientes acciones:
i. Un ciclo para operar la cantidad de Estudiantes.
ii. Invocar el método Registrar_Estudiante del objeto alumno.
iii. Solicitar las tres notas parciales
b. Calcular_NotaFinal: Que obtendrá el promedio de las tres notas
c. Imprimir_CuadroNotas: Debe recibir la cantidad de estudiantes
procesados, donde se imprimirá el cuadro de Notas, los datos a
imprimir son los siguientes:
i. cuenta
ii. nombre
iii. notas (se imprimirá las tres notas)
iv. nota final
v. El programa determinará quién es el estudiante con mayor Nota y el número de aprobados y reprobados.
7. Crear un procedimiento principal que realice las siguientes acciones
a. Crear un objeto de RegistroNotas RN
b. Solicitar el número de estudiantes a procesar
c. Invocar el método Registrar_Notas del objeto RN, pasando el número de estudiantes a procesar.
d. Invocar el método Imprimir_CuadroNotas del objeto RN, pasando el número de estudiantes procesados.

este es mi codigo
#include<iostream>
#include<string>
const int cNotas=3, cEstudiantes=100;
using namespace std;



struct estudiante {
string cuenta;
string nombre;
int edad;
char sexo;

void registrar_estudiantes(string cuenta ,string nombre ,int edad,char sexo ){
cout<<"ingresar cuenta";getchar ();
getline(cin,cuenta);
cout<<"ingresar nombre";getchar ();
getline(cin,nombre);
cout<<"ingresar edad";
cin>>edad;
cout<<"ingresar sexo";
cin>>sexo;
}
};

struct Notas{
estudiante alumno[cEstudiantes],ptom;
int notas[cNotas];

void registrar_notas(int nestudiante){
for (int i=0;nestudiante>i;i++)
{
cout<<"ingresar la informacion del estudiante "<<i<<endl;
alumno[i].registrar_estudiantes() ;
cout<<"ingresar nota 1";
cin>>notas[0];
cout<<"ingresar nota 2";
cin>>notas[1];
cout<<"ingresar nota 3";
cin>>notas[2];
}
}
int calcular_nta_final( estudiante alumno){

int promedio =(notas[0]+notas[1]+notas[2])/3;
return promedio;
}
void imprimir(int nestudiante){
//cout<<"cuenta/tnombre/tedad/tsexo/tnota[1]/tnota[2]/tnota[3]/tpromedio/n";
for (int i=0; i<nestudiante;i++){
cout<<"cuenta\tnombre\tedad\tsexo\tnota[1]\tnota[2]\tnota[3]\tpromedio/n";
cout<<   estudiante::cuenta<<"\t"<<estudiante::nombre <<"\t"<<notas [0]<<"\t" <<notas [1]<<"\t"<< notas [2]<<"\t"<<&Notas::calcular_nta_final <<"\t";
}
}

};

void main(){
int nestudiante=0;
int A[cEstudiantes];
Notas RN;
cout<<"ingrese cantidad de estudiantes a procesar";
cin>>nestudiante;
(A);
RN.registrar_notas(nestudiante);
RN.imprimir (nestudiante);
system("pause");

}


tengo el siguiente problema
void imprimir(int nestudiante){
//cout<<"cuenta/tnombre/tedad/tsexo/tnota[1]/tnota[2]/tnota[3]/tpromedio/n";
for (int i=0; i<nestudiante;i++){
cout<<"cuenta\tnombre\tedad\tsexo\tnota[1]\tnota[2]\tnota[3]\tpromedio/n";
cout<< estudiante::cuenta<<"\t"<<estudiante::nombre<<   "\t"<<notas [0]<<"\t" <<notas [1]<<"\t"<< notas [2]<<"\t"<<&Notas::calcular_nta_final <<"\t";
}
}

no puedo mandar a imprimir ademas de el promedio no me lo tira  y cuando lo quiero hacer  calcular_nta_final me tira que use &Notas::calcular_nta_final
#2
bueno me dijeron que trabajara en el codigo ok trabaje jeje pero no me salio como me lo piden creo tengo una menera no rustica de programar  esto es lo que me piden
Realizar un programa que suma de manera recursiva los elementos de una matriz de 2 columnas y 2 filas. El algoritmo debe tener los siguientes elementos:
1. Declaración de dos valores constantes enteras Fila y Columna
2. Una función recursiva Sumar que retorne un entero, debe recibir como parámetro un arreglo bidimensional y dos enteros (Fila y Columna). Debe realizar las siguientes acciones:
a. Imprimir el valor de la Fila y Columna
b. Validar si el valor de la Fila y Columna es igual a cero si es asi ha de retornar el elemento del arreglo en la posición 0,0.
c. Si no se cumple la validación anterior se ha de validar si el valor de la columna es menor que cero si es así debe retornar el valor de la invocación de la función Sumar pasándole el arreglo, el valor de la Fila menos 1 y la posición 1.
d. Si no se cumple la condición anterior se ha de retornar el arreglo posición Fila, Columna más la invocación de la función Sumar pasándole el arreglo, la fila y la columna menos 1.
3. Un procedimiento Cargar_Datos que cargue los valores del arreglo con números aleatorios, debe recibir como parámetro un arreglo y dos enteros (Fila y Columna).
4. Un procedimiento Imprimir_Datos , que imprima los datos del arreglo debe recibir como parámetro un arreglo y dos enteros (Fila y Columna).
5. Un procedimiento principal que contenga los siguientes elementos:
a. Declaración de un arreglo de dos filas dos columna
b. Invocación del procedimiento Cargar_Datos para cargar los valores del arreglo, debe pasar el arreglo y los valores de Fila y Columna.
c. Invocación del procedimiento Imprimir_Datos para imprimir los valores del arreglo.
d. Imprimir el valor de la suma de los elementos del arreglo mediante la invocación de la función Sumar.

#include <stdio.h>
#include <iostream>
using namespace std ;

int sumaR(int mat[][2], int fil, int col){//problema no deve ir todo aqui
printf("En columna = %d\n",col);
printf("En fila = %d\n",fil);

    if (col==0 && fil==0){

        return mat[0][0];
       
    }else if (col<0){


        return sumaR(mat, fil-1, 1);
   
    }else{

return mat[fil][col] + sumaR(mat, fil, col-1);

}
}                                                         
int main(){                                 
    int A[2][2];
int i=0,j;
for(i=0;i<2;i++){
printf("----Ingrese numero entero en la fila %d----\n",i+1);       
j=0;
for(j=0;j<2;j++){
printf("Ingrese numero entero en la columna %d\n",j+1);     
scanf("%d",&A[i][j]);
}
}                         
   

                                       
    printf("La suma recursiva de los elementos es: %d\n",sumaR(A,1,1));
system ("pause");
    return 0;

}
         

como podemos ver donde e puesto el comentario tengo problemas porque como entiendo que me lo piden es en diferentes funciones no en una sola pero solo haci lo puedo hacer haci que necesito ayuda de como pasar a funciones separadas.
o en caso de que este bien que es lo que nesesita para terminarlo   :huh: :huh: