Ejercicio 1
SOLUCION
1.- Inicio.
ofstream archivo;
archivo.open("E:\\datos\\ejemplo.txt");
if(archivo.bad())
{
read " No puede crear el archivo ejemplo.txt"
}
else
{
archivo, 1," ",50,"Reprobado"
archivo, 2," ",0," Ausente"
archivo, 3," ",80,"Aprobado"
archivo, 4," ",100,"Aprobado"
archivo.close();
}
read "Datos Grabados Exitosamente"
FIN
CODIGO
#include<fstream.h>
#include<conio.h>
void main()
{
ofstream archivo;
archivo.open("E:\\datos\\ejemplo.txt");
if(archivo.bad())
{
cout<<"No puede crear el archivo ejemplo.txt"<<endl;
}
else{
archivo<<1<<" "<<50<<" Reprobado"<<endl;
archivo<<2<<" "<<0<<" Ausente"<<endl;
archivo<<3<<" "<<80<<" Aprobado"<<endl;
archivo<<4<<" "<<100<<" Aprobado"<<endl;
archivo.close();
}
cout<<"Datos grabados exitosamente"<<endl;
getch();
}
Ejercicio 2
SOLUCION
1.-Inicio.
ifstream arch1;
int i,calif;
char cadena[10];
arch1.open("c:\\datos\\ejemplo.txt");
if(arch1.bad())
{
read,"Incapaz de crear o abrir el archivo"
}
else
{
arch1>>i;
while(!arch1.eof())
{
read,i," "
arch1>>calif;
read,calif;
arch1>>cadena;
read,cadena
arch1>>i;
}
arch1.close();
}
FIN
CODIGO
#include<fstream.h>
#include<conio.h>
main()
{
ifstream arch1;
int i,calif;
char cadena[10];
arch1.open("c:\\datos\\ejemplo.txt");
if(arch1.bad())
{
cout<<"Incapaz de crear o abrir el archivo"<<endl;
}
else
{
arch1>>i;
while(!arch1.eof())
{
cout<<i<<" ";
arch1>>calif;
cout<<calif;
arch1>>cadena;
cout<<cadena<<endl;
arch1>>i;
}
arch1.close();
}
getch();
}
Ejercicio 3
CODIGO
#include<conio.h>
#include<fstream.h>
main()
{
fstream f1;
char cadena[10],sigue,nombre[10];
int c1,c2,c3,c4;
int promedio;
int opcion;
f1.open("E:\\datos\\ejemplo2.txt",ios::app|ios::out);
do{
cout<<"1) Almacenar datos del alumno:"<<endl;
cout<<"2) Reporte de alumnos:"<<endl;
cout<<"3) Salida de programa:"<<endl;
cout<<"Elige opcion:";
cin>>opcion;
switch(opcion)
{
case 1:do{
cout<<"Nombre alumno:";
cin>>nombre;
cout<<"Calificacion 1:";
cin>>c1;
cout<<"Calificacion 2:";
cin>>c2;
cout<<"Calificacion 3:";
cin>>c3;
cout<<"Calificacion 4:";
cin>>c4;
promedio=(c1+c2+c3+c4)/4;
f1<<nombre<<" "<<c1<<" "<<c2<<" "<<c3<<" "<<c4<<" "<<promedio<<" "<<endl;
if(promedio>=70)
{
f1<<"Aprobado"<<endl;
}
else{
f1<<"Reprobado"<<endl;
}
cout<<"Desea registrar a otro(s/n)";
cin>>sigue;
}
while(sigue=='s' || sigue=='S');
f1.close();
break;
case 2:f1.open("c:\\datos\\ejemplo2.txt",ios::out);
cout<<"Nombre calif1 calif2 calif3 calif4 promedio status";
if(f1.bad())
{
cout<<"Incapaz de crear o abrir el archivo"<<endl;
}
else{
f1>>nombre;
while(!f1.eof());
{
cout<<nombre<<" "<<endl;
f1>>c1;
cout<<c1<<"\t";
f1>>c2;
cout<<c2<<"\t";
f1>>c3;
cout<<c3<<"\t";
f1>>c4;
cout<<c4<<"\t";
f1>>promedio;
cout<<promedio<<"\t";
f1>>cadena;
cout<<cadena<<"\t"<<endl;
f1>>nombre;
}
}
f1.close();
break;
case 3:cout<<"Salida Programa"<<endl;
break;
default:cout<<"Error en Opcion"<<endl;
break;
}
}
while(opcion !=3);
getch();
}
Ejercicio 4
Un archivo llamado polar.txt contiene las coordenadas pobres nesesarias en un programa de graficas.Actualmente este archivo contiene los siguientes datos.
Distancia (Pulgadas) Angulo (Grados)
2.0 45.0
6.0 30.0
10.4 45.0
4.0 60.0
12.0 55.0
8.0 15.0
a) Escriba u programa para crear este archivo.
b) Con base al archivo polar.txt escriba un programa que acepte del usuario los datos de distancia y angulo y los agregue al final del archivo.
c) Con el archivo polar. txt escriba u programa que lea este archivo y cree otro llamado xycord.txt las entradas al nuevo archivo deben contener las coordenadas rectangulares que corresponden a las coordenadas polares.
x=ycoseno
y=rseno
donde r es la coordenada de distancia y es el equivalente en radianes a la coordenada del angulo en el archivo polar.txt.
CODIGO
#include <fstream.h>
#include <conio.h>
#include <math.h>
void crearchivo()
{
fstream escribir;
escribir.open("E://Datos//polar.txt",ios::out);
escribir<<2.0<<" "<<45.0<<endl
<<6.0<<" "<<30.0<<endl
<<10.0<<" "<<45.0<<endl
<<4.0<<" "<<60.0<<endl
<<12.0<<" "<<55.0<<endl
<<8.0<<" "<<15.0<<endl;
escribir.close();
}
void agregard()
{
float dist,angulo;
char continuar;
fstream escribir;
escribir.open("E://Datos//polar.txt",ios::app);
do
{
cout<<"Distancia (Pulgadas):";
cin>>dist;
cout<<"Angulo (Grados):";
cin>>angulo;
escribir<<dist<<" "<<angulo<<endl;
cout<<"Deseas registrar otro (S/N):";
cin>>continuar;
}
while (continuar=='S'||continuar=='s');
escribir.close();
}
void crearxycord()
{
float d,a,x,y,rad;
fstream f1;
fstream f2;
f1.open ("E://Datos//polar.txt",ios::in);
f2.open ("E://Datos//xycord.txt",ios::out);
f1>>d;
while (!f1.eof())
{
f1>>a;
rad=(a*3.1416)/180;
x=d*cos(rad);
y=d*sin(rad);
f2<<x<<" "<<y<<endl;
f1>>d;
}
f1.close();
f2.close();
}
void main()
{
crearchivo();
agregard ();
crearxycord ();
getch();
}
Ejercicio 5
Escriba los cuatro numeros reales
92.65
88.72
77.46
82.93
en un archivo texto llamado resultados.Despues de escribir los datos en el archivo el programa debe leerlos determinar y desplegar el promedio de los cuatro numeros leidos.
CODIGO
#include <fstream.h>
#include <conio.h>
void main()
{
float num;
fstream archivo;
archivo.open("E://Datos//resultados.txt",ios::out,ios::in);
archivo<<92.65<<" "<<88.72<<" "<<77.46<<" "<<82.93<<endl;
archivo.close();
archivo.open("E://Datos//resultados.txt",ios::in);
float suma=0;
for (int i=1;i<=4;i++)
{
archivo>>num;
cout<<num<<" ";
suma=suma+num;
}
cout<<endl;
float promedio=suma/4.0;
cout<<"El promedio es:"<<promedio<<endl;
getch();
}
Ejercicio 6
Suponga que desea introducir una lista de cadenas en un arreglo de tamaño 10.
Haga un programa que considere un metodo para ordenar alfabeticamente estas cadenas y escribir la lista de las cadenas en forma ordenada, en orden ascendente.
CODIGO
#include <iostream.h>
#include <conio.h>
#include <string.h>
void ordenar(int n,char x[10][12])
{
char temp[12];
int i,elem;
for(elem=0;elem<(n-1);elem++)
{
for(i=elem+1;i<(n-1);i++)
{
if(strcmpi(x[elem],x[i])<0)
{
strcpy(temp,x[elem]);
strcpy(x[elem],x[i]);
strcpy(x[i],temp);
} } } }
void main()
{
int i,n=0;
char x[10][12];
cout<<"Escribe Fin para terminar "<<endl;
do
{
cout<<"Cadena "<<(n+1)<<" : ";
cin>>x[n];
}
while(strcmpi(x[n++],"fin"));
ordenar(--n,x);
cout<<"Lista Ordenar cadena "<<endl;
for(i=0;i<n;i++)
{
cout<<x[i]<<endl;
}
getch();
}
TAREAS
Ejercicio 10.7
SOLUCION
1.- Inicio.
X, Y int
Linea[ ]="|" char
for (X=1;X<=15;X++)
{
Y=pow((X-8),2.0)+3
Linea[Y]='*' //Establecer el caracter en un asterisco
print " ",Linea<<endl;
Linea[Y]=' ' //Convertir el caracter en un espacio en blanco
FIN.
CODIGO
#include <iostream.h>
#include <conio.h>#include <math.h>
{
int X,Y;
char Linea[ ]="|";
for (X=1;X<=15;X++)
{
Y=pow((X-8),2.0)+3;
Linea[Y]='*'; //Establecer el caracter en un asterisco
cout<<Linea<<endl;
Linea[Y]=' ' ; //Convertir el caracter en un espacio en blanco
}
getch();
}
Ejercicio 10.8
SOLUCION
1.- Inicio.
int X,Y;Etiqueta[ ]=" Eje Y" char
Eje[ ]="+-------------------------------------------->" char
Linea[ ]="| " char
print " ",Etiqueta<<endl
print " ",Eje<<endl
for (X=1;X<=15;X++)
{
Y=pow((X-8),2.0)+3
Linea[Y]='*' // Establecer el caracter en un asterisco
print " ",linea<<endl
Linea[Y]=' ' // Restablecer el caracter en un espacio en blanco
}
Fin.
CODIGO
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
int X,Y;
char Etiqueta[ ]=" Eje Y";
char Eje[ ]="+-------------------------------------------->";
char Linea[ ]="| ";
cout<<Etiqueta<<endl;
cout<<Eje<<endl;
for (X=1;X<=15;X++)
{
Y=pow((X-8),2.0)+3;
Linea[Y]='*'; // Establecer el caracter en un asterisco
cout<<Linea<<endl;
Linea[Y]=' '; // Restablecer el caracter en un espacio en blanco
}
getch();
}
#include <conio.h>
#include <math.h>
void main()
{
int X,Y;
char Etiqueta[ ]=" Eje Y";
char Eje[ ]="+-------------------------------------------->";
char Linea[ ]="| ";
cout<<Etiqueta<<endl;
cout<<Eje<<endl;
for (X=1;X<=15;X++)
{
Y=pow((X-8),2.0)+3;
Linea[Y]='*'; // Establecer el caracter en un asterisco
cout<<Linea<<endl;
Linea[Y]=' '; // Restablecer el caracter en un espacio en blanco
}
getch();
}
Ejercicio 10.9
SOLUCION
1.- Inicio.
Puntos_Max=100 Const intI, N_Puntos, N_Valores[Puntos_Max] int
X,X_Incremento,F_Valores,Y_Min,Y_Max,Ancho,S_Valores[100] real
Etiqueta[ ]=" Eje Y" char
Eje[ ]="+--------------------------------------------->" char
Linea[ ]=" | " char
Y_Max=1.0e-5
Y_Min=1.0e+5
X=-5.0
X_Incremento=0.5
N_Puntos=21
Ancho=53
//Cargar los datos para ser graficados y encontrar los valores Max y Min
for (I=1;I<=N_Puntos;I++)
{
S_Valores[I]=pow(X,3.0)
if (S_Valores[I]>Y_Max)
Y_Max=S_Valores[I]
if (S_Valores[I]<Y_Min)
Y_Min=S_Valores[I]
X=X+X_Incremento
}
// Escalar los valores de Y para ser graficados
for (I=1;I<=N_Puntos;I++)
{
F_Valores=((S_Valores[I]-Y_Min)/(Y_Max-Y_Min))*Ancho
N_Valores[I]=F_Valores+0.5; // Convertir a un valor en numero entero
}
// Produce la gráfica
print "El Valor Minimo en Y: ",Y_Min<<endl
print "El Valor Maximo en Y: ",Y_Max<<endl;
print " ",Etiqueta<<endl
print " ",Eje<<endl
for (I=1;I<=N_Puntos;I++)
{
Linea[N_Valores[I]|+2]='*' // Establecer el caracter en un asterisco
print " ",Linea<<endl
Linea[N_Valores[I]|+2]=' ' //Restablecer el caracter en un espacio en blanco
}
Fin.
CODIGO
#include <iostream.h>
#include <conio.h>
#include <math.h>
void main()
{
const int Puntos_Max=100;
int I, N_Puntos, N_Valores[Puntos_Max];
float X,X_Incremento,F_Valores,Y_Min,Y_Max,Ancho,S_Valores[100];
char Etiqueta[ ]=" Eje Y";
char Eje[ ]="+--------------------------------------------->";
char Linea[ ]=" | ";
Y_Max=1.0e-5;
Y_Min=1.0e+5;
X=-5.0;
X_Incremento=0.5;
N_Puntos=21;
Ancho=53;
// Cargar los datos para ser graficados y encontrar los valores Max y Min
for (I=1;I<=N_Puntos;I++)
{
S_Valores[I]=pow(X,3.0);
if (S_Valores[I]>Y_Max)
Y_Max=S_Valores[I];
if (S_Valores[I]<Y_Min)
Y_Min=S_Valores[I];
X=X+X_Incremento;
}
// Escalar los valores de Y para ser graficados
for (I=1;I<=N_Puntos;I++)
{
F_Valores=((S_Valores[I]-Y_Min)/(Y_Max-Y_Min))*Ancho;
N_Valores[I]=F_Valores+0.5; // Convertir un valor en numero entero
}
// Produce la gráfica
cout<<"El Valor Minimo en Y: "<<Y_Min<<endl;
cout<<"El Valor Maximo en Y: "<<Y_Max<<endl;
cout<<Etiqueta<<endl;
cout<<Eje<<endl;
for (I=1;I<=N_Puntos;I++)
{
Linea[N_Valores[I]|+2]='*'; // Establecer el caracter en un asterisco
cout<<Linea<<endl;
Linea[N_Valores[I]|+2]=' '; //Restablecer el caracter en un espacio en blanco
}
getch();
}