Está en la página 1de 26

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

INFORMTICA

CAPITULO I. ANTECEDENTES HISTORICOS


Primera generacin de computadoras (1939 1958)

Empieza durante la segunda guerra mundial; en esta poca se desato una fiebre por
poseer el control de la mayor cantidad de la informacin posible y automatizar
procesos complejos.


Un equipo de cientficos y matemticos que trabajaban en Bletchley
Park, al norte de Londres, crearon lo que se consider el primer
ordenador digital totalmente electrnico: el Colossus. Hacia diciembre
de 1943 el Colossus, que incorporaba 1.500 vlvulas o tubos de
vaco, era ya operativo.


En 1939 y con independencia de este proyecto, John Atanasoff y Clifford
Berry ya haban construido un prototipo de mquina electrnica en el
Iowa State College (EEUU).



Este prototipo y las investigaciones posteriores se realizaron en el anonimato, y ms
tarde quedaron eclipsadas por el desarrollo del calculador e integrador numrico
electrnico (en ingls ENIAC, Electronic Numerical Integrator and Computer) en 1946.

El ENIAC, fue el primer ordenador digital totalmente electrnico. Construido en la
universidad de Pensilvania en 1946, sigui funcionando hasta 1955. Este contena
18.000 vlvulas de vaco, y para programarlo haba que cambiar manualmente el
cableado.

Caractersticas principales:

Tubos al vaco (bulbos).
Grandes dimensiones.
El voltaje de los tubos era de 300 voltios y la posibilidad de fundirse era
grande.
Uso de tarjetas perforadas: se utilizaba un modelo de codificacin de la
informacin originado en el siglo XIX.
Almacenamiento de la informacin en tambor magntico interior: Un tambor
magntico, dispuesto en el interior de la computadora, recoga y memorizaba
los datos y los programas que se le suministraban mediante tarjetas.
Lenguaje mquina. La programacin se codificaba en un lenguaje muy
rudimentario denominado lenguaje mquina. Basado en el uso de grandes

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

cadenas de bits o cadenas de ceros y unos. La combinacin de los
elementos del sistema binario era la nica manera de instruir a la mquina,
pues no entenda ms lenguaje que el numrico. Con posterioridad
aparecieron lenguajes ms elaborados o ensambladores, en los que ya
cabran instrucciones ms sintticas que la de los nmeros.


Segunda generacin de computadoras (1959 1964)

El tamao y el precio tan elevado de los equipos de cmputo hacia difcil su compra,
esto cambio en cuando se empezaron a sustituir los tubos al vaco por transistores.

El transistor fue desarrollado por los fsicos estadounidenses Walter Houser Brattain,
John Bardeen y William Bradford Shockley de los Bell Laboratories. Es un dispositivo
de estado slido consistente en una pequea pieza de material semiconductor,
generalmente germanio o silicio, en el que se practican tres o ms conexiones
elctricas.


El uso del transistor en las computadoras marc el advenimiento de elementos
lgicos ms pequeos, rpidos y verstiles de lo que permitan las mquinas
con tubos al vaco. Como los transistores utilizan menos energa tienen una
vida til ms prolongada.

A su desarrollo se debi el nacimiento de mquinas ms perfeccionadas, que fueron
llamadas ordenadores o computadoras de segunda generacin.

La marina de EE.UU. utiliz las computadoras de esta generacin para crear el primer
simulador de vuelo (Whirlwind I). HoneyWell se coloc como el primer competidor
durante la segunda generacin de computadoras. Burroughs, UNIVAC, NCR, CDC,
HoneyWell, los ms grandes competidores de IBM durante los 60s se conocieron
como el grupo BUNCH (siglas).

Caractersticas principales:

El transistor. El componente principal de las computadoras de esta generacin
es un trozo de semiconductor.
Disminucin del tamao. Hubo una gran disminucin de tamao del volumen
de los componentes.
Mayor rapidez. La simplificacin y reduccin de circuitos aporta una mayor
rapidez de funcionamiento. La velocidad de operaciones ya no se mide en
segundos sino en microsegundos (millonsima de segundo).
Memoria interna de ncleos ferrita. La capacidad de memoria interna se amplia
grandemente con la incorporacin de los paneles de memoria construidos con
ncleos magnticos de ferrita.
Instrumentos de almacenamiento. Se desarrollan elementos accesorios para
almacenar en el exterior informacin.
Mejora de los dispositivos de entrada y salida. Los dispositivos de entrada y
salida se adaptan a los instrumentos magnticos de almacenamiento exterior

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

de informacin. Y alcanzan una mayor capacidad de recepcin y
transmisin de datos.
Introduccin de elementos modulares. Los componentes fsicos de la
computadora dejan de concebirse como elementos separados.
Lenguajes de programacin ms potentes: Los complicados y limitados
lenguajes mquina quedan superados con la creacin de los lenguajes
simblicos. Se denomina simblicos porque su escritura no se fundamenta en
largas series de nmeros, sino en notaciones alfabticas y numricas, que
poseen significado.



Tercera generacin de computadoras (1964 - 1971)

A finales de la dcada de 1960 apareci el circuito integrado (CI), que posibilit la
fabricacin de varios transistores en un nico sustrato de silicio en el que los cables
de interconexin iban soldados. El circuito integrado permiti una posterior reduccin
del precio, el tamao y los porcentajes de error.


La utilizacin efectiva se produjo con la aparicin de la serie 360 de IBM. Las
computadoras de esta serie podan ser conectadas en red.

La programacin para una mquina pequea poda utilizarse en otra de caractersticas
ms amplias. La supresin de trabajos de conversin del software fue un alivio
considerable y aporto otra novedad sustancial.

La posibilidad de conectar a distancia una computadora con terminales provey una
nueva tcnica comercial. Varios clientes compartan el tiempo de gestin del aparato
mediante un abono y cotizaban segn el tiempo de uso.

Se inicio la construccin de computadoras ms pequeas que las corrientes. Ocupaba
lo que un pequeo armario ropero y estaban destinadas a facilitar el trabajo de
cientficos e ingenieros.

Caractersticas principales

Circuito integrado (CI). Miniaturizacin y reunin de centenares de elementos
en una plaqueta de silicio llamada comnmente chip.
Menor consumo.
Apreciable reduccin de espacio.
Aumento de fiabilidad.
Teleproceso. Se instalan terminales remotas que acceden a la computadora
central para realizar operaciones, extraer o introducir informacin en bancos de
datos, etc.
Generacin de los lenguajes de Alto Nivel. Los lenguajes mquina pierden
terreno en favor de lenguajes de alto nivel, como COBOL y FORTRAN.
Instrumentacin del sistema. La fabricacin de Hardware atiende a la
realizacin de aparatos conectables para formar una red. La disposicin de la
computadora en un sistema potencia su capacidad.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

Compatibilidad. Comienzan a atenderse en todas las empresas
fabricantes de Hardware los problemas que plantea la incomunicabilidad de los
programas de unos aparatos con otros. Se alcanzan algunos logros en la
cuestin de la compatibilidad de programacin.



Cuarta generacin de computadoras (1971 - 1984)

Empieza en 1971 con la aparicin del microprocesador, el cual consiste en la
integracin de toda la unidad central de proceso (UCP) de una computadora en un
solo circuito integrado.


En un principio los microprocesadores contaban con un circuito de
integracin a gran escala (LSI, acrnimo de Large Scale
Integration), y ms tarde, con el circuito de integracin a mayor
escala (VLSI, acrnimo de Very Large Scale Integration), con varios
miles de transistores interconectados soldados sobre un nico
sustrato de silicio.

En 1976 Steve Wozniak y Steve Jobs inventan la primera microcomputadora de uso
masivo y ms tarde forman la compaa conocida como la Apple Company que fue la
segunda ms grande del mundo, antecedida tan solo por IBM; y esta por su parte es
an de las cinco compaas ms grandes del mundo.

Se utiliz el disquete (floppy disk) como medio de almacenamiento externo de
informacin. Aparecieron una gran cantidad de lenguajes de programacin de todo
tipo y las redes de transmisin de datos para la interconexin de computadoras.

En 1975 William Henry Gates y Paul Allen forman Microsoft Corporation, en la ciudad
de Alburquerque, Nuevo Mxico, debido a que la sede del Instituto Tecnolgico de
Massachussets estaba en esa ciudad. Microsoft fue el proveedor de la versin del
lenguaje BASIC para la computadora personal MITS Altair. Un par de aos antes,
estos dos amigos de la Universidad de Harvard haban fundado TRAF-O-DATA, una
pequea empresa que desarroll un software para la administracin del trfico en la
ciudad de Seattle. William Gates estudi Economa pero abandon sus estudios para
incursionar en el desarrollo de software y los negocios.

Caractersticas principales

El microprocesador. El proceso de reduccin del tamao de los componentes
llega a operar a escalas microscpicas.
Las aplicaciones del microprocesador. Se han proyectado ms all de la
computadora y se encuentran en multitud de aparatos, sean instrumentos
mdicos, automviles, juguetes, electrodomsticos, etc.
Memorias electrnicas. Se desechan las memorias internas de ncleos
magnticos de ferrita y se introducen memorias electrnicas, que resultan ms
rpidas y reducidas.
La capacidad de memoria se incrementa notablemente.
Sistemas de tratamiento de Bases de Datos.
Minicomputadora y computadora personal.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

Generalizacin de las aplicaciones. Las aplicaciones que se
desarrollan son innumerables y afectan a prcticamente a todos los campos de
la actividad humana.
La generacin del usuario. La computacin supera sus tradicionales fronteras
sociales.



Quinta generacin de computadoras (1984 - 1990)

La quinta generacin vio la introduccin de mquinas con cientos de procesadores
que podan estar trabajando de manera simultnea en diferentes partes de un mismo
programa. La escala de la integracin en los semiconductores continu a una
velocidad estrepitosa al grado de que para 1990 era posible construir pastillas de una
pulgada cuadrada con un milln de componentes, y de manera anloga las memorias
hechas de semiconductores se volvieron estndar en todas las computadoras.

En lo referente a redes, en este perodo hubo un gran desarrollo sostenido durante
todo el perodo naciendo conceptos como redes de rea amplia (Wide Area Network,
WAN), complementando a las redes de rea metropolitana (Metropolitan Area
Network, MAN) y redes de rea local (Local Area Network, LAN), estimulando la
transicin del esquema tradicional de Marcos Principales (Mainframes) hacia la
computacin distribuida, en donde cada usuario tiene su propia estacin de trabajo
para tareas personales con poco grado de complejidad, compartiendo recursos
costosos de los servidores principales.

Caractersticas principales:

Procesamiento en paralelo. En esta generacin una computadora con varios
procesadores puede dividir sus tareas entre ambos aumentando su eficiencia y
su tiempo de respuesta.
Introduccin de mquinas de cientos de procesadores.
Aparece el paralelo-dato o SIMD.
Nacen los conceptos de redes de rea amplia (WAN, Wide Area Network),
redes de rea metropolitana (MAN, Metropolitan Area Network) y redes de
rea local (LAN, Local Area Network).


Sexta generacin de computadoras (1990 Actualidad)

Esta generacin se inicia teniendo como caracterstica la evolucin de las
comunicaciones a la par de la tecnologa.

La miniaturizacin de componentes y su consecuente reduccin en costo y
necesidades tcnicas contribuyen a obtener sistemas de muy alta capacidad en donde
las estaciones de trabajo compiten y superan en capacidad a las supercomputadoras
de la generacin anterior.

Dentro de los eventos que forjaron el inicio de este perodo estn: La actualizacin de
la especificacin IEEE 802.3, para incluir cableado de par de cobre trenzado con 10
Base T.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


Tim Berners-Lee trabaja en una interfaz grfica de usuario navegador y editor de
hipertexto utilizando el ambiente de desarrollo de NeXTStep, bautizando
"WorldWideWeb" al programa y "World Wide Web" al proyecto.

Formalmente se cierra ARPAnet, que es reemplazada por la NSFnet y las redes
interconectadas, dando origen a la participacin pblica en el desarrollo de lo que se
convertira en la red de redes y la formacin del grupo de trabajo para redes
inalmbricas (Wireless LAN Working Group IEEE 802.11).

Otros avances tecnolgicos fundamentados en las tecnologas de comunicacin son:
funcionamiento de computadoras en modo agrupado, tambin conocido como cluster,
en donde varias computadoras se comportan como una misma, dando un grado tal de
tolerancia a fallas que inclusive puede fallar una computadora sin que la funcionalidad
se afecte; dispositivos inteligentes, yendo desde tostadoras y hornos de microondas,
hasta casas y edificios conectados en red para su administracin, supervisin y control
remoto a travs de las redes.

Con las computadoras de nivel elemental de esta poca y la cada en los costos de las
comunicaciones se llegan a crear negocios virtuales cuya nica sucursal puede estar
en un servidor domstico y tener presencia mundial.

Caractersticas principales:

Evolucin de las comunicaciones a la par de la tecnologa.
Actualizacin de la especificacin IEEE 802.3.
Aparece el World Wide Web e Internet.
Desaparece ArpaNet.
Se forma el grupo de trabajo IEEE802.11 para redes inalmbricas.
Aparece la computacin distribuida.
Las computadoras de esta generacin ya pueden trabajar de modo agrupado
(cluster).
Internet hace la entrada al mundo domstico.



















TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


GENERALIDADES DE UN SISTEMA DE CMPUTO


Sistema. Es un conjunto de partes que estn integradas con el propsito comn de
lograr un objetivo.

Se llama sistema de cmputo a las partes fsicas de una computadora, junto con sus
unidades de entrada/salida (hardware) y la coleccin o combinacin de programas,
procedimientos, datos y equipamiento utilizado en el procesamiento de informacin
(software) que la hacen comportarse como un todo.

De otra manera podemos decir que un sistema de cmputo es la unin del hardware y
el software para alcanzar un objetivo comn interactuando con el usuario.








Usuario

El elemento humano es el ms importante de cuantos constituyen la informtica. El
personal informtico lo podemos clasificar, en una primera aproximacin, de la
siguiente forma:

De direccin
De anlisis
De programacin
De explotacin y operacin


TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

Personal de direccin. Es el encargado de dirigir y
coordinar un centro de proceso de datos para obtener
un rendimiento adecuado de los equipos.


Personal de anlisis. Es el encargado del desarrollo de
aplicaciones en lo que respecta a su diseo y obtencin del
algoritmo, as como de analizar las posibles utilidades y
modificaciones necesarias de los sistemas operativos. Otra
misin de estas personas es la dar apoyo tcnico a los
usuarios.
Personal de programacin. Es el encargado de transcribir a
lenguaje de computadora los algoritmos diseados en la fase de
anlisis.


Personal de explotacin y operacin. Su misin consiste en la
ejecucin de los programas, la distribucin de resultados y el
mantenimiento diario de los sistemas existentes.


























TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

Hardware

El hardware es el conjunto de elementos fsicos que forman un sistema de cmputo
(partes fsicas de una computadora), es decir, son los dispositivos mecnicos,
magnticos, elctricos y electrnicos con los que se construye una computadora.




Para realizar sus funciones, el CPU de una computadora se auxilia en un conjunto de
dispositivos que le permiten comunicarse con los usuarios, intercambiar, localizar y
guardar informacin, estos dispositivos en conjunto se denominan perifricos.

Los dispositivos perifricos pueden ser unidades de entrada, unidades de salida y
unidades de entrada/salida, se clasifican as por su modo de operacin. Algunos de
ellos cumplen la funcin de guardar datos para su uso futuro, en este caso se les
denomina memoria secundaria.

Hardware de entrada

Las unidades de entrada solamente pueden enviar datos al CPU, no pueden recibir
datos del CPU ya que estn imposibilitados para este fin. Estos dispositivos, adems
de recibir la informacin del exterior la adaptan para que sta sea inteligible por la
mquina.






TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA



Los dispositivos de entrada ms comunes son:

Teclado
Mouse
Escner

Teclado. El teclado se utiliza para escribir las instrucciones que ejecutar la
computadora y la informacin a procesar.

Mouse. Un mouse (ratn), puede mover el cursor en la pantalla

Escner. Es un dispositivo que permite llevar imgenes hacia la computadora,
pudiendo as manipular dicha imagen en la computadora a conveniencia del usuario.


Hardware de salida

Las unidades de salida reciben datos desde el CPU y muestran los resultados a los
usuarios. Su misin es la de recoger y proporcionar al exterior los datos de salida de
cada uno de los trabajos que se realicen en el sistema.

Las unidades de salida ms comunes son:

Monitor
Impresora
Graficador o Plotter

Monitor. El monitor tiene una pantalla que presenta informacin, es decir, las
instrucciones que el usuario enva a la computadora y el resultado e interpretacin de
esas instrucciones. La tarjeta se instala en la computadora y determina la resolucin
de pantalla y nmero de colores que el monitor pueda presentar, adems de texto y
nmeros, informacin grfica, tal como diseos geomtricos.

Impresora. Una impresora imprime la informacin procesada por la computadora. Las
impresoras varan en la velocidad y calidad de la impresin. Las impresoras ms
comunes son impresora de matriz de puntos, impresora lser, impresora de inyeccin
de tinta.


Hardware de entrada/salida

Las unidades de entrada/salida son componentes de hardware utilizados tanto para
proporcionar como para recibir informacin de la computadora. Un dispositivo de
entrada/salida transfiere informacin en las dos direcciones posibles.






TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA




Las unidades de entrada / salida ms comunes son:

Discos flexibles 3y 5
Discos duros
CD-ROM
CD-WRITER
DVD
Mdem
Zip
Tarjetas de Red
Memoria Flash

Los discos flexibles, discos duros, CD-ROM, CD-WRITER, DVD y Memoria Flash se
consideran como dispositivos de almacenamiento secundario o memoria secundaria,
cuya funcin es mantener datos guardados para su uso futuro.





Disco Flexible (floppy disk o disquete). Elemento plano, de forma circular,
elaborado sobre un material plstico, denominado mylar, y recubierto por una
sustancia magnetizable, normalmente xido de hierro. Se utilizan para almacenar
informacin, para lo cual se insertan en un dispositivo la unidad de disco
donde una cabeza de lectura/escritura puede escribir informacin alterando la
orientacin magntica de las partculas de su superficie. Por un procedimiento
similar, esta cabeza es capaz de leer la informacin almacenada.

El tamao de los disquetes puede ser: de 8 pulgadas de dimetro, con una
capacidad de almacenamiento que vara entre 100 y 500 KB; de 5.25 pulgadas
de dimetro, con capacidad entre 100 KB y 1,2 MB, y de 3.5 pulgadas de
dimetro, con capacidad entre 400 KB y 2,8 MB, aunque los ms populares son
de 1,44 MB. Los dos primeros son realmente discos flexibles, pero el tercero tiene
la estructura rgida.
Disco Duro (hard disk). Unidad de almacenamiento permanente de gran
capacidad. Est formado por varios discos apilados (dos o ms), normalmente de
aluminio o vidrio, recubiertos de un material ferromagntico. Como en los
disquetes, una cabeza de lectura/escritura permite grabar la informacin,
modificando las propiedades magnticas del material de la superficie, y leerla
posteriormente; esta operacin se puede hacer un gran nmero de veces.




CD-ROM. Acrnimo de Compact Disc-Read Only Memory. Estndar de
almacenamiento de archivos informticos en disco compacto. Se
caracteriza por ser de slo lectura, con una capacidad de almacenamiento
para datos de 650 MB.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

DVD. Disco de vdeo digital, tambin conocido en la
actualidad como disco verstil digital (DVD). Es un
dispositivo de almacenamiento masivo de datos cuyo
aspecto es idntico al de un disco compacto, aunque
contiene hasta 25 veces ms informacin y puede
transmitirla a la computadora unas 20 veces ms rpido
que un CD-ROM.





Su mayor capacidad de almacenamiento se debe, entre otras cosas, a que puede utilizar
ambas caras del disco y, en algunos casos, hasta dos capas por cada cara, mientras que el CD
slo utiliza una cara y una capa. Las unidades lectoras de DVD permiten leer la mayora de los
CDs, ya que ambos son discos pticos; no obstante, los lectores de CD no permiten leer DVDs.



Mdem. Es un acrnimo de 'modulador/demodulador'. Se trata de un
equipo, externo o interno (tarjeta mdem), utilizado para la comunicacin
de computadoras a travs de lneas analgicas de transmisin de voz y/o
datos. El mdem convierte las seales digitales del emisor en otras
analgicas, susceptibles de ser enviadas por la lnea de telfono a la que
deben estar conectados el emisor y el receptor.




Cuando la seal llega a su destino, otro mdem se encarga de reconstruir la seal
digital primitiva, de cuyo proceso se encarga la computadora receptora. En el caso de
que ambos puedan estar transmitiendo datos simultneamente en ambas direcciones,
emitiendo y recibiendo al mismo tiempo, se dice que operan en modo full-duplex; si
slo puede transmitir uno de ellos y el otro simplemente acta de receptor, el modo de
operacin se denomina half-duplex.


Memoria

Definicin. Son los circuitos que permiten almacenar y recuperar la
informacin. En un sentido ms amplio, puede referirse tambin a
sistemas externos de almacenamiento, como las unidades de disco o de
cinta. Por lo general se refiere slo al semiconductor rpido de
almacenaje (RAM) conectado directamente al procesador.


La memoria principal de una computadora esta formada por memoria RAM y ROM.

En la memoria RAM se depositan los datos que se envan para procesarse desde
alguna unidad de entrada o de almacenamiento secundario, as como los programas
que ejecutan y los resultados obtenidos listos para ser enviados a una unidad de
salida o a un dispositivo de almacenamiento secundario.


TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

El termino RAM se usa para referirse a la memoria de la computadora. RAM
es el acrnimo de random access memory (memoria de acceso aleatorio).

Las instrucciones que reciba la computadora y la informacin que sta procese sern
guardadas en RAM durante una sesin de trabajo. La memoria RAM de la
computadora no es un lugar de almacenamiento permanente de informacin; solo se
encontrara activa cuando la computadora este encendida. Al apagar la computadora,
la informacin es eliminada de la memoria, por lo tanto, si se requiere guardar el
trabajo, se debe guardar en un disco o dispositivo de almacenamiento permanente
antes de apagar la computadora.



La memoria ROM acrnimo de read only memory memoria de solo lectura en este tipo
de memoria solo se puede leer informacin, esta informacin permanece en ella aun
cuando la computadora esta apagada, a este tipo de memoria se le graba la
informacin desde que se fabrica. Otros tipos estn en blanco y posteriormente a su
fabricacin se puede grabar informacin en ellas con el equipo adecuado.

Estas memorias son PROM programmable read only memory (memoria programable
de solo lectura) EPROM erasable programmable read only memory (memoria borrable
programable de solo lectura).

Estas memorias se usan para almacenar los programas de autodiagnstico de las
computadoras, la informacin del BIOS y en algunos casos los sistemas operativos en
algunas computadoras porttiles.


CAPTULO 2 PROCESO DE PROGRAMACION

2.1 Introduccin

Un programa, o tambin llamado programa de computadora, es una secuencia de
instrucciones (escritas en algn lenguaje de programacin) pensada para RESOLVER UN
PROBLEMA, mediante la creacin de un ALGORITMO y su CODIFICACION.
Las computadoras necesitan de los programas para funcionar, un programa no hace nada
a menos que sus instrucciones sean ejecutadas por el procesador.[
]Un programa se puede referir tanto a un programa ejecutable como a algn cdigo
fuente, el cual es transformado en un ejecutable cuando es compilado. Podemos decir
que un programa ejecutable se llamara proceso cuando se encuentre en ejecucin, el cual
definimos como un programa+procesador+memoria. La siguiente figura trata de
ejemplificar la relacin que existe entre un algoritmo, programa (cdigo fuente) y un
proceso (programa+procesador+memoria).

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA



Un algoritmo (del latn, dixit algorithmus y ste a su vez del matemtico persa al-Jwarizmi)
es una lista bien definida, ordenada y finita de operaciones que permite hallar la solucin
a un problema


El anlisis y diseo de algoritmos es una de las ramas ms importantes de la
Computacin.
Los programas son diseados usando algn paradigma, algunos de estos paradigmas
son el imperativo, declarativo, funcional y lgico.
El cdigo fuente puede ser convertido en una secuencia de instrucciones ejecutable por
un compilador o en su defecto solo ser usado mediante un intrprete.
Un compilador lee completamente un programa en un lenguaje de alto nivel y lo traduce
en su integridad a un programa de cdigo de maquina equivalente. El programa de cdigo
de maquina resultante se puede ejecutar cuantas veces se desee, sin necesidad de volver
a traducir el programa original.

Un intrprete acta de un modo distinto: lee un programa escrito en un lenguaje de alto
nivel instruccin a instruccin y, para cada una de ellas, efecta una traduccin a las
instrucciones de cdigo de maquina equivalentes y las ejecuta inmediatamente. No hay
un proceso de traduccin separado por completo del de ejecucin. Cada vez que
ejecutamos el programa con un intrprete, se repite el proceso de traduccin y ejecucin,
ya que ambos son simultneos.
Se disea un
algoritmo
que resuelva
un
problema.
Se codifica el
algoritmo en
algun lenguaje de
computadora
(programa)
Se compila el
programa (codigo
fuente), para
obtener un
programa
ejecutable.
Se ejecuta el
programa
(ejecutable+m
emoria+proces
ador).

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA



Cuando se pide que el programa sea ejecutado, el procesador ejecuta el programa
instruccin por instruccin, hasta que el programa termina.
De acuerdo a sus funciones, los programas pueden ser clasificados en software de
sistema y software de aplicacin. Pueden ejecutarse muchos programas de forma
simultnea en un mismo ordenador, a lo cual se le llama multitarea. El programa
encargado de administrar los recursos de la computadora es el Sistemas Operativos, los
sistemas operativos por medio de algunos algoritmos de planificacin hacen posible la
multitarea.



2.2 Operaciones primitivas elementales
1. IDENTIFICADOR. Un identificador es una serie de caracteres formados por letras,
dgitos y el carcter subrayado ( _ ) que no inicie con dgito, asi mismo es el nombre que
damos a todo lo que manipulamos dentro de un programa (variables, constantes,
funciones, etc). Por ejemplo variables, constantes, funciones, tipos definidos por el
usuario etc. Para mayor claridad podemos decir que un identificador es el nombre de
alguna entidad en un programa.
2. TIPOS DE DATOS.- Todos los datos tienen un tipo asociado con ellos. Un dato puede
ser un simple carcter, tal como b, un valor entero tal como 35. El tipo de dato determina
la naturaleza del conjunto de valores que puede tomar una variable.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


2.3 Variables.

Una variable es un identificador que puede tomar diferentes valores dependiendo del tipo
que esta se declare. Los valores que almacena una variable dependen de las
manipulaciones hechas sobre ella por a ejecucin del programa. Ejemplo:

Una variable es una posicin de memoria donde se puede almacenar una valor para uso
de un programa.
INICIALIZACIN DE VARIABLES
Inicializar una variable es el darle un valor despus que se ha declarado pero antes de
que se ejecuten las sentencias en las que se emplea.
2.4 Constantes.
Constantes son los valores que no pueden ser modificados. En C, pueden ser de
cualquier tipo de datos.



2.5 Expresin
En programacin, una expresin es una combinacin de constantes, variables o
funciones, que es interpretada (evaluada) de acuerdo a las normas particulares de
precedencia y asociacin para un lenguaje de programacin en particular. Como en
matemticas, la expresin es su "valor evaluado", es decir, la expresin es una
representacin de ese valor.
Ejemplos de expresiones:
Expresin aritmtica: 3+2, x+1, ...

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

Expresin lgica: x OR y, NOT x, ...
Expresin con predicados: P(a) AND Q(b), ...

Operadores
Un operador es un smbolo que indica al compilador que realice manipulaciones lgicas o
matemticas especficas. Los operadores del mismo nivel de precedencia son evaluados
por el compilador de izquierda a derecha. Por supuesto, se puede utilizar parntesis para
ordenar la evaluacin.
Tambin, conviene utilizar parntesis para hacer ms claro el orden en que se producen
las evaluaciones, tanto para la persona que lo elabora o para los que despus tengan que
seguir el programa.
Operadores Lgicos:
Estos operadores se utilizan para establecer relaciones entre valores lgicos.
Estos valores pueden ser resultado de una expresin relacional.
Operadores Lgicos
And Y Or O Not Negacin
Prioridad de los Operadores Lgicos
Not And Or
Operadores de Asignacin. Los operadores de asignacin se utilizan para formar
expresiones de asignacin, en las que se asigna el valor de una expresin a un
identificador.
Cada expresin toma un valor que se determina tomando los valores de las variables y
constantes implicadas y la ejecucin de las operaciones indicadas.
Una expresin consta de operadores y operandos. Segn sea el tipo de datos que
manipulan, se clasifican las expresiones en:
o Aritmticas
o Relacinales
o Lgicas

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


2.6 Palabras reservadas.
Son palabras que tienen un significado especial para el lenguaje y no se pueden utilizar
como identificadores.
2.7 Comentarios.
Los comentarios pueden aparecer en cualquier parte del programa, mientras estn
situados entre los delimitadores /* comentario */. Los comentarios son tiles para
identificar los elementos principales de un programa o para explicar la lgica subyacente
de estos.
2.8 Tipos de datos
En lenguajes de programacin un tipo de dato es un atributo de una parte de los datos
que indica al ordenador (y al programador) algo sobre la clase de datos sobre los que se
va a procesar. Esto incluye imponer restricciones en los datos, como qu valores pueden
tomar y qu operaciones se pueden realizar. Tipos de datos comunes son: enteros,

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

nmeros de coma flotante (decimales), cadenas alfanumricas, fechas, horas,
colores, coches o cualquier cosa que se nos ocurra.

Por ejemplo, en Java, el tipo "int" representa un conjunto de enteros de 32 bits cuyo rango
va desde el -2.147.483.648 al 2.147.483.647, as como las operaciones que se pueden
realizar con los enteros, como la suma, resta y multiplicacin. Los colores, por otra parte,
se representan como tres bytes denotando la cantidad de rojo, verde y azul, y una cadena
de caracteres representando el nombre del color; las operaciones permitidas incluyen la
adicin y sustraccin, pero no la multiplicacin.
En un sentido amplio, un tipo de datos define un conjunto de valores y las operaciones
sobre estos valores.[1] Casi todos los lenguajes de programacin explcitamente incluyen
la notacin del tipo de datos, aunque lenguajes diferentes pueden usar terminologa
diferente. La mayor parte de los lenguajes de programacin permiten al programador
definir tipos de datos adicionales, normalmente combinando mltiples elementos de otros
tipos y definiendo las operaciones del nuevo tipo de dato. Por ejemplo, un programador
puede crear un nuevo tipo de dato llamado "Persona" que especifica que el dato
interpretado como Persona incluir un nombre y una fecha de nacimiento.
Un tipo de dato puede ser tambin visto como una limitacin impuesta en la interpretacin
de los datos en un sistema de tipificacin, describiendo la representacin, interpretacin y
la estructura de los valores u objetos almacenados en la memoria del ordenador. El
sistema de tipificacin usa informacin de los tipos de datos para comprobar la
verificacin de los programas que acceden o manipulan los datos.
2.9 Lgica de programacin

Lgica: ciencia formal que tiene por objeto el estudio del razonamiento.
Lgica en programacin: se define como una secuencia particular de instrucciones dentro
de un programa, dando soluciones a un problema, es decir , la solucin particular a un
problema especifico, diseado y traducido en un programa por el programador.

Programador: es la persona que disea la lgica y escribe el cdigo de un programa para
instruir a la computadora.

Instrucciones: conjunto de caracteres que se utilizan para dirigir un sistema de
procesamiento de datos, es decir, la ejecucin de una operacin.

Lenguaje: conjunto de reglas e instrucciones convencionales que se utilizan para
comunicarse con otras personas.

La prctica de la programacin debe hacerse mediante una serie de pasos, los cuales
son:
1. Definicin del problema.
2. Anlisis de variables.
3. Diseo del Algoritmo.
4. Diagrama de flujo o flujograma o uso de algna otra herramienta de diseo.
5. Codificacin y edicin.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

6. Prueba y depuracin.
7. Documentacin o mantenimiento.





1) Definicin del problema esta constituido por un texto o enunciado que nos permitir
saber que es lo que se pretende solucionar y nos proporcionara informacin til para el
anlisis de variables o planeacin del problema. Ejemplo; leer las edades de los alumnos
de programacin y calcular el promedio de ellas.
Ejemplos de enunciados del problema hacer un programa que calcule la planilla de pagos
de los trabajadores de la empresa constructora s.a. de c.v. Hacer un programa que
calcule el nmero factorial de. Hacer un programa que simule el funcionamiento de una
calculadora.

2) Anlisis de variables nos permite entender por completo el problema y dejar en claro
cual es la informacin til que se nos da?,que otra nos hace falta? Si nos hiciera falta
informacin, en esta fase del problema se podra determinar que el problema no tiene
solucin. Dos conjuntos de variables que se deben identificar en esta etapa son:

Entradas: son los datos conocidos que hacen falta para resolver el problema.
Salidas: resultados que se desean obtener es decir la informacin.
Algunos otros elementos que se pueden identificar en esa fase son:
proceso; aplicaciones de formulas y operaciones que sean necesarias para
resolver el problema.
datos adicionales: se definen como los datos que nos proporciona la definicin del
problema, constantes, intereses, porcentajes, descuentos, entre otros.

3) Diseo del Algoritmo se define la serie de pasos ordenados encaminados a resolver el
problema, debe ser escrito en forma clara y fcil de entender, es decir, explicando con
nuestras propias palabras. un algoritmo debe de constar de 3 partes: entrada, proceso y
salida.

Las caractersticas que debe cumplir un algoritmo son :
a) debe ser preciso e indicar el orden de realizacin de cada paso.
b) debe estar definido, si se sigue un algoritmo 2 veces se debe tener el mismo resultado.
c) debe ser finito, si se sigue un algoritmo se debe terminar en algn momento.

4) Diagrama de flujo de datos una tcnica de diseo que permite la documentacin de un
sistema o programa en varios niveles de generalidad. Un diagrama que ilustra el flujo de
datos, informacin y trabajo por medio de smbolos especializados que cuando se
conectan por lneas de flujo, reflejan la lgica de un sistema o programa.

Es un diagrama que utiliza smbolos estndares y en el que cada paso del algoritmo se
visualiza dentro del smbolo adecuado y el orden en que estos pasos se ejecutan se
indican conectndolos con flechas llamadas lneas de flujo, porque indican el flujo lgico
del algoritmo.

5) Codificacin y edicin del programa la codificacin consiste en traducir el diagrama de
flujo a instrucciones de un lenguaje de programacin especfico, es decir, la elaboracin

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

del programa. La edicin consiste en introducir el programa a la computadora
por medio de editor de texto o el editor de un lenguaje de programacin.
6) Prueba y depuracin. Una vez que se ha introducido el programa a la computadora,
debe probarse continuamente, ejecutando el programa hasta concluir con los resultados
deseados y que no tengan errores. Para ello se deben preparar datos de prueba en papel,
as como su solucin para compararlo con los resultados que obtenga la computadora.





Si el programa tiene errores sintcticos estos pueden corregirse simplemente consultando
un libro de definicin de sintaxis del lenguaje de programacin que utiliza el programador,
no as si el problema es de lgica, en este caso debe revisarse y corregirse desde el
algoritmo.

7) Documentacin y mantenimiento. Una vez desarrollados los pasos anteriores de la
metodologa de solucin del problema, esta debe de pasarse en limpio y quedar archivada
en un flder llamando a esta accin documentacin. Adems debe de incorporarse un
listado de programas impresos por computadora, al igual que las pruebas ejecutadas. Si
por algn motivo se llega a modificar el programa, casi siempre porque cambian los
requerimientos del problema toda la documentacin debe modificarse. Por ende, el
proceso de mantener los programas y su documentacin actualizados se le llama:
mantenimiento.


Diagramas de flujo
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede
decir que es la representacin detallada en forma grfica de como deben realizarse los
pasos en la computadora para producir resultados.
Esta representacin grfica se da cuando varios smbolos (que indican diferentes
procesos en la computadora), se relacionan entre s mediante lneas que indican el orden
en que se deben ejecutar los procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de
normalizacin (ANSI).

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA






Recomendaciones para el diseo de Diagramas de Flujo.
Un diagrama de flujo es la representacin grfica de un algoritmo. Tambin se puede
decir que es la representacin detallada en forma grfica de como deben realizarse los
pasos en la computadora para producir resultados.
Esta representacin grfica se da cuando varios smbolos (que indican diferentes
procesos en la computadora), se relacionan entre si mediante lneas que indican el orden
en que se deben ejecutar los procesos.
Los smbolos utilizados han sido normalizados por el instituto norteamericano de
normalizacin (ANSI).
o Todo diagrama debe tener un inicio y un fin.
o Se deben se usar solamente lneas de flujo horizontales y/o
verticales.
o Se debe evitar el cruce de lneas utilizando los conectores.
o Se deben usar conectores solo cuando sea necesario.
o No deben quedar lneas de flujo son conectar.
o Se deben trazar los smbolos de manera que se puedan leer de
arriba hacia abajo y de izquierda a derecha.
o Todo texto escrito dentro de un smbolo deber ser escrito
claramente, evitando el uso de muchas palabras.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

o Evitar la terminologa de un programacin maquina.
o Utilizar comentarios ya sea al margen o mediante el smbolo grafico
comentarios para que este sea entendible por cualquier persona que lo
consulte.
o Si el diagrama abarca mas de una hoja es conveniente enumerarlo
e identificar de donde viene y a donde se dirige.
2. Pseudocdigo
Mezcla de lenguaje de programacin y espaol(o ingles o cualquier otro idioma) que se
emplea, dentro de la programacin estructurada, para realizar el diseo de un programa.
En esencial, el pseudocdigo se puede definir como un lenguaje de especificaciones de
algoritmos.
Es la representacin narrativa de los pasos que debe seguir un algoritmo para dar
solucin a un problema determinado. El pseudocdigo utiliza palabras que indican el
proceso a realizar.
El pseudocdigo se concibi para superar las dos principales desventajas del Diagrama
de Flujo: el diagrama de flujo es lento de crear y difcil de modificar sin un nuevo redibujo.
Por otra parte el pseudocdigo es ms fcil de utilizar ya que es similar al lenguaje
natural.
Al contrario de los lenguajes de programacin de alto nivel como Pascal o Basic no existe
un conjunto de reglas que definan con precisin lo que es y lo que no es pseudocdigo.
Vara de un programador a otro.
El pseudocdigo requiere de ciertos smbolos que ya tienen significado preciso y
establecido a los que se les conoce como palabras clave. Es necesario que exista una
palabra clave para la seleccin y otra para la iteracin condicional, as como para las
instrucciones adicionales y otras estructuras de control.



2.10 Estructuras de control
Programacin estructurada
Mtodo disciplinado de escribir programas que sean claros, que se demuestren que son
correctos y fciles de modificar
Un programa se compone de:
Estructuras de datos.- Los hechos reales, representacin en forma de datos,
compuestos o simples.
Operaciones primitivas elementales.- Son acciones que se ejecutan sobre los
datos para transformarlos en informacin.
Estructuras de control.- Son los mtodos que existen para dirigir el flujo de
acciones que la computadora deber ejecutar sobre los datos manejados por el programa.

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA

2.10.1 Estructuras secuenciales
La computadora ejecutar automticamente enunciados uno despus del otro, en el orden
en el cual se han escrito de inicio a fin.

Ejemplo Sumar dos nmeros:
Pseudocdigo
Inicio
Entero a,b,c declara las variables a utilizar
Leer a,b solicita el valor de a y b
c= a+b suma a y b y lo almacena en c
Imprimir c muestra el resultado almacenado en la variable c
fin

Diagrama de flujo


TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


2.10.2 Estructura de control selectiva
Existen tres tipos de estructuras de control selectivas, estas se basan en una condicin o
en una opcin para decidir la parte del programa por el que pasar.
a) Simple
b) Doble o compuesta
c) Mltiple
Selectiva simple.- evala una condicin, si esta es verdadera ejecuta la acciones
especificadas, si es falsa no realiza ninguna accin.

Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario
marcarlos con inicio y fin, en caso contrario si, como se muestra en el diagrama anterior.
Selectiva doble o compuesta.- evala una condicin, si esta es verdadera ejecuta la
accin o acciones especificadas, si es falsa ejecuta otra accin o acciones.

Nota: Si existe sola una instruccin o sentencia dentro de la condicin no es necesario
marcarlos con inicio y fin como en este caso que la condicin fue falsa, en caso contrario
si, en este ejemplo cuando la condicin fue verdadera.
Ejemplo: Imprimir si un nmero es positivo o negativo

TECNOLGICO DE ESTUDIOS SUPERIORES DE IXTAPALUCA


Nota: las variables no se especifican en el diagrama de flujo, pero si en el pseudocdigo.