martes, 20 de noviembre de 2012

Practica 12

Problema 1

Pseudocodigo:

inicio funcion imprimeCaracter(char ch,int n)
i int
for(i=1 to n step i=i+1)
{
print ch
}
print "\n"

fin funcion imprimeCaracter

inicio progama principal
caracter char
x int
print "introduce el caracter a imprimir= "
read caracter
print "\n","introduce la cantidad de caracteres= "
read x
imprimeCaracter(caracter,x)
 a,b int
print "\n","introduce dos valores enteros= "
read a,b
suma=a+b int
print "\n","El resultado de la suma esta representado por el caracter * \n"
imprimeCaracter('*',suma)

fin

Lenguaje C++


Problema 2

Pseudocodigo:

inicio funcion imprimeAsteriscos()
i int
for(i=1 to 30 step i=i+1)
 {
 print "*"
 }
print "\n","\n"
fin funcion imprimeAsterisco


inicio funcion mayor(int x, int y)
 if(x>y)
 {
 return x
 }
 else
 {
 return y
 }
fin funcion mayor


inicio funcion menor(int x, int y)
 if(x<y)
 {
 return x
 }
 else
 {
 return y
 }

fin funcion menor

inicio programa principal
a,b int
print "introduce dos valores enteros: "
read a,b
imprimeAsteriscos()
print "El dato mayor es: ",mayor(a,b),"\n","\n"
 imprimeAsteriscos()
print "El dato menor es: ",menor(a,b),"\n","\n"
imprimeAsteriscos()

fin

Lenguaje C++

Problema 3

Pseudocodigo:

inicio funcion lecturaDatos(int a[10])
i int
 for(i=0 to <10 step i=i+1)
 {
 print "numero[",i,"]= "
 read a[i]
 }

fin funcion lecturaDatos

inicio funcion desplegarDatos(int a[10])
i int
print "listado de los 10 valores enteros \n"
  for(i=0 to <10 step i=i+1)
 {
 print a[i],"\n"
 }
fin funcion desplegarDatos


inicio funcion sumaValores(int a[10])
i,suma=0 int
 for(i=0 to <10 step i=i+1)
 {
 suma=suma+a[i]
 }
return suma

fin funcion sumaValores
inicio funcion mayorValores(int a[10])
mayor=a[0] int
pos=0 int
i int
 for(i=0 to <10 step i=i+1)
 {
  if(a[i]>mayor)
  {
  mayor=a[i]
  pos=i
  }
 }
print "Dato mayor= ",mayor
print "posicion del dato= ",pos
fin funcionmayorValores


Inicio programa principal
int numeros[10]
lecturaDatos(numeros)
print "\n","\n"
desplegarDatos(numeros)
print "La suma total es: ",sumaValores(numeros)
mayorValores(numeros)
fin


Lenguaje C++

Problema 4 a) Valores enteros

Pseudocodigo:

inicio funcion lecturaDatos(T a[10])
i int
 for(i=0 to <10 step i=i+1)
 {
 print "numero[",i,"]= "
 read a[i]
 }
fin funcion lecturaDatos

inicio funcion desplegarDatos(T a[10])
i int
print "listado de 10 valores enteros \n"
 for(i=0 to <10 step i=i+1)
 {
 print,a[i]
 }
fin funcion desplegarDatos


inicio funcion sumaValores(T a[10])
i int
suma=0 T
 for(i=0 to <10 step i=i+1)
 {
 suma=suma+a[i]
 }
return suma
fin funcion sumaValores

inicio funcion mayorValores(T a[10])
mayor=a[0] T
pos=0 int
i int
 for(i=0 to <10 step i=i+1)
 {
  if(a[i]>mayor)
  {
  mayor=a[i]
  pos=i
  }
 }
print "Dato mayor= ",mayor
print "posicion del dato= ",pos
fin funcion mayorValores


inicio programa principal
numeros[10] int
lecturaDatos(numeros)
print "\n","\n"
desplegarDatos(numeros)
print "La suma total es: ",sumaValores(numeros)
mayorValores(numeros)

fin

Lenguaje C++

Problema 4 b) Valores flotantes

Pseudocodigo:

inicio funcion lecturaDatos(T a[10])
i int
for(i=0 to <10 step i=i+1)
{
print "numero[",i,"]= "
read a[i]
}
fin funcion lecturaDatos

inicio funcion desplegarDatos(T a[10])
i int
print "listado de 10 valores enteros \n"
for(i=0 to <10 step i=i+1)
{
print,a[i]
}
fin funcion desplegarDatos


inicio funcion sumaValores(T a[10])
i int
suma=0 T
for(i=0 to <10 step i=i+1)
{
suma=suma+a[i]
}
return suma
fin funcion sumaValores

inicio funcion mayorValores(T a[10])
mayor=a[0] T
pos=0 int
i int
for(i=0 to <10 step i=i+1)
{
if(a[i]>mayor)
{
mayor=a[i]
pos=i
}
}
print "Dato mayor= ",mayor
print "posicion del dato= ",pos
fin funcion mayorValores


inicio programa principal
numeros[10] real
lecturaDatos(numeros)
print "\n","\n"
desplegarDatos(numeros)
print "La suma total es: ",sumaValores(numeros)
mayorValores(numeros)

fin

Lenguaje C++

Problema 4 c) Valores doble presicion

Pseudocodigo:

inicio funcion lecturaDatos(T a[10])
i int
for(i=0 to <10 step i=i+1)
{
print "numero[",i,"]= "
read a[i]
}
fin funcion lecturaDatos

inicio funcion desplegarDatos(T a[10])
i int
print "listado de 10 valores enteros \n"
for(i=0 to <10 step i=i+1)
{
print,a[i]
}
fin funcion desplegarDatos


inicio funcion sumaValores(T a[10])
i int
suma=0 T
for(i=0 to <10 step i=i+1)
{
suma=suma+a[i]
}
return suma
fin funcion sumaValores

inicio funcion mayorValores(T a[10])
mayor=a[0] T
pos=0 int
i int
for(i=0 to <10 step i=i+1)
{
if(a[i]>mayor)
{
mayor=a[i]
pos=i
}
}
print "Dato mayor= ",mayor
print "posicion del dato= ",pos
fin funcion mayorValores


inicio programa principal
numeros[10] double
lecturaDatos(numeros)
print "\n","\n"
desplegarDatos(numeros)
print "La suma total es: ",sumaValores(numeros)
mayorValores(numeros)

fin

Lenguaje C++

Problema 5

Pseudocodigo:

inicio funcion LecturaDatos(T m[5][5])
r,c int
for(r=0 to <5 step r=r+1)
{
 for(c=0 to <5 step c=c+1)
 {
  print "matriz[",r,"]","[",c,"]= ";
  read m[r][c]
  }
}
fin funcion LecturaDatos

inicio funcion desplegarDatos(T m[5][5])
r,c int
print "\n","Listado de la matriz"
for(r=0 to <5 step r=r+1)
{
 for(c=0 to <5 step c=c+1)
 {
  print m[r][c],"\t"
  }
 print "\n"
}
fin funcion desplegarDatos

inicio funcion sumaRenglones(T m[5][5], T sr[5])
r,c int
suma T
for(r=0 to <5 step r=r+1)
{
 suma=0
 for(c=0 to <5 step c=c+1)
 {
 suma=suma+m[r][c]
 }
 sr[r]=suma
}
fin funcion sumaRenglones

inicio funcion sumaColumnas(T m[5][5], T sc[5])
r,c int
suma T
for(c=0 to <5 step c=c+1)
{
 suma=0
 for(r=0 to <5 step r=r+1)
 {
 suma=suma+m[r][c]
 }
 sc[c]=suma
}
fin funcion sumaColumnas

inicio funcion desplegarSumaMayorRenglones(T sr[5])
i int
mayor=sr[0] T
pos=0 int
print "\n","listado de suma de renglones "
for(i=0 to <5 step i=i+1)
{
print "renglon ",i," = ",sr[i]
  if(sr[i]>mayor)
 {
 mayor=sr[i]
 pos=i
 }
}
print "El renglon ",pos," tiene la suma mayor: ",mayor
fin funcion desplegarSumaMayorRenglones

inicio funcion desplegarSumaMayorColumnas(T sc[5])
i int
mayor=sc[0] T
pos=0 int
print "\n","listado de suma de renglones "
for(i=0 to <5 step i=i+1)
{
print "columna ",i," = ",sc[i]
  if(sc[i]>mayor)
 {
 mayor=sc[i]
 pos=i;
 }
}
print "La columna ",pos," tiene la suma mayor: ",mayor
fin funcion desplegarSumaMayorColumnas


Inicio programa principal
a[5][5],renglones[5],columnas[5] int
 LecturaDatos(a)
 desplegarDatos(a)
 sumaRenglones(a,renglones)
 sumaColumnas(a,columnas)
 desplegarSumaMayorRenglones(renglones)
 desplegarSumaMayorColumnas(columnas)

fin

Lenguaje C++













Problema 6
 
Pseudocodigo:
 
registro empleado
{
id int
horas int
sueldo int
nombre[30] char
tarifaPago real
 }
empleado emp[10]
 
inicio funcion void leerDatosEmpleado(int n)
{
i int
 for(i=0 to <n step i=i+1)
 {
 print "\n","Numero de empleado= "
 read emp[i].id
 print "\n","Nombre del empleado= "
 read emp[i].nombre
 print "\n","Horas trabajadas = "
 read emp[i].horas
 print "\n","Pago por hora= "
 read emp[i].tarifaPago
 emp[i].sueldo=emp[i].horas*emp[i].tarifaPago
 }
}
final funcion leerDatosEmpleado
 
inicio funcion void desplegarDatosEmpleado(int n)
{
i int
 print "\n","No. empleado   Nombre    Horas trabajadas   Pago por hora   Sueldo"
 for(i=0 to <n step i=i+1)
 {
 print emp[i].id,"   ",emp[i].nombre,"   ",emp[i].horas,"   ",emp[i].tarifaPago,"   ",emp[i].sueldo
 }
}
fin funcion desplegarDatos
 
inicio programa
x int
print "cuantos empleados= "
read x
leerDatosEmpleado(x)
desplegarDatosEmpleado(x)
fin
 
Lenguaje C++
 
Problema 7
 
Pseudocodigo:
 
registro alumno
{
noControl[9] char
nombre[30] char
calf[4] int
promedio real
}
alumno a[10]
 
inicio funcion void leerDatosAlumno(int n)
{
i,j,suma int
 for(i=0 to <n step i=i+1)
 {
 suma=0
 print "\n","numero de control= "
 read a[i].noControl
 print "\n","nombre alumno= "
 read a[i].nombre
  for(j=0 to <4 step j=j+1)
  {
  print "calificacion ",(j+1),"= "
  read a[i].calf[j]
  suma=suma+a[i].calf[j]
  }
  a[i].promedio=suma/4.0
 }
}
fin funcion leerDatosAlumno
 
inicio funcion void desplegarDatosAlumno(int n)
{
i,j int
print "\n","No.control           nombre        c1   c2   c3   c4    promedio"
 for(i=0 to <n step i=i+1)
 {
 print a[i].noControl,"   ",a[i].nombre,"\t"
  for(j=0 to <4 step j=j+1)
  {
  print "   ",a[i].calf[j]
  }
 print "\t",a[i].promedio
  }
}
fin funcion desplegarDatosAlumno
 
inicio programa
x int
print "numero de alumnos a registrar= "
read x
leerDatosAlumno(x)
desplegarDatosAlumno(x)
fin
 
Lenguaje C++
 
Problema 8
 
Pseudocodigo:
 
registro empleado
{
id int
nombre[30] char
horas int
sueldo int
tarifaPago real
}
empleado emp[10]
i=0 int
 
inicio funcion empleado leerDatosEmpleado()
{
empleado e1
print "\n","numero de empleado= "
read e1.id
print "nombre empleado= "
read e1.nombre
print "horas trabajada= "
read e1.horas
print "pago por hora= "
read e1.tarifaPago
e1.sueldo=e1.tarifaPago*e1.horas
return e1
}
fin funcion empleado leerDatosEmpleado
 
inicio funcion void almacenaRegistro(empleado e)
{
 if(i==10)
 {
 print "no se puede registrar trabajador \n\n"
 }
 else
 {
 emp[i]=e
 i=i+1
 }
}
fin funcion almacenaRegistro

inicio funcion void desplegarDatosEmpleado (int n)
{
i int
print "\n","No. empleado   Nombre    Horas trabajadas   Pago por hora   Sueldo"
 for(i=0 to <n step i++)
 {
 print "emp[i].id,"   ",emp[i].nombre,"   ",emp[i].horas,"   ",emp[i].tarifaPago,"   ",emp[i].sueldo
 }
}
fin funcion desplegarDatosEmpleado
 
inicio programa
x,v int
empleado e2
print "cuantos empleados= "
read x
 for(v=1 to <=x step v=v+1)
 {
 e2=leerDatosEmpleado()
 almacenaRegistro(e2)
 }
desplegarDatosEmpleado(x)
fin
 
Lenguaje C++
 
Problema 9
 
Pseudocodigo:
 
registro producto
{
noProd int
descrip[30] char
precio real
cantidad int
}
producto produc
producto p[5]
 
inicio funcion producto leerProducto()
{
producto x
print "numero de producto= "
read x.noProd
print "descripcion producto= "
read x.descrip
print "precio= "
read x.precio
print cantidad= "
raed x.cantidad
return x
}
fin funcion producto leerProducto
 
inicio funcion void almacenaProducto(producto p1,int &i)
{
 if(i == 5)
 {
  print "no se puede registrar mas producto \n"
 }
 else
 {
  p[i]=p1
 }
}
fin funcion almacenaProducto
 
inicio funcion reduceCantidadProd(int cantidadProd,int np,producto totalprod[5],int &ind)
{
j=0 int
bandera=0 int
 do
 {
  if(p[j].noProd == np)
  {
   p[j].cantidad= p[j].cantidad - cantidadProd
   totalprod[ind].noProd = np
   totalprod[ind].cantidad=cantidadProd
   totalprod[ind].precio=p[j].precio
   strcpy(totalprod[ind].descrip,p[j].descrip)
   bandera = 1
   ind=ind+1
 }
 j=j+1
 }
 while(j < 5 and bandera == 0)
return bandera
}
fin funcion reduceCantidadaProd
 
inicio funcion void desplegarListaProd()
{
j int
print "Listado de productos \n\n"
print "No. producto      Descripcion      Precio       Cantidad\n\n"
 for(j = 0 to 4 step  j=j+1)
 {
  print p[j].noProd,"   ",p[j].descrip,"   ",p[j].precio,"   ",p[j].cantidad
 }
}
fin funcion desplegarListaProd
 
inicio funcion void desplegarFactura(producto a[5], int h)
{
total=0,subtotal=0,suma=0 real
c int
print "\n","Factura \n\n"
print "No. producto      Descripcion      Precio       Cantidad      Subtotal"
 for(c=0 to < h step c=c+1)
 {
  print a[c].noProd,"   ",a[c].descrip,"   ",a[c].precio,"   ",a[c].cantidad,"    "
  subtotal=a[c].precio*a[c].cantidad
  suma=suma+subtotal
  print subtotal
 }
print ,"   ","subtotal= ",suma
total=suma*1.11
print ,"   ","iva= ",(suma*0.11)
print ,"   ","total= ",total
}
fin funcion desplegarFactura
 
inicio programa
conta,j=0,numProd,cantidad,ban=0,ind=0 int
producto productos[5]
sigue char
producto produc
 for(conta=0 to 4 step conta=conta+1)
 {
  produc = leerProducto()
  almacenaProducto(produc,j)
  j=j+1
 }
 do
 {
  clrscr()
  print "\n\n"
  desplegarListaProd()
  print "\n\n","numero de producto: "
  read numProd
  print "cantidad de producto: "
  raed cantidad
  ban = reduceCantidadProd(cantidad,numProd,productos,ind)
   if(ban == 0)
   {
    print "no existe producto \n\n"
   }
  print "desea otro producto (s/n)= "
  read sigue
 }
 while(sigue=='s' or sigue=='S')
clrscr()
print "\n\n"
desplegarListaProd()
desplegarFactura(productos,ind)
fin

Lenguaje C++
 
 
 



No hay comentarios:

Publicar un comentario