Вы находитесь на странице: 1из 8

Ing.

Fernando Romero

Ejercicios Propuestos y Resueltos en SLE – PARTE 2


1. Generar aleatoriamente una lista de 10 elementos con valores del 1 al 50. Crear su
inversa, es decir, que el primero de una esté el décimo en la otra, el segundo en el
noveno, etc. Hallar la suma de los términos correspondientes de cada lista e imprimirlas
según el formato:

LISTA A LISTA B Suma


--- --- ---
--- --- ---
--- --- ----

2. Introducir un numero en un vector dinámico. Informar si el numero ingresado es capicúa


o no.

3. Una empresa almacena en una lista de N elementos los nombres de sus empleados. En
otra lista paralela guarda el número de horas trabajadas por cada empleado. Si la hora
se paga a una cantidad determinada. Imprimir la cantidad a cobrar por cada trabajador.

4. Generar un vector de 12 elementos con números aleatorios (80). Utilizar el algoritmo


de ordenación burbuja e imprimir el vector ordenado.

5. Generar un vector numérico de 20 elementos con números aleatorios (100). Ingresar un


valor por teclado y verificar si el mismo se encuentra dentro del vector.

6. Generar una Matriz M[5,5] generar los elementos con números aleatorios. Imprimirla.
Sumar los elementos de las columnas impares. Imprimir los elementos M[2,3] y M[3,2].

7. Generar una Matriz M[5,5] de tal forma que sus filas pares sean múltiplos de 2 y las
impares sean múltiplos de 3. Imprimirla. Hallar la suma de todos sus elementos.
Imprimir los elementos de la diagonal principal. Formato de visualización de los
elementos.

8. Generar una Matriz M[4,5] cuyos elementos sean aleatorios entre 1 y 100. A partir de
ella crear su transpuesta, es decir N[5,4]. Imprimir ambas matrices.

9. Una empresa tiene 100 obreros repartidos en 4 categorías profesionales. La empresa


dispone de una matriz de 100x31; cada posición contiene el número de horas
extraordinarias trabajadas por cada obrero cada día. También se dispone de dos listas
lineales, una de 100 elementos con la categoría de cada trabajador y otra de 4 con el
precio de las horas extraordinarias por categoría.
Calcular:
▪ Cuanto ha cobrado cada obrero en ese mes por horas
extraordinarias.
▪ El total pagado por dichas horas.

10. Cargar en una tabla las notas de los alumnos de un colegio en función de las necesidades
del mismo. en cuanto al número de cursos y alumnos por cursos.
Ing. Fernando Romero
var
v, v_inverso: vector[10] numerico
i,j, suma: numerico
inicio
cls()
desde i=1 hasta 10{
v[i] = random(50) + 1
}
imprimir("\n El vector original \n")
imprimir("----------------------")
desde i=1 hasta 10{
imprimir(" ",v[i])
}
j=10
desde i=1 hasta 10{

1 }
v_inverso[j] = v[i]
j=j-1

imprimir("\n El vector inverso \n")


imprimir("----------------------")
desde j=1 hasta 10{
imprimir(" ",v_inverso[j])
}
imprimir("\n La suma de los vectores \n")
imprimir("----------------------")
j=1
desde i=1 hasta 10{
suma = v[i] + v_inverso[j]
imprimir(" ",suma)
j=j+1
}
fin

var
v, v_aux: vector[*] numerico
i,j,numero, sw: numerico
inicio
cls()
numero=0
mientras(numero <= 1){
imprimir("\n Favor Ingrese la Longitud del Vector : ")
leer(numero)
}

2
dim(v,numero)
dim(v_aux,numero)
desde i=1 hasta numero{
imprimir("Favor rellene el vector digito por digito (0-9): ")
leer(v[i])
}
desde i=1 hasta numero{
imprimir(" ",v[i])
}
j=numero
desde i=1 hasta numero{
v_aux[j] = v[i]
j=j-1
Ing. Fernando Romero
}
j=1
desde i=1 hasta numero{
si(v[i] == v_aux[j]){
sw = 1
sino
sw = 0
salir
}
j = j+1
}
si(sw == 1){
imprimir("\n El numero del Vector es CAPICUA")
sino
imprimir("\n El numero del Vector NO es capicua")
}
fin

var
n_e: vector[*] cadena
h_t: vector[*] numerico
i,cobro,n: numerico

const
hora = 10500

inicio
cls()
mientras(n<1){
imprimir("\nFavor ingrese la cantidad de Empleados que tiene la Empresa :
")
leer(n)
}

3
dim(n_e,n)
dim(h_t,n)
desde i=1 hasta n{
imprimir("\nFavor Ingrese el Nombre del Empleado : ")
leer(n_e[i])
}
desde i=1 hasta n{
imprimir("\nFavor Ingrese el número de Horas Trabajadas por el Empleado
: ")
leer(h_t[i])
}
imprimir("\n El Vector Resultante de Empleados y Cobro por Horas Trabajadas")
imprimir("\n--------------------------------------------------------------")
desde i=1 hasta n{
imprimir("\n", n_e[i])
imprimir("\t\t\t\t", h_t[i]*hora)
}
fin
Ing. Fernando Romero
var
v: vector[12] numerico
i,j,aux: numerico
inicio
cls()
desde i=1 hasta 12{
v[i]= random(80) + 1
}
imprimir("\n VECTOR ORIGINAL \n")
imprimir("------------------\n")
desde i=1 hasta 12{
imprimir(" ",v[i])
}

4 desde i=1 hasta 11{


desde j=i+1 hasta 12{
si(v[i] > v[j]){
aux = v[i]
v[i] = v[j]
v[j] = aux
}
}
}
imprimir("\n VECTOR ORDENADO \n")
imprimir("------------------\n")
desde i=1 hasta 12{
imprimir(" ",v[i])
}
fin

var
v: vector[20] numerico
i,nbuscar,sw: numerico
inicio
cls()
desde i=1 hasta 20{
v[i]= random(100) + 1
}
imprimir("\n VECTOR ORIGINAL \n")
imprimir("------------------\n")
desde i=1 hasta 12{
imprimir(" ",v[i])

5
}
imprimir("\n Favor ingrese el numero a buscar en el VECTOR : ")
leer(nbuscar)
desde i=1 hasta 20{
si(v[i] == nbuscar){
sw = 1
salir
}
}
si(sw == 1){
imprimir("\n El numero ",nbuscar," Existe! ")
sino
imprimir("\n El numero ",nbuscar," NO existe! ")
}
fin
Ing. Fernando Romero
var
M: matriz[5,5] numerico
i,j,s_cimpares: numerico
inicio
cls()
desde i=1 hasta 5{
desde j=1 hasta 5{
M[i,j] = random(50)+1
}
}
imprimir("\nMatriz Númerica de 25 Elementos")
imprimir("\n-------------------------------\n")

6 desde i=1 hasta 5{


desde j=1 hasta 5{
imprimir("\t", M[i,j])
si(j%2<>0){
s_cimpares = s_cimpares + M[i,j]
}
}
imprimir("\n")
}
imprimir("\n\nLa Suma de Elementos de las Columnas Impares de la
Matriz es :",s_cimpares)
imprimir("\nEl Elemento que se encuentra en la M[2,3] es : ",M[2,3])
imprimir("\nEl Elemento que se encuentra en la M[3,2] es : ",M[3,2])
fin

var
M: matriz [5,5] numerico
i,j,suma, dos, tres: numerico
inicio
cls()
desde i=1 hasta 5{
desde j=1 hasta 5{
si(i%2==0){
dos = dos +2
M[i,j] = dos
sino
tres = tres + 3
M[i,j] = tres

7
}
suma = suma + M[i,j]
}
}
imprimir("\nLa Matriz Generada")
imprimir("\n------------------\n")
desde i=1 hasta 5{
desde j=1 hasta 5{
imprimir("\t",M[i,j])
}
imprimir("\n")
}
imprimir("\n\nLa Diagonal Secundaria de la Matriz")
imprimir("\n----------------------------------\n")
desde i=1 hasta 5{
desde j=1 hasta 5{
Ing. Fernando Romero
si(i==j){
imprimir("\t",M[i,j])
}
}
}
imprimir("\n\nLa suma de todos los elementos de la Matriz es : ", suma)
fin

var
M: matriz[4,5] numerico
N: matriz[5,4] numerico
i,j: numerico
inicio
cls()
desde i=1 hasta 4{
desde j=1 hasta 5{
M[i,j] = random(100)+1
N[j,i] = M[i,j]
}
}
imprimir("\n\nLa Matriz M[4,5] Generada")

8
imprimir("\n-------------------------\n")
desde i=1 hasta 4{
desde j=1 hasta 5{
imprimir("\t",M[i,j])
}
imprimir("\n")
}
imprimir("\n\nLa Matriz N[5,4] Transpuesta de M[4,5]")
imprimir("\n---------------------------------------\n")
desde i=1 hasta 5{
desde j=1 hasta 4{
imprimir("\t",N[i,j])
}
imprimir("\n")
}
fin

var
HORAS: matriz[100,31] numerico
CATEGORIA: vector[100] numerico
PRECIO: vector[4] numerico
h,total,i,j,k: numerico
inicio
cls()

9
desde k=1 hasta 4{
PRECIO[k] = random(50)+1
}
k=1
desde i=1 hasta 100{
CATEGORIA[i] = random(4)+1
}
desde i=1 hasta 100{
desde j=1 hasta 31{
HORAS[i,j] =random(3)+1
Ing. Fernando Romero
h = h + HORAS[i,j]
}
imprimir("\t",h*PRECIO[k]*CATEGORIA[i])
total = total + h*PRECIO[k]*CATEGORIA[i]
k=k+1
si(k>=4){
k=1
}
}
imprimir("\n\nEl total que debe pagar la empresa es de Gs. : ", total)
fin

var
COLEGIO: matriz[*,*] numerico
i,j,N,M: numerico
inicio
cls()
imprimir("\nFavor ingrese el número de Cursos : ")
leer(N)
imprimir("\nFavor ingrese la cantidad de Alumnos : ")
leer(M)
dim(COLEGIO,N,M)
desde i=1 hasta N{
imprimir("\nCurso: ",i)

10
desde j=1 hasta M{
imprimir("\tAlumno:",j)
COLEGIO[i,j] =random(5)+1
imprimir("Nota: ",COLEGIO[i,j])
}
}
imprimir("\n\nLa Matriz del Colegio")
imprimir("\n---------------------\n")
desde i=1 hasta N{
desde j=1 hasta M{
imprimir("\t",COLEGIO[i,j])
}
imprimir("\n")
}
fin
Ing. Fernando Romero

Ejercicios Propuestos

1. Generar una matriz M[6,6], cuyos elementos sean múltiplos de 3. Imprimir la tabla y los
elementos de la fila media.

2. Construir una matriz M[5,5] de tal forma que los elementos de la diagonal principal sean
0 y el resto de elementos 1.

3. Generar una matriz de 12x31 donde las filas representen los meses del año y las
columnas las temperaturas medias de cada día.

Calcular:

1. La temperatura media de cada mes


2. El día más caluroso y el más frio de cada mes
3. El día más caluroso del año.

Вам также может понравиться