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++
 
 
 



viernes, 16 de noviembre de 2012

Unidad 3. Tarea 1

Cuestionario 1

1. ¿Como se dividen las funciones?
En funciones que son llamadas o invocadas a la acción por su referencia en main() y en funciones que que hacen la llamada, como main().

2. ¿Que son los prototipos de la función?
Es una declaración que se hace en el cual se indica a la función que llama cuantos y que tipos de valores se le entregaran a la función así como si la función entrega o no valor.

3. ¿Donde se pueden colocar los prototipos de función?
Pueden colocarse con las instrucciones de declaración de variables de la función que llama, encima del nombre de la función que llama, o en un archivo de encabezado separado que se incluirá utilizando una instrucción de preprocesamiento #include.

4. ¿Cual es la forma general de las instrucciones de prototipo de función?
Tipo_de_datos_a_devolver nombre_de_función (lista de tipos de datos para los argumentos).

5. ¿En que ayuda el uso de prototipos y como?
Permite la verificación de errores en los tipos de datos por el compilador. Si el prototipo de función no concuerda con los tipos de datos definidos cuando se escribe la función, ocurrirá una advertencia al compilador. El prototipo también asegura de todos los argumentos transmitidos a la función al tipo de datos de argumento declarado cuando se llama la función

6. ¿Como se llama una función?
Los únicos requisitos son usar el nombre de la función y que los datos transmitidos a la función estén encerrados dentro de los paréntesis que siguen al nombre de la funcion usando el mismo orden y el tipo que se declara en el prototipo de función

7. ¿Como se llaman los elementos encerrados dentro delos paréntesis?
Los elementos encerrados dentro de los paréntesis se llaman argumentos de la función llamada.

8. ¿Como funciona la transmisión de valores a una función?
La función no reciben las variables ingresadas en el argumento y no tiene conocimiento de estos nombre de las variables. La función tan solo recibe los valores en estas variables y debe determinar por si misma donde almacenarlos antes de hacer algo mas.

9. ¿Por que las funciones reciben solo una copia de las variables?
En realidad es un procedimiento de seguridad para que una función invocada no cambie de manera inadvertida los datos almacenados en una variable.

10. ¿Que contiene el encabezado de una función?
Contiene el tipo de valor devuelto de la función, su nombre y los nombres y tipos de datos de sus argumentos.

11. ¿Como son llamados los argumentos en el encabezado?
Se conocen como parámetros formales.

12. ¿Cual es la sintaxis utilizada por lo común para una definición de función?

Tipo-de-datos-que-devuelve nombre-de-funcion (lista de parámetros)
{
declaraciones de constantes
declaraciones de variables

otras instrucciones de C++

return valor
}

13. ¿Se permite el anidamiento de funciones en C++?
No, cada función es C++ es una entidad separada e independiente con sus propios parámetros y variables.

14. ¿Cual es la prueba de aislamiento?
Es un método para probar software en el cual se incorpora siempre el código que se esta probando dentro de un ambiente de código funcional.

15. ¿Cual es el uso de argumentos por omisión?
El uso primario de argumentos por omisión es extender la lista de parámetros de funciones existentes sin requerir algún cambio en las listas de argumentos invocados que ya están en su lugar dentro de un programa.

16. ¿Como funcionan los argumentos por omisión?
Se enlistan en el prototipo de función y son transmitidos en forma automática a la función llamada cuando los argumentos correspondientes son omitidos de la llamada función

17. ¿Que es la sobrecarga de función?
Es la capacidad de usar el mismo nombre de función para mas de una función

18. ¿Que requisito tiene la sobrecarga de función?
Es que el compilador debe ser capaz de determinar cual función usar con base en los tipos de datos de los parámetros (no los tipos de datos del valor devuelto, si es que hay alguno).

19. ¿Que es una plantilla de función?
Es una función única completa que sirve como modelo para una familia de funciones.

20. ¿Para que se usa el prefijo de pantalla?
Para informar al compilador que la función que sigue inmediatamente es una plantilla que usa un tipo de datos nombrado T.

 Problemas




martes, 13 de noviembre de 2012

Practica 11

Problema 1

Hacer un programa para hacer la lectura de una matriz 4x5 y desplegar la matriz y la suma de cada renglon.

Pseudocodigo

Inicio
i, j, p , n Entero
arreglo[4][5] Entero
for(p = 0 to 3 step p = p + 1)
{
for(n = 0 to 4 n++)
{
Print "Arreglo ", n + 1, ": "
Read arreglo[p][n]
}
}
for(i = 0 to 3 step i = i + 1)
{
for(j = 0 to 4 step j = j + 1)
{
Print arreglo[i][j], " | "
}
Print " = ", arreglo[i][0] + arreglo[i][1] + arreglo[i][2] + arreglo[i][3] + arreglo[i][4]
}
Fin

Codigo C++




Problema 2

Hacer el problema 1 pero agregar una columna para almacenar la suma de cada renglon.

Pseudocodigo

Inicio
 i, j, p , n Entero
arreglo[4][6] Entero
for(p = 0 to 3 p++)
{
for(n = 0 to 4 n++)
{
Print "Arreglo ", n + 1, ": "
Read arreglo[p][n]
arreglo[p][5] = arreglo[p][5] + arreglo[p][n]
}
}
for(i = 0 to 3 step i = i + 1)
{
for(j = 0 to 4 step j = j + 1)
{
Print arreglo[i][j], " | "
}
Print "= ", arreglo[i][5], ,
}
Fin

Codigo C++



Problema 3

Utilize la misma matriz del problema 1 y desplegar la suma de cada columna.

Pseudocodigo

i, j, p , n Entero
arreglo[4][5] Entero
for(p = 0 to 3 p++)
{
for(n = 0 to 4 n++)
{
Print "Arreglo ", n + 1, ": "
Read arreglo[p][n]
}
}
for(i = 0 to 3 step i = i + 1)
{
for(j = 0 to 4 step j = j + 1)
{
Print arreglo[i][j], " | "
}
}
for(i = 0 to 4 step i = i + 1)
{
Print setw(3), arreglo[0][i] + arreglo[1][i]
+ arreglo[2][i] + arreglo[3][i], " | "
}
Print " - suma de col."
Fin

C++




Problema 4. 

 Haga el problema 3 pero utilizando un renglon para almacenar la suma de cada columna. Desplegar toda la matriz.

Pseudocodigo 
Inicio
i, j, p , n Entero
arreglo[5][5] Entero
for(p = 0 to 4 step p = p + 1)
{
for(n = 0 to 3 step n = n + 1)
{
Print "Arreglo ", n + 1, ": "
Read arreglo[n][p]
arreglo[4][p] = arreglo[4][p] + arreglo[n][p]
}
}
for(i = 0 to 4 step i = i + 1)
{
if(i = = 4)
{
Print newline
}
for(j = 0 to 4 step j = j + 1)
{
Print arreglo[i][j], " | "
}
}
Fin

Codigo C++




Problema 5

 Hacer un programa para generar numeros aleatorios para almacenar en una matriz de 6x7 y agregar un renglon y una columna mas, para almecenar la suma de cada renglon y de cada columna. Desplegar toda la matriz y el renglon con mayor valor de la suma de columnas y la columna con valor mayor de la suma de renglones.

Pseudocodigo

Inicio
i, j, x, y, mayorR, mayorC Entero
time_t seconds
time(&seconds)
srand((unsigned int) seconds)
int arreglo[7][8] = {0}
for(i = 0 to 5 step i = i + 1)
{
for(j = 0 to 6 step j = j + 1)
{
arreglo[i][j] = random
}
}
for(i = 0 to 5 step i = i + 1)
{
for(j = 0 to 6 step j = j + 1)
{
Print arreglo[i][j], "|"
arreglo[i][7] = arreglo[i][7] + arreglo[i][j]
}
Print " = ", arreglo[i][7]
}
for(i = 0 to 6 step i = i + 1)
{
for(j = 0 j <=5 step j = j + 1)
{
arreglo[6][i] = arreglo[6][i] + arreglo[j][i]
}
Print setw(7), arreglo[6][i], "|"
}
mayorR = arreglo[0][7]
for(i = 0 to 5 step i = i + 1)
{
if(mayorR < arreglo[i][7])
{
mayorR = arreglo[i][7]
}
}
mayorC = arreglo[6][0]
for(i = 0 to 5 step i = i + 1)
{
if(mayorC < arreglo[6][i])
{
mayorC = arreglo[6][i]
}
}
Print " El mayor num. de los renglones es ", mayorR
Print " El mayor num. de las columnas es " , mayorC
Fin


C++




Problema 6

Utilizando la matriz de 8x8 con valores aleatorios hacer la traspuesta es decir intercambiar las columnas por los renglones.

Pseudocodigo

Inicio
srand(time(0))
matriz[8][8], r, c Entero
Print "matriz: \n"
for(r = 0 r < 8 r = r + 1)
{
for(c = 0 r < 8 c = c + 1)
{
matriz[r][c] = random % 100
Print matriz[r][c], "\t"
}
Print "\n"
}
Print "\n", "matriz traspuesta: ", "\n"
for(c = 0 c < 8 c = c + 1)
{
for(r = 0 r < 8 r = r + 1)
{
Print matriz[r][c], "\t"
}
Print "\n"
}
Fin

Codigo C++




Problema 7

Utilizando la matriz de 8x8 con valores aleatorios imprimir la suma de la diagonal principal e inversa.

Pseudocodigo

Inicio
time_t seconds
time(&seconds)
srand((unsigned int) seconds)
int arreglo[8][8], i, j, step n = 0, DiagSup = 0, DiagInf = 0
for(i = 0 to 7 step i = i + 1)
{
for(j = 0 to 7 step j = j + 1)
{
arreglo[i][j] = random
}
}
for(i = 0 to 7 step i = i + 1)
{
for(j = 0 to 7 step j = j + 1)
{
Print arreglo[i][j], "|"
}
}
for(i = 0 to 7 step i = i + 1)
{
DiagSup = DiagSup + arreglo[i][7-n]
n = n + 1
}
step n = 0
for(i = 0 to 7 step i = i + 1)
{
DiagInf = DiagInf + arreglo[i][0+n]
n = n + 1
}
Print , , "La suma diagonal superior es ", DiagSup
Print , , "La suma diagonal inferior es ", DiagInf
Fin

Codigo C++




Problema 8

Haga una matriz de 8x8 en forma aleatoria para encontrar el dato mayor y minimo. Desplegar la matriz, dato mayor y el dato menor.
 
Pseudocodigo

Inicio
i, j arreglo[8][8], mayor, menor Entero
for(i = 0 to 7 step i = i + 1)
{
for(j = 0 to 7 step j = j + 1)
{
arreglo[i][j] = random
}
}
for(i = 0 to 7 step i = i + 1)
{
for(j = 0 to 7 step j = j + 1)
{
Print setw(6), arreglo[i][j], "|"
}Print , }menor = arreglo[0][0]mayor = arreglo[0][0]
for(i = 0 to 7 step i = i + 1)
{
for(j = 0 to 7 step j = j + 1)
{
if(arreglo[i][j] < menor)
{
menor = arreglo[i][j]
}
if(arreglo[i][j] > mayor)
{
mayor = arreglo[i][j]
}}}
Print , , "El dato mayor es ", mayor
Print , , "El dato menor es ", menor
Fin

Codigo C++