miércoles, 25 de mayo de 2011

tarea

tarea 1

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<
linea[y]=' ' //eonvertir el caracter en un espacio en blanco
}
fin.




tarea 2
1.- Inicio.
int x,y;
etiqueta[ ]=" eje y" char
eje[ ]="+-------------------------------------------->" char
linea[ ]="| " char
print " ",etiqueta<
print " ",eje<
for (e=1;e<=15;e++)
{
y=pow((X-8),2.0)+3
einea[Y]='*' // establecer el caracter en un asterisco
print " ",linea<
einea[Y]=' ' // restablecer el caracter en un espacio en blanco
}
fin.



practica 10

problema 1
1- inicio
ofstream archivo;
archivo.open("J:\\prog\\ejemplo.txt")
if(archivo.bad())
{
print, "No puede crear el archivo ejemplo.txt",endl
}
else{
archivo<<1<<" "<<50<<" Reprobado"<
fin



problema 2

1- inicio
ifstream arch1
int i,calif
char cadena[10]
arch1.open("J:\\prog\\ejemplo.txt")
if(arch1.bad())
{
print, "Incapaz de crear o abrir el archivo", endl
}
else
{
arch1>>i
while(!arch1.eof())
{
Print, i, " ",endl
arch1>>calif
print, calif, " \t "
arch1>>cadena;
cout<>i
}
arch1.close()
}
fin




problema 3

1- inicio
fstream f1;
char cadena[10],sigue,nombre[5][10]
int c1,c2,c3,c4,i=0
int promedio
int opcion
f1.open("J:\\prog\\ejemplo2.txt",ios::out);
do{
Print ,"1) Almacenar datos del alumno:",endl
Print ,"2) Reporte de alumnos:",endl
Print ,"3) Salida de programa:",endl
Print ,"Elige opcion:"
Read, opcion
switch(opcion)
{
case 1:
do
{
Print , "Nombre alumno: ", (i+1), " : "
Read, nombre[i]
Print ,"Calificacion 1:"
Read, c1
Print ,"Calificacion 2:"
Read, c2
Print ,"Calificacion 3:"
Read, c3
Print , "Calificacion 4:"
Read, c4
promedio=(c1+c2+c3+c4)/4
f1<=70)
{
f1<<"Aprobado"<>nombre[i]
while(!f1.eof())
{
cout<>c1
Print , c1, "\t";
f1>>c2;
Print , c2, "\t";
f1>>c3;
Print ,c3, "\t";
f1>>c4;
Print ,c4, "\t";
f1>>promedio;
Print , promedio, "\t";
f1>>cadena;
Print ,cadena,"\t", endl
f1>>nombre[i]
}
}
f1.close()
break;
case 3: Print ,"Salida Programa", endl;
break;
default: Print ,"Error en Opcion", endl
break;
}
}
while(opcion !=3)

}
fin




problema 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 0
y=rseno 0

donde r es la coordenada de distancia y 0. es el equivalente en radianes a la coordenada del angulo en el archivo polar.txt.

1- inicio
fstream escribir;
escribir.open("J://prog//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("J://prog//polar.txt",ios::app);
do
{
Print,"Distancia (Pulgadas):"
Read, dist
Print, "Angulo (Grados):"
Read, angulo
escribir<>d;
while (!f1.eof())
{
f1>>a;
rad=(a*3.1416)/180;
x=d*cos(rad);
y=d*sin(rad);
f2<>d;
cout<




problema 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.


1- inicio
float num
fstream archivo;
archivo.open("J://prog//resultados.txt",ios::out,ios::in);
archivo<<92.65<<" "<<88.72<<" "<<77.46<<" "<<82.93<
archivo.close();
archivo.open("J://prog//resultados.txt",ios::in);
float suma=0
for (int i=1;i<=4;i++)
{
archivo>>num;
Print, num<<" "
suma=suma+num
}
Print, endl
float promedio=suma/4.0
Print, "El promedio es:", promedio, endl
fIN




problema 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.

1- inicio
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]
Print, "Escribe Fin para terminar ", endl
do
{
Print, "Cadena ", (n+1), " : "
Read, x[n]
}
while(strcmpi(x[n++],"fin"));
ordenar(--n,x);
Print, "Lista Ordenar cadena ", endl;
for(i=0;i
{
Print, x[i], endl
} }
fin



sábado, 14 de mayo de 2011

practica 9

problema 9.1

void introdatos(int v[5][4])
{
r,c int
for (r=0 to r<5 step r++)
{
for (r=0 to c<4 step r++)
{
Print,”datos" ,(r+1)," , ",(c+1)," :"
Print,v[r][c]
}
}
}
void sumarenglon (int v[5][4])
{
suma, r, c int
print," Suma de renglon"
for (r=0 to r<5 step r++)
{
suma=0
for (r=0 to c<4 step r++)
{
suma=suma+v[r][c]
}
print,"renglon ",(r+1),":",suma
}
}
void sumacolumna (int v[5][4])
{
suma, r, c int
print," suma de columnas:"
for (r=0 to c<4 step r++)
{
suma=0
for (r=0 to r<5 step r++)
{
suma=suma+v[r][c]
}
Print,”la suma de la columna",(c+1),":”,"es:",suma
}
}
void imprimetabla(int v[5][4])
{
R,c int
for (r=0 to r<5 step r++)
{
for (r=0 to c<4 step r++)
{
Print,v[r][c],"\t"
}
Print,endl
}
}
void minimo (int v[5][4],int & min,int & posr,int & posc)
{
R,c int
min=v[0][0]
posr=0
posc=0
for (r=0 to r<5 step r++)
{
for (r=0 to c<4 step r++)
{
if(v[r][c]
{
min=v[r][c]
posr=r
posc=c
}
}
}
}
void maximo (int v[5][4],int & max,int & posr,int & posc)
{
r,c int
max=v[0][0]
posr=0
posc=0
for (r=0 to r<5 step r++)
{
for (r=0 to c<4 step r++)
{
if(v[r][c]>max)
{
max=v[r][c]
posr=r
posc=c
}
}
}
}
inicio
{
valores[5][4] int
pr1,pc1,pr2,pc2,max,min int
introdatos(valores)
sumarenglon(valores)
sumacolumna(valores)
imprimetabla(valores)
maximo(valores,max,pr1,pc1)
minimo(valores,min,pr2,pc2)
print,”desplegar el valor maximo",max
print,”entre la posiscion",pr1,",",pc1
print,”desplegar el valor minimo",min
print,”entre la posiscion",pr2,",",pc2
fin
}




Problema 9.2
Escriba un programa que sume los elementos equiparables de los arreglos bidimensionales
denominados “primero” y “segundo”. Ambos arreglos deben de tener 2 renglones y 3 columnas.
Por ejemplo los elementos [1][2] del arreglo que resulte deban ser la suma del primero y del segundo.
Los arreglos “primero” y “segundo” deben son introducidos por el usuario

1.- Inicio
void introdatos(int a[2][3], int b[2][3])
{
r,c; Real
for (r=0; to 3 step; r++)
{
for(c=0; to 2 step; c++)
{
Print "Datos" ,(r+1)," , ",(c+1)," :"
Read a[r][c]
Print "Datos" ,(r+1)," , ",(c+1)," :"
Read b[r][c]
}
}
}
void imprimedatos(int a[2][3],int b[2][3],int d[2][3])
{
r,c; Real
Print "1er num. + 2do num.";
cout<void main()
{
primer[2][3],segundo[2][3],tercer[2][3] Real
introdatos(primer,segundo);
sumardatos(primer,segundo,tercer);
imprimedatos(primer,segundo,tercer);
fin




Problema 9.3
formule un programa para obtener la matriz y la transpuesta.

1.- Inicio
void introdatos(int m[4][4])
{
r,c; Real
randomize();
for(r=0;to 4 step;r++)
{
for(c=0; to 4 step;c++)
{
m[r][c]=random(10000)+1;
}
}
}
void imprimematriz(int m[4][4])
{
r,c; Real
for(r=0;to 4 step; r++)
{
for(c=0; to 4 step; c++)
{
cout<
}
}
}
void transpuesta(int m[4][4],int m1[4][4])
{
r,c; Real
for(r=0; to 4 step; r++)
{
for(c=0; to 4 step; c++)
{
m1[c][r] = m[r][c];
}
}
}
void main()
{
int a[4][4];
int a1[4][4];
introdatos(a);
transpuesta(a,a1);
imprimematriz(a);
imprimematriz(a);
fin





Problema 9.4

1.- Inicio
void introdatos(int w[3])
{
i; Real
for(i=0; to 3 step; i++)
{
Print "w = ",(i+1);
Read w[i]
}
}
void introcalificacion(int m[5][3])
{
r,c; Real
for(r=0; to 5 step; r++)
{
for(c=0; to 3 step; c++)
{
Print "calificacion = ",(r+1),m[r][c];
}
}
}

void promedio(int m[5][3], int w[3], float c1[5])
{
r,c,suma; Real
for(r=0; to 5 step; r++)
{
suma=0;
for(c=0; to 3 step; c++)
{
suma = suma + m[r][c]*w[c];
}
c1[r] = suma/6.0;
}
}

void sumaw(int w[3])
{
i,s; Real
s=0;
for(i=0; o 3 step; i++)
{
s = s+w[i];
}
return s;
}
void rango(float c1[5], int r[5])
{
e,i,mayor,name; Real
for(e=0; to 5 step; e++)
{
mayor = 0;
for(i=0; to 3 step; i++)
{
if(c1[i]>mayor)
{
name = i;
mayor = c1[i];
}
}
r[name] = i;
c1[name] = 0;
}
}

void imprimir(int r[5])
{
i; Real
for(i=0; to 3 step; i++)
{
Print "No. estuduante: ",(i+1);
Print "suposicion en clase es : ",r[i];
}
}

void main()
{
int w[3];
int m[5][3];
float c1[5];
int r[5];
introdatos(w);
introcalificacion(m);
promedio(m, w, c1);
sumaw(w);
rango(c1, r);
imprimir(r);
Fin




Problema 9.5

Elaborar un programa que lea el nombre de 10 trabajadores y su producción mensual por cada uno de los 12 meses del año, en dos arreglos uno para nombres y otro para producción en los cuales las "n" corresponden al trabajador.

1.- inicio
void calculoprodanual(int produccion[15][12],int prodtotal[15])
{
for(int i=0 to i<15 step i++)
{
int suma=0
for(int j=0 to j<15 step j++)
{
suma=suma+produccion[i][j]
}
prodtotal[i]=suma
}
}
void introdatos(char nombre[15][20],int produccion[15][12])
{
randomize()
for(int i=0 to i<15 step i++)
{
Print "Nombre del encargado estacion" (i+1) ":"
cin>>nombre[i]
for(int j=0 to j<12 step j++)
{
produccion[i][j]=random(50000)+1
}
}
}
void mayorproductividad(int prod_total[15],int &mayor,int &pos)
{
mayor=prod_total[0]
pos=0
for (int i=1 to i<15 step i++)
{
if(prod_total[i]>mayor)
{
mayor=prod_total[i]
pos=i
}
}
}
void main()
{
int prod[15][12]
int ptotal[15]
char nom[15][20]
may,p1int
introdatos(nom,prod)
calculoprodanual(prod,ptotal)
mayorproductividad(ptotal,may,p1)
print "La estacion mas productiva es:"(p1+1)
print "Encargado de la estacion:",nom[p1]
Print "Cantidad producida:",ptotal[p1]
getch()
}
fin




problema 9.6

Elaborar un programa que genere una matriz de 10x10 en la cual asigne ceros a todos los elementos
excepto a los de la diagonal principal donde asignara unos, imprima dicha matriz.

1.- Inicio
void asignarvalores(int m[10][10])
{
r,c; Real
for(r=0; to 10 step; r++)
{
for(c=0; to 10 step; c++)
{
if(r==c)
{
m[r][c]=1;
}
else
{
m[r][c]=0;
}
}
}
}
void imprimematriz(int m[10][10])
{
i,c; Real
for(i=0; to 10 step; i++)
{
for(c=0; to 10 step; c++)
{
Print m[c][c]," ";
}
}
}

void main()
{
int matriz[10][10];
asignarvalores(matriz);
imprimematriz(matriz);
Fin






Problema 9.7
Elaborar un prograroblema 7ma que lea el nombre de 10 trabajadores y su producción mensual por cada uno de los 12 meses del año en 2 arreglos uno para nombres y otro para producciones, en los cuales los n corresponden al trabajador n. Se requiere que imprima el siguiente reporte:
1.-inicio
void introdatos(int produccion[10][13])
{
randomize ()
i,j,suma int
for (i=0 to i<10 step i++)
{
suma=0
for (j=0 to j<12 step j++)
{
produccion[i][j]=random(5000)+1
suma=suma+produccion[i][j]
}
produccion[i][12]=suma
}
}
FIN.
1.INICIO LEERNOMBRES
void leernombres(char name[10][25])
{
I int
for (i=0 to i<10 step i++)
{
Print "nombre trabajador"(i+1)":"
cin.getline(name[i],25)
}
}
void reporte(int produccion[10][13], char name[10][25])
{
suma,i,prom int
Print "analisis de produccion"
Print "nombre total produccion"
suma=0
for (i=0 to i<10 step i++)
{
Print “ “name[i]" ",produccion[i][12]
suma=suma+produccion[i][12]
}
{
prom=suma/10
print "promedio de produccion ",prom
print "listado de trabajadores mayores a ",prom
i int
for (i=0 to i<10 step i++)
{
if (produccion[i][12]>prom)
{
Print “ “,name[i]
}
}
}
}
void main ()
{
int p[10][13]
char nom[10][25]
leernombres(nom)
introdatos(P)
reporte(p,nom)
getch()
}
fin






Problema 9.8
1.- Inicio
ifstream entrada;
entrada.open("c://datos//grupos.txt");
dato; Real
for(int j=1; to 3 step; j++)
{
for(int j=1; to 4 step; j++)
{
entrada,dato;
Print dato,"\t";
}

}



ofstream salida;
salida.open("c://datos//grupos.txt");
salida,"42 90 35 46",
salida,"28 76 31 92",

salida.close();
Print "datos almacenados";

Fin





Problema 9.9
1.- inicio
void main()
{
ofstream salida
salida.open("c://datos//prueba.txt")
salida," 10 32 45 66 "
salida," 42 90 35 46 "
salida," 28 76 31 92 “
salida.close()
Print " Datos Almacenados "

}
fin

1.-inicio
void sumaren(int dato[3][4])
{
suma,i,j int
print "Suma de renglones: "
for(i=0 to i<3 step i++)
{
suma=0
for(j=0 to j<4 step j++)
{

suma=suma+dato[i][j]
}
Print "La suma del renglon: "(i+1)" es: ",suma
}
}
void sumacol(int dato[3][4])
{
suma,i,j int
print "Suma de columnas: "
for(j=0 to j<4 step j++)
{
suma=0
for(i=0 to i<3 step i++)
{
suma=suma+dato[i][j]
}
Print "La suma de las Columnas: “(j+1)" es: ",suma
}
}
void imprimir(int dato[3][4])
{
int i,j
ifstream entrada
entrada.open("c://datos//prueba.txt")
for(i=0 to i<3 step i++)
{
for(j=0 to j<4 step j++)
{
entrada>>dato[i][j]
print ,dato[i][j]" ";
}
}
entrada.close()
}
void main ()
{
int dato[3][4]
imprimir(dato)
sumaren(dato)
sumacol(dato)
}

fin




problema 9.10

1.- Inicio
ofstream f1;
f1.open("c://datos//grupos.txt");
f1,5;
f1,96;
f187;
f1,28;
f1,13;
f1,21;
f1,4;
f1,92;
f1,82;
f1,85;
f1,87;
f1,6;
f1,72;
f1,69;
f1,85;
f1,75;
f1,81;
f1,73;


f1.close();
Print "grupos almacenados";
fin


1.-inicio
i; Real
ifstream f2;
f2.open("c://datos//grupos.txt");
n,suma=0,numero; Real

f2,n;
for(int j=1;j<=n;j++)
{
f2,numero;
suma = suma + numero;
}
prom=suma/n; Real
Print "El promedio del grupo",i,":",prom;
f2.close();

Fin






problema 9.11

1.- Inicio
fstream archivo;
archivo.open("c://datos//voltios.txt",ios::out);
archivo,"120.3 122.7 90.3 99.8";
archivo,"95.3 120.5 127.3 120.8";
archivo,"123.2 118.4 123.8 116.6";
archivo,"122.4 95.1 118.2 120.0";
archivo,"123.5 130.2 123.9 124.4";
archivo.close();
Print "archivo voltios almacenadatos";
fin


b)
1.-inicio
fstream arch;
suma,num,prom; Float
arch.open("c://datos//voltios.txt",ios::out);
for(int i=1; to 5 step;i++)
{

for(int j=1; to 4 step; j++)
{
arch,num;
suma = suma+num;
}
prom = suma/4;
Print "el promedio del registro",i,": ",prom;
}
arch.close();
Fin