0% encontró este documento útil (0 votos)
3 vistas32 páginas

PROGRAMACION

El documento aborda el uso de arreglos unidimensionales y bidimensionales en la programación, específicamente en la resolución de sistemas de ecuaciones lineales. Se presentan objetivos claros para implementar algoritmos que faciliten el manejo de estos arreglos y se discuten métodos numéricos aplicables. Además, se incluye un marco teórico sobre la importancia de los sistemas de ecuaciones en diversas áreas de la ingeniería y ejemplos prácticos utilizando Python.
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)
3 vistas32 páginas

PROGRAMACION

El documento aborda el uso de arreglos unidimensionales y bidimensionales en la programación, específicamente en la resolución de sistemas de ecuaciones lineales. Se presentan objetivos claros para implementar algoritmos que faciliten el manejo de estos arreglos y se discuten métodos numéricos aplicables. Además, se incluye un marco teórico sobre la importancia de los sistemas de ecuaciones en diversas áreas de la ingeniería y ejemplos prácticos utilizando Python.
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

“Año De La Recuperación Y Consolidación De La Economía Peruana”

“UNIVERSIDAD NACIONAL INTERCULTURAL DE LA SELVA CENTRAL

JUAN SANTOS ATAHUALPA”

ESCUELA PROFESIONAL DE INGENIERÍA CIVIL

TITULO DEL TRABAJO

MANEJO DE ARREGLO UNIDIMENSIONAL (VECTORES) Y BIDIMENSIONALES

(MATRICES). APLICACIÓN EN LA SOLUCIÓN DE SISTEMAS DE ECUACIONES

LINEALES

ASIGNATURA:

PROGRAMACIÓN A LA INGENIERIA

DOCENTE:

Mg. ALMONACID HINOSTROZA, Rocio

ESTUDIANTES:

CANDIA GABRIEL, Joel

CHOCCE GARCIA, Bryhan

LOPEZ LEONARDO, Hernan

POMA CACERES, Clisman

LA MERCED, 06 DE MAYO DEL 2026


0
INDICE

I. INTRODUCCION ......................................................................................................... 2

II. OBJETIVO..................................................................................................................... 3

2.1. Objetivo General ................................................................................................................ 3

2.2. Objetivo Especifico ........................................................................................................... 3

III. MARCO TEORICO................................................................................................ 4

3.1. Arreglos (arrays) ............................................................................................................. 4

3.1.1. Características ..................................................................................................... 5

3.1.2. Clasificación ............................................................................................................. 5

3.1.3. Diferencias .......................................................................................................... 8

3.2. Sistemas de Ecuaciones Lineales .................................................................................. 10

3.3. Aplicación de arreglos en sistemas de ecuaciones lineales .......................................... 14

3.3.1. Ejemplos prácticos resueltos ................................................................................. 15

3.4. Aplicación en la ingeniería ........................................................................................... 17

3.5. Ventajas del uso de arreglos y matrices ........................................................................ 29

IV. CONCLUSIONES ....................................................................................................... 30

1
I. INTRODUCCION

El manejo de estructuras de datos constituye uno de los pilares fundamentales en la

programación. Entre ellas, los arreglos unidimensionales (vectores) y los arreglos

bidimensionales (matrices) son herramientas esenciales que permiten organizar y manipular

información de manera eficiente. Su dominio no solo facilita la resolución de problemas básicos

de almacenamiento y procesamiento, sino que también abre la puerta a aplicaciones más

avanzadas en el ámbito científico y tecnológico.

Un arreglo es una secuencia de datos del mismo tipo que ocupan un lugar continuo en

memoria. Las posiciones que ocupan se denominan elementos del arreglo y se enumeran

sucesivamente desde 0, 1, 2, 3, etc. En tales situaciones es conveniente colocar los datos en un

arreglo, el cual se caracteriza porque todos sus elementos comparten un mismo nombre. Los datos

individuales pueden ser caracteres, números enteros, números de coma flotante de simple o de

doble precisión.

En el siguiente informe abordaremos el uso de vectores y matrices como instrumentos en

programas de alto nivel o avanzado como el Python, para representar y resolver sistemas de

ecuaciones lineales dentro, un tema central en matemáticas aplicadas en ingeniería. A través de

ejemplos prácticos, aprenderemos cómo implementar algoritmos que aprovechen estas

estructuras para encontrar soluciones de manera sistemática y precisa y aplicarlos a la Ing. Civil.

2
II. OBJETIVO

2.1. Objetivo General

Implementar algoritmos computacionales mediante el uso de arreglos (vectores y

matrices) para la resolución automatizada de sistemas de ecuaciones lineales.

2.2. Objetivo Especifico

• Desarrollar funciones que permitan el almacenamiento y la manipulación de

vectores y matrices.

• Aplicar métodos numéricos clásicos (como Eliminación de Gauss, Gauss-Jordan o

la Regla de Cramer)

• Verificar la eficiencia del programa mediante la comparación de resultados

obtenidos computacionalmente frente a soluciones teóricas

3
III. MARCO TEORICO

3.1. Arreglos (arrays)

Un arreglo (vector, array, matriz) es un conjunto de datos o una estructura de datos

homogéneos que se encuentran ubicados en forma consecutiva en la memoria RAM (sirve

para almacenar datos en forma temporal). Un arreglo es una lista (conjunto) de datos con un

número fijo de componentes, todos del mismo tipo, que están referenciados bajo un mismo

nombre. Cada componente del arreglo se puede acceder mediante índices (0, 1, 2, 3, …)

encerradas entre corchetes [ ].

Ejemplo. [ N ] Se declara un arreglo de nombre con N elementos de tipo , (N es una

constante) en lenguaje de programación se vería de la siguiente manera: int a[10];

Algunos otros ejemplos:

4
3.1.1. Características

Los arreglos se caracterizan por: Almacenan los elementos en posiciones contiguas de

memoria Tienen un mismo nombre de variable que representa a todos los elementos. Para

hacer referencia a esos elementos es necesario utilizar un índice que especifica el lugar que

ocupa cada elemento dentro del archivo

3.1.2. Clasificación

[Link]. Unidimensionales (Vectores)

Es un arreglo de “N” elementos organizados en una dimensión donde “N” recibe el

nombre de longitud o tamaño del vector. Para hacer referencia a un elemento del vector se usa

el nombre del mismo, seguido del índice (entre corchetes), el cual indica una posición en

particular del vector.

Por ejemplo: V[x]

Donde:

V Nombre del arreglo

x Número de datos que constituyen el arreglo(tamaño)

5
[Link].1. Características

• Homogéneos: Significa que todos los elementos son del mismo tipo

• Ordenados: Significa que hay un primer elemento, un segundo elemento y asi

sucesivamente.

• Finita: Significa que hay un último elemento.

• Tamaño fijo: El tamaño del array debe ser conocido en tiempo de compilación,

pero que todos los elementos del array tengan significado.

[Link].2. Representación Gráfica

Nota sobre los arreglos: El valor del índice debe de estar entre 0 y un LIMITE entero

[Link]. Bidimensionales (Matrices)

Es un arreglo de M*N elementos organizados en dos dimensiones donde M es el

numero de filas o reglones y N el número de columnas.

6
Para representar una matriz se necesita un nombre de matriz se necesita un nombre de

matriz acompañado de dos índices. Mat [R, C] Donde R indica el renglón y C indica la

columna, donde se encuentra almacenado el dato.

[Link].1. Características

• Todos los elementos son del mismo tipo.

• La matriz tiene un único nombre.

• Los datos están ordenados según el orden de los subíndices.

• Todos los valores de un arreglo inicializan en 0 para datos numéricos y cadenas

vacías para datos tipo cadena.

[Link].2. Representación gráfica

7
3.1.3. Diferencias

Base Matriz unidimensional Matriz bidimensional

Almacena una única lista de


Almacena una 'lista de listas' del
Definición elementos de un tipo de datos
elemento de un tipo de datos similar.
similar.

Representar varios elementos de datos


Representació Representar varios elementos
como una tabla compuesta por filas y
n de datos como una lista.
columnas.

La declaración varía según el La declaración varía según el lenguaje


lenguaje de programación: de programación:

1. Para C++, 1. Para C++,


tipo de dato tipo de dato
variable_name[fil variable_name[fila][column
Declaración
a] a]
2. Para Java, 2. Para Java,
datatype [] datatype [][]
variable_name= variable_name= new
new datatype[row] datatype[row][column]

Dimensión Uno Dos

8
tamaño de (tipo de dato de la tamaño de (tipo de dato de la variable
Tamaño
variable del array) * tamaño de la matriz) * número de filas *
(bytes)
del array número de columnas.

La dirección de a[i][j] se puede calcular


de dos maneras: por filas y por
columnas.

1. Columna
principal: Dirección base +
Tamaño de cada elemento
La dirección de a[índice] es
(número de filas (j-límite
Cálculo de igual a (dirección base +
inferior de la columna) + (i-
direcciones. tamaño de cada elemento de
límite inferior de las filas))
la matriz * índice).
2. Orden por filas: Dirección
base + Tamaño de cada
elemento (número de
columnas (i - límite inferior
de la fila) + (j - límite
inferior de la columna))

int arr[5]; //Se creará un array int arr[2][5]; //Se creará un array con

con una fila y cinco dos filas y cinco columnas.


Ejemplo columnas. abcde

{a, b, c, d, e} fghij

9
3.2. Sistemas de Ecuaciones Lineales

En la práctica de la matemática, a veces se requiere trabajar de manera simultánea con

más de una ecuación en la cual aparecen variables diversas, es decir, con sistemas de

ecuaciones lineales.

La solución y análisis de sistemas de ecuaciones lineales encuentra una amplia

aplicación en la ciencia y en la tecnología, ya que a partir de la aplicación de estas podemos

resolver una muy variada cantidad de problemas como, por ejemplo, el análisis de circuitos

eléctricos, las estructuras de redes y sus posibles flujos en el área de transporte, los estudios

de mercadeo y comportamiento de productos en economía, las cargas que pueden soportar

distintas estructuras en ingeniería civil, el balanceo de reacciones químicas, los problemas

de móviles simultáneos, etc. En particular, se puede afirmar que en cualquier rama de la

ingeniería existe al menos una aplicación que requiera del planteamiento y solución de esos

sistemas.

Una ecuación de la forma

𝑎𝑥 + 𝑏𝑦 + 𝑐 = 0

𝑎𝑥 + 𝑏𝑦 + 𝑐 = 0

o bien, su equivalente

𝑎𝑥 + 𝑏𝑦 = 𝑐

𝑎𝑥 + 𝑏𝑦 = 𝑐
10
con a y b diferentes de cero, se considera una ecuación lineal con dos variables x y y

(lineal porque el exponente de sus variables es uno).

De igual manera, la ecuación

𝑎𝑥 + 𝑏𝑦 + 𝑐𝑧 + 𝑑 = 0

𝑎𝑥 + 𝑏𝑦 + 𝑐𝑧 + 𝑑 = 0

𝑎𝑥 + 𝑏𝑦 + 𝑐𝑧 + 𝑑 = 0

es una ecuación lineal con tres variables x, y y z. Y así podríamos seguir describiendo

ecuaciones con cuatro, cinco o más variables.

a) Clasificación de los sistemas de ecuaciones

Sistemas de ecuaciones compatibles. Un sistema compatible es aquel que tiene

solución. Si tiene solución, estas soluciones pueden ser infinitas o una única solución.

• Sistemas de ecuaciones compatibles determinados. Un sistema compatible

determinado es aquel que tiene una única solución para cada incógnita. Un

ejemplo de sistema compatible determinado sería

11
• Sistemas de ecuaciones compatibles indeterminados. Un sistema

compatible indeterminado es aquel que tiene infinitas soluciones, es decir, que

sus soluciones es una combinación lineal de números indeterminados. La

solución de un sistema de este tipo es:

Sistemas de ecuaciones incompatibles. Un sistema incompatible es aquel que no

tiene solución. Estos sistemas no se resuelven. Un ejemplo de este tipo de sistemas sería:

Este sistema es incompatible por una razón obvia, si la suma de x e y es cero, como va

a ser también dos. Esto es imposible, por lo que, como no hay dos números que cumplan las

dos ecuaciones a la vez, el sistema no tiene solución y por lo tanto es un sistema incompatible.

b) Importancia

Las ecuaciones lineales son de gran importancia ya que con ella podremos representar

numerosos problemas en diferentes áreas de la ingeniería y en otras ciencias mediante una de

ellas, de forma que podamos calculas un valor relevante del problema que no conocemos a

través de datos que si sabemos.

12
c) Métodos de resolución

En álgebra básica nos enseñan varios métodos aritméticos y uno gráfico que son

prácticos para resolver estos sistemas de ecuaciones, realizaremos un breve repaso de algunos

de estos.

• Método de igualación: este consiste en despejar la misma variable en cada una

de las ecuaciones del sistema y luego igualar los despejes para así obtener una

ecuación de primer grado con una variable que es muy sencilla de resolver y

finalmente reemplazar el valor hallado en uno de los despejes iniciales.

• Método de sustitución: este consiste en despejar una variable en una de las

ecuaciones y reemplazar este despeje en la otra ecuación para obtener

nuevamente una ecuación de primer grado con una variable.

• Método de eliminación o reducción: este consiste en eliminar una de las

variables para reducir de esta manera el sistema a una sola y poderlo desarrollar

fácilmente, para eso procedemos a multiplicar, dividir, sumar o restar las

ecuaciones entre sí valiéndonos de sus propiedades.

• Método gráfico: para este método se grafican las dos ecuaciones en el mismo

plano cartesiano por medio de tabulaciones y las coordenadas del punto de corte

de las dos rectas nos dan la solución del sistema.

13
3.3. Aplicación de arreglos en sistemas de ecuaciones lineales

En ingeniería no solemos resolver las ecuaciones una por una, sino que las agrupamos

en matrices para procesarlas por computadora, es muy común hoy en día, especialmente para

aplicaciones web de ingeniería que necesitan cálculos rápidos en el navegador. Si tienes un

sistema como este para calcular las fuerzas en una estructura:

3x + 2y = 18

-x + 4y = 10

el software JavaScript lo representaría así

14
3.3.1. Ejemplos prácticos resueltos

a) Solución con Python (NumPy)

La solución de sistemas de ecuaciones lineales mediante códigos (programación) se

basa principalmente en métodos numéricos como la eliminación de Gauss-Jordan,

descomposición LU, o métodos iterativos (Jacobi, Gauss-Seidel)

Python es una herramienta muy potente para álgebra lineal utilizando la biblioteca

NumPy. [1, 2]

import numpy as np

# Sistema de ecuaciones:

# 2x + 3y + z = 1

# 3x - 2y - 4z = -3

# 5x - y - z = 4

# Matriz de coeficientes (A)

A = [Link]([[2, 3, 1],

[3, -2, -4],

[5, -1, -1]])

# Vector de términos independientes (b)

b = [Link]([1, -3, 4])

# Solución del sistema (x = A⁻¹ * b)

solucion = [Link](A, b)
15
print("Solución (x, y, z):", solucion)

b) Solución con MATLAB / Octave

MATLAB utiliza el operador barra invertida (\) como el método estándar y directo

para resolver sistemas Ax = b

% Matriz de coeficientes

A = [2, 3, 1; 3, -2, -4; 5, -1, -1];

% Vector de términos independientes

b = [1; -3; 4];

% Solución

x = A\b

16
3.4. Aplicación en la ingeniería

En ingeniería no solemos resolver las ecuaciones una por una, sino que las agrupamos en matrices

para procesarlas por computadora, es muy común hoy en día, especialmente para aplicaciones

web de ingeniería que necesitan cálculos rápidos en el navegador. Si tienes un sistema como este

para calcular las fuerzas en una estructura:

3x + 2y = 18
-x + 4y = 10

El software JavaScript lo representaría

JavaScript
const math = require ( ´mathjs´ ) ;

// 1. Definir la matriz de coeficientes (A)

Const A = [
[3,2],
[ -1 , 4]
] ;

// 2. Definir el vector de resultados (b)

Const b = [ 18 , 10 ] ;

// [Link] el sistema Ax = b

Const x = math . lusolve (A, b);

17
a) Sistema de 1x1 (Ecuación Simple)

Cálculo de un esfuerzo axial básico en una columna.

F = k ∆𝑥

Determinar cuánto se acorta una barra bajo una carga puntual.

Estado inicial Estado deformado


(sin carga) (con carga F)

b) Sistema de 2x2

Equilibrio de fuerzas en un nodo bidimensional simple (como una polea o un apoyo).

Calcular las reacciones (Rx, Ry) en un apoyo fijo de una viga.


18
1. Partimos de las ecuaciones de equilibrio

Del problema tiene:

∑ 𝑓𝑥 = 0 => Rx = 0

∑ 𝑓𝑦 = 0 => Ry – P = 0

[Link] estándar del sistema

Ordenamos en forma de ecuaciones lineales

1Rx +0Ry = 0

0Rx + Ry = P

[Link] sí → Forma matricial

1 0 𝑅𝑥 0
Esto se escribe como [ ][ ] = [ ]
0 1 𝑅𝑦 𝑃

19
c) Sistema de 3x3

Estática en el espacio (3D) o una viga con carga, momento y cortante. Equilibrio de

un cuerpo rígido en el espacio donde tienes sumatoria de fuerzas en X, Y, Z. Aquí ya empiezas

a usar [Link] () para verificar que el sistema tenga solución.

d) Sistema de 4x4

20
Análisis de una viga continua con dos tramos. Determinación de los momentos en los

apoyos usando el Teorema de los Tres Momentos.

• TEOREMA DE LOS TRES MOMENTOS (CLAPEYRON)

Para tres apoyos consecutivos A, B y C de una viga continua con dos tramos AB y BC , el

teorema establece:
𝐴1𝑋1 𝐴2𝑋2
MAL1 + 2MB(L1+L2)+ MCL2 = -6( + )
𝐿1 𝐿2

Donde:

MA, MB, MC: Momentos en los apoyos A, B y C (convención: flector

Negativo = hogging).

A1. A2: áreas de los diagramas de momentos flectores de cada tramo, considerando la viga

simplemente apoyo izquierdo de cada tramo hasta el centroide del diagrama de momentos

correspondientes

21
e) Sistema 5x5

Es un sistema de 5 ecuaciones con 5 incógnitas, que representa estructuras con varios

apoyos o elementos donde se deben encontrar fuerzas o desplazamientos.

Están presente en vigas continuas con 5 incógnitas (reacciones y momentos)

Ejemplo:

[K][d](5x5) = [F]

f) Sistema de 6x6

Un sistema 6x6 consiste en seis ecuaciones lineales con seis incógnitas, asociadas

generalmente a estructuras con varios nodos y grados de libertad. Cada ecuación representa

el equilibrio en una dirección o punto específico de la estructura. En ingeniería civil, se

22
utiliza en armaduras y pórticos simples. Las incógnitas suelen representar desplazamientos

o fuerzas internas. Su solución se obtiene mediante métodos matriciales debido a su tamaño

g) El sistema de 7x7

El sistema 7x7 está compuesto por siete ecuaciones con siete incógnitas, y aparece

en estructuras que presentan redundancias o condiciones hiperestáticas. Esto significa que

no basta con aplicar solo ecuaciones de equilibrio, sino también condiciones de

compatibilidad de deformaciones. En ingeniería civil, se usa en vigas continuas o

estructuras más complejas. Permite analizar cómo se distribuyen las fuerzas en sistemas no

isostáticos. Su resolución requiere métodos avanzados como el método de rigidez.

23
h) Sistema de 8x8

Un sistema 8x8 contiene ocho ecuaciones lineales con ocho incógnitas,

representando estructuras con múltiples nodos y grados de libertad. En ingeniería civil, es

común en el análisis de pórticos planos donde cada nodo tiene movimientos en dos

direcciones. Estas ecuaciones se derivan del equilibrio y la relación esfuerzo-deformación.

Permite calcular desplazamientos y fuerzas internas con mayor precisión. Es ampliamente

utilizado en análisis estructural computacional.

24
i) El sistema de 9x9

El sistema 9x9 está formado por nueve ecuaciones y nueve incógnitas, utilizado en

estructuras más complejas o en análisis tridimensionales básicos. En ingeniería civil,

representa modelos donde se consideran tanto traslaciones como rotaciones. Cada ecuación

describe una condición de equilibrio o compatibilidad. Este tipo de sistema permite estudiar

el comportamiento global de estructuras espaciales. Su resolución se realiza mediante

métodos matriciales computacionales.

j) Sistema de 10x10

Un sistema 10x10 consta de diez ecuaciones lineales con diez incógnitas,

representando estructuras reales de mayor complejidad. En ingeniería civil, se utiliza en el

análisis de edificios pequeños o pórticos de varios niveles. Cada incógnita suele estar

relacionada con desplazamientos o fuerzas en nodos estructurales. Debido a su tamaño, no

es práctico resolverlo manualmente. Se emplean programas de cálculo estructural basados

en matrices.

25
El Método de la Rigidez (Análisis Estructural)

Es el pilar de la ingeniería estructural moderna. Para saber cuánto se deforma un puente bajo el

peso de los camiones, se plantea un sistema de ecuaciones donde:

26
Redes de Distribución de Agua (Hidráulica)

Para diseñar las tuberías de una ciudad, se usan sistemas de ecuaciones para calcular el

caudal y la presión en cada conexión

27
Topografía y Geodesia (Ajuste de Poligonales)

Cuando haces un levantamiento topográfico, los errores de medición son inevitables.

28
3.5. Ventajas del uso de arreglos y matrices

• Facilidad para trabajar con grandes estructuras En estructuras grandes (puentes,

edificios), hay muchas incógnitas. Las matrices permiten modelar sistemas completos en

una sola estructura matemática, facilitando el análisis global.

• Permiten modelar fenómenos físicos Las matrices ayudan a representar:

Distribución de cargas

Flujo de esfuerzos

Deformaciones en materiales Son una forma matemática de representar la realidad

física.

29
IV. CONCLUSIONES

El uso de arreglos unidimensionales (vectores) y bidimensionales (matrices) permitió

representar y organizar de manera eficiente la información numérica necesaria para la

resolución de sistemas de ecuaciones lineales, facilitando el procesamiento computacional de

datos en aplicaciones de ingeniería civil.

Se comprobó que los métodos numéricos aplicados mediante programación, como la

Eliminación de Gauss, Gauss-Jordan y la utilización de librerías matemáticas en Python y

MATLAB, ofrecen soluciones rápidas, precisas y confiables para sistemas de ecuaciones de

diferentes dimensiones.

La implementación de matrices en lenguajes de programación permitió automatizar

cálculos complejos que manualmente demandarían mayor tiempo y presentarían mayores

probabilidades de error, mejorando así la eficiencia en el análisis matemático y estructural.

A través del desarrollo del informe se evidenció que los sistemas de ecuaciones lineales

tienen una amplia aplicación en la ingeniería civil, especialmente en el análisis estructural,

hidráulico, topográfico y en la resolución de problemas relacionados con fuerzas,

deformaciones y equilibrio de estructuras.

El empleo de herramientas computacionales como Python, MATLAB y JavaScript

demostró la importancia de la programación en la ingeniería moderna, ya que permite resolver

problemas reales mediante algoritmos capaces de manejar grandes cantidades de datos de

forma ordenada y eficiente.

30
Finalmente, se concluye que el dominio de vectores, matrices y métodos matriciales

constituye una base fundamental para la formación del ingeniero civil, debido a que estas

herramientas son indispensables en el desarrollo de software, simulaciones y análisis técnicos

utilizados en proyectos de ingeniería.

31

También podría gustarte