Documentos de Académico
Documentos de Profesional
Documentos de Cultura
s de
programació
n
Javier farinango
Trabajo
semanal
TEMA: ARREGLOS BIDIMINCIONALES (ORDENADOS)
Se tiene una matriz de 12 filas por 19 columnas y se desea un algoritmo para encontrar todos
sus elementos negativos y para que les cambie ese valor negativo por un cero y ordenar de
manera ascendente y descendente. Realice un algoritmo para tal fin y represéntelo mediante
diagrama de flujo de datos y pseudocódigo.
PSEUDOCÓDIGO
funcion mostrar_matriz(mt,n,m)
para i<-1 hasta n con paso 1 Hacer
para j<-1 hasta m con paso 1 Hacer
escribir " " mt(i,j) Sin Saltar
FinPara
escribir " "
Finpara
FinFuncion
Algoritmo menu
definir matriz,i,j Como Entero
dimension matriz(3,4)
escribir "La matriz se carga con numeros al azar"
para i<-1 hasta 3 con paso 1 Hacer
para j<-1 hasta 4 con paso 1 Hacer
escribir "Posicion (",i,":",j,")" Sin Saltar
leer matriz(i,j)
FinPara
FinPara
escribir ""
escribir "matriz inicial"
mostrar_matriz(matriz,3,4)
para i<-1 hasta 1 con paso 1 hacer
para j<-1 hasta 4 con paso 1 Hacer
si (matriz(i,j)<0) entonces
matriz(i,j)<-0
FinSi
FinPara
FinPara
escribir " "
escribir "Matriz final"
mostrar_matriz(matriz,3,4)
FinAlgoritmo
Continuación
funcion mostrar_matriz(mt,n,m)
para i<-1 hasta n con paso 1 Hacer
para j<-1 hasta m con paso 1 Hacer
escribir " " mt(i,j) Sin Saltar
FinPara
escribir " "
Finpara
FinFuncion
Funcion ordenar_matriz(mt,m,n)
Para i<-1 Hasta m Con Paso 1 Hacer
Para j<-1 Hasta n+1 Con Paso 1 Hacer
si (mt(i,j)<mt(i,j+1)) Entonces
mt(i,j)<-aux
mt(i,j+1)<-mt(i,j)
mt(i,j)<-aux
FinSi
FinPara
FinPara
FinFuncion
Algoritmo menu
definir matriz,i,j Como Entero
dimension matriz(3,4)
escribir "La matriz se carga con numeros al azar"
para i<-1 hasta 3 con paso 1 Hacer
para j<-1 hasta 4 con paso 1 Hacer
escribir "Posicion (",i,":",j,")" Sin Saltar
leer matriz(i,j)
FinPara
FinPara
escribir ""
escribir "matriz inicial"
mostrar_matriz(matriz,3,4)
para i<-1 hasta 1 con paso 1 hacer
para j<-1 hasta 4 con paso 1 Hacer
si (matriz(i,j)<0) entonces
matriz(i,j)<-0
FinSi
FinPara
FinPara
escribir " "
escribir "Matriz final"
mostrar_matriz(matriz,3,4)
Escribir ""
Escribir "matriz ordenada de manera ascendente"
Para i<-1 Hasta 3 Con Paso 1 Hacer
Para j<-1 Hasta 4-1 Con Paso 1 Hacer
si (matriz(i,j)>matriz(i,j+1)) Entonces
matriz(i,j)<-aux
matriz(i,j)<-matriz(i,j+1)
matriz(i,j+1)<-aux
FinSi
FinPara
FinPara
mostrar_matriz(matriz,3,4)
FinAlgoritmo
DFD
TEMA: MENU DE ARREGLOS
Funcion ingreso_datos(nv,cv)
Para i<-1 Hasta cv Con Paso 1 Hacer
Escribir " ingrese el elemento ",i Sin Saltar
Leer nv(i)
FinPara
FinFuncion
Funcion suma_datos(v1,v2,v3,ndv)
Para i<-1 Hasta ndv Con Paso 1 Hacer
v3(i)<-v1(i)+v2(i)
FinPara
FinFuncion
Funcion producto_datos(vp1,vp2,vp3,npd)
Para i<-1 Hasta npd Con Paso 1 Hacer
vp3(i)<-vp1(i)*vp2(i)
FinPara
FinFuncion
Funcion Mostrar_datos(v1,ndv)
Para i<-1 Hasta ndv Con Paso 1 Hacer
Escribir " " v1(i) Sin Saltar
FinPara
FinFuncion
Funcion ascendente(vo,n)
para i<-1 Hasta n Con Paso 1 Hacer
Para j<-1 Hasta n Con Paso 1 Hacer
si(vo(i)<vo(j)) Entonces
aux<-vo(i)
vo(i)<-vo(j)
vo(j)<-aux
FinSi
FinPara
FinPara
FinFuncion
Funcion descendente(vo,n)
para i<-1 Hasta n Con Paso 1 Hacer
Para j<-1 Hasta n Con Paso 1 Hacer
si(vo(i)>vo(j)) Entonces
aux<-vo(i)
vo(i)<-vo(j)
vo(j)<-aux
FinSi
FinPara
FinPara
FinFuncion
Algoritmo men
Definir opc,opc1,evabc,A,B,C,A1,B1,C1,nna Como Entero
Dimension A(20),B(20),C(20),A1(20),B1(20),C1(20),AA(20)
Repetir
Borrar Pantalla
Escribir " " "OPERACIONES CON ARREGLOS"
Escribir " " "========================"
Escribir " " "1.- Arregrlos Unidimensionales"
Escribir " " "2.- Arregrlos Bidimencionales"
Escribir " " "3.- Cadena de Caracteres "
Escribir " " "4.- salir"
Escribir ""
Escribir "Elija el proceseo " Sin Saltar
Leer opc
Segun opc Hacer
1:
Repetir
Borrar Pantalla
Escribir "Arreglos unidimensionales"
Escribir "------------------------"
Escribir "1.- suma"
Escribir "2.- producto"
Escribir "3.- ordenamiento"
Escribir "4.- busqueda"
Escribir "5.- Retormar al menu anterior"
Escribir ""
Escribir "Elija el proceseo " Sin Saltar
Leer opc1
Segun opc1 Hacer
1:
Borrar Pantalla
Escribir "suma de vectores A + B = C"
Esperar Tecla
2:
Borrar Pantalla
Escribir "producto A * B = C"
Escribir "ingrese el numero de
elementos de los arreglos" Sin Saltar
leer ndp
Escribir "ingrese los elementos para el
arreglo A"
ingreso_datos(A1,ndp)
Escribir "ingrese los elementos para el
arreglo B"
ingreso_datos(B1,ndp)
producto_datos(A1,B1,C1,ndp)
Escribir "ELEMENTOS DEL VECTOR A"
Mostrar_datos(A1,ndp)
Escribir " "
Escribir "ELEMENTOS DEL VECTOR B"
Mostrar_datos(B1,ndp)
Escribir " "
Escribir "VECTOR RESULTANTE DE A * B
= C"
Mostrar_datos(C1,ndp)
Escribir " "
Escribir "presione una tecla para
continuar"
Esperar Tecla
3:
Borrar Pantalla
Escribir "ordenamiento"
Escribir " "
Escribir " los datos del arreglo se
cargan con numeros aleatorios menores que 100"
Escribir "cuantos numeros desea ? " Sin
Saltar
Leer nna
Para i<-1 Hasta nna Con Paso 1 Hacer
AA(i)<-azar(100)
FinPara
Escribir " ARREGLO INICIAL"
mostrar_datos(AA,nna)
4:
Escribir "Busqueda"
Fin Segun
Hasta Que opc1=5
2:
Escribir "bidimencionales"
3:
Escribir "cadena"
De Otro Modo:
Escribir "Proceso terminado"
Fin Segun
Hasta Que opc=4
FinAlgoritmo
EJERCICIOS TAREA
Realice un algoritmo que calcule el valor que se obtiene al multiplicar entre sí los elementos de
la diagonal principal de una matriz de 5 por 5 elementos, represéntelo mediante diagrama,
DFD
Y pseudocódigo.
//Realice un algoritmo que calcule el valor que se obtiene al multiplicar entre sí los
elementos //de la diagonal principal de una matriz de 5 por 5 elementos, represéntelo
mediante diagrama,
//Y pseudocódigo.
DFD
Algoritmo detarea
Definir f,c,mat1,ve Como Entero
Dimension mat1[5,5],ve[5]
para f=1 Hasta 5 Con Paso 1 Hacer
para c=1 Hasta 5 Con Paso 1 Hacer
mat1(f,c)<-azar(9) + 1
FinPara
FinPara
para f=1 Hasta 5 Con Paso 1 Hacer
para c=1 Hasta 5 Con Paso 1 Hacer
Escribir mat1(f,c)," " Sin Saltar
si f == c Entonces
ve(f)<-mat1(f,c)
FinSi
FinPara
Escribir " "
FinPara
Escribir " "
Escribir "****************"
Escribir "mostrar matriz"
Escribir "****************"
para f=1 Hasta 5 Con Paso 1 Hacer
Escribir ve(f)
FinPara
FinAlgoritmo
DFD
Realice un algoritmo que a partir de la matriz del problema anterior encuentre cuántos
elementos tienen valor par y cuántos valores impares. Represéntelo mediante diagrama, DFD y
pseudocódigo.
Algoritmo matriz_deber
Definir f,c,mat,dia,pares,impares Como Entero
Dimension mat(5,5),dia(5)
Para f<-1 hasta 5 con paso 1 Hacer
Para c<-1 hasta 5 con paso 1 Hacer
mat(f,c)<-azar(9)+1
FinPara
FinPara
Para f<-1 hasta 5 con paso 1 Hacer
Para c<-1 hasta 5 con paso 1 Hacer
Escribir mat(f,c)," " Sin Saltar
Si f==c Entonces
dia(f)<-mat(f,c)
FinSi
FinPara
Escribir " "
FinPara
DFD