Programacion
las opreciones a implementar son las siguientes:
*Una Funcion Leer Complejo(): permite leer un objeto de la clase Complejo.
*Un Funcion Escribir Complejo(): realiza la visualizacion formateada de un complejo.
*/
#include <iostream.h>
#include <conio.h>
#include<string.h>
class Complejo
{
float real;
float imaginaria;
public:
void leercomplejo();
void escribircomplejo();
};
void Complejo::leercomplejo()
{
cout<<"Parte Real: ";
cin>>real;
cout<<"\nParte Imaginaria: ";
cin>>imaginaria;
}
void Complejo::escribircomplejo()
{
if (imaginaria>0)
{
cout<<" "<<real<<" +"<<" "<<imaginaria<<"i";
}
if (imaginaria<0)
{
cout<<" "<<real<<" - "<<" "<<imaginaria<<"i";
}
if (imaginaria==0)
{
cout<<" "<<real;
}
}
void main()
{
int i,N;
Complejo *c[100];
do
{
cout<<"Cuantos Numeros Va a Ingresar?:";
cin>>N;
}while(N>100);
for(i=0;i<N;i++)
{
c->leercomplejo();
}
c->escribircomplejo();
getch();
}
---------------------------------------------------------------------------------------------------------------------------
/*Desarrollar un programa con las siguientes opciones:
1) Ingreso de alumnos max=100 con las siguientes caracteristicas de c/u
matricula (entero),promedio (real) y apellido(cadena) enun archivo binario.
2) Impresion ordenada de alumnos con matricula entre 1500 y 2000 (de menor a mayor), consultando el archivo.
3) Impresion ordenada de los alumnos con promedio >=7.
4) Salida. */
#include <string.h>
#include <stdio.h>
#include <conio.h>
#include <process.h>
#include <iostream.h>
#define ARCH "e:\Temp\Fiat.dat"
intconst max=100;
struct alumno
{
int matricula;
float promedio;
char apellido[50];
};
void main()
{
int N,X,i,cant;
alumno al[max];
FILE *bin;
do
{
printf("\nCuantos Alumnos hay en el Curso?: ";
scanf("%d",&N);
}while (N>max);
do
{
clrscr();
printf("\nMenu de opciones: ";
printf("\n1-Carga de Datos.";
printf("\n2-Impresion ordenada conmatricula entre 1500 y 2000.";
printf("\n3-Impresion ordenada con promedio >= 7.";
printf("\n4-Salir.";
printf("\nIngrese opcion: ";
scanf("%d",&X);
switch(X)
{
case 1:
{
if ((bin=fopen(ARCH,"wb")==NULL)
{
printf("\nEl archivo no puede ser abirto.";
}
for (i=0;i<N;i++)
{
printf("\nAlumno %d: ",i+1);
printf("\nApellido: ";
fflush(stdin); gets(al.apellido);
printf("Matricula: ";
scanf("%d",&al.matricula);
printf("Promedio: ";
fflush(stdin);
cin>>al.promedio;
fwrite(&al,sizeof(al),1,bin);
}
rewind(bin);
fclose(bin);
break;
}
case 2:
{
if ((bin=fopen(ARCH,"rb")==NULL)
{
printf("El archivo no puede ser abierto";
}
for (i=0;i<N;i++)
{
cant=fread(&al,sizeof(al),1,bin);
{
inti,b,p;
alumno aux;
p=0;
do
{
b=1;
for (i=0;i<((N-1)-p);i++)
{
if (al.matricula>al[i+1].matricula)
{
aux=al;
al=al[i+1];
al[i+1]=aux;
b=0;
}
}
p=p+1;
}while(b!=1);
}
for (i=0;i<N;i++)
{
if ((al.matricula>1500)&&(al.matricula<2000))
{
printf("\n\nAlumno:%s",al.apellido);
printf("\nMatricula:%d",al.matricula); printf("\nPromedio:%.2f",al.promedio);
}
}
if (cant!=1)
{
if(feof(bin))
break;
else
{
printf("\nNo se leyo el ultimo registro.";
exit(1);
}
}
}
fclose(bin);
getch();
break;
}
case 3:
{
if ((bin=fopen(ARCH,"rb")==NULL)
{
printf("El archivo no puede ser abierto";
}
for (i=0;i<N;i++)
{
cant=fread(&al,sizeof(al),1,bin);
{
int i,b,p;
alumno aux; ...
Regístrate para leer el documento completo.