You are on page 1of 29

INSTITUTO TECNOLOGICO DE OAXACA

INGENIERIA QUIMICA

ALUMNO: GIOVANNI HERRRA CARAPIA

PRIMERA UNIDAD
IMPORTANCIA DE LOS METODOS NUMERICOS

MATERIA: METODOS NUMERICOS

PROFESOR: ING. BENITO ARECHIGAN

GRUPO: QB

OAXACA DE JUAREZ, OAX. A 29 DE FEBRERO DE 2016

1.1 Importancia de los mtodos numricos.


Los mtodos numricos son tcnicas mediante las cuales es posible
formular problemas matemticos de tal forma que puedan resolverse
usando operaciones aritmticas.
Los mtodos numricos nos vuelven aptos para entender esquemas
numricos a fin de resolver problemas matemticos, de ingeniera y
cientficos en una computadora, reducir esquemas numricos bsicos,
escribir programas y resolverlos en una computadora y usar
correctamente el software existente para dichos mtodos y no solo
aumenta nuestra habilidad para el uso de computadoras sino que
tambin amplia la pericia matemtica y la comprensi6n de los principios
cientficos bsicos.
El anlisis numrico trata de disear mtodos para aproximar de una
manera
eficiente
las
soluciones
de
problemas
expresados
matemticamente.
El objetivo principal del anlisis numrico es encontrar soluciones
aproximadas a problemas complejos utilizando slo las operaciones
ms simples de la aritmtica. Se requiere de una secuencia de
operaciones algebraicas y lgicas que producen la aproximacin al
problema matemtico.
Los mtodos numricos pueden ser aplicados para resolver
procedimientos matemticos en:

Clculo de derivadas

Integrales

Ecuaciones diferenciales

Operaciones con matrices

Interpolaciones

Ajuste de curvas

Polinomios

Los mtodos numricos son adecuados para la solucin de problemas


comunes de ingeniera, ciencias y administracin, utilizando
computadoras electrnicas.
En el proceso de solucin de problemas por
computadoras se requieren los pasos siguientes.

medio

de

* Especificacin del problema. Con esto se indica que se debe


identificar perfectamente el problema y sus limitaciones, las variables
que intervienen y los resultados deseados.
*Anlisis. Es la formulacin de la solucin del problema denominada
tambin algoritmo, de manera que se tenga una serie de pasos que
resuelvan el problema y que sean susceptibles de ejecutarse en la
computadora.
*Programacin. Este paso consiste en traducir el mtodo de anlisis o
algoritmo de solucin expresndole como una serie detallada de
operaciones.

*Verificacin. Es la prueba exhaustiva del programa para eliminar todos


los errores que tenga de manera que efecte lo que desea los resultados
de prueba se comparan con soluciones conocidas de problemas ya
resueltos.
*Documentacin. Consiste en preparar un instructivo del programa de
manera que cualquier persona pueda conocer y utilizar el programa.
*Produccin. Es la ltima etapa en la que solo se proporcionan datos de
entrada del programa obtenindose las soluciones correspondientes.
De lo antes expuesto se puede concluir que es necesario un
conocimiento completo del problema, y de los campos de las
matemticas relacionados con el que es precisamente el objeto de los
mtodos numricos para computadora.
Si los mtodos numricos son los algoritmos (conjuntos detallados y
secuenciados de operaciones) que nos llevan hasta las soluciones
estimadas de los problemas, el estudio de stos y del anlisis de
errores que pueden llevar asociados constituye el Anlisis Numrico.
De acuerdo con nuestros objetivos, nosotros nos concentraremos muy
especialmente en los mtodos numricos y rebajaremos el rigor del
anlisis de errores, propio de quien tiene por centro el mtodo numrico
mismo y no tanto su aplicacin inmediata, sin olvidarnos de l. Es decir,
seguiremos la lnea de los textos de ``Mtodos Numricos" ms que la
de los textos de ``Anlisis Numrico".

1.2 TIPOS DE ERRORES.


Todos los resultados de la aplicacin de mtodos numricos van
acompaados de un error que es conveniente estimar.

En muchas ocasiones esto no es posible hacerlo de un modo


cuantitativo, en otras, en cambio, pueden llevarse a cabo anlisis de
errores que pueden ser:
A priori, cuando no se utilizan los resultados en el anlisis, que puede
llegar a ser muy complejo (recordar, p. ej., las expresiones del error de
una simple divisin basadas en las del clculo diferencial), y
A posteriori, cuando se utilizan los propios resultados en el anlisis de
los errores.
Es conveniente tener presente en todo momento cules son las fuentes
de los errores, lo que puede ser una ayuda definitiva a la hora de
resolver eventuales problemas prcticos, si bien es cierto que stas
actan siempre juntas, haciendo muy difcil el conocimiento detallado de
la contribucin de cada una en cada caso.
Fuentes de error
Son tres que dan lugar a una clasificacin de los errores de acuerdo con
ellas:

INHERENTES.
Asociado a la precisin de los datos de imputa. (P. Ej. El uso de
0.333333 en lugar de 1/3.) Su caracterstica principal es que se propaga
al output. Esta propagacin puede estudiarse mediante anlisis de
sensibilidad, que permiten detectar hipersensibilidades de los
resultados hacia variables especficas en rangos particulares, de modo
que puedan tomarse precauciones especiales en esos casos.
Cuando existe una magnificacin inaceptable del error se dice que el
problema est mal condicionado. Los errores de input son causantes de
imprecisin en los resultados.

Truncamiento.
Asociado a la substitucin de procesos infinitos por procesos finitos,
tales como el truncamiento de series, el uso se sumas limitadas para el
clculo de integrales o el uso de diferencias finitas para el clculo de
derivadas. Los errores de truncamiento causan inexactitud de los
resultados.
Cuando se comparan unos mtodos numricos con otros suelen
estudiarse algunas propiedades asociadas con los errores, en estos
casos es al error de truncamiento al que se refiere, exponente, que se

expresa en funcin de algn parmetro conveniente, h, que tiende


a 0 (o a infinito ) cuando el error es nulo.

Redondeo.
Asociado a la precisin limitada con la que se realizan las operaciones
(cifras significativas). Su mayor peligro radica en su tendencia a
acumularse.

1.3 FASES EN LA SOLUCIN DE UN PROBLEMA


CON ENFOQUE ALGORITMICO
Las fases en la construccin de un programa para resolver un problema
mediante la computadora son, en orden, las siguientes:

Anlisis del problema

Diseo del algoritmo

Programacin

Ejecucin y pruebas

El Paso cero sera Entender el problema, parece banal, pero no lo es


cuando se piensa en la gran cantidad de proyectos de computacin que
se desarrollaron sin haber comprendido bien para que se hacan, o cual
era el problema que supuestamente iban a resolver.
Comprender la importancia de entender con claridad el problema antes
de abocarnos a encontrar una solucin.
Paso 1 Anlisis del problema
El anlisis consiste en una clara definicion del problema, donde se
contemple exactamente lo que debe hacer el programa y el resultado o
solucion deseada.
Dado que se busca una solucin por computadora, se precisan
especificaciones detalladas de entradas y salidas.

Para resolver un problema con un ordenador hay que disponer de los


datos de entrada, estudiar el tratamiento que se ha de realizar a dichos
datos, la informacin que se desea obtener como resultado y de que
manera debe presentarse.
Es decir, despus de analizar el problema, se han de conocer claramente
tres cosas.

Datos de Entrada de que se dispone

Proceso o Tratamiento que ha de realizarse con estos datos.

Informacin de salida deseada.

Una de las tcnicas mas empleadas recibe el nombre de H.I.P.O.


(Hierarchy the plus input process output) que consiste en esquematizar
cada programa, o una parte del mismo en los tres bloques (los descritos
anteriormente)..
ENTRADA

PROCESO

SALIDA

Ejemplo
Sin entrar en el campo de la informtica, para hacer la nmina de los
mejores alumnos de una carrera, se necesita saber:
ENTRADA: Los datos de cada uno de los alumnos y si estos datos estn
en papel o en un fichero donde est toda la informacin de los alumnos.
PROCESO: La frmula matemtica para calcular el promedio de notas es:
(nota 1 + nota 2 + nota 3 + .....+ nota n) / cantidad de notas
SALIDA: El modelo del informe donde se desean imprimir el promedio de
los alumnos.

Paso 2 Diseo del algoritmo


Teniendo en cuenta que un algoritmo es un mtodo para resolver
problemas, una vez analizado el mismo se precisa disear un algoritmo
que indique claramente los pasos a seguir para resolverlo.
Para realizar un determinado proceso, se le debe suministrar al
ordenador una frmula para la resolucin de un problema (algoritmo),
cuyo diseo debe ser independiente de la computadora que resuelve el
problema.

Dada la importancia del algoritmo en la ciencia de la computacin, un


aspecto muy importante ser el diseo del algoritmo.
En esta etapa se realizar una representacin de la secuencia. Estas
representaciones son las herramientas de: diagramas de flujo,
pseudocdigos y/o tablas de decision.

PASO 3 PROGRAMACION
Una vez que el diagrama de flujo o el algoritmo de resolucin del
problema est definido se pasa a la fase de codificacin del programa en
cualquier lenguaje (C, basic, cobol, pascal, etc.) cuyo resultado ser el
programa fuente, el cual sigue las reglas de sintaxis que el lenguaje
escogido exija.
Despus de codificado el programa, se introduce en el ordenador
mediante unos programas especiales llamados editores.
Una vez dentro del ordenador, el programa deber ser traducido al nico
lenguaje que ste entiende: Lenguaje de mquina. Dicha operacin se
realiza mediante el correspondiente programa traductor o compilador
del lenguaje en el que est escrito el programa.
PROGRAMACION

ANALISIS

ALGORITMO

CODIFICACION

EDICION

TRADUCCION

PASO 4 Ejecucin
El hecho de haber diseado un buen algoritmo y luego haberlo
codificado en algn lenguaje de programacin no significa que el
programa resuelva correctamente el problema en cuestin.
Por eso, antes de dar por finalizada cualquier labor de programacin, es
fundamental preparar un conjunto de datos lo ms representativo
posible del problema, que permitan probar el programa cuando se
ejecute y as verificar los resultados.
Cuanto ms exhaustivas sean las pruebas de un programa, mayor
seguridad se tendr de que ste funcione correctamente y, por lo tanto,
menor posibilidad de errores.
El programa se considera terminado cuando se han realizado pruebas y
ensayo de su fiabilidad con el conjunto de datos seleccionados y otros
nuevos, hasta incluso con datos reales, y no se encuentren errores de
ningn tipo.

1.4 DEFINICIN Y CARACTERSTICAS DE ALGORITMOS


Algoritmo: Conjunto de operaciones que se utilizan para resolver un
problema especfico. En este conjunto de instrucciones se indica la
secuencia de operaciones que se deben realizar para, a partir de los
datos de entrada, obtener el resultado buscado. El concepto de
algoritmo es anterior a los ordenadores, y ampliamente utilizado en el
mundo de la ciencia para la resolucin metdica de problemas. Sin
embargo, con la aparicin de los ordenadores se comprob que era una
herramienta ideal, ya que cualquier algoritmo puede transformarse en
un

programa

informtico.

Caractersticas del algoritmo: Tiene que ser finito (con un final), preciso
(detallar el orden de las operaciones a realizar) y unvoco (al aplicar el
algoritmo a los mismos datos de entrada, siempre se obtendr el mismo
resultado

la

salida).

Un Algoritmo es un conjunto ordenado y finito de pasos o instrucciones


que conducen a la solucin de un problema. La naturaleza de los
problemas vara con el mbito o con el contexto donde estn
planteados; as, existen problemas matemticos, qumicos, filosficos,
etc. Segn esto la naturaleza de los algoritmos tambin es variada y no
todos ellos pueden ser ejecutados por la computadora. En este curso
consideramos aquellos algoritmos que expresan soluciones usando
reglas cuantitativas cuyas instrucciones pueden ser introducidas en la
computadora, a este tipo de algoritmos se denominan Algoritmos
Computacionales.
En la resolucin de un problema con la computadora la parte pensante
est en el algoritmo. As pues la eficacia de un programador no est en
conocer la herramienta de programacin, cosa necesaria, sino en saber
resolver problemas con la computadora para lo cual se requiere conocer

un concepto conocido como metodologa de la programacin cuyo eje


central es el algoritmo.
Una vez que la solucin de un problema ha sido expresada mediante un
algoritmo el paso siguiente es convertirlo a programa para lo cual se
elige un lenguaje de programacin. De modo que un programa resulta
ser la implementacin de un algoritmo en un determinado lenguaje de
programacin. Esto significa, por otro lado, que un algoritmo es
independiente del lenguaje de programacin.
PROBLEMA -> ALGORITMO -> PROGRAMA
El pseudocdigo es una herramienta algortmica que permite escribir
pseudoprogramas (una imitacin de un programa real) utilizando un
lenguaje de pseudoprogramacin que es una imitacin de los lenguajes
de programacin de alto nivel. As, un pseudocdigo es una combinacin
de smbolos (+, -, *, /, %, >, >=, <, <=, !=, ==, y, o, no), trminos
(Leer,

Imprimir,

Abrir,

Cerrar,

Hacer...Mientras,

Mientras...Hacer,

Para...Mientras, etc) y otras caractersticas comnmente utilizadas en


uno

ms

lenguajes

de

alto

nivel.

No existen reglas que determinen que es o no es un pseudocdigo, sino


que vara de un programador a otro. El objetivo del pseudocdigo es
permitir al programador centrarse en los aspectos lgicos de la solucin
evitando las reglas de sintaxis de un lenguaje de programacin.
Posteriormente el pseudocdigo debe ser traducido a programa usando
un lenguaje de programacin de alto nivel como Java, C++, C, etc.
Ejemplo:- Disee un algoritmo que permita hallar la suma y el promedio
de tres nmeros.
INICIO
LEER numero1, numero2, numero3
suma = numero1 + numero2 + numero3
promedio = suma / 3
IMPRIMIR suma, promedio

FIN

1.5 MODELO MATEMATICO


Un modelo matemtico describe tericamente un objeto que existe
fuera del campo de las Matemticas. Las previsiones del tiempo y los
pronsticos econmicos, por ejemplo, estn basados en modelos
matemticos. Su xito o fracaso depende de la precisin con la que se
construya esta representacin numrica, la fidelidad con la que se
concreticen
hechos
y
situaciones
naturales
en
forma
de variables relacionadas entre s.
Bsicamente, en un modelo matemtico advertimos 3 fases:
* La construccin, proceso en el que se convierte el objeto a lenguaje
matemtico.
* El anlisis o estudio del modelo confeccionado.
* La interpretacin de dicho anlisis, donde se aplican los resultados
del estudio al objeto del cual se parti.
La utilidad de estos modelos radica en que ayudan a estudiar cmo se
comportan las estructuras complejas frente a aquellas situaciones que
no pueden verse con facilidad en el mbito real.
Clasificaciones segn diversos criterios
De acuerdo a la proveniencia de la informacin en que se basa el
modelo, podemos distinguir entre modelo heurstico, que se apoya en
las definiciones de las causas o los mecanismos naturales que originan
el fenmeno en cuestin, y modelo emprico, enfocado en el estudio de
los resultados de la experimentacin.
Asimismo, con respecto al tipo de resultado pretendido, existen dos
clasificaciones bsicas:
* Modelos cualitativos, que pueden valerse de grficos y que no
buscan un resultado de tipo exacto, sino que intentan detectar, por
ejemplo, la tendencia de un sistema a incrementar o disminuir un
determinado valor;

* Modelos cuantitativos, que, por el contrario, necesitan dar con un


nmero preciso, para lo cual se apoyan en frmulas matemticas de
variada complejidad.
Otro factor que divide los tipos de modelos matemticos es la
aleatoriedad de la situacin inicial; as distinguimos entre los
modelos estocsticos, que devuelven la probabilidad de que se obtenga
un cierto resultado y no el valor en s, y los deterministas, cuando
los datos y los resultados se conocen, por lo que no existe
incertidumbre.
Segn su aplicacin podemos describir los siguientes tipos:
* Modelo de simulacin, que intenta adelantarse a un resultado en
una determinada situacin, sea que sta se pueda medir en forma
precisa o aleatoria;
* Modelo de optimizacin, que contempla distintos casos
y condiciones, alternando valores, para encontrar la configuracin ms
satisfactoria;
* Modelo de control, a travs del cual se pueden determinar los
ajustes necesarios para obtener un resultado particular.
Ejemplos de modelos por tipos
Si se emplea la clasificacin de modelos segn su aplicacin u
objetivo (modelos descriptivos o de simulacin, modelos de optimacin o
eleccin de ptimo, modelos de control o tratamiento) y segn si se
trata de modelos deterministas o probabilistas se pueden dar algunos
ejemplos ilustrativos:

Ejemplos:
1. Problema de la Dieta: (Stigler, 1945). Consiste en determinar una
dieta de manera eficiente, a partir de un conjunto dado de alimentos, de
modo de satisfacer requerimientos nutricionales. La cantidad de
alimentos a considerar, sus caractersticas nutricionales y los costos de
stos, permiten obtener diferentes variantes de este tipo de modelos.
Por ejemplo:

Variables de Decisin:
X1: Litros de Leche utilizados en la Dieta
X2: Porciones de Legumbres utilizadas en la Dieta
X3: Unidades de Naranjas utilizadas en la Dieta
Funcin Objetivo: (Minimizar los Costos de la Dieta) Min 2X1 +
0,2X2 + 0,25X3
Restricciones: Satisfacer los requerimientos nutricionales
Niacina: 3,2X1 + 4,9X2 + 0,8X3 >= 13
Tiamina: 1,12X1 + 1,3X2 + 0,19X3 >=15
Vitamina C: 32X1 + 0X2 + 93X3 >= 45
No Negatividad: X1>=0; X2>=0; X3>=0
la solucin ptima es X1=0, X2=11,4677, X3=0,483871, con
Valor ptimo V(P)=2,4145.

1.6 CLASIFICACIN DE SOFTWARE


El Software es el soporte lgico e inmaterial que permite que la
computadora pueda desempear tareas inteligentes, dirigiendo a los
componentes fsicos o hardware con instrucciones y datos a travs de
diferentes tipos de programas.
El Software son los programas de aplicacin y los sistemas operativos,
que segn las funciones que realizan pueden ser clasificados en:

Software de Sistema

Software de Aplicacin

Software de Programacin

Software de Sistema
Se llama Software de Sistema o Software de Base al conjunto de
programas que sirven para interactuar con el sistema, confiriendo
control sobre el hardware, adems de dar soporte a otros programas.
El Software de Sistema se divide en:

Sistema operativo
El Sistema Operativo es un conjunto de programas que administran los
recursos de la computadora y controlan su funcionamiento.
Un Sistema Operativo realiza cinco funciones bsicas: Suministro de
Interfaz al Usuario, Administracin de Recursos, Administracin de
Archivos, Administracin de Tareas y Servicio de Soporte.

1. Suministro de interfaz al usuario: Permite al usuario


comunicarse con la computadora por medio de interfaces que se
basan en comandos, interfaces que utilizan mens, e interfaces
grficas de usuario.

2. Administracin de recursos: Administran los recursos del


hardware como la CPU, memoria, dispositivos de almacenamiento
secundario y perifricos de entrada y de salida.
3. Administracin de archivos: Controla la creacin, borrado,
copiado y acceso de archivos de datos y de programas.

4. Administracin de tareas: Administra la informacin sobre


los programas y procesos que se estn ejecutando en la
computadora.

Puede

cambiar

la

prioridad

entre

procesos,

concluirlos y comprobar el uso de estos en la CPU, as como


terminar programas.

5. Servicio de soporte: Los Servicios de Soporte de cada


sistema operativo dependen de las implementaciones aadidas a
este, y pueden consistir en inclusin de utilidades nuevas,
actualizacin de versiones, mejoras de seguridad, controladores
de nuevos perifricos, o correccin de errores de software.

Controladores de Dispositivos
Los Controladores de Dispositivos son programas que permiten a otros
programas de mayor nivel como un sistema operativo interactuar con un
dispositivo de hardware.

Programas Utilitarios
Los Programas

Utilitarios realizan

diversas

funciones

para

resolver

problemas especficos, adems de realizar tareas en general y de


mantenimiento. Algunos se incluyen en el sistema operativo.

Software de Aplicacin
El Software de Aplicacin son los programas diseados para o por los
usuarios para facilitar la realizacin de tareas especficas en la
computadora, como pueden ser las aplicaciones ofimticas (procesador
de texto, hoja de clculo, programa de presentacin, sistema de gestin
de base de datos...), u otros tipos de software especializados como
software mdico, software educativo, editores de msica, programas de
contabilidad, etc.

Software de Programacin
El Software de Programacin es el conjunto de herramientas que
permiten

al

desarrollador

informtico

escribir

programas

usando

diferentes alternativas y lenguajes de programacin.


Este tipo de software incluye principalmente compiladores, intrpretes,
ensambladores, enlazadores, depuradores, editores de texto y un
entorno

de

desarrollo

integrado

que

contiene

las

herramientas

anteriores, y normalmente cuenta una avanzada interfaz grfica de


usuario (GUI).

1.7 CARCTERISTICAS TECNICAS DE UNA SUPER


COMPUTADORA
Una supercomputadora o

un superordenador es

aquella

con

capacidades de clculo muy superiores a las computadoras comunes y


de escritorio y que son usadas con fines especficos. Hoy da los

trminos

de

supercomputadora

superordenador

estn

siendo

reemplazados por computadora de alto rendimiento y ambiente de


cmputo de alto rendimiento, ya que las supercomputadoras son un
conjunto de poderosos ordenadores unidos entre s para aumentar su
potencia de trabajo y rendimiento.

Supercomputadoras UNAM
El supercmputo en la UNAM comenz formalmente en 1991, cuando fue
puesto en operacin el equipo CRAY Y/MP. Desde entonces, se han
instalado supercomputadoras de diferentes tipos, cuyas caractersticas
son un reflejo de los cambios en las tecnologas de cmputo y
telecomunicaciones que han acontecido desde entonces.
La siguiente figura muestra las propiedades ms importantes de las
diversas supercomputadoras de la UNAM.

Principales usos

Las supercomputadoras se utilizan para abordar problemas muy


complejos o que no pueden realizarse en el mundo fsico bien, ya sea
porque son peligrosos, involucran cosas increblemente pequeas o
increblemente grandes. A continuacin damos algunos ejemplos:

Mediante

el

uso

de

supercomputadoras,

los

investigadores

modelan el clima pasado y el clima actual y predicen el clima


futuro.

Los

astrnomos

los

cientficos

del

espacio

utilizan

las

supercomputadoras para estudiar el Sol y el clima espacial.

Los cientficos usan supercomputadoras para simular de qu


manera un tsunami podra afectar una determinada costa o
ciudad.

Las supercomputadoras se utilizan para simular explosiones de


supernovas en el espacio.

Las supercomputadoras se utilizan para probar la aerodinmica de


los ms recientes aviones militares.

Las supercomputadoras se estn utilizando para modelar cmo se


doblan las protenas y cmo ese plegamiento puede afectar a la
gente que sufre la enfermedad de Alzheimer, la fibrosis qustica y
muchos tipos de cncer.

Las supercomputadoras se utilizan para modelar explosiones


nucleares,
nucleares.

limitando

la

necesidad

de

verdaderas

pruebas

1.8 Lenguaje de programacin


Lenguaje de programacin. Es un idioma artificial diseado para
expresar computaciones que pueden ser llevadas a cabo por mquinas
como las computadoras. Pueden usarse para crear programas que
controlen el comportamiento fsico y lgico de una mquina, para
expresar algoritmos con precisin, o como modo de comunicacin
humana.
Est formado de un conjunto de smbolos y reglas sintcticas y
semnticas que definen su estructura y el significado de sus elementos
y expresiones. Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el cdigo fuente de un programa informtico se le
llama programacin.
Tambin la palabra programacin se define como el proceso de creacin
de

un

programa

de

computadora,

mediante

la

aplicacin

de

procedimientos lgicos, a travs de los siguientes pasos:

El desarrollo lgico del programa para resolver un problema en


particular.

Escritura de la lgica del programa empleando un lenguaje de


programacin especfico (codificacin del programa)

Ensamblaje o compilacin del programa hasta convertirlo en


lenguaje de mquina.

Prueba y depuracin del programa.

Desarrollo de la documentacin.

Existen muchos lenguajes de programacin de alto nivel con sus


diferentes versiones. Por esta razn es difcil su tipificacin, pero una
clasificacin muy extendida desde el punto de vista de trabajar de los
programas y la filosofa de su creacin es la siguiente:

Lenguajes de programacin imperativos: entre ellos tenemos


el Cobol, Pascal, C y Ada.

Lenguajes de programacin declarativos: el Lisp y el Prolog.

Lenguajes

de

programacin

orientados

objetos: el

Smalltalk y el C++.

Lenguajes de programacin orientados al problema: son


aquellos lenguajes especficos para gestin.

Lenguajes

de

programacin

naturales: son

los

nuevos

lenguajes que pretender aproximar el diseo y la construccin de


programas al lenguaje de las personas.
Otra clasificacin de los lenguajes de programacin de alto nivel, es
teniendo en cuenta el desarrollo de las computadoras segn sus
diferentes generaciones:

Lenguajes

de

programacin

de

primera

generacin: el

lenguaje mquina y el ensamblador.

Lenguajes de programacin de segunda generacin : los


primeros lenguajes de programacin de alto nivel imperativo
(FROTRAN, COBOL).

Lenguajes de programacin de tercera generacin: son


lenguajes de programacin de alto nivel imperativo pero mucho
ms utilizados y vigentes en la actualidad (ALGOL 8, PL/I, PASCAL,
MODULA).

Lenguajes de programacin de cuarta generacin: usados


en aplicaciones de gestin y manejo de bases de datos (NATURAL,
SQL).

Lenguajes de programacin de quinta generacin: creados


para la inteligencia artificial y para el procesamiento de lenguajes
naturales (LISP, PROLOG).

Definicin de programa
En informtica, un programa es un conjunto de instrucciones u rdenes
que indican a la mquina las operaciones que sta debe realizar con
unos

datos

determinados.

En

general,

todo

programa

indica

la computadora cmo obtener unos datos de salida, a partir de unos


datos de entrada. En la siguiente figura se muestra, grficamente, el
funcionamiento bsico de un programa.
Mtodo analtico y emprico
El Mtodo analtico es aquel mtodo de investigacin que consiste en la
desmembracin de un todo, descomponindolo en sus partes o
elementos para observar las causas, la naturaleza y los efectos. El
anlisis es la observacin y examen de un hecho en particular. Es
necesario conocer la naturaleza del fenmeno y objeto que se estudia
para comprender su esencia. Este mtodo nos permite conocer ms del
objeto de estudio, con lo cual se puede: explicar, hacer analogas,
comprender mejor su comportamiento y establecer nuevas teoras.
Mtodo convergente y divergente
El Conocimiento Convergente, se mueve buscando una respuesta
determinada o convencional; y encuentra una nica solucin a los
problemas que, por lo general suelen ser conocidos. Se conoce tambin
como lgico, convencional, racional o vertical.
El Conocimiento Divergente, en cambio se mueve en varias direcciones
en busca de la mejor solucin para resolver problemas a los que siempre
enfrenta como nuevos y generar mltiples resoluciones apropiadas ms
que una nica correcta. Tiende a al concepto de creatividad y se le
conoce tambin como pensamiento lateral.
TIPOS DE NUMEROS (CLASIFICACIN)

Los nmeros se

clasifican

en cinco

tipos principales: nmeros

naturalesN, nmeros enteros Z, nmeros racionales Q, nmeros


reales R(incluyen a los irracionales) y nmeros complejos C. En
estaclasificacin cada tipo de nmero es subconjunto de otro mayor,
empezando por los nmeros naturales como grupo de nmeros ms
simples hasta llegar a la clasificacin de nmeros complejos C, que
sera el conjunto de nmeros que incluira todos los tipos anteriores.
A continuacin vamos a ver qu nmeros pertenecen a cada tipo o
conjunto y al final del artculo se podr visualizar un diagrama para
asimilar la jerarqua entre ellos.

Los Nmeros Naturales N son todos los nmeros mayores de


cero* (algunos autores incluyen tambin el 0) que sirven para
contar. No pueden tener parte decimal, fraccionaria, ni
imaginaria. N = [1, 2 , 3, 4, 5]

Los Nmeros Enteros Z incluye al conjunto de los nmeros


naturales, al cero* y a sus opuestos (los nmeros negativos). Es
decir: Z = [-2, -1, 0, 1, 2]

Los Nmeros Racionales Q son aquellos que pueden expresarse


como una fraccin de dos nmeros enteros. Por ejemplo: Q =
[, , etc.]

Los Nmeros Reales R se definen como todos los nmeros que


pueden expresarse en una lnea continua, por tanto incluye a los
conjuntos anteriores y adems a los nmeros irracionales como el
nmero y e.

Los Nmeros Complejos C incluye todos los nmeros anteriores


ms el nmero imaginario i. C = [N, Z, Q, R, I]

Mtodos numricos.
Los mtodos numricos son tcnicas mediante las cuales es posible
formular problemas matemticos de tal forma que puedan resolverse
usando

operaciones

aritmticas.

Hay

muchos

tipos

de

mtodos

numricos, y comparten una caracterstica comn: invariablemente se


deben realizar un buen nmero de tediosos clculos aritmticos.
Los mtodos numricos son herramientas muy poderosas para a
solucin de problemas. Pueden manejar sistemas de ecuaciones
grandes, no linealidades y geometras complicadas, comunes en la
ingeniera. Tambin es posible que se utilice software disponible
comercialmente que contenga mtodos numricos. El uso inteligente de
estos programas depende del conocimiento de la teora bsica de estos
mtodos; adems hay muchos problemas que no pueden plantearse al
emplear programas hechos, conociendo bien los mtodos numricos se
puede disear programas propios y as no comprar software costoso. Al
mismo tiempo se aprende a conocer y controlar los errores de
aproximacin que son inseparables de los clculos numricos a gran
escala.
Los mtodos numricos son un medio para reforzar la comprensin de
las matemticas, porque profundizan en los temas que de otro modo
resultaran obscuros, esto aumenta su capacidad de comprensin y
entendimiento en la materia.

SISTEMAS NUMERICOS
Se definen como reglas o smbolos que nos sirven para mostrar o
diagramar cifras o cantidades.
Sistema Binario (base 2)

Sistema Octal (base 8)


Sistema Decimal (base 10)
Sistema Hexadecimal (base 16)
Introduccin
Antes de entrar de lleno en las bases 2 y 16 que son las bases con las
que trabaja el ordenador (en realidad el ordenador slo trabaja en base
2, la base 16 se utiliza de cara al programador para compactar el
nmero resultante de utilizar la base 2, que sera muy largo y engorroso
para utilizar constantemente en los programas)...
... antes de meternos de lleno con stas bases nos sera muy til para su
entendimiento el saber del porqu de la base decimal.
* Base Decimal (Base 10).
Es la base a la que estamos acostumbrados desde siempre, la base
numrica ms utilizada.
En esta base 10, contamos con 10 dgitos: 0,1,2,3,4,5,6,7,8 y 9.
Mediante estos 10 dgitos podemos expresar cualquier nmero que
deseemos.
El sistema de numeracin decimal (base decimal) es un sistema de
numeracin posicional, al igual que los restantes sistemas que vamos a
ver (binario, hexadecimal,etc), y a diferencia del sistema de numeracin
romano, por ejemplo.
Un sistema posicional es aquel en el que un nmero viene dado por una
cadena de dgitos, estando afectado cada uno de estos dgitos por un
factor de escala que depende de la posicin que ocupa el dgito dentro
de la cadena dada. Es decir, que el dgito 9, valdr 9 si est al final de la
cadena, en la posicin reservada para las unidades; valdr 90 si el dgito
se encuentra en la posicin reservada para las decenas (2 posicin de
derecha a izquierda); valdr 900 si el dgito se encuentra en la posicin
reservada para las centenas; etc, etc... A esto es a lo que se le llama

posicional, dependiendo de la posicin que ocupe un dgito dentro de la


cadena numrica, tendr un valor o tendr otro. As por ejemplo, el
nmero 8346 se podra descomponer como sigue: 8346 = (8 * 10^3) +
(3 * 10^2) + (4 * 10^1) + (6 * 10^0) .
El factor de escala de que hablbamos arriba, son las diferentes
potencias de 10 que multiplican a un dgito dependiendo de su posicin
dentro de la cadena numrica. Ahora nos podramos preguntar por qu
tenemos como sistema de numeracin usual al sistema decimal, por qu
es el ms usado por todo tipo de gente, a qu se debe que en todo el
mundo sea el sistema utilizado por las personas (ya veremos que las
mquinas no usan el sistema decimal, sino el binario). Pues es bien
sencillo: Porque tenemos 10 dedos. :-) An recordaremos eso que nos
decan (a quin no?) en clase cuando empezbamos a contar, sumar,
etc.. : No vale contar con los dedos!
Intuitivamente, utilizbamos nuestra elemental calculadora: las manos,
para contar, realizar sumas y restas sencillas, etc.
Sistema Binario (Base 2)
En esta base slo contamos con 2 dgitos: 0 y 1. Al igual que la base
decimal tiene su razn de ser, la base 2 o binaria tampoco ha surgido
debido a un mero convencionalismo, sino que se basa en algo concreto:
Electricidad.
Toda la informacin que se manipula dentro de un ordenador se hace de
acuerdo a seales elctricas. Es lo nico que entiende el ordenador.
Mediante una seal elctrica alta, se representa el valor 1; mediante una
seal elctrica baja se representa el 0.
. (1) : Tensin elctrica alta.
. (0) : Tensin elctrica baja.
Todo el trabajo del procesador, buses, etc... se realiza de acuerdo a este
sistema binario. Cuando se recibe una seal elctrica alta, se interpreta
como que ha llegado un dato de valor (1). Cuando la seal es baja, el

dato es un (0). Todo el flujo de datos en el interior del ordenador, y del


ordenador con los perifricos, se realiza mediante estas informaciones
elctricas.
Para representar cadenas numricas, se emplean cadenas de seales
elctricas. As por ejemplo, para representar el nmero 10001101 (base
2), el ordenador utilizara la cadena de seales elctricas: Tensin alta,
Tensin baja, Tensin baja, Tensin baja, Tensin alta, Tensin alta,
Tensin baja, Tensin alta. El factor de escala en esta base, son las
potencias de 2 que afectan a un dgito dado dependiendo de su posicin
en la cadena numrica.
Obsrvese que al decir potencias de 2, me estoy refiriendo a potencias
de 2 (en base 10). Es decir, para obtener la traduccin de ese nmero en
base 2 a su valor correspondiente en base 10, utilizamos las potencias
de 2 mencionadas. Estas potencias de 2 en base 10, seran potencias de
10 en base 2. Es decir, el nmero 10 en base 2 equivale al nmero 2 en
base 10.
Vemoslo ms claro.
El nmero 10100101 se puede traducir a base 10 como:
10100101

(1*2^7)+(0*2^6)+(1*2^5)+(0*2^4)+(0*2^3)+(1*2^2)+(0*2^1)+(1*2
^0).
O lo que es lo mismo: 10100101 (base 2) = 128+0+32+0+0+4+0+1
(base 10) = 165 (base 10)
Base hexadecimal (Base 16).
La base hexadecimal surgi para compactar la informacin binaria.
Se utiliza un dgito hexadecimal para representar una cadena de 4
dgitos binarios. Teniendo en cuenta que con 4 dgitos binarios podemos
representar

16

nmeros

diferentes:

0,1,10,11,100,101,110,111,1000,1001,1010, etc... ...Teniendo en cuenta


esto, un dgito hexadecimal tiene que poder tomar 16 valores diferentes.

Para la base 10, tenemos 10 dgitos diferentes: del 0 al 9; para la base 2,


nos servimos de dos de esos dgitos que ya tenamos para la base 10: el
0 y el 1.
Pero en la base 16, que tenemos 16 dgitos diferentes, no podemos
valernos slo de los dgitos de la base decimal, ya que slo hay 10
diferentes, y necesitamos 16.
La solucin es utilizar letras para representar los 6 dgitos que nos faltan.
Tenemos

entonces

que

los

dgitos

hexadecimales

son:

0,1,2,3,4,5,6,7,8,9,A,B,C,D,E y F. A equivale a 10 en base 10. B equivale


a 11 en base 10. C equivale a 12 en base 10. D equivale a 13 en base
10. E equivale a 14 en base 10. F equivale a 15 en base 10.
Del mismo modo que en la base 10, el ltimo dgito es el 9; en la base 2,
el ltimo dgito es el 1; en la base 16, el ltimo dgito ser F.
Si sumamos a F una unidad, obtendremos el nmero 10 (base
hexadecimal). Este nmero 10h (se utiliza el sufijo 'h' para indicar que se
trabaja con base hexadecimal, al igual que el sufijo 'b' indica que se est
trabajando con base binaria) equivale a 16 en base 10.
El factor de escala en esta base, son las potencias de 16 que afectan a
un dgito dado dependiendo de su posicin en la cadena numrica. De
forma similar que al hablar de la base binaria, al decir potencias de 16,
me estoy refiriendo a potencias de 16 (en base 10).
Es decir, para obtener la traduccin de ese nmero en base 16 a su
valor en base 10, utilizamos las potencias de 16 mencionadas. Estas
potencias de 16 en base 10, seran potencias de 10 en base 16. Es decir,
el nmero 10 en base 16 equivale al nmero 16 en base 10.
Difcil de entender?
Vamos a ver si esto lo aclara:
El nmero AF34h se puede traducir a base 10 como:
AF34 (base 16) = (10*16^3)+(15*16^2)+(3*16^1)+(4*16^0) (base
10).

O lo que es lo mismo: AF34 = (10*4096)+(15*256)+(3*16)+4 =


40960+3840+48+4 = 44852
Hemos dicho que la base hexadecimal tiene como finalidad compactar la
informacin binaria.
4 dgitos binarios se puden compactar en un slo dgito hexadecimal.
Tomemos por ejemplo el nmero 1010000101010101b. Nos es ms fcil
indicar este nmero mediante su correspondiente nmero en base
hexadecimal. Compactamos entonces toda esa cadena de informacin
binaria en slo 4 dgitos de informacin en base hexadecimal. El proceso
para llevar a cabo este cambio es sencillo. De derecha a izquierda de la
cadena numrica, se van cogiendo cadenas de 4 dgitos binarios, y se
transforman a su correspondiente dgito hexadecimal.
Cojamos los primeros 4 dgitos binarios:
0101. 0101 (base 2) = (0*8) + (1*4) + (0*2) + (1*1) = 5 (base 16).
Siguiendo el proceso con el resto de la cadena, tenemos que el nmero
resultante en base 16 es A155h, que es mucho ms fcil de recordar y
almacenar (en cuanto a cdigo fuente se refiere) que el correspondiente
en base 2. En caso de que el nmero en binario tenga menos de 4
dgitos, se rellenan las posiciones que faltan hacia la izquierda con ceros.
Es decir, si tenemos el nmero 100101b, al pasarlo a base hexadecimal,
tenemos el dgito de las unidades 5 (0101b), y para el dgito de las
decenas tenemos que encontrar el correspondiente hexadecimal a la
cadena 10b, que es lo mismo que 0010b, O sea 2 en hexadecimal.
Tenemos entonces que 100101b = 25h. Veamos una muestra de
nmeros en las tres bases mencionadas para ver sus equivalencias:
Decimal Binario Hexadecimal
Binario
000
001
010
011
100
101

Octal
0
1
2
3
4
5

110
111
Binario
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111

6
7
Hexadecimal
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F

Sistema Octal (Base 2)


Al igual que la base hexadecimal, se utiliza para compactar informacin
binaria, pero en este caso, la compactacin es menor, de tal manera que
casi no se usa. Mientras que en la base hexadecimal con un slo dgito
se puede representar una cadena de 4 dgitos binarios, en la base octal
un dgito slo puede representar 3 dgitos binarios. Los dgitos posibles
para la base octal, evidentemente, son los que van del 0 al 7.
A continuacin se detalla el procedimiento para obtener el equivalente
de un nmero en cualquiera de las bases expuestas.
Voy a prescindir de dar la teora del mtodo, para verlo directamente en
la prctica.
Tomemos un nmero dado en cada una de las diferentes bases. Por
ejemplo el nmero 18732 en base decimal, que es 492C en base
hexadecimal, y 100100100101100 en base 2.
Veamos cmo se llega de uno de esos nmeros a otro, al cambiar de
base.

* Cambio de base 2 a base 10.

You might also like