//Proyecto final
//Leonardo fraire, Ezequiel mendez, Alejandra macias
#include <time.h>
#include <conio.h>
#include <stdio.h>
#include <iostream.h>
#include <fstream.h>
#include <iomanip.h>
void desplegar();
void fecha()
{
cout<<""<<endl;
cout<<"\t\tAGENDA"<<endl;
char sdate[9];
_strdate(sdate);
cout<<endl;
cout<<" "<<"\t\t\t\t\t fecha "<<sdate<<endl;
}
void reemplazar(char *str, char o, char v)
{
char *p;
while (p = strchr(str, o)) {*p = v;}
}
void datos() //Entrada de datos
{
ofstream salida;
salida.open("F://Agenda.txt", ios::app);
int telefono, celular;
char nombre[40], sigue;
char correo[30], cumpleanos[10];
char nextel[15];
char direccion[40];
char stime[10];
char sdate[10];
_strdate(sdate);
do{
_strtime(stime);
clrscr();
fecha();
cout << " Introduzca Nombre del contacto: ";
cin.ignore(9000, '\n');
cin.getline(nombre, 40, '\n');
cout <<endl;
cout<<" Introduzca No. de Telefono: [ ]\b\b\b\b\b\b\b\b\b\b\b";
cin>>telefono;
cout<<endl;
cout<<" Introduzca No. de Celular : 664[ ]\b\b\b\b\b\b\b\b\b\b\b";
cin>>celular;
cout<<endl;
cout<<" Introduzca No. de nextel :[ ]\b\b\b\b\b\b\b\b\b\b\b";
cin.ignore(9000, '\n');
cin.getline(nextel, 15, '\n');
cout<<endl;
cout<<" Introduzca su Email: ";
cin>>correo;
cout<<endl;
cout<<" Introduzca fecha de cumpleanos:[ ]\b\b\b\b\b\b\b\b\b\b";
cin>>cumpleanos;
cout<<endl;
cout<<" Introduzca su Direccion: ";
cin.ignore(9000, '\n');
cin.getline(direccion, 40, '\n');
cout<<endl;
reemplazar(nombre, ' ', '_');
reemplazar(direccion, ' ', '_');
salida<<nombre<<" "<<telefono<<" "<<celular<<" "<<correo<<" "<<direccion<<" "<<nextel<<" "<<cumpleanos<<endl;
cout<<" Desea registrar otro contacto: s/n? [ ] \b\b\b";
cin>>sigue;
}
while(sigue=='s' || sigue=='S');
clrscr();
}
void entrada_datos_file() //Busca nombre
{
char nombre[40], nombrebuscar[40], direccion[40], nextel[15], correo[30], cumpleanos[10];
int telefono, celular;
clrscr();
cout<<endl;
fecha();
ifstream entrada;
entrada.open("F://Agenda.txt",ios::app);
cout << "Nombre: ";
cin.ignore(9001, '\n');
cin.getline(nombrebuscar, 40, '\n');
while(entrada.good())
{
entrada >> nombre;
reemplazar(nombre, '_', ' ');
if (!strcmp(nombre, nombrebuscar))
{
entrada >> telefono >> celular >> correo >> direccion >> nextel >> cumpleanos;
reemplazar(direccion, '_', ' ');
cout<< "Nombre: " <<nombre<<endl;
cout<< "Telefono: " <<telefono<<endl;
cout<< "Celular: " <<celular<<endl;
cout<< "Correo: " <<correo<<endl;
cout<< "nextel: " <<nextel<<endl;
cout<< "cumpleaños: " <<cumpleanos<<endl;
cout<< "Direccion: " <<direccion<<endl;
return;
}
}
cout<< "No encontrado" <<endl;
}
void menu ()
{
cout<<" \t\n\t\t Bienvenido \n "<<endl;
cout<<"\t Elija una opcion para continuar\n"<<endl;
cout<<"\t\t 1) Registrar un contacto\n "<<endl;
cout<<"\t\t 2) Consultar contacto\n "<<endl;
cout<<"\t\t 3) Desplegar todos los contactos \n"<<endl;
cout<<"\t\t 4) Desplegar contactos por cumpleanos\n"<<endl;
cout<<"\t\t 5) Salir\n";
}
void desplegarcumple();
void main (void)
{
int opc;
do{
ofstream salida;
salida.open("F://Agenda.txt", ios::app);
menu();
cout<<"\n\t Selecione una opcion: ";
cin>>opc;
switch (opc)
{
case 1:
datos();
break;
case 2:
entrada_datos_file();
break;
case 3: desplegar();
break;
case 4: desplegarcumple();
break;
}
}
while (opc!=5);
}
void desplegarcumple()
{
ifstream entrada;
entrada.open("F://Agenda.txt");
int telefono, celular;
char nombre[40], sigue;
char correo[30], cumpleanos[10];
char nextel[15];
char direccion[40];
char mes[3];
clrscr();
cout << "Introducir el numero de mes: ";
cin >> mes;
entrada>>nombre;
while(entrada.good())
{
entrada>>telefono;
entrada>>celular;
entrada>>correo;
entrada>>direccion;
entrada>>nextel;
entrada>>cumpleanos;
if (cumpleanos[3] == mes[0] && cumpleanos[4] == mes[1])
{
cout<<"Nombre: "<<nombre<<endl;
cout<<"Telefono: "<<telefono<<endl;
cout<<"Celular: "<<celular<<endl;
cout<<"Correo: "<<correo<<endl;
cout<<"Direccion: "<<direccion<<endl;
cout<<"Nextel: "<<nextel<<endl;
cout<<"Fecha de nacimiento: "<<cumpleanos<<endl;
cout<<endl;
cout<<"**************************************************************"<<endl;
cout<<endl;
}
entrada>>nombre;
}
entrada.close();
getch();
}
void desplegar() //Desplegar contactos
{
ifstream entrada;
entrada.open("F://Agenda.txt");
int telefono, celular;
char nombre[40], sigue;
char correo[30], cumpleanos[10];
char nextel[15];
char direccion[40];
clrscr();
//entrada.getline(nombre,40);
entrada>>nombre;
while(entrada.good())
{
entrada>>telefono;
entrada>>celular;
entrada>>correo;
entrada>>direccion;
entrada>>nextel;
entrada>>cumpleanos;
cout<<"Nombre: "<<nombre<<endl;
cout<<"Telefono: "<<telefono<<endl;
cout<<"Celular: "<<celular<<endl;
cout<<"Correo: "<<correo<<endl;
cout<<"Direccion: "<<direccion<<endl;
cout<<"Nextel: "<<nextel<<endl;
cout<<"Fecha de nacimiento: "<<cumpleanos<<endl;
cout<<endl;
cout<<"**************************************************************"<<endl;
cout<<endl;
entrada>>nombre;
}
entrada.close();
getch();
}
viernes, 14 de diciembre de 2012
sábado, 1 de diciembre de 2012
Tarea 5
Cuestionario
1.- ¿Qué
es un archivo?
Es una
colección de datos que tiene un nombre y se guardan en dispositivos de
almacenamiento secundario
2.- ¿En
que repercute guardar en los dispositivos secundarios al programar archivos?
Al
momento de hacerle modificaciones a los datos se tiene que cargar en la memoria
principal primeramente para poder modificarlos y localizar los riesgos en el
archivo, para posteriormente leerlo y colocarlo en la memoria RAM.
3.- ¿Qué
son los Datos?
Son los
testimonios individuales relacionados con hechos, ya sean características de
estudio o condiciones particulares de situaciones dadas.
4.- ¿Qué
es un Registro?
Es el
conjunto de datos relacionados pertenecientes a una entrada.
5.- ¿Qué
es necesario para realizar la apertura de u archivo?
Proporcionar
al sistema operativo el nombre completo del archivo y la intención de uso
6.- ¿Cuál
es la estructura de un archivo?
Contiene información del archivo que se utiliza, el
tamaño del archivo y la localización de los buffers de datos.
7.-
¿Cuales son las clasificaciones de archivos por contenido?
Texto:
Son aquellos que pueden contener cualquier clase de datos y de tal manera que
son entendibles por el usuario.
Binario:
Son los archivos que almacenan datos numéricos, con su representación binaria,
estos archivos tienen representación el lenguaje maquina.
8.- ¿Los
datos en un archivo de texto como se almacenan?
Utilizando
el código ASCII en el cual cada carácter es representado por un simple byte
9.- ¿Definición
de archivo de tipo secuencial?
Son registros que se graban en secuencia o
consecutivamente, deben acezarse del mismo modo.
10.- ¿Función close()? Este método rompe la conexión
entre el nombre externo del archivo y el objeto de flujo de archivos el cual
puede ser usado por otro archivo
11.-
¿Dónde se posiciona el apuntador con frecuencia?
Al inicio
del archivo, cuando se abre el archivo en modo de solo lectura,
lectura/escritura, solo escritura y en modo agregar se posiciona al final del
archivo.
12.- ¿En
dirección física, sobre qué argumentos se reposiciona el apuntador?
El alias
del archivo, la dirección física en bytes y el punto de referencia.
13.- ¿Cuáles
son sus puntos de referencia principales?
“SEEK_SET”,
“SEEK_CUR”, “SEEK_END”
14.-
¿Cómo podemos saber donde se encuentra el apuntador en un archivo?
Se usa la
función “ftell” para
reconocer la posición actual del apuntador.
15.- ¿
Como detectar el apuntador cuando esta al final del archivo?
Utilizamos
el macro “feof ()”.
16.-
¿Cómo se cambia el nombre del archivo?
Al
archivo s ele cambia el nombre utilizando “rename ()”
17.- ¿En
donde se aplica rename()?
Solo se utiliza en archivos cerrados.
18.- ¿Qué
variable almacena la función “fwrite”?
Almacena
la variable de tipo “struct”
que representa el bloque de datos o campos.
19.- ¿A
qué se refiere con Vaciado de los buffers con fflush?
Buffer es
un área de almacenamiento temporal en memoria para el conjunto de datos leídos
o escritor en el archivo, por eso se refiere al vaciado, utilizando el fflush,
es para hacer el vaciado mas eficazmente.
20.-
¿Para qué se usa la función “fread”?
Permite leer un registro y copiarlo en la memoria
RAM,
Suscribirse a:
Entradas (Atom)