Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Programas en C++ para el manejo de archivos: Ejemplos de escritura y lectura, Ejercicios de Programación C

En este documento se presentan tres ejemplos en C++ de programas que manejan archivos de texto mediante escritura y lectura. El primero permite al usuario crear un archivo de texto con sus datos personales, el segundo permite realizar una reserva de películas guardando los datos en un archivo y el tercero realiza una competencia de ciclistas guardando los tiempos de cada participante en un archivo. Además, se incluyen ejercicios para el usuario para practicar.

Tipo: Ejercicios

2021/2022

Subido el 03/11/2022

dadis-taso
dadis-taso 🇨🇴

3 documentos

1 / 14

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
taller 2
1.
#include<iostream>
#include<stdlib.h>
#include<fstream>
#include<string>
using namespace std;
void escribir();
int main() {
escribir();
system("pause");
return 0;
}
void escribir() {
ofstream archivo;
string nombreArchivo,direccion,barrio;
float area_construida, area_lote, cedula, cd_castatral, precio;
cout << "Digite el nombre del archivo: ";
getline(cin, nombreArchivo);
archivo.open(nombreArchivo.c_str(), ios::out);
if (archivo.fail()) {
cout << "No se pudo abrir el archivo";
exit(1);
}
cout << "Digite la dirrecion de la casa: ";
getline(cin, direccion);
cout << "Digite el barrio donde esta ubicada la casa: ";
getline(cin, barrio);
cout << "Digite el area del lote: ";
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Vista previa parcial del texto

¡Descarga Programas en C++ para el manejo de archivos: Ejemplos de escritura y lectura y más Ejercicios en PDF de Programación C solo en Docsity!

taller 2

#include #include<stdlib.h> #include #include using namespace std; void escribir(); int main() { escribir(); system("pause"); return 0; } void escribir() { ofstream archivo; string nombreArchivo,direccion,barrio; float area_construida, area_lote, cedula, cd_castatral, precio; cout << "Digite el nombre del archivo: "; getline(cin, nombreArchivo); archivo.open(nombreArchivo.c_str(), ios::out); if (archivo.fail()) { cout << "No se pudo abrir el archivo"; exit(1); } cout << "Digite la dirrecion de la casa: "; getline(cin, direccion); cout << "Digite el barrio donde esta ubicada la casa: "; getline(cin, barrio); cout << "Digite el area del lote: ";

cin >> area_lote; cout << "Digite cuantos metros estan construidos: "; cin >> area_construida; cout << "Digite la cedula del dueño: "; cin >> cedula; cout << "Digite la cedula castatral de la vivienda: "; cin >> cd_castatral; cout << "Digite el precio de la vivienda: "; cin >> precio; cout << "Sus datos se han guaradado en el archivo " << nombreArchivo << endl; archivo << "\t" << nombreArchivo << endl; archivo << "La direccion de la casa es " << direccion << endl; archivo << "El barrio donde se ubica la casa es " << barrio << endl; archivo << "El area del lote es " << area_lote << endl; archivo << "Los metros construidos son " << area_construida << endl; archivo << "La cedula del propietario es " << cedula << endl; archivo << "La cedula castatral de la vivienda es " << cd_castatral << endl; archivo << "El precio de la vivienda seria " << precio << endl; }

cin >> opcion; //lee la opcion que el usuario quiere switch (opcion) //Abre solucion al menu { case 1: ingresar_reserva();//Llama a la funcion para ingresar reserva break; case 2: Buscar_reserva();//Llama a la funcion para buscar la reserva break; case 3: eliminar_reserva();//Llama a la funcion para eliminar reserva break; case 4: break; default: cout << "\n\n\t\t OPCION NO VALIDA!!" << endl; system("pause"); break; } } while (opcion != 4); } void ingresar_reserva() //Funcion para ingresar reserva { ofstream salida("Datos.txt", ios::app); //(se envia el dato) incluye datos sin borrar los anteriores cout << "\n\t\tIngresar Cedula: ";//Pide el dato cin >> res.cedula; //guarda en la variable cout << "\n\t\tIngresar Codigo pelicula: "; cin >> res.codipeli;

cout << "\n\t\tIngresar Numero de cupos: "; cin >> res.cupos; cout << "\n\t\tIngresar Ubicacion: "; cin >> res.ubic; salida << res.cedula;//Llena los datos en el archivo salida << " "; salida << res.codipeli; salida << " "; salida << res.cupos; salida << " "; salida << res.ubic << " "; salida << endl; salida << endl; } void Buscar_reserva()//funcion para buscar reserv { system("cls"); //borra la pantalla ifstream entrada;//flujo de entrada entrada.open("Datos.txt", ios::in); //leer if (entrada.fail()) //si entrada falla { cout << "Hubo un error al abrir el archivo Datos.txt"; system("pause"); } else { char aux[20];//guarda el dato a buscar cout << "\n\n\n\t\t Introduzca la cedula del usuario: ";//ingresa dato a buscar

void eliminar_reserva() { system("cls");//limpia pantalla ifstream entrada2;//flujo de entrada entrada2.open("Datos.txt", ios::in);//leer ofstream salida;//flujo de salida salida.open("temp.txt", ios::out);//permite la salida if (entrada2.fail())// si falla el archivo de entrada { cout << "Hubo un error al abrir el archivo empleados.txt";//mostrar en pantalla system("pause"); } else { char aux2[20];// inicializa vector para cedula cout << "\n\n\n\t\tIngresar Cedula para eliminar la reserva: ";//pide cedula cin >> aux2;//lee cedula entrada2 >> res.cedula;// trae cedula y la guarda while (!entrada2.eof())//mientras no sea el final del archivo { entrada2 >> res.codipeli >> res.cupos >> res.ubic;//guarda los demas datos if (strcmp(aux2, res.cedula) == 0)//compara { cout << "El registro se ha eliminado";//mostrar en pantalla system("pause"); } else

salida << res.cedula << " " << res.codipeli << " " << res.cupos << "" << res.ubic << endl;//vuelve a escribir los datos diferentes al comparado } entrada2 >> res.cedula;//guarda el siguiente dato en cedula } salida.close();//cierra el archivo de salida entrada2.close();//cierra el archivo de entrada rename("temp.txt", "Datos.txt");//cambia el nombre remove("Datos.txt");//borra el archivo datos system("pause"); } }

cout << "Digite el numero del ciclista: "; cin >> num_cicl[i]; cout << "Digite el numero de la etapa: "; cin >> num_etp; cout << "Digite el tiempo del ciclista numero: "; cin >> tiempo[i]; cout << endl; } for (i=0; i<n; i++) { if(tiempo[i]>tiempo[0]) { may_temp=tiempo[0]; } else if (tiempo[i]>tiempo[1]) { may_temp=tiempo[1]; } else if (tiempo[i]>tiempo[2]) { may_temp=tiempo[2]; } else if (tiempo[i]>tiempo[3]) { may_temp=tiempo[3]; } else if (tiempo[i]>tiempo[4]) { may_temp=tiempo[4];

else if (tiempo[i]>tiempo[5]) { may_temp=tiempo[5]; } else if (tiempo[i]>tiempo[6]) { may_temp=tiempo[6]; } } archivo << "El tiempo de los ciclistas fue el siguiente " << endl; archivo << "\t" <<"Numero del ciclista" << " " << " Tiempo"<< endl; for (i=0; i<n; i++) { archivo << i+1 << "." <<"\t" << num_cicl[i] << "\t\t\t" << tiempo[i] << "min" << endl; } archivo << "El mejor tiempo de la competencia fue de " << may_temp << " minutos. "; }

for(int i= 0; i<num;i++) { cout<<piz[i].nombre<<endl; cout<<piz[i].cedula<<endl; cout<<piz[i].tamano<<endl; } mostrar<<"DATOS DE SALIDA DEL PROGRAMA"<<endl; for(int i=0;i<num;i++) { mostrar<<piz[i].nombre<<endl; mostrar<<piz[i].tamano<<endl; if(piz[i].tamano =="grande") { precio=230001.5; mostrar<<"el precio es :"<<precio<<endl; numclie=numclie+1; } if(piz[i].tamano=="mediano") { precio=120001.5; mostrar<<"el precio es :"<<precio<<endl; } if(piz[i].tamano=="pequeno") { precio=70001.5; mostrar<<"el precio es :"<<precio<<endl; } } porcentaje=(numclie100)/num;

mostrar<<" el porcentaje de clientes que compraron la pizza grande es: "<<endl; mostrar<<porcentaje<<"%"; return 0; }