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 - mannin87

#1
Hola amigos alguien que me pueda ayudar con mi codigo no logro guardar el archivo en binario solo en txt si me pueden ayudar a revisar que me hace falta  a mi codigo muchas gracias.




Codigo

Código (cpp) [Seleccionar]
#include "NuevoAlumno.h"
#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <stdio.h>
#include <fstream>
#include <cstring>
#include <string>
#include <conio.h>


using namespace std;


NuevoAlumno::NuevoAlumno()
   {
   //ctor
   }

NuevoAlumno::~NuevoAlumno()
   {
   //dtor
   }

NuevoAlumno::NuevoAlumno(const char * vNombre,const char *vApellido, int vNota1, int vNota2, int vNota3)
   {
   this->nombre = new char[30];
   strcpy(this->nombre, vNombre);
   this->apellido = new char[30];
   strcpy(this->apellido, vApellido);

   this->nota1 = vNota1;
   this->nota2 = vNota2;
   this->nota3 = vNota3;
   }
void NuevoAlumno::AgregarAlumno()
   {
   string nombreArchivo;

   cout<< "Ingrese el nombre del archivo: "<<endl;
   cin>>nombreArchivo;

   ofstream archivo(

       nombreArchivo.data(),
       ios::out| ios::in | ios::binary );

     
   if (!archivo)
       {
       cout<<"Error!!! No se pudo"
           <<"abrir el archivo."
           <<endl;
       system("pause");
       return ;
       }
   int nota1=0;
   int nota2=0;
   int nota3=0;
   char nombre[20];
   char apellido[20];
   float promedio=0;

   int numeroLista;

   cout<<"Ingrese el numero de lista"
       <<" (0 para terminar)"<<endl;
   cin>>numeroLista;
   while(numeroLista > 0)
       {
       cout<<"Ingrese Nombre : ";
       cin>>nombre;
       cout<<"Ingrese Apellido : ";
       cin>>apellido;
       cout<<"Ingrese nota 1: ";
       cin>>nota1;
       cout<<"Ingrese nota 2: ";
       cin>>nota2;
       cout<<"Ingrese nota 3: ";
       cin>>nota3;

       promedio=(nota1+nota2+nota3)/3;
       cout<<"Promedio del Alumno :"<<promedio<<"%";
       cout<<endl;
       cout<<endl;



       archivo<<numeroLista<<" "
              <<nombre<<" "
              <<apellido<<" "
              <<nota1<<" "
              <<nota2<<" "
              <<nota3<<" "
              <<promedio<<endl;

       cout<<"Ingrese numero de lista:"
           <<" (0 para terminar) :";
       cin>>numeroLista;
       }

   archivo.close();

   cout<<"\nOperacion finalizada"
       <<" con exito\n\n";


   }

void NuevoAlumno::MostrarAlumno()
   {
   string nombreArchivo;
   bool encontrado=false;

   cout<<"Ingrese el nombre "
       <<"del archivo  a abrir: ";
   cin>>nombreArchivo;

   ifstream archivo(

                    nombreArchivo.data(),
                ios::in | ios::binary );
     

   if(!archivo)
       {
       cout<<"Error!!! no se pudo"
           <<" abrir el archivo."
           << endl;
       system("pause");
       return ;
       }

   int numeroLista=0;
   char nombre[20];
   char apellido[20];
   float promedio;
   int nota1=0;
   int nota2=0;
   int nota3=0;

   cout<<'\n'
       <<setw(10) << "Numero de Lista: "
       <<setw(20) << "Nombre: "
       <<setw(20) << "Apellido: "
       <<setw(15) << "Nota 1: "
       <<setw(15) << "Nota 2: "
       <<setw(15) << "Nota 3: "
       <<setw(15) << "Promedio: "
       <<fixed << setprecision(2)
       <<endl;
   for(int i=0; i<110; i++)
       cout<<'=';

   cout<<endl;

   archivo>>numeroLista
          >>nombre
          >>apellido
          >>nota1
          >>nota2
          >>nota3
          >>promedio;

   while(!archivo.eof())
       {
       cout<<setw(5)<<numeroLista
           <<left<<setw(15)<<nombre
           <<left<<setw(15)<<apellido
           <<setw(15)<<nota1
           <<setw(15)<<nota2
           <<setw(15)<<nota3
           <<right<<setw(15)<<promedio
           <<endl;

       archivo>>numeroLista
              >>nombre
              >>apellido
              >>nota1
              >>nota2
              >>nota3
              >>promedio;

       }

   archivo.close();
   cout<<"\nOperacion finalizada"
       <<" con exito\n\n";

   system("pause");
   return ;
   }




· Los códigos deben ir en etiquetas GeSHi
>aquí las reglas del foro
-Engel Lex