Home   Artículos   Recursos   Foros   
Artíclos recientes publicados en Latindevelopers:

Visual C++: NSDoubleEdit: Un control para el manejo de números decimales en Visual C++.
Visual C++: Implementando una Calculadora en Visual C++
Visual C++: CCommandLine: Una clase para el uso de la linea de comando
Visual C++: Una clase para el manejo del Registro


navisoft y los demas ayudenmeeeeeeee

Preguntas y respuestas sobre el lenguaje de programacion C/C++

navisoft y los demas ayudenmeeeeeeee

Notapor hackerserox el Dom Nov 21, 2004 5:41 pm

bueno para akellos que en el foro saben programacion quisiera que me ayudaran con mi examen final que es un trabajo. bueno este es el trabajo

1.- Hacer un programa que permita llevar el control de notas de un alumno, es decir, permita agregar a un alumno con sus respectivas notas (5 practicas y 2 exámenes) a un archivo, ademas presentara opciones para editar y mostrar las notas de ese alumno, calcular el promedio de cada alumno, mostrar una opcion de "Estadística" por practica donde mostrara la nota mas baja, la nota mas alta y el promedio de una nota de dicha practica

bueno navisoft te encargo a ti mas que a nadie este trabajo espero que me ayudes. :roll: :wink:
hackerserox
Novato
Novato
 
Mensajes: 3
Registrado: Mar Nov 16, 2004 11:03 pm

Re: navisoft y los demas ayudenmeeeeeeee

Notapor latindeveloper el Lun Nov 22, 2004 12:36 pm

Para poder ayudarte debes enviar algun codigo por lo menos... es decir que debes haber hecho algo... no esperarás que vamos a hacer todo por ti.

Primeramente que compilador estas utilizando?

- Turbo C++ X.XX
- Borland C++ X.XX
- Visual C++ X.XX
Avatar de Usuario
latindeveloper
Administrador
Administrador
 
Mensajes: 1061
Registrado: Lun Jun 02, 2003 8:29 pm
Ubicación: Peru

Re: navisoft y los demas ayudenmeeeeeeee

Notapor hackerserox el Lun Nov 22, 2004 8:55 pm

bueno bro tienes razon por eso te lo he mandado a tu correo de hotmail con lo que he avanzado y ademas que lo he trabajado con Dev C++ .

bueno bro espero pronta respuesta :roll: bye 8)
hackerserox
Novato
Novato
 
Mensajes: 3
Registrado: Mar Nov 16, 2004 11:03 pm

Afinacion en los datos

Notapor latindeveloper el Lun Nov 22, 2004 9:06 pm

Segun lo que mandaste puedes simplificar las cosas declarando las estructuras siguientes:

// Para el alumno.
struct ALUMNO
{
int codigo;
char nombres[20];
char apellidos[30];
};

// Para el estudiante.
struct NOTAS
{
int codigo_alumno;
int pr1;
int pr2;
int pr3;
int pr4;
int pr5;
int ex1;
int ex2;
};

Con eso te será mas facil manipular los datos.

El menu creo que funciona correctamente solo tienes que afinar las funciones para que acepten esas estructuras.

Ahh otra cosa... el programa tiene que ser orientado a objetos?
Avatar de Usuario
latindeveloper
Administrador
Administrador
 
Mensajes: 1061
Registrado: Lun Jun 02, 2003 8:29 pm
Ubicación: Peru

Ahí te mando el código fuente

Notapor axel_val el Mar Nov 23, 2004 11:56 pm

Te envío el código fuente pero cuidado todavía no implemto archivos lo pudes hacer pasando las estructuras de datos con fprint si tienes tiempo te lo puedo enviar completo pero no se cuando podré terminarlo ya que ultimamente estoy ocupado

# include <iostream.h>
# include <string>
void main ()
{
struct nodo
{
char nombre[20];
char apellido[20];
double nota1;
double nota2;
double nota3;
double def;
struct nodo *sig;
};
nodo *cab,*p,*q;
char op,nom2[20],ap[20];
int opcion,aux;
cab=NULL;
do
{
system("cls");
system("color a");
cout<<"\t\t ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»\n";
cout<<"\t\t º º\n";
cout<<"\t\t º Menu de opciones º\n";
cout<<"\t\t º º\n";
cout<<"\t\t º 1. Crear y adicionar estudiante º\n";
cout<<"\t\t º º\n";
cout<<"\t\t º 2. Mostrar la lista º\n";
cout<<"\t\t º º\n";
cout<<"\t\t º 3. Buscar estudiante º\n";
cout<<"\t\t º º\n";
cout<<"\t\t º 4. Borrar estudiante º\n";
cout<<"\t\t º º\n";
cout<<"\t\t º 5. SALIR º\n";
cout<<"\t\t º º\n";
cout<<"\t\t ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ\n";
cout<<"\t\t\t Elija su opcion ";
cin>>opcion;
cout<<"\n";
switch(opcion)
{
case 1:
do
{
system("cls");
system("color 9");
cout<<"\n\t\t\t ÉÍÍÍÍÍÍÍÍÍÍÍÍÍ»";
cout<<"\n\t\t\t º CREAR LISTA º";
cout<<"\n\t\t\t ÈÍÍÍÍÍÍÍÍÍÍÍÍͼ";
q=new nodo;
cout<<"\n Diga el nombre ";
cin>>q->nombre;
cout<<"\n Diga el apellido ";
cin>>q->apellido;
cout<<"\n Digite la primera nota ";
cin>>q->nota1;
cout<<"\n Digite la segunda nota ";
cin>>q->nota2;
cout<<"\n Digite la tercera nota ";
cin>>q->nota3;
q->def=(q->nota1*0.3)+(q->nota2*0.3)+(q->nota3*0.4);
q->sig=NULL;
cout<<"\n La nota definitiva es "<<q->def<<endl;
if (cab==NULL)
cab=q;
else
{
p=cab;
while (p->sig != NULL)
p=p->sig;
p->sig=q;
}
cout<<"\n desea continuar con esta opcion s/n ";
cin>>op;
}
while ((op == 's')||(op == 'S'));
cout<<"\n";
break;

case 2:
do
{
system("cls");
system("color c");
cout<<"\n\t ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»";
cout<<"\n\t º Mostrar lista º";
cout<<"\n\t ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ";
//p=cab;
if (/*p->sig*/cab == NULL)
cout<<"\n lista vacia";
else
{
p=cab;
while (p != NULL)
{
cout<<"\n\n\a";
system("color d");
cout<<"\t\a Nombre: "<<p->nombre<<"\n";
cout<<"\t\a Apellido: "<<p->apellido<<"\n";
cout<<"\t\a Not 1 ->"<<p->nota1<<"\n";
cout<<"\t\a Not 2 ->"<<p->nota2<<"\n";
cout<<"\t\a Not 3 ->"<<p->nota3<<"\n";
cout<<"\t\a Definitiva -> "<<p->def<<"\n";
p=p->sig;
cout<<endl;
}
}
cout<<"\n desea continuar con esta opcion s/n ";
cin>>op;
}
while ((op == 's')||(op =='S'));
cout<<"\n";
break;

case 3:
do{
system("cls");
system("color e");
{
if (cab == NULL)
cout<<"\t\t LA LISTA ESTA VACIA \n\n\n\n\n";
else
{
cout<<"\n\t ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»";
cout<<"\n\t º Opcion buscar por nombre,apellido º";
cout<<"\n\t ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ";
q = cab;
cout<<"\n\t Digite el nombre del estudiante ";
cin>>nom2;
cout<<"\n\t Digite el apellido ";
cin>>ap;
aux = 0;
while ((q != NULL)&&(aux == 0))
{
if ((strcmp(nom2,q->nombre) == 0)&&(strcmp(ap,q->apellido)==0))
{

cout<<"\n ** Lo encontro ** \n";
cout<<" Nombre -> "<<q->nombre<<"\n";
cout<<" Apellido -> "<<q->apellido<<"\n";
cout<<" Not 1 -> "<<q->nota1<<"\n";
cout<<" Not 2 -> "<<q->nota2<<"\n";
cout<<" Not 3 -> "<<q->nota3<<"\n";
cout<<" Definitiva ->"<<q->def<<"\n";
aux=1;
}
else
q=q->sig;
}
if (aux == 0)
cout<<"\n\n\tEL ESTUDIANTE "<<nom2<<ap<<" NO ESTA EN LA LISTA \n";
cout<<"\n\n\n\t desea continuar con esta opcion s/n ";
cin>>op;
}
}
}while ((op == 's')||(op == 'S'));
cout<<"\n";
break;

case 4:
do
{
system("cls");
system("color f");
if (cab == NULL)
cout<<"\t\t LA LISTA ESTA VACIA \n\n\n ";
else{
cout<<"\n\t ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»";
cout<<"\n\t º BORRAR ESTUDIANTE º";
cout<<"\n\t ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ";
q=cab;
cout<<"\n\t Digite el nombre a ELIMINAR ";
cin>>nom2;
cout<<"\n\t Digite el apellido a ELIMINAR ";
cin>>ap;
aux=0;
while ((q != NULL)&&(aux==0))
{
if ((strcmp(nom2,q->nombre)==0)&&(strcmp(ap,q->apellido)==0))
{
p=q;
aux=1;
}
q=q->sig;
}
if (aux == 1)
{
cout<<" Nombre -> "<<p->nombre<<endl;
cout<<" Apellido ->"<<p->apellido<<endl;
cout<<" Definitiva ->"<<p->def<<endl<<endl;
if (p == cab)
cab=cab->sig;
else
{
q=cab;
while (q->sig != p)
q=q->sig;
q->sig=p->sig;
}
p->sig=NULL;
free(p);
}
else
cout<<" EL ESTUDIANTE NO ESTA EN LA LISTA ";
}
cout<<"\n\n\t\n desea continuar con esta opcion s/n ";
cin>>op;
}
while ((op=='s')||(op=='S'));
cout<<"\n";
break;

case 5:
do
{
system("cls");
//system("color 5");
//system("date");
//system("time");
cout<<"\n\n\n";
//system("pause");
}
while (op=='n');
cout<<"\n";
break;
}
}
while (opcion != 5);
cout<<"\n\t\t\t";
}


































[/b]
axel_val
Novato
Novato
 
Mensajes: 1
Registrado: Lun Nov 22, 2004 1:07 am
Ubicación: Barranquilla


Volver a C/C++

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados