elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [MOD] Errores programación principiante ayuda
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [MOD] Errores programación principiante ayuda  (Leído 1,807 veces)
Derethir

Desconectado Desconectado

Mensajes: 1


Ver Perfil
[MOD] Errores programación principiante ayuda
« en: 7 Mayo 2012, 18:35 pm »

Buenas!

Soy noob en esto de la programacion, y se que muchos estareis ocupados.. pero si alguien tuviese algo de tiempo para ayudarme.. se lo agradeceria en el alma..

Bueno, he estado intentando hacer un codigo de una agenda electronica, y al compilarlo (con Dev-c++) me da errores en varias lineas..

me gustaria que intentarais compilarlo, y me corrigierais si esta mal.. y a poder ser, si ya me dijerais porque esta mal, aprenderia mucho mas..

Gracias de antemano, y alla va el codigo (Puede que este mal estructurado y demas.. pero es que como ya he dicho.. voy a base de tutoriales.. y pff..)

#include <cstdlib>
#include <iostream>
#include <fstream>
 
using namespace std;
 
class Agenda{
        char nombre[15];
        char apellido[30];
        char direccion[30];
        char poblacion[20];
        char provincia[20];
        int postal;
        int telefono;
        int agenda[50];
        
    public:
        int contar();
        void extraer(Agenda* Persona);
        void ordenar(Agenda* Persona);
        void agregaralfi(const char* nombre,const char* apellido,const char* direccion,const char* poblacion,const char* provincia,int postal, int telefono);
        const char* getnom();
        const char* getapell();
        const char* getdirec();
        const char* getpob();
        const char* getpro();
        int getpos();
        int gettel();
        void set(char*,char*,char*,char*,char*,int,int);
};
 
int main(int argc, char *argv[])
{
    int op;
    do{
        cout<<"1.Agregar contacto"<<endl;
        cout<<"2.Buscar contacto"<<endl;
        cout<<"3.Modificar contacto"<<endl;
        cout<<"4.Eliminar contacto"<<endl;
        cout<<"5.Impresion de la agenda"<<endl;
        cout<<"6. Salir"<<endl;
        cin>>op;
 
        if (op == 1)//Agregar contacto
        {
            char nombre[15];
            char apellido[30];
            char direccion[30];
            char poblacion[20];
            char provincia[20];
            int postal;
            int telefono;
            cin.ignore();
            cout<<"Ingrese el nombre: ";
            cin.getline(nombre,15);
            cout<<endl<<"Ingrese el apellido: ";
            cin.getline(apellido,30);
            cout<<endl<<"Ingrese la direccion: ";
            cin.getline(direccion,30);
            cout<<endl<<"Ingrese la poblacion: ";
            cin.getline(poblacion,20);
            cout<<endl<<"Ingrese la provincia: ";
            cin.getline(provincia,20);
            cout<<endl<<"Ingrese el codigo postal: ";
            cin>>postal;
            cout<<endl<<"Ingrese el telefono: ";
            cin>>telefono;
            Agenda persona;
            persona.agregaralfi((const char*)nombre, apellido, direccion, poblacion, provincia, postal, telefono);
        }
        
        else if (op == 2)//Buscar contacto
         {
             char nombre[15];
            char apellido[30];
            char direccion[30];
            char poblacion[20];
            char provincia[20];
            int postal;
            int telefono;
            int agenda[50];
            int numper = 0;
        int i, j;//variables de control
     int encontrado=0;
     cout<<"Introduzca el apellido de la persona que desea buscar."<<endl;
     cin.getline(apellido,30);
           for(i=0;i<numper;i++){
             if(apellido){
              
                   cout<<"Número de Registro: "<<i+1<<endl;
                   cout<<"Nombre  ==>:"<<nombre<<agenda<<endl;
                   cout<<"Apellidos ==>:"<<apellido<<agenda<<endl;
                   cout<<"Direccion ==>:"<<direccion<<agenda<<endl;
                   cout<<"Poblacion ==>:"<<poblacion<<agenda<<endl;
                   cout<<"Provincia ==>:"<<provincia<<agenda<<endl;
                   cout<<"Codigo Postal ==>:"<<postal<<agenda<<endl;
                   cout<<"Télefono ==>:"<<telefono<<agenda<<endl;
                   j=1;
                   system("pause");
                   system("cls");
                   }
                   }
                
                 if(j!=1){
                 cout<<"No exíste esa persona en la lista de contactos..."<<endl;
                   system("pause");
                   system("cls");
        }
        else if (op == 3)//Modificar contacto
        {
             int i, j;
     int encontrado=0;
     for (i=0;i<numper;i++){
         if (apellido){
         encontrado=1;
         j=i;
                  }
     }
if (encontrado==1){
                   cout<<"Número de Registro: "<<i+1<<endl;
                   cout<<"Nombre  ==>:"<<nombre<<agenda<<endl;
                   cout<<"Apellidos ==>:"<<apellido<<agenda<<endl;
                   cout<<"Direccion ==>:"<<direccion<<agenda<<endl;
                   cout<<"Poblacion ==>:"<<poblacion<<agenda<<endl;
                   cout<<"Provincia ==>:"<<provincia<<agenda<<endl;
                   cout<<"Codigo Postal ==>:"<<postal<<agenda<<endl;
                   cout<<"Télefono ==>:"<<telefono<<agenda<<endl<<endl;

                    int opc1;
                    cout<<"Que desea modificar de la persona \n";
                    cout<<"1.Nombre \n";
                    cout<<"2.Apellido \n";
                    cout<<"3.Dirección \n";
                    cout<<"4.Poblacion \n";
                    cout<<"5.Provincia \n";
                    cout<<"6.Codigo Postal \n";
                    cout<<"7.Telefono \n";
                    cout<<"Que opcion desea \n";
                  
                    
                    cin>>opc1;
                    system("CLS");

          switch(opc1){
                      
                       case 1:
                            cout<<"Nombre"<<endl;
                            cin.getline(nombre, 15)>>agenda[numper];
                       case 2:
                            cout<<"Apellidos"<<endl;
                            cin.getline(apellido, 30)>>agenda[numper];
                       case 3:
                            cout<<"Direccion"<<endl;
                            cin.getline(direccion,30)>>agenda[numper];
                       case 4:
                            cout<<"Poblacion"<<endl;
                            cin.getline(poblacion,20)>>agenda[numper];
                       case 5:    
                            cout<<"Provincia"<<endl;
                            cin.getline(provincia,20)>>agenda[numper];
                       case 6:
                            cout<<"Codigo Postal"<<endl;
                            cin>>postal>>agenda[numper];
                       case 7:
                            cout<<"Numero de telefono"<<endl;
                            cin>>telefono>>agenda[numper];
        }
        else if (op == 4) //Eliminar contacto
        {
             int i, r, k;//variables de control
     char apell;
     do{
         cout<<"Teclee el apellido de la persona que va a eliminar"<<endl;
         cin>>apellido;
     for(i=0; i<numper; i++){
              if(apellido){
                   cout<<"Número de Registro: "<<i+1<<endl;
                   cout<<"Nombre  ==>:"<<nombre<<agenda<<endl;
                   cout<<"Apellidos ==>:"<<apellido<<agenda<<endl;
                   cout<<"Direccion ==>:"<<direccion<<agenda<<endl;
                   cout<<"Poblacion ==>:"<<poblacion<<agenda<<endl;
                   cout<<"Provincia ==>:"<<provincia<<agenda<<endl;
                   cout<<"Codigo Postal ==>:"<<postal<<agenda<<endl;
                   cout<<"Prefijo Telefono ==>:"<<prefijo<<agenda;
                   cout<<"-"<<telefono<<agenda<<endl;                          
              i=apeli;
              do{
              cout<<"esta seguro que desea eliminar el contaco?"<<endl;
              cout<<"1:si  \n2:no"<<endl;
              cin>>r;
              if(r<1 || r>2){
                  cout<<"error intente de nuevo";
                  system("pause");
                  system("cls");  
                    
              }
              else {
                   apellido;
                   }
                  
              }while(r<1 || r>2);
              system("cls");                          
              break;                          
                                        
              }else {cout<<"el contacto no existe o por lo menos no con ese numero\n desea intentar de nuevo?"<<endl;
              cout<<"1:si \n2:no \n";
              cin>>k;
              system("cls");
              }
              }
              }while(k==1);
        }
        else if (op == 5)//Imprimir
        {
            Agenda *persona;
            int x=persona->contar();
            if (x > 0){
                persona= new Agenda
  • ;
               persona->extraer(persona);
                for (int i=0;i<x;i++)
                    cout<<persona.getnom()<<endl<<persona.getapell()<<endl<<persona.gettel()<<endl;
            }
            else if (x==0)
            cout<<"No hay personas"<<endl;
            else
            cout<<"Error al abrir el archivo, compruebe su existencia"<<endl;
 
            delete[] persona;
        }
        else if (op == 6){
            cout<<"Byee!"<<endl;
        }
        cout<<"\n\n\n";
    }while (op != 6);
 
    cin.get();
    return EXIT_SUCCESS;
}
 
void Agenda::extraer(Agenda* Persona){
    ifstream ent("Agenda.txt");
    if (!ent){
        cout<<"Error al abrir el archivo, compruebe su existencia"<<endl;
        return;
    }
    for (int i=0;i<contar();i++){
        ent.getline(Persona.nombre,15,':');
        ent.getline(Persona.apellido,30,':');
        ent.getline(Persona.direccion,30,':');
        ent.getline(Persona.poblacion,20,':');
        ent.getline(Persona.provincia,20,':');
        ent>>Persona.postal;
        ent>>Persona.telefono;
        
        ent.ignore();
    }
    ent.close();
}
 
int Agenda::contar(){
    ifstream ent("Agenda.txt");
      if (!ent){
        return -1;
    }
    int c=0;
    while (ent) if (ent.get() == '\n') c++;
    ent.close();
    return c;
}
 
void Agenda::ordenar(Agenda* Persona){
    int c=contar();
    ofstream sal("Agenda.txt");
    sal.close();
    for (int i=0;i<c-1;i++)
        for (int j=i+1;j<c;j++)
        if (strcmp(Persona.getnom(), Persona[j].getnom()) > 0){
            Agenda AUX=Persona;
            Persona=Persona[j];
            Persona[j]=AUX;
        }
}
 
void Agenda::agregaralfi(const char* nom,const char* apel,const char* direc,const char* pob,const char* pro,int pos, int tel){
    ofstream sal("Agenda.txt", ios::out | ios::app | ios::ate);
    if (!sal) exit(1);
    sal.setf(ios::left);
    sal.width(29);
    sal<<nombre<<':'<<tel<<endl;
    sal.close();
}
 
 void Agenda::set(char nom[], char apell[], char direc[], char pob[], char pro[],  int tel, int pos){
    strcpy(this->nombre,nom);
    strcpy(this->apellido,apell);
    strcpy(this->direccion,direc);
    strcpy(this->poblacion, pob);
    strcpy(this->provincia, pro);
    strcpy(this->nombre,nom);
    this->telefono=tel;  
    this->postal=pos;
}
 
const char* Agenda::getnom(){
    return this->nombre;
    }
 
const char* Agenda::getapell(){
    return this->apellido;
    }
    
const char* Agenda::getdirec(){
    return this->direccion;
    }
    
const char* Agenda::getpob(){
    return this->poblacion;
    }
    
const char* Agenda::getpro(){
    return this->provincia;
    }

int Agenda::getpos(){
    int y=this->postal;
    return y;
    }
        
int Agenda::gettel(){
    int x=this->telefono;
    return x;
    }
 
 


Gracias por la comprension y la ayuda!


« Última modificación: 7 Mayo 2012, 19:05 pm por el-brujo » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda soy principiante! « 1 2 3 »
Programación Visual Basic
xDie 28 8,278 Último mensaje 18 Enero 2007, 20:39 pm
por xDie
errores programacion PHP
PHP
survil 1 1,496 Último mensaje 22 Julio 2007, 21:57 pm
por [.:: NauJFracT ::.]
Dudas de un principiante | Matématicas y programación relacionadas?
Programación General
Antoñitoo! 3 5,181 Último mensaje 23 Octubre 2010, 14:14 pm
por Antoñitoo!
Principiante en programación
Programación General
TToniii 3 2,191 Último mensaje 28 Noviembre 2011, 16:04 pm
por folostia
El sitio de la Copa Mundial de la FIFA tiene errores “de principiante” y será...
Noticias
wolfbcn 0 1,105 Último mensaje 12 Junio 2014, 01:42 am
por wolfbcn
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines