Voto electronico

Iniciado por Xammm, 26 Junio 2016, 07:37 AM

0 Miembros y 1 Visitante están viendo este tema.

Xammm

Buenas gente. Me han dejado un trabajo sobre el voto electronico y es como sigue. El profesor me pide que haga un menú donde el usuario inserte el numero de su documento de identidad y a partir de si es mayor de edad entonces que este habilitado para votar. Además quiere que el documento de identidad guarde la siguiente informacion del usuario: nombre, edad y lugar de nacimiento.

Lo que hice fue crear un archivo que funcione como base de datos. Hice esto:

#include<cstdlib>
#include<iostream>
#include<fstream>
#include<string.h>
using namespace std;
void consultas();
void ingresar_dni();
void salir();
void menu();
//Variables Globales
char nombre[30],region[10];
int edad=0;
int main(){
    menu();
    return 0;
}
void menu(){
    int opcion=0;
    do{
        cout<<"Bienvenido al voto electronico 2016"<<endl;
        cout<<"1. Consultas"<<endl;
        cout<<"2. Ingresar datos: "<<endl;
        cout<<"3. Salir"<<endl;
        cout<<"¿Que operacion desea efectuar? ";
        cin>>opcion;
        switch(opcion){
            case 1:
                consultas();
            break;
            case 2:
                ingresar_dni();
            break;
            case 3:
                salir();
            break;
            default:
                cout<<"¡Opcion Incorrecta!"<<endl;
        }
    }while(opcion!=3);
}//Fin funcion menu
void ingresar_dni(){
    ofstream escritura;
    escritura.open("datos.txt",ios::out|ios::app);
    if(escritura.is_open()){
        cout<<"Ingresar nombre: ";
        cin>>nombre;
        cout<<"Ingresar region de nacimiento: ";
        cin>>region;
        cout<<"Ingresar edad: ";
        cin>>edad;
        escritura<<nombre<<" "<<region<<" "<<edad<<" "<<endl;
    }else{
        cout<<"Error, el archivo no se pudo abrir"<<endl;
    }
    escritura.close();
}//Fin funcion dni

void consultas(){
    ifstream lectura;
    lectura.open("datos.txt",ios::out|ios::in);
    if(lectura.is_open()){
        cout<<"Registros del Archivo datos.txt"<<endl;       
        do{
        cout<<"________________________________"<<endl;
            lectura>>nombre;
            lectura>>region;
            lectura>>edad;
            cout<<"Nombre: "<<nombre<<endl;
            cout<<"Region: "<<region<<endl;
            cout<<"Edad: "<<edad<<endl;
        cout<<"________________________________"<<endl;   
        }
while(!lectura.eof());         
    }else{
        cout<<"Error, el archivo no se pudo abrir"<<endl;
    }
    lectura.close();
}//Fin funcion consultas

void salir(){
    cout<<"Programa Finalizado"<<endl;
}


Mi problema es que no tengo claro como enlazar esta informacion al documento de identidad. La idea es que cuando el usuario introduzca su documento de identidad el programa vea en el archivo ya creado la edad del usuario y en tal caso decida si puede votar o no. Esa parte se puede hacer con un if/else pero como les digo mi problema radica en que no sé como hacer que el documento de identidad guarde toda esa informacion del usuario. Por favor si pueden ayudenme  :D

AlbertoBSD

Necesitas guardar una estrucutura en un archivo, te dejo un video del tema:

[youtube=640,360]https://www.youtube.com/watch?v=DOqtEMW1Nqk[/youtube]

Saludos!
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW