arreglos_bidimensionales

17
Arreglos Bidimensionales Facultad de Ingeniería de Sistemas, Cómputo y Telecomunicaciones Sistema a Distancia Prof. Lic. Franklin Arriola Ramírez

Upload: yohan-yangales

Post on 25-Oct-2015

36 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Arreglos_Bidimensionales

Arreglos Bidimensionales

Facultad de Ingeniería de Sistemas, Cómputo yTelecomunicacionesSistema a Distancia

Prof. Lic. Franklin Arriola Ramírez

Page 2: Arreglos_Bidimensionales

1513117 9 17 19531b[ ] =

Escriba un pseudocodigo para trasladar los elementos impares de una matriz a un vector. Por ejemplo:

Salida:

Entrada:

20191817

16151413

1211109

8765

4321

m[ ][ ]=

Page 3: Arreglos_Bidimensionales

Inicio// Definir variables y vectoresEntero: fila, columna, m[50][50],a[50],n3=0ingresarMatriz(m, fila, columna)matrizVectorImpar(m, fila, columna,a,n3) mostrarMatriz(m, fila, columna)mostrarVector(a, n3)

Fin

Page 4: Arreglos_Bidimensionales

Procedimiento ingresarMatriz ( a, fila, columna)// Definir variablesEntero:i, j, nEscribir ("Ingresar numero de filas:“)Leer (fila)Escribir ("Ingresar numero de columnas:“)Leer (columna)Desde i � 0 Hasta i < fila con incremento 1 Hacer

Desde j � 0 Hasta j < columna con incremento 1 HacerEscribir ("Ingresar elemento:“)Leer (a[i][j])

Fin_desdeFin_desde

Fin_procedimiento

Page 5: Arreglos_Bidimensionales

Procedimiento matrizVectorImpar( m, fila, columna, a,n3)// Definir variablesEntero: i, jDesde i � 0 Hasta i < fila con incremento 1 Hacer

Desde j � 0 Hasta j < columna con incremento 1 HacerSi (m[i][j] Mod 2 =1) entonces

a[n3]=m[i][j]n3�n3+1

Fin_siFin_desde

Fin_desdeFin_procedimiento

Page 6: Arreglos_Bidimensionales

Procedimiento mostrarMatriz ( m, fila, columna)// Definir variablesEntero:i, j, nDesde i � 0 Hasta i < fila con incremento 1 Hacer

Desde j � 0 Hasta j < columna con incremento 1 Hacer

Escribir (m[i][j])Fin_desde

Fin_desdeFin_procedimiento

Page 7: Arreglos_Bidimensionales

Procedimiento mostrarVector(a, n3)// Definir variablesEntero: iDesde i � 0 Hasta i < n3 con incremento 1 Hacer

Escribir (a[i])Fin_desde

Fin_procedimiento

Page 8: Arreglos_Bidimensionales

� Escribir un pseudocodigo para trasladar los elementos de la diagonal principal a un vector

16111 6b[ ] =

Salida:

Entrada:

16151413

1211109

8765

4321

m[ ][ ]=

Page 9: Arreglos_Bidimensionales

Procedimiento matrizPrincipalVector( m, fila, columna, a,n3)// Definir variablesEntero: i, jDesde i � 0 Hasta i < fila con incremento 1 Hacer

Desde j � 0 Hasta j < columna con incremento 1 HacerSi ( i= j) entonces

a[n3]=m[i][j]n3�n3+1

Fin_siFin_desde

Fin_desdeFin_procedimiento

Page 10: Arreglos_Bidimensionales

1131525b[ ] =

Escriba un programa para sumar la fila que contenga el menor elemento de la matriz con un vector. Por ejemplo:

Salida:

Entrada:

1182117

0923149

164226

413315

125107

718210a[ ] =

m[ ][ ]=

Page 11: Arreglos_Bidimensionales

Función buscaPosi(b, fila, columna) : entero// Definir variablesentero: m, posim � b[0][0]Desde (i � 0) Hasta (i < fila) con incremento 1 Hacer

Desde (j � 0) Hasta (j < columna) con incremento 1 HacerSi (b[i][j] <= m) entonces

m � b[i][j]posi � i

Fin_siFin_desde

Fin_desderetornar posi

Fin_función

Page 12: Arreglos_Bidimensionales

Procedimiento sumar(a, b, posi, columna, c)Desde (i ���� 0) hasta (i < columna) con incremento 1 Hacer

c[ I ] ���� b[posi][ I ] + a[ I ]Fin_desde

Fin_procedimiento

Procedimiento imprimirVector(vector, num) Desde (i ���� 0) hasta (i < num) con incremento 1 Hacer

Escribir (vector[i])Fin_desde

Fin_procedimiento

Page 13: Arreglos_Bidimensionales

Escriba un programa que permita ingresar números enteros a una matriz cuadrada y que guarde los elementos de la matriz triangular superior en un vector y los elementos de la matriz triangular inferior en otro vector. Por ejemplo:

Page 14: Arreglos_Bidimensionales

entrada

23

18

13

8

3

24

19

14

9

4 521

1076

252221

201716

151211

1514 2010985432

22 23 242118171612116

salida

M[ ][ ]=

a[ ]=

b[ ]=

Page 15: Arreglos_Bidimensionales

Procedimiento superiorInferior( m, fila, columna, a, n1, b, n2)Desde i = 0 Hasta i < fila con incremento 1 Hacer

Desde j = 0 Hasta j < columna con incremento 1 HacerSi ( i <> j) entonces

Si (i < j) // Triangular superiora[n1] ���� m[i][j]n1 ���� n1 + 1

Sinob[n2] ���� m[i][j] // triangular inferiorn2 ���� n2 + 1

Fin_siFin_si

Fin_desdeFin_desde

Fin-procedimiento

Page 16: Arreglos_Bidimensionales

void concatenarVector(int a[50],int n1, int b[50],int n2, int c[50],int &n3){

int i;for(i=0;i<n1;i++){

c[n3]=a[i];n3++;

}for(i=0;i<n2;i++){

c[n3]=b[i];n3++;

}}

Page 17: Arreglos_Bidimensionales

void mostrarVector(int vector[80], int numel){

// Definir variableint i;for (i = 0;i < numel;i++)

cout<<vector[i]<<setw(4);cout<<endl;

}