Computadora: Es un dispositivo electrnico utilizado para procesar informacin y obtener
resultados. Los datos y la informacin se pueden introducir en la computadora como
entrada (input) y a continuacin se procesan para producir una salida (output).
Proceso de informacin en la computadora
Datos de Proceso Datos de entrada salida
Programa: Es el conjunto de instrucciones escritas de algn lenguaje de programacin y que ejecutadas secuencialmente resuelven un problema especifico.
Organizacin fsica de una computadora
CPU Unida de Unidad Dispositivos de Control Arit.-Log. Dispositivos de Entrada alida !emoria
Dispositivos de Entrada: omo su nombre lo indica! sirven para introducir datos (informacin) en la computadora para su proceso. Los datos se leen de los dispositivos de entrada y se almacenan en la memoria central o interna. Ejemplos" teclado ! scanners (digitalizadores de rastreo)! mouse (ratn)! trac#ball (bola de ratn estacionario)! joystic# (palancas de juego)! l$piz ptico.
Dispositivos de alida: %egresan los datos procesados que sirven de informacin al usuario. Ejemplo" monitor! impresora.
La Unidad Central de Procesamiento "C.P.U# se divide en dos" &nidad de control &nidad 'ritm(tico ) Lgica
Unidad de Control: oordina las actividades de la computadora y determina que operaciones se deben realizar y en que orden* as+ mismo controla todo el proceso de la computadora.
Unidad Aritm$tico - Lgica: %ealiza operaciones aritm(ticas y lgicas! tales como suma! resta! multiplicacin! divisin y comparaciones.
La !emoria de la computadora se divide en dos" ,emoria entral o -nterna ,emoria 'u.iliar o E.terna
!emoria Central "interna#: La P& utiliza la memoria de la computadora para guardar informacin mientras trabaja con ella* mientras esta informacin permanezca en memoria! la computadora puede tener acceso a ella en forma directa. Esta memoria construida internamente se llama memoria de acceso aleatorio (%',).
La memoria interna consta de dos $reas de memoria" La memoria %A! "%andon Access !emor&#: %ecibe el nombre de memoria principal o memoria del usuario! en ella se almacena informacin solo mientras la computadora esta encendida. uando se apaga o arranca nuevamente la computadora! la informacin se pierde! por lo que se dice que la memoria %', es una memoria vol$til.
La memoria %O! "%ead Onl& !emor&#: Es una memoria est$tica que no puede cambiar! la computadora puede leer los datos almacenados en la memoria %/,! pero no se pueden introducir datos en ella! o cambiar los datos que a0+ se encuentran* por lo que se dice que esta memoria es de solo lectura. Los datos de la memoria %/, est$n grabados en forma permanente y son introducidos por el fabricante de la computadora. !emoria Au'iliar "E'terna#: Es donde se almacenan todos los programas o datos que el usuario desee. Los dispositivos de almacenamiento o memorias au.iliares (e.ternas o secundarias) mas comnmente utilizados son" cintas magn(ticas y discos magn(ticos.
(.) Definicin de Lengua*e
Lengua*e: Es una serie de s+mbolos que sirven para transmitir uno o mas mensajes (ideas) entre dos entidades diferentes. ' la transmisin de mensajes se le conoce comnmente como comunicacin.
La comunicacin es un proceso complejo que requiere una serie de reglas simples! pero indispensables para poderse llevar a cabo. Las dos principales son las siguientes" 1 Los mensajes deben correr en un sentido a la vez. 1 Debe forzosamente e.istir 2 elementos" Emisor! %eceptor! ,edio de omunicacin y ,ensaje.
Lengua*es de Programacin Es un conjunto de s+mbolos! caracteres y reglas (programas) que le permiten a las personas comunicarse con la computadora. Los lenguajes de programacin tienen un conjunto de instrucciones que nos permiten realizar operaciones de entrada3salida! calculo! manipulacin de te.tos! lgica3comparacin y almacenamiento3recuperacin.
Los lenguajes de programacin se clasifican en" Lengua*e !a+uina: 4on aquellos cuyas instrucciones son directamente entendibles por la computadora y no necesitan traduccin posterior para que la P& pueda comprender y ejecutar el programa. Las instrucciones en lenguaje maquina se e.presan en t(rminos de la unidad de memoria mas peque5a el bit (d+gito binario 6 o 7).
Lengua*e de ,a*o -ivel "Ensam.lador#: En este lenguaje las instrucciones se escriben en cdigos alfab(ticos conocidos como mnemot(cnicos para las operaciones y direcciones simblicas.
Lengua*e de Alto -ivel: Los lenguajes de programacin de alto nivel (8'4-! pascal! cobol! frotran! etc.) son aquellos en los que las instrucciones o sentencias a la computadora son escritas con palabras similares a los lenguajes 0umanos (en general en ingles)! lo que facilita la escritura y comprensin del programa.
(./ Definicin de Algoritmo
La palabra algoritmo se deriva de la traduccin al lat+n de la palabra $rabe al#0o9arizmi! nombre de un matem$tico y astrnomo $rabe que escribi un tratado sobre manipulacin de nmeros y ecuaciones en el siglo -:. &n algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir! para dar solucin a un problema especifico.
(.0 1ipos de Algoritmos
Cualitativos: 4on aquellos en los que se describen los pasos utilizando palabras. Cuantitativos: 4on aquellos en los que se utilizan c$lculos num(ricos para definir los pasos del proceso.
(.2 Lengua*es Algoritmicos
Es una serie de s+mbolos y reglas que se utilizan para describir de manera e.pl+cita un proceso. 1ipos de Lengua*es Algoritmicos
Gr3ficos: Es la representacin gr$fica de las operaciones que realiza un algoritmo (diagrama de flujo). -o Gr3ficos: %epresenta en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocodigo).
(.4 !etodologa para la solucin de pro.lemas por medio de computadora
(.5 Definicin del Pro.lema
Esta fase est$ dada por el enunciado del problema! el cual requiere una definicin clara y precisa. Es importante que se conozca lo que se desea que realice la computadora* mientras esto no se conozca del todo no tiene muc0o caso continuar con la siguiente etapa.
(.6 An3lisis del Pro.lema
&na vez que se 0a comprendido lo que se desea de la computadora! es necesario definir" Los datos de entrada. ual es la informacin que se desea producir (salida) Los m(todos y frmulas que se necesitan para procesar los datos.
&na recomendacin muy practica es el que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados.
(.7 Dise8o del Algoritmo
Las caracter+sticas de un buen algoritmo son" Debe tener un punto particular de inicio. Debe ser definido! no debe permitir dobles interpretaciones. Debe ser general! es decir! soportar la mayor+a de las variantes que se puedan presentar en la definicin del problema. Debe ser finito en tama5o y tiempo de ejecucin.
(.(9 Codificacin
La codificacin es la operacin de escribir la solucin del problema (de acuerdo a la lgica del diagrama de flujo o pseudocodigo)! en una serie de instrucciones detalladas! en un cdigo reconocible por la computadora! la serie de instrucciones detalladas se le conoce como cdigo fuente! el cual se escribe en un lenguaje de programacin o lenguaje de alto nivel.
(.(( Prue.a & Depuracin
Los errores 0umanos dentro de la programacin de computadoras son muc0os y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores! para dar paso a una solucin sin errores se le llama depuracin.
La depuracin o prue.a resulta una tarea tan creativa como el mismo desarrollo de la solucin! por ello se debe considerar con el mismo inter(s y entusiasmo. %esulta conveniente observar los siguientes principios al realizar una depuracin! ya que de este trabajo depende el (.ito de nuestra solucin.
(.() Documentacin
Es la gu+a o comunicacin escrita es sus variadas formas! ya sea en enunciados! procedimientos! dibujos o diagramas. ' menudo un programa escrito por una persona! es usado por otra. Por ello la documentacin sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).
La documentacin se divide en tres partes"
Documentacin -nterna Documentacin E.terna ,anual del &suario
Documentacin -nterna" 4on los comentarios o mensaje que se a5aden al cdigo fuente para 0acer mas claro el entendimiento de un proceso.
Documentacin E.terna" 4e define en un documento escrito los siguientes puntos" Descripcin del Problema ;ombre del 'utor 'lgoritmo (diagrama de flujo o pseudocodigo) Diccionario de Datos digo <uente (programa)
,anual del &suario" Describe paso a paso la manera como funciona el programa! con el fin de que el usuario obtenga el resultado deseado.
(.(/ !antenimiento
4e lleva acabo despu(s de terminado el programa! cuando se detecta que es necesario 0acer algn cambio! ajuste o complementacin al programa para que siga trabajando de manera correcta. Para poder realizar este trabajo se requiere que el programa este correctamente documentado.
).( 1ipos De Datos
=odos los datos tienen un tipo asociado con ellos. &n dato puede ser un simple car$cter! tal como >b?! un valor entero tal como @A. El tipo de dato determina la naturaleza del conjunto de valores que puede tomar una variable.
;um(ricos 4imples Lgicos 'lfanum(ricos (string) =ipos de datos 'rreglos (Bectores! ,atrices) Estructurados %egistros (Def. por el 'rc0ivos usuario) 'puntadores
1ipos de Datos imples
Datos -um$ricos: Permiten representar valores escalares de forma num(rica! esto incluye a los nmeros enteros y los reales. Este tipo de datos permiten realizar operaciones aritm(ticas comunes.
Datos Lgicos: 4on aquellos que solo pueden tener dos valores (cierto o falso) ya que representan el resultado de una comparacin entre otros datos (num(ricos o alfanum(ricos).
Datos Alfanum$ricos "tring#: Es una secuencia de caracteres alfanum(ricos que permiten representar valores identificables de forma descriptiva! esto incluye nombres de personas! direcciones! etc. Es posible representar nmeros como alfanum(ricos! pero estos pierden su propiedad matem$tica! es decir no es posible 0acer operaciones con ellos. Este tipo de datos se representan encerrados entre comillas.
Ejemplo" C-nstituto =ecnolgico de =u.tepecD C7EEFD
).) E'presiones
Las e.presiones son combinaciones de constantes! variables! s+mbolos de operacin! par(ntesis y nombres de funciones especiales. Por ejemplo"
aG(b G @)3c
ada e.presin toma un valor que se determina tomando los valores de las variables y constantes implicadas y la ejecucin de las operaciones indicadas. &na e.presin consta de operadores y operandos. 4egn sea el tipo de datos que manipulan! se clasifican las e.presiones en"
) 'ritm(ticas ) %elacinales ) Lgicas
)./ Operadores & Operandos
Operadores: 4on elementos que relacionan de forma diferente! los valores de una o mas variables y3o constantes. Es decir! los operadores nos permiten manipular valores.
'ritm(ticos =ipos de /peradores %elacinales Lgicos
Operadores Aritm$ticos: Los operadores aritm(ticos permiten la realizacin de operaciones matem$ticas con los valores (variables y constantes). Los operadores aritm(ticos pueden ser utilizados con tipos de datos enteros o reales. 4i ambos son enteros! el resultado es entero* si alguno de ellos es real! el resultado es real.
/perando (/perador) /perando
Balor (constante o variable)
Operadores Aritm$ticos G 4uma ) %esta 1 ,ultiplicacin 3 Divisin ,od ,odulo (residuo de la divisin entera)
Ejemplos" E.presin %esultado F 3 H @.A cociente de la divisin decimal 7H mod F A residuo de la divisin entera 2 G H 1 A 72
Prioridad de los Operadores Aritm$ticos
=odas las e.presiones entre par(ntesis se evalan primero. Las e.presiones con par(ntesis anidados se evalan de dentro a fuera! el par(ntesis mas interno se evala primero. Dentro de una misma e.presin los operadores se evalan en el siguiente orden.
7.) I E.ponenciacin H.) 1! 3! mod ,ultiplicacin! divisin! modulo. @.) G! ) 4uma y resta.
Los operadores en una misma e.presin con igual nivel de prioridad se evalan de izquierda a derec0a.
Ejemplos" 2 G H 1 A J 72 H@ 1 H 3 A J E.H 2K 3 A J E.H @ G A 1 (76 ) (H G 2)) J H@ @ G A 1 (76 ) K) J @ G A 1 2 J @ G H6 J H@ @.A G A.6E ) 72.6 3 26 J A.6E @.A G A.6E ) @.A J L.AE ) @.A J A.6E H.7 1 (7.A G @.6 1 2.7) J HL.EL H.7 1 (7.A G 7H.@) J H.7 1 7@.L J HL.EL
Operadores %elacinales:
4e utilizan para establecer una relacin entre dos valores. ompara estos valores entre si y esta comparacin produce un resultado de certeza o falsedad (verdadero o falso). Los operadores relacinales comparan valores del mismo tipo (num(ricos o cadenas) =ienen el mismo nivel de prioridad en su evaluacin. Los operadores relacinales tiene menor prioridad que los aritm(ticos.
Operadores %elacinales M ,ayor que N ,enor que M J ,ayor o igual que N J ,enor o igual que N M Diferente J -gual
Ejemplos" 4i a J 76 b J H6 c J @6
a G b M c <also a ) b N c Berdadero a ) b J c <also a 1 b N M c Berdadero
Ejemplos no lgicos" a N b N c 76 N H6 N @6 = N @6 (no es lgico porque tiene diferentes operandos)
Operadores Lgicos:
Estos operadores se utilizan para establecer relaciones entre valores lgicos. Estos valores pueden ser resultado de una e.presin relacional.