Escolar Documentos
Profissional Documentos
Cultura Documentos
Qu es un algoritmo?
Por algoritmo, se entiende a un conjunto finito de instrucciones que se deben
seguir para resolver un problema. No obstante, desde el punto de vista de la
programacin de ordenadores, la definicin del algoritmo como la especificacin
de una serie de pasos, es incompleta. Debe observarse que los ordenadores son
equipos que tienen limitaciones fsicas en cuanto a capacidad de almacenamiento
y procesamiento. Por consiguiente debemos refinar un poco ms nuestra
definicin de algoritmo para hacerla aplicable de manera efectiva en el mbito de
la informtica.
El algoritmo es un conjunto de pasos, instrucciones o acciones que se deben
seguir para resolver un problema. Existen una gran cantidad de algoritmos, hay
que escoger el ms efectivo. Hay dos tipos de algoritmos que son
los cualitativos y cuantitativos, cualitativos son
todos
aquellos
pasos
instrucciones descritos por medio de palabras que sirven para llegar a la obtencin
de una respuesta o solucin de un problema, y cuantitativos son todos aquellos
pasos o instrucciones que involucran clculos numricos para llegar a un resultado
satisfactorio.
Caractersticas:
Tiene que ser preciso.
Tiene que estar bien definido.
Tiene que ser finito.
La programacin es adaptar el algoritmo al ordenador.
El algoritmo es independiente segn donde lo implemente.
Definicin: Un algoritmo se entiende como una sucesin finita de pasos que debe
cumplir las siguientes especificaciones:
Cada paso del algoritmo debe estar bien definido: Esto significa que la definicin
de un paso debe ser suficientemente clara, para que una persona pueda
entenderla y realizarla. Si bien no se puede dar un criterio determinado para
decidir si un paso est bien definido, debemos apelar al sentido comn para
decidir que un paso est especificado sin ambigedades.
Un algoritmo debe tener un principio y un fin: Un programa es un algoritmo escrito
con un objetivo: conseguir un resultado. No tiene sentido crear un programa que
espere ~ segundos (infinitos segundos) y luego escriba en pantalla "Hola Mundo!",
del mismo modo que un algoritmo debe tener un principio bien definido (tampoco
tiene sentido el algoritmo "haz nada, y luego escribe Hola Mundo!")
Modelos computacionales
Un modelo computacional es un modelo matemtico en las ciencias de la
computacin que requiere extensos recursos computacionales para estudiar el
comportamiento de un sistema complejo por medio de la simulacin por
computadora. El sistema bajo estudio es a menudo un sistema complejo no lineal
para el cual las soluciones analticas simples e intuitivas no estn fcilmente
disponibles. En lugar de derivar una solucin analtica matemtica para el
problema, la experimentacin es hecha con el modelo cambiando los parmetros
del sistema en la computadora, y se estudian las diferencias en el resultado de los
experimentos. Las teoras de la operacin del modelo se pueden derivar/deducir
de estos experimentos de computacionales.
Ejemplos de modelos de computacionales comunes son modelos de el pronstico
del tiempo, modelos del Earth Simulator, modelos de simulador de vuelo, modelos
de plegamiento molecular de protenas, y modelos de red neuronal.
LENGUAJE DE PROGRAMACIN
Qu es el lenguaje de programacin?
Un lenguaje de programacin es un lenguaje diseado para describir el conjunto
de acciones consecutivas que un equipo debe ejecutar. Por lo tanto, un lenguaje
de programacin es un modo prctico para que los seres humanos puedan dar
instrucciones a un equipo.
Por otro lado, el trmino "lenguaje natural" define un medio de comunicacin
compartido por un grupo de personas (por ejemplo: ingls o francs).
Los lenguajes que los equipos usan para comunicarse entre ellos no tienen nada
que ver con los lenguajes de programacin; se los conoce como protocolos de
comunicacin. Se trata de dos conceptos totalmente diferentes. Un lenguaje de
programacin es muy estricto:
A cada instruccin le corresponde una accin de procesador.
El lenguaje utilizado por el procesador se denomina lenguaje mquina.
El lenguaje de programacin tiene varias ventajas:
lenguajes
permiten
al
programador
olvidarse
por
completo
del
Pascal, Cobol
solos, son los llamados RAD, con lo cuales se pueden realizar aplicaciones sin ser
un experto en el lenguaje. Aqu tambin se encuentran los lenguajes orientados a
objetos, haciendo posible la reutilizacin d partes del cdigo para otros programas.
Ej. Visual, Natural Adabes
inteligencia artificial. Estos lenguajes todava estn poco desarrollados. Ej. LISP
Principales lenguajes de nivel alto
VB.NET
Ada
ALGOL
BASIC
C#
COBOL
Fortran
Java
Lisp
Modula-2
Pascal
Perl
PHP
PL/1
PL/SQL
Python
Ruby
Matlab
C++
Evolucin
A mediados de los aos 60s, Martin Richards dise el lenguaje BCPL con la
finalidad de usarlo para escribir software de sistemas operativos y compiladores.
En 1969, Ken Thompson escribi el Lenguaje B, en Bell Laboratories, con el
objetivo de recodificar UNIX (escrito hasta ese momento en lenguaje
ensamblador) usando un lenguaje de alto nivel ms portable y flexible.
Durante los siguientes aos, Dennis Ritchie modific el lenguaje B, llegando a
crear el lenguaje C y reescribiendo el sistema UNIX en dicho lenguaje; aadi
caractersticas nuevas, como son el diseo de tipos y las estructuras de datos.
En 1978, Dennis Ritchie y Brian Kernighan publicaron la primera edicin del libro
El lenguaje de programacin C. Este libro fue durante aos la especificacin
informal del lenguaje. El lenguaje descrito en la primera edicin de este libro, fue
conocido como "el C de Kernighan y Ritchie" o simplemente "K&R C". En este libro
se introdujeron nuevas caractersticas al lenguaje: los tipo de datos struct, long int
y unsigned int; los operadores =+ y =- fueron sustituidos por += y -=.
A mediados de los aos 80, Bjarne Stroustrup (tambin de los laboratorios Bell),
crea el lenguaje C++, un lenguaje basado en C, con numerosas caractersticas
adicionales, siendo la principal que est orientado a objetos. Si bien se han creado
muchos lenguajes basados en C, C++ es el que ha permanecido ms asociado a
C.
En los aos siguientes a la publicacin del C de Kernighan y Ritchie, se aadieron
al lenguaje muchas caractersticas no oficiales, que estaban presentes en algunos
compiladores y no en otros. Fue por ello que en 1989 ANSI (American National
Standards Institute) public el primer estndar oficial de C, que es conocido como
ANSI C.
En este estndar se tomaron muchas de las funcionalidades no oficiales y se
agregaron funcionalidades nuevas como los prototipos de funcin, y un