






















Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Los mejores documentos en venta realizados por estudiantes que han terminado sus estudios
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Descubre las mejores universidades de tu país según los usuarios de Docsity
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Practica del semestro por 10 pts a la nota final
Tipo: Ejercicios
1 / 30
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!
Docente: Ing. Edwin Ruben Huanca La Paz - Bolivia 2025
Iteración i vector[i] mayor menor 1 1 5 12 5 2 2 23 23 5 3 3 7 23 5 4 4 16 23 5 Salida: El mayor número es: 23 El menor número es: 5 Codigo c++: #include
} return 0; }
Prueba de escritorio: N = 6 Paso i j vec[i] vec[j] Condición pares o impares Acción Vector actual Inicial - - 8 - - - 8, 3, 4, 7, 2, 5 Comparación 0 2 8 (par) 4 (par) 8 < 4? No No swap 8, 3, 4, 7, 2, 5 Comparación 0 4 8 (par) 2 (par) 8 < 2? No No swap 8, 3, 4, 7, 2, 5 Comparación 1 3 3 (impar) 7 (impar) 3 > 7? No No swap 8, 3, 4, 7, 2, 5 Comparación 1 5 3 (impar) 5 (impar) 3 > 5? No No swap 8, 3, 4, 7, 2, 5 Comparación 2 4 4 (par) 2 (par) 4 < 2? No No swap 8, 3, 4, 7, 2, 5 Comparación 3 5 7 (impar) 5 (impar) 7 > 5? Sí Swap 8, 3, 4, 5, 2, 7 Comparación 0 2 8 (par) 4 (par) 8 < 4? No No swap 8, 3, 4, 5, 2, 7 Comparación 2 4 4 (par) 2 (par) 4 < 2? No No swap 8, 3, 4, 5, 2, 7 Comparación 0 4 8 (par) 2 (par) 8 < 2? No No swap 8, 3, 4, 5, 2, 7 Comparación 2 4 4 (par) 2 (par) 4 < 2? No No swap 8, 3, 4, 5, 2, 7 Comparación 2 4 4 (par) 2 (par) 4 < 2? No No swap 8, 3, 4, 5, 2, 7 Comparación 0 4 8 (par) 2 (par) 8 < 2? No No swap 8, 3, 4, 5, 2, 7 Mostrar final Vector ordenado: 8, 3, 4, 5, 2, 7 Codigo c++: #include
INICIO N A[N][N], B[N][N], Suma[N][N] i = 0; i < N; i++ j = 0; j < N; j++ A[i] [j] i = 0; i < N; i++ j = 0; j < N; j++ B[i] [j] i = 0; i < N; i++ j = 0; j < N; j++ Suma[i][j] = A[i][j] + B[i] [j]
Prueba de escritorio: N = 2 Matriz A: 1 2 3 4 Matriz B: 5 6 7 8 i j A[i][j] B[i][j] Suma[i][j] Observación 0 0 1 5 6 1 + 5 = 6 0 1 2 6 8 2 + 6 = 8 1 0 3 7 10 3 + 7 = 10 1 1 4 8 12 4 + 8 = 12 Matriz suma: 6 8 10 12 Codigo c++: #include
La matriz debe ser cuadrada (misma cantidad de filas y columnas). N debe ser mayor a 0 Diagrama de flujo: INIC IO N A[N][N], T[N][N] i = 0; i < N; i++ j = 0; j < N; j++ A[i ][j] T[j][i] = A[i][j] i = 0; i < N; i++ j = 0; j < N; j++ i = 0; i < N; i++
Prueba de escritorio: N = 3 Matriz A: 1 2 3 4 5 6 7 8 9 Se construye la matriz transpuesta T de la siguiente forma: | T[j][i] = A[i][j] | T[0][0] = A[0][0] = 1 T[1][0] = A[0][1] = 2 T[2][0] = A[0][2] = 3 T[0][1] = A[1][0] = 4 T[1][1] = A[1][1] = 5 T[2][1] = A[1][2] = 6 T[0][2] = A[2][0] = 7 T[1][2] = A[2][1] = 8 T[2][2] = A[2][2] = 9 Matriz transpuesta resultante: 1 4 7 2 5 8
El interior de la matriz (elementos que no están en los bordes) se llena con 0. Esto implica recorrer cada posición de la matriz y asignar 1 si el índice de fila o columna corresponde a un borde, y 0 en caso contrario. Diagrama de flujo: INIC IO N matriz[N ][N] i = 0; i < N; i++ j = 0; j < N; j++ N o i == 0 || i == N-1 || j == 0 || j == N- matriz[i][j] = 1 matriz[i][j] = 0 S i i = 0; i < N; i++ j = 0; j < N; j++
Prueba de escritorio: N = 4 i j Condición borde? Valor asignado Observación 0 0 i=0 borde fila 1 Primer elemento, borde 0 1 i=0 borde fila 1 Borde superior 0 2 i=0 borde fila 1 Borde superior 0 3 i=0 borde fila 1 Borde superior 1 0 j=0 borde columna 1 Borde izquierdo 1 1 interior (no borde) 0 Centro 1 2 interior (no borde) 0 Centro 1 3 j=N-1 borde columna 1 Borde derecho 2 0 j=0 borde columna 1 Borde izquierdo 2 1 interior (no borde) 0 Centro 2 2 interior (no borde) 0 Centro 2 3 j=N-1 borde columna 1 Borde derecho 3 0 i=N-1 borde fila 1 Borde inferior 3 1 i=N-1 borde fila 1 Borde inferior 3 2 i=N-1 borde fila 1 Borde inferior 3 3 i=N-1 borde fila 1 Borde inferior Matriz generada: 1 1 1 1 1 0 0 1
Para implementarlo, se recorren todas las posiciones de la matriz y se asigna: 1 si el índice de columna es 0 o N-1 (bordes verticales), o si el índice de fila es N-1 (última fila). 0 en cualquier otro caso. Diagrama de flujo: INICI O N matriz[N] [N] i = 0; i < N; i++ j = 0; j < N; j++ N o S i j == 0 || j == N-1 || i == N- matriz[i][j] = 1 matriz[i][j] = 0 matriz[i ][j] i = 0; i < N; i++ j = 0; j < N; j++
Prueba de escritorio: N = 4 i j Condición borde Valor asignado Observación 0 0 j=0 1 Borde izquierdo 0 1 - 0 Interior 0 2 - 0 Interior 0 3 j=N-1 1 Borde derecho 1 0 j=0 1 Borde izquierdo 1 1 - 0 Interior 1 2 - 0 Interior 1 3 j=N-1 1 Borde derecho 2 0 j=0 1 Borde izquierdo 2 1 - 0 Interior 2 2 - 0 Interior 2 3 j=N-1 1 Borde derecho 3 0 i=N-1 1 Última fila 3 1 i=N-1 1 Última fila 3 2 i=N-1 1 Última fila 3 3 i=N-1 1 Última fila Matriz generada: 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 Codigo c++: