0% encontró este documento útil (0 votos)
14 vistas8 páginas

Intercambiar Filas en Matriz de Datos

Cargado por

yassercopa7
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
14 vistas8 páginas

Intercambiar Filas en Matriz de Datos

Cargado por

yassercopa7
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Exámenes 2P

jueves, diciembre 14, 2023 4:28 PM

2P 2023 -1

Crear un programa que permita al usuario seleccionar y cambiar el orden de dos filas específicas en un conjunto de datos.

Sea

Se busca intercambiar

Por ejemplo

Algoritmo CambiarOrdenFilas
// Definir variables
Definir N, M, fila1, fila2, temp Como Entero

// Ingresar el número de filas y columnas


Escribir "Ingrese el número de filas (N): "
Leer N
Escribir "Ingrese el número de columnas (M): "
Leer M

// Definir la matriz
Dimension Matriz[N, M]

// Ingresar elementos en la matriz


Para i <- 1 Hasta N Hacer
Para j <- 1 Hasta M Hacer
Escribir "Ingrese el elemento en la posición [", i, ",", j, "]: "
Leer Matriz[i, j]
FinPara
FinPara

// Mostrar la matriz original


Escribir "Matriz original:"
Para i <- 1 Hasta N Hacer
Para j <- 1 Hasta M Hacer
Escribir SinSaltar Matriz[i, j], " "
FinPara
Escribir ""
FinPara

// Seleccionar las filas a intercambiar


Escribir "Ingrese el número de la primera fila a intercambiar: "
Leer fila1
Escribir "Ingrese el número de la segunda fila a intercambiar: "
Leer fila2

// Verificar que las filas ingresadas sean válidas


Si fila1 < 1 O fila1 > N O fila2 < 1 O fila2 > N Entonces
Escribir "Error: Filas ingresadas no válidas."
Sino
// Intercambiar las filas
Para j <- 1 Hasta M Hacer
temp <- Matriz[fila1, j]
Matriz[fila1, j] <- Matriz[fila2, j]
Matriz[fila2, j] <- temp
FinPara

// Mostrar la matriz después del intercambio de filas


Escribir "Matriz después del intercambio de filas:"
Para i <- 1 Hasta N Hacer
Para j <- 1 Hasta M Hacer
Escribir SinSaltar Matriz[i, j], " "
FinPara
Escribir ""
FinPara
FinSi
FinAlgoritmo

Inicio

Introducción a la computación página 1


"Ingrese el número de
filas y columnas"
N, M

"Ingresar el numero de la primera y


segunda fila a intercambiar''

"Ingrese el elemento: A(''


+i+ "," +j+ ")=?"
A(i,j)

No Si

"Error: Filas ingresadas no


validas"
M

Fin
N

"La matriz nueva es:''

A(i,j)

Introducción a la computación página 2


Examen 2P 2023 - 2

De una matriz cuadrada ingresada por el usuario hallar la suma de los elementos ubicados en las dos diagonales, solo tomar
en cuenta los elementos divisibles entre 3 pero no entre 2

Algoritmo SumaDiagonalesDivisibles
// Ingresar el tamaño de la matriz cuadrada
Definir N Como Entero
Escribir 'Ingrese el tamaño de la matriz cuadrada (N):'
Leer N
// Definir la matriz y otras variables necesarias
Dimensionar Matriz(N,N)
Definir sumaDiagonales Como Entero
// Ingresar elementos en la matriz
Para i<-1 Hasta N Hacer
Para j<-1 Hasta N Hacer
Escribir 'Ingrese el elemento en la posición [', i, ',', j, ']:'
Leer Matriz[i,j]
FinPara
FinPara
// Inicializar variable
sumaDiagonales <- 0
// Calcular la suma de los elementos de ambas diagonales
Para i<-1 Hasta N Hacer
Si (Matriz[i,i] MOD 3=0) Y ((Matriz[i,i] MOD 2)<>0) Entonces
sumaDiagonales <- sumaDiagonales+Matriz[i,i]
FinSi
Si (Matriz[i,N-i+1] MOD 3=0) Y ((Matriz[i,N-i+1] MOD 2)<>0) Entonces
sumaDiagonales <- sumaDiagonales+Matriz[i,N-i+1]
FinSi
FinPara
// Si el tamaño de la matriz es par, restar el valor del elemento central
Si N MOD 2 <> 0 Entonces
sumaDiagonales <- sumaDiagonales - Matriz[(N+1)/2,(N+1)/2]
FinSi
// Mostrar resultado
Escribir 'La suma de los elementos de ambas diagonales divisible por 3 pero no
por 2 es:', sumaDiagonales
FinAlgoritmo

Inicio

"Ingrese el tamaño de la
matriz"
N

"Ingrese el elemento: A(''


+i+ "," +j+ ")=?"
A(i,j)

Introducción a la computación página 3


+i+ "," +j+ ")=?"
A(i,j)

Suma = 0

"La suma de las diagonales es:"

N
Suma

N
Fin

No

Si
No

No

Si

Si
No

Si

Si

No
Si

No

Introducción a la computación página 4


Algoritmo SumaDiagonalesDivisibles
// Ingresar el tamaño de la matriz cuadrada
Definir N Como Entero
Escribir 'Ingrese el tamaño de la matriz cuadrada (N):'
Leer N
// Definir la matriz y otras variables necesarias
Dimensionar Matriz(N,N)
Definir suma Como Entero
// Ingresar elementos en la matriz
Para i<-1 Hasta N Hacer
Para j<-1 Hasta N Hacer
Escribir 'Ingrese el elemento en la posición [', i, ',', j, ']:'
Leer Matriz[i,j]
FinPara
FinPara
// Inicializar variable
suma <- 0
// Calcular la suma de los elementos de ambas diagonales
Para i<-1 Hasta N Hacer
Para j<-1 Hasta N Hacer
Si i=j Entonces
Si Matriz[i,j] mod 3=0 Entonces
Si Matriz[i,j] mod 2<>0 Entonces
suma <- suma + Matriz[i,j]
FinSi
FinSi
SiNo
Si i+j=N+1 Entonces
Si Matriz[i,j] mod 3 =0 Entonces
Si Matriz[i,j] mod 2 <>0 Entonces
suma <- suma + Matriz[i,j]
FinSi
FinSi
FinSi
FinSi
FinPara
FinPara
// Mostrar resultado
Escribir 'La suma de los elementos de ambas diagonales divisible por 3 pero no por 2 es:', suma
FinAlgoritmo

Prueba de escritorio

Sea:

i=j
1 1 1 Si No No 0
2 2 3 Si Si No 3
3 3 6 Si Si Si

1 3 9 4=4 Si Si No S=3+9=12
2 2 3 4=4 Si Si No
3 1 7 4=4 Si No No

2P 2020-2

Dados dos vectores A y B, ambas de la misma dimensión, hallar la suma de sus elementos correspondientes.
Por ejemplo: A(1)+B(1)
Si el resultado es divisor exacto de M llevarlo a un tercer vector C, donde estarán almacenados todos las sumas que
cumplen ese requisito

Donde M = 3

Inicio

Introducción a la computación página 5


"Ingrese el tamaño los
vectores"
N

N
"Ingrese los valores: A( "
+i+ ")=?"
A(i)

"Ingrese los valores: B( "


+i+ ")=?"
B(i)

No

Si

Introducción a la computación página 6


Fin
k

"Los valores nuevos son:"

Algoritmo SumaYAlmacenamiento
Definir N, i, M, k Como Entero
Definir A, B, C Como Real
Definir sumaElementos Como Real
Escribir 'Ingrese la dimensión de los vectores (N): '
Leer N
Escribir 'Ingrese el valor de M: '
Leer M
Dimensionar A(N), B(N), C(N)
Escribir 'Ingrese los elementos del vector A:'
Para i<-1 Hasta N Hacer
Escribir 'A(', i, '): '
Leer A[i]
FinPara
Escribir 'Ingrese los elementos del vector B:'
Para i<-1 Hasta N Hacer
Escribir 'B(', i, '): '
Leer B[i]
FinPara
k <- 0
Para i<-1 Hasta N Hacer
sumaElementos <- A[i]+B[i]
Si sumaElementos MOD M=0 Entonces
k <- k+1
C[k] <- sumaElementos
FinSi
FinPara
Escribir 'El vector C, con las sumas que son divisibles por M, es:'
Para i<-1 Hasta k Hacer
Escribir 'C(', i, '): ', C[i]
FinPara
FinAlgoritmo

Elaborar el diagrama de flujo y prueba de escritorio de la siguiente pregunta:


Dado dos vectores A y B de N elementos cada uno. Determinar el número de veces en que la diferencia A(i) - B(i), sea
múltiplo de (M+3) o bien sea múltiplo de M, pero no tomar en cuenta si cumple con las dos condiciones al mismo tiempo.

M es el número de letras de su apellido paterno

Inicio

"Ingrese el tamaño los


vectores"
N

Introducción a la computación página 7


"Ingrese el tamaño los
vectores"
N

N
"Ingrese los valores: A( "
+i+ ")=?"
A(i)

"Ingrese los valores: B( "


+i+ ")=?"
B(i)

"El número de veces es:"


No
[A(i)-B(i)] mod (M+3)=0 k
XOR
[A(i)-B(i) mod M =0]

Si Fin

Introducción a la computación página 8

También podría gustarte