Está en la página 1de 27

Programación y

Métodos Numéricos
Sec 03

M.Sc. Francisco Huguet


Departamento de Electrónica e Informática
2ª. Planta Edificio Jon de Cortina, Cubículo #11
Email: fhuguet@uca.edu.sv
PRESENTACIÓN DEL CURSO
Catedráticos
Sección 01 - Ing. Óscar Valencia - ovalencia@uca.edu.sv
Sección 02 -Ing. Gabriela Reynosa - greynosa@uca.edu.sv
Sección 03 - Ing. Francisco Huguet - fhuguet@uca.edu.sv

Edi$icio Jon de Cortina, DEI, Segunda Planta

Instructoras
Sofía Milena Meléndez Arbaiza 00027719@uca.edu.sv
Gabriela Alejandra Méndez Villacorta – 00037719@uca.edu.sv
Hazel Denisse Navarrete Escobar – 00094519@uca.edu.sv
PRESENTACIÓN DEL CURSO
Objetivos de aprendizaje
OBJETIVO GENERAL
La asignatura de Programación y Métodos Numéricos tiene como objetivo
general desarrollar la capacidad del estudiantado para programar aplicaciones
en un lenguaje de programación de alto nivel, para la solución de problemas de
cálculo relacionados con las diferentes disciplinas de la ingeniería.

OBJETIVOS ESPECÍFICOS
Que el estudiante comprenda la importancia de las herramientas informáticas
para la solución de problemas de ingeniería.
Que el estudiante adquiera la habilidad de descomponer en partes un problema
para diseñar un algoritmo que lo solucione y luego sea capaz de codificar el
algoritmo en un lenguaje de programación de alto nivel.
Que el estudiante utilice y programe los métodos numéricos para la solución a los
problemas de cálculo en las diferentes disciplinas de ingeniería.
PRESENTACIÓN DEL CURSO
La asignatura de Programación y Métodos Numéricos es una asignatura teórico-
práctica del área de Ciencias básica de ingeniería que introduce a los estudiantes al
uso de las herramientas informáticas para la resolución de problemas de ingeniería.
La asignatura se divide en tres etapas:
- Se inicia con las bases de la informática, mediante las definiciones de software y
hardware.
- Se introduce al estudiante en la metodología para el desarrollo de un programa
de software para la solución de problemas de ingeniería.
- El estudiante emplea los conceptos de programación para resolver problemas
matemáticos de ingeniería mediante programas hechos a la medida. Para ello, se
introduce al estudiante en métodos numéricos para abordar cuatro tipos de
problemas: 1) Solución de raíces no lineales, 2) Ajuste de curvas (regresión e
interpolación), 3) Solución de sistemas de ecuaciones lineales y 4) Diferenciación e
Integración.
Estos conocimientos y habilidades le permitirán al estudiante emplear al computador
como herramienta para la solución de problemas más complejos que abordará a lo
largo de su carrera y vida profesional. El software para utilizar será GNU Octave.
PRESENTACIÓN DEL CURSO
Desarrollo de un programa de software
para la solución de problemas de
ingeniería

bases de la informática
Introducción a los
métodos numéricos
PRESENTACIÓN DEL CURSO
PRESENTACIÓN DEL CURSO
METODOLOGÍA
PRESENTACIÓN DEL CURSO
Sobre las clases
La materia será impartida completamente en modalidad presencial. Por medio el Moodle del curso
https://ecampus.uca.edu.sv/ se pondrá a disposición material de apoyo (diapositivas de las clases, ejercicios
desarrollados, etc.) para su estudio. Se recomienda a los estudiantes llevar a clase computadoras portátiles para el
seguimiento de los cursos de programación.

Sobre los exámenes parciales, el examen corto y el examen =inal


Se realizarán 3 exámenes parciales presenciales y un examen corto. En los exámenes parciales se evaluará tanto teoría y
práctica de programación, y la aplicación de métodos numéricos. El examen corto estará vinculado a la única tarea del
curso.

Sobre las Tareas


Se desarrollará una tarea teórico-práctica ex-aula concerniente a la programación de métodos numéricos. Los estudiantes
tendrán un mínimo de 3 semanas para desarrollarla en grupos de máximo 4 personas.

Sobre Laboratorios
Se desarrollarán 6 laboratorios presenciales durante el curso. En los laboratorios se desarrollarán prácticas de
programación y aplicación de los métodos numéricos.
PRESENTACIÓN DEL CURSO
PRESENTACIÓN DEL CURSO
Sobre Octave
Es un programa libre con un alto nivel de programación, utilizado para cálculos numéricos.
Puede ser utilizado para resolver ecuaciones lineales y no lineales, integrales de distinto
orden, polinomios de distinto grado, distintas ecuaciones algebraicas y la representación
gráfica de distintas funciones. Es parte del proyecto GNU (proyecto de Softwares Libres)
PRESENTACIÓN DEL CURSO
Sobre el Moodle
El aula virtual estará completamente configurada a partir de la semana del 13 de marzo.

Referencias bibliográficas
u Chapra, Steven C. Métodos numéricos para ingenieros. 7a edición. McGraw-Hill, México,
2015 (3 ejemplares).
u Joyanes Aguilar, L. Fundamentos de programación: algoritmos, estructuras de datos y
objetos. 3a. Edición. McGraw-Hill, España, 2003 (6 ejemplares).
u López Román, Leobardo. Programación estructurada y orientada a objetos: un enfoque
algorítmico (Recurso electrónico). Alfaomega, México, 2011 (Multiusuario / Disponible a
través de E-libro)
u http://ads.harvard.edu/books/1990fnmd.book/
u http://mathfaculty.fullerton.edu/mathews/n2003/NumericalUndergradMod.html
u http://scratch.mit.edu/

Octave: https://www.gnu.org/software/octave/index
Programación y Métodos Numéricos
Ciclo 01/23
Sec 01

01. CONCEPTOS BÁSICOS DE


INFORMÁTICA
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

Qué es la informática?

Definición de computadora?

Cuales son sus componentes?


Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

INFORMÁTICA
Proviene de la fusió n de las palabras “Informació n” y de “Automá tica”, es el conjunto de
conocimientos cientı́<icos y té cnicas que hacen posible el tratamiento automá tico de la informació n
por medio de ordenadores (RAE).

COMPUTADORA
Dispositivo capaz de aceptar informació n de entrada, de procesarla realizando cá lculos aritmé ticos
y ló gicos, de almacenar informació n, y de desplegar los resultados de las operaciones en diversos
formatos .
El procesamiento de la informació n se realiza ejecutando paso a paso una secuencia de
instrucciones que se encuentra almacenada (programa).
Un sistema informá tico está compuesto por dos sub-sistemas:
• Hardware: Partes fı́sicas internas o externas de la computadora
• Software: Conjunto de programas que indica a la computadora qué tareas realizar y que se
encuentran almacenados en memoria
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA
EL HARDWARE 1. Escáner
El Hardware es el conjunto de componentes 2. CPU (Microprocesador)
fı́sicos, tanto internos como externos de una 3. Memoria Principal (RAM)
computadora.
4. Tarjetas de Expansión
Tradicionalmente se clasi<ica en hardware
principal y hardware complementario. 5. Fuente de Alimentación

El Hardware Principal abarca los componentes 6. Unidad Lógica


indispensables para que la computadora tenga 7. Memoria Secundaria
funcionalidad mínima (la Unidad Central, la
8. Placa base
Memoria, y medios de salida y entrada de
datos). 9. Altavoces
El hardware complementario son los 10. Monitor
componentes que realizan otras funciones (má s 11. Teclado *En rojo aparecen los
allá de las bá sica) no estrictamente necesarias dispositivos del
para que la computadora funcione (impresoras, 12. Ratón
Hardware principal
altavoces). 13. Impresora
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

ORGANIZACIÓN FÍSICA DE UNA COMPUTADORA (HARDWARE)

LA ARQUITECTURA DE VON NEUMAN


1. Una memoria principal que almacena datos e
instrucciones
2. La unidad aritmética y lógica que realiza
operaciones binarias
3. Una unidad de control que interpreta
instrucciones en memoria y provoca su ejecució n
4. El equipo de entrada y salida dirigido por la
unidad de control
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

PARÉNTESIS HISTÓRICO
El primer sistema computacional electrónico
programable de propó sito general se desarrolló
en 1946 en la Universidad de Pensilvania. La
nombraron ENIAC (Calculadora e Integradora
Numérica Electrónica).
Ocupaba una super<icie de 167 metros
cuadrados y operaba un total de 17.468 vá lvulas
electró nicas o tubos de vacı́o que permitı́a hacer
5.000 sumas y 3000 multiplicaciones por
segundo. Contenı́a 7.200 diodos de cristal, 1.500
relé s, 70.000 resistencias, 10.000 condensadores
y 5 millones de soldaduras que le daban un peso
Trabajaba en aritmética decimal y su programación consistía en total de 27 toneladas y media 2,4 metros de alto
cambiar los cables de los circuitos (como los conmutadores) y era un
proceso que tardaba días. 90 centı́metros de ancho y 30 metros de largo. El
A pesar de no poder trabajar en binario ni almacenar los programas a
consumo que poseı́a era de 160 kW
ejecutar, se le considera la primera computadora de propósito general.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

PARÉNTESIS HISTÓRICO
LA COMPUTADORA IAS
La ENIAC no podı́a guardar los programas,
por lo tanto el proceso de programació n era
tedioso.
Se atribuye a John von Neumann el
Concepto de Programa Almacenado: El
programa guardado podı́a ser leı́do,
modi<icado y vuelto a almacenar en una zona
de memoria.
La primera idea fue propuesta como una
mejora para la ENIAC, llamada EDVAC
(Electronic Discrete Variable Computer). La
computadora era binaria y su arquitectura se
convirtió un estandar para los desarrollos
informá ticos posteriores.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA
EL SOFTWARE Existen dos tipos de software:
Software de Sistema: Es el
conjunto de programas que
gestiona los recursos de la
El Software es un conjunto de computadora, como el
instrucciones que controlan y procesador central, enlaces de
coordinan los componentes de comunicaciones o dispositivos
perifé ricos.
hardware de una computadora y
controlan las operaciones de un
sistema informá tico. Software de Aplicaciones: Es
el conjunto de programas
desarrollados por usuarios
externos (empresas, equipos o
personas) que hacen que la
computadora ejecute tareas
especı́<icas.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

EL SOFTWARE

• El software del sistema incluye al sistema operativo, los editores de texto, los compiladores
(inté rpretes de los lenguajes de programació n) y los programas de utilidad.
• El Sistema Operativo (SO) es la parte má s importante del Software del Sistema, porque controla
y gestiona los recursos de la computadora.
• Los softwares de aplicació n, son herramientas para tareas especı́<icas: navegar en internet,
editar imá genes audio y video, juegos, etc.

LENGUAJES DE PROGRAMACIÓN
Los programas se escriben en lenguajes especializados llamados lenguajes de programació n. Hay
muchos lenguajes de programació n, pero en esencia, la té cnica bá sica necesaria para programar es
comú n a todos los lenguajes.
Programación y Métodos Numéricos
01. HISTORIA Y CONCEPTOS BÁSICOS DE INFORMÁTICA

LENGUAJES DE PROGRAMACIÓN

Un lenguaje de programació n es un idioma formado por un conjunto de sı́mbolos y reglas sintá cticas y
semá nticas que de<inen la estructura y el signi<icado de las instrucciones de que consta el lenguaje.
• Al texto del programa se le llama comunmente có digo fuente (o simplemente có digo)
• Cuando un ordenador lleva a cabo una tarea indicada por un programa, decimos que ejecuta el
có digo.
• A la hora de programar se pueden seguir diversas té cnicas o paradigmas de programació n:
programació n imperativa, declarativa, estructurada, modular, orientada a objetos, etc. Los
lenguajes de programació n suelen soportar varios de estos paradigmas de programació n.
Un paradigma de programació n es un marco conceptual, un conjunto de ideas que describne una
forma de entender la construcció n de programa. Como tal, un paradigma de<ine:
• Las herramientas conceptuales que se pueden utilizar para construir un programa (objetos,
relaciones, funciones, instrucciones).
• Las formas vá lidas de combinarlas
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

PROGRAMACIÓN ESTRUCTURADA PROGRAMACIÓN MODULAR

La visió n clá sica de la programació n Es una evolució n de la programació n estructurada.


estructurada se re<iere al control de Consiste en dividir un programa en mó dulos o
subprogramas con el <in de hacerlo má s legible y
ejecución de las instrucciones: La regla
manejable. En general, un problema complejo debe ser
general es que las instrucciones se ejecuten dividido en varios subproblemas má s simples, y estos a
sucesivamente una tras otra, pero diversas su vez en otros subproblemas má s simples. Esto debe
partes del programa se ejecutan o no hacerse hasta obtener subproblemas lo su<icientemente
dependiendo de que se cumpla alguna simples como para poder ser resueltos fá cilmente con
condició n. Tambié n hay instrucciones que algú n lenguaje de programació n.
deben ejecutarse varias veces, ya sea en un
nú mero <ijo o hasta que se cumpla una
condició n determinada. La programació n
estructurada se ubica como un enfoque de
paradigma de la programació n imperativa.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

LENGUAJES DE ALTO NIVEL


En la actualidad los lenguajes de programación, llamados de alto nivel, están pensados para
que los programas sean comprensibles por el ser humano. Sin embargo, el código fuente de los
mismos no es comprendido por el ordenador, ya que éste sólo maneja el lenguaje binario o
lenguaje máquina.
Es necesario hacer una traducción de los programas escritos en un lenguaje de programación
de alto nivel a lenguaje máquina. Hay dos tipos diferentes de lenguajes dependiendo de la
forma de hacer esta traducción:
• Lenguajes compilados
• Lenguajes interpretados
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

LENGUAJES DE ALTO NIVEL


Lenguajes compilados: El Compilador realiza
una traducció n completa del programa en
lenguaje de alto nivel a un programa
equivalente en lenguaje má quina. Este
programa resultante, programa ejecutable, se
puede ejecutar todas las veces que se quiera
sin necesidad de volver a traducir el programa
original.
Lenguajes interpretados: En este caso, el
Inté rprete va leyendo el programa en lenguaje
de alto nivel instrucció n a instrucció n, cada
una de ellas se traduce y se ejecuta. No se
genera un programa directamente ejecutable.

El enfoque compilado genera có digo ejecutable que utiliza directamente las instrucciones nativas de la CPU: el programa se
ejecutará mucho má s velozmente que si se hiciera en un lenguaje interpretado. A cambio, presenta el inconveniente de que el
ejecutable resultante de la compilació n só lo sirve para ser ejecutado en una CPU concreta y un Sistema Operativo concreto
(aquellos para los que se compiló ), o bien versiones compatibles de la CPU y el operativo, mientras que si se hiciera en un
lenguaje interpretado podrı́a ser ejecutado en cualquier arquitectura y operativo para los que exista el inté rprete.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA
DISEÑO DE UN PROGRAMA
• Análisis del problema. A partir de la descripció n del
problema, es necesario obtener una idea clara sobre qué
se debe hacer (proceso), determinar los datos necesarios
para conseguirlo (entrada) y la informació n que debe
proporcionar la resolució n del problema (salida).
• Diseño del algoritmo. Se debe identi=icar las tareas má s
importantes para resolver el problema y disponerlas en
el orden en el que han de ser ejecutadas.
• Codi6icación del algoritmo en un programa. Solamente
despué s de realizar las dos etapas anteriores se aborda la
codi=icació n del programa en el lenguaje de
programació n elegido.
• Ejecución y pruebas del programa. Se debe comprobar
que el programa resultante está correctamente escrito en
el lenguaje de programació n y, má s importante aú n, que
hace lo que realmente debe hacer.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

ALGORITMO

Se denomina algoritmo a una secuencia no


ambigua, finita y ordenada de instrucciones que
han de seguirse para resolver un problema. Un
programa de ordenador es un algoritmo
transcrito a un lenguaje de programación.

Dos programas distintos codificados en el mismo


o en distinto lenguaje de programación y que
resuelven el mismo problema con la misma
secuencia de pasos, se dice que son
implementaciones del mismo algoritmo.
Programación y Métodos Numéricos
01. CONCEPTOS BÁSICOS DE INFORMÁTICA

ENLACES COMPLEMENTARIOS SOBRE LA HISTORIA DE LA COMPUTADORA

https://www.computerhistory.org/timeline/computers/

https://www.timetoast.com/timelines/linea-de-tiempo-1-c2ef7e41-3552-43a9-a95a-
877283f12352

También podría gustarte