martes, 10 de diciembre de 2013

Practica No. 8

5.- 
Inicio Funcion guardar_datos
{
ofstream salida
salida.open("C://Datos//empleado.dat",ios::app)
nombre[20],categoria[1],fecha[12],otro = 's' char
numem int
phora Real
do
{
Write "Introduzca el nombre del empleado: "
Read nombre
if(nombre>0)
{
Write "Introduzca la categoria del empleado:  "
Read categoria
Write "Introduzca el numero de empleado:  "
Read numem
Write "Introduzca el pago por hora del empleado:  "
Read phora
Write "Introduzca la fecha de ingreso del empleado:  "
Read fecha
salida, nombre, " ", categoria, " ", numem, " ", phora, " ", fecha
}
else
Write "Nombre de empleado no valido"
Write "Desea hacer otro registro? (s/n)"
Read otro
}
while(otro == 's')
salida.close()
}
Fin función guardar_datos

Inicio Funcion desplegar_datos
{
ifstream salida2
salida2.open("C://Datos//empleado.dat")
data1[10],data2[10],data3[10],data4[10],data5[10] char
a3,a4 Real
do
{
salida2>>data1
salida2>>data2
salida2>>data3
a3=atoi(data3)
salida2>>data4
a4=atoi(data4)
salida2>>data5
Write setw(20), data1, setw(10), data2, setw(15), data3, setw(15), data4, setw(15), data5
}
while(!salida2.eof())
}
Fin funcion desplegar_datos
Inicio programa
{
guardar_datos()

Write " Nombre del empleado  Categoria   Num Empleado   Pago p. hora   Fecha de entrada"
desplegar_datos()

}

Fin programa











7.

Pseudocódigo

Inicio Programa
leer()
desplegar()
Fin Programa

Inicio funcion leer
{
ofstream salida
salida.open("C:/Datos/Nomina.txt",ios::app)
sigue,nombre[30],nss[11] char
horastrab int
tarifa real
do
{
write "Nombre: "
gets(nombre)
write salida,nombre
write "Numero de seguro social: "
gets(nss)
write salida,nss
write "Tarifa por hora: "
read tarifa
write salida,tarifa
write "Horas trabajadas: "
read horastrab
write salida,horastrab
write "Desea agregar otro? s/n: "
read sigue
}
while(sigue=='s')
}
Fin funcion leer

Inicio funcion desplegar
{
ifstream salida2
salida2.open("C://Datos//nomina.txt")
nombre[10],nss[10],tph[10],h[10] char
horas int
tarifa,pago real
write "NSS","Nombre","Pago"
do
{
salida2>>nombre
salida2>>nss
salida2>>tph
tarifa=atoi(tph)
salida2>>h
horas=atoi(h)
pago=tarifa*horas
write nss,nombre,pago
}
while(!salida2.eof())
getch()

}
Fin funcion desplegar




8.
Pseudocodigo

INICIO PROGRAMA
{
void lectura();
write "Numero de auto           Millas recorridas     Galones     Millas por galon"
void escritura();
}
FIN PROGRAMA

INICIO FUNCION LECTURA
{
ofstream salida;
salida.open("C://Datos//autos.txt")
numau,mill,gal int
otro = ‘s’  char
do
{
write "Numero de auto : "
read numau
if(numau>0)
{
write "Introduce las millas recorridas"
read mill
write "Introduce los galones utilizados"
read gal
salida, numau, " ", mil, " ", gal
}
else
write "Numero de auto no valido"
write "Deseas otro registro? (s/n)"
read otro
}
while(otro == 's')
salida.close();
write "Fin de registro"
}
FIN FUNCION LECTURA

INICIO FUNCION ESCRITURA
{
ifstream salida2
salida2.open("C://Datos//autos.txt")
data1[10],data2[10],data3[10]  char
a1,a2,a3,a4,i1=0,i2=0,i3=0,i=0,r  real
salida2>>data1
do
{
a1=atoi(data1)
salida2>>data2
a2=atoi(data2)
salida2>>data3
a3=atoi(data3)
a4=a2/a3
write a1, a2, a3, a4
salida2>>data1
i= i+1
i1= i1 + a2
i2= i2 + a3
i3= i3 + a4
}
while(!salida2.eof());
r=i3/i
write "             REPORTE               "
write "Las millas recorridas totales son :", i1
write "Los galones utilizados totales son :", i2
write "El promedio de las millas por galon es de :”, r
}

FIN FUNCION ESCRITURA


9. 

Pseudocodigo

INICIO PROGRAMA
{
void lectura();
write "Numero de parte      Balance actual”
void escritura();
}
FIN PROGRAMA

INICIO FUNCION LECTURA
{
ofstream salida;
salida.open("C://Datos//reporte.txt")
parte,cinicial ,cvendida,cminima    char
otro = ‘s’  char
do
{
write "Numero de parte : "
read parte
if(parte>0)
{
write "Introduce la cantidad inicial"
read cinicial;
write "Introduce la cantidad vendida"
read cvendida;
write "Introduce la cantidad minima"

read cminima
salida parte, cinicial, cvendida, cminima
}
else
write "Numero de auto no valido"
write "Deseas otro registro? (s/n)"
read otro
}
while(otro == 's')
salida.close();
write "Fin de registro"
}
FIN FUNCION LECTURA

INICIO FUNCION ESCRITURA
{
ifstream salida2
salida2.open("C://Datos//reporte.txt")
data1[10],data2[10],data3[10],data4[10] char
a2,a3,a4,balance  real
i=0  entero
salida2>>data1
do
{
salida2>>data;
a2=atoi(data2)
salida2>>data3
a3=atoi(data3)
salida2>>data4
a4=atoi(data4)
balance = a2-a3;
write setw(7)<<data1<<setw(25)<<balance
salida2>>data1
i=i+a4
}
while(!salida2.eof())

write "La cantidad que es necesaria para tener el inventario en minimo es :"
write i
}
FIN FUNCION ESCRITURA


lunes, 18 de noviembre de 2013

Practica No 7, 14 de Noviembre de 2013

1.- El volumen, v, y el área superficial, s, de un cilindro están dados por las fórmulas v=¶r²L y s=2¶rL, donde r es el radio del cilindro y L es su largo. Usando estas fórmulas, escriba  una  función  llamada cilindro( ) que acepte radio y largo de un cilindro y devuelva su volumen y su área superficial.

Pseudocódigo

Inicio funcion
cilindro(real r, real l)
v,s real
v=3.1416*r*r*l
s=2*3.1416*r*l
Write "El volumen del cilindro es:  ", v
Write "El area del cilindro es:  ", s
Fin de la función

Inicio del programa
radio, largo real
Write "Introduzca el radio del cilindro   "
Read radio
Write "Introduzca el largo del cilindro   "
Read largo
cilindro (radio, largo)
Fin del programa



2.- Escribir la función encontrarMin() que se use para almacenar el valor mínimo de tres números transmitidos. Para entregar el mínimo utilice la variable de referencia min.

Pseudocódigo

Inicio Programa
void encontrarmin(float n1, float n2, float n3, float min)
{
float n1,n2,n3,min
write"Introduzca tres numero: "
read n1
read n2 
read n3
encontrarmin(n1,n2,n3,min)
}
Fin programa

Inicio Función encontrarmin
void encontrarmin (float n1, float n2, float n3, float min)
{
if((n1<=n2)(n1<=n3))
{
min=n1
write"El numero minimo es: ",min
}
else
   if((n2<=n1)(n2<=n3))
   {
   min=n2
   write"El numero minimo es: ",min
   }
   else
   {
   min=n3
   write"El numero minimo es: ", min
   }

}

Fin función encontrarmin



3.- Haga una función para invertir los dígitos de un número entero positivo. Por ejemplo, si se introduce el número 8735, el número desplegado deberá ser 5378.

Pseudocódigo

Inicio funcion invertir( num int, numi int)
{
while (num<>0)
{
numi=num mod 10
num=num/10
write numi
}
}
Fin función invertir
Inicio programa

numi,num int
write "Ingrese un numero entero positivo:"
read num
write "El numero invertido es:"
invertir(num, numi)
}

Fin programa


4.- Escriba una función en C++ llamada entero ( ) que devuelva la pate entera de cualquier número que se transmita a la función. (Sugerencia, asigne el argumenteo transmitido a una variable entera.)

Pseudocódigo

Inicio función entero
entero (n1 real, n2 entero)
{
n2=n1
write "La parte entera es", n2
}
Fin función entero
Inicio programa
{
float n1
int n2
write "Introduce un numero real, se regresara la parte entera"
read n1
entero(n1,n2)
}

Fin programa


5.- Escriba un programa para introducir ocho números enteros en un arreglo llamado temp. Conforme se introduce cada número, sume los números en un total. Después que se hayan introducido cada número, despliegue los números y su promedio.

Pseudocódigo

Inicio
temp[8],i,suma=0,promedio int
write "Introduzca 8 numeros enteros: "
for (i=0 to i<8 step i=i+1)
{
read temp[i]
suma=suma+temp[i]
}
promedio=(suma)/8
write "Los numeros son: "
for (i=0 to i<8 step i=i+1)
{
write temp[i]
}
write "El promedio es: ",promedio

}
Fin


6.-Escriba un programa para leer 10 números de punto flotante y localizar y desplegar los valores máximo y mínimo en el arreglo.

Pseudocódigo

Inicio
minmax[10] real
maximo, minimo real
i=2 int
write"Introduzca el primer numero: "
read minmax[0]
maximo=minmax[0]
minimo=minmax[0]
for(i=2 to i<=10 step i=i+1)
{
write"Numero”,i,": "
read minmax[i]
if(minmax[i]>maximo)
maximo=minmax[i]
if(minmax[i]<minimo)
minimo=minmax[i]
}
write"El maximo es: ",maximo
write"El minimo es: ",minimo
Fin


7.- Escriba un programa para introducir 15 valores enteros y desplegar un listado de los números pares y otro listado de los números impares.

Pseudocódigo

INICIO
numero[15], i  entero

write "Introduce 15 numeros enteros, te dare dos listas, pares e impares"

for(i=0 to i<=14 step i=i+1)
{
write "Numero "(i+1)": "
read numero[i]
}

write "Lista de pares"
for(i=0 to i<=14 step i=i+1)
{
if((numero[i]) mod 2 = 0)
write numero[i]
}

write "Lista de impares"
for(i=0 to i<=14 step i=i+1)
{
if((numero[i]) mod 2 <> 0)
write numero[i]
}
FIN



8.- Escriba un programa para introducir 6 valores enteros positivos y 6 negativos. Despliegue el listado de los positivos y otro listado de los negativos. Al final de cada listado debe imprimir la cantidad de números positivos y negativos.

Pseudocódigo


Inicio
num[12],i,npositivos=0,nnegativos=0 int
Write "Introduzca los 12 valores que desea analizar"
for(i=0 to i<12 step i=i+1)
{
Write "Valor ",(i+1),"  "Read num[i]
}
Write "Numeros positivos",
for(i=0 to i<12 step i=i+1)
{
if (num[i]>0)
{
npositivos=npositivos+1
Write num[i]
}
}
Write "Cantidad de numeros positivos   ", npositivos
Write "Numeros negativos"
for (i=0 to i<12 step i=i+1)
{
if (num[i]<0)
{
nnegativos=nnegativos+1
Write num[i]
}
}
Write "Cantidad de numeros negativos   ", nnegativos

Fin



jueves, 14 de noviembre de 2013

Tarea, Problema 6 Página 341, 12 de noviembre 2013

Escriba una función nombrada calc_años() que tenga un parámetro entero que represente el número total de días desde la fecha 1/1/1900 y parámetros de referencia nombrados año, mes y día. La función es calcular el año, mes y día actual para el número dado de días que se le transmitan. Usando las referencias, la función deberá alterar en forma directa los argumentos respectivos en la función que llama. Para este problema suponga que cada año tiene 365 días y cada mes tiene 30 días.

Pseudocódigo

Inicio funcion calc_anos(diastotal int, ano int, mes int, dia int)
{
ano=ano+(diastotal/365)
mes=mes+((diastotal mod 365)/30)
dia=dia+((diastotal mod 365) mod 30)
}
Fin funcion calcular_anos

Inicio programa
{
diastotal=0,ano=1900,mes=1,dia=1 int
write "Ingrese la cantidad de dias transcurridos desde 1/1/1900: "
read diastotal
calc_anos(diastotal, ano, mes, dia)
write "La fecha actual es: ",dia,"/",mes,"/",ano
}
Fin programa


martes, 12 de noviembre de 2013

Tarea, 8 de Noviembre de 2013

Página 340 problema 2

Se van a usar tres argumentos en numero entero en una llamada función denominada tiempo(). Escriba un encabezado de función adecuado para tiempo(), suponiendo que tiempo(), acepte estas variables como los parámetros de referencia seg, min y horas y no devuelva ningún valor a la función llamada.

Pseudocódigo


Function tiempo (int&, int&, int&)
Inicio función
Tiempo (int& a, int& b, int& c)
{
}
Fin de la funcion
Inicio programa
{
segundos, minutos, horas int
Write "Introduzca los segundos"
Read segundos
Write "Introduzca los minutos"
Read minutos
Write "Introduzca las horas"
Read horas
tiempo (segundos, minutos, horas)
}

Fin del programa