Introduccion A LA Programacion POR Computadora PDF

Title Introduccion A LA Programacion POR Computadora
Author W E R O
Course Introducción a la programación
Institution Instituto Tecnológico de Cerro Azul
Pages 60
File Size 1.1 MB
File Type PDF
Total Downloads 71
Total Views 146

Summary

Download Introduccion A LA Programacion POR Computadora PDF


Description

INSTITUTO TECNOLOGICO DE CERRO AZUL

ALUMNO: Luis Ángel Cruz Escudero

ASIGNATURA: Introducción a la Programación

ESPECIALIDAD: Ingeniería Electromecánica

SALON: Aula CAD / E-6

DOCENTE: ING. Noé Francisco Reyes Cruz

UNIDAD 1 INTRODUCCION A LA PROGRAMACION POR COMPUTADORA 1.1 Desarrollo Histórico Con el paso del tiempo y la continua evolución de las computadoras, los lenguajes de programación han ido cambiando y mejorando de acuerdo a las necesidades tanto de programadores como de las máquinas en general, dejando consigo una gran variedad de lenguajes y códigos que seguramente nadie conoce en su totalidad. Si nos ponemos en la tarea de investigar un poco sobre la historia de los lenguajes de programación seguro encontraremos datos sorprendentes, como por ejemplo el hecho de que el primer lenguaje de computadora apareció hace más de 100 años y fue escrito por una mujer, Ada Lovelace quien es considerada como la primera programadora tras haber escrito la manipulación de los símbolos para una máquina de Charles Babbage que aún no había sido construida. Los lenguajes de programación al principio eran muy difíciles de entender pues estaban desarrollados para ser entendidos directamente por las maquinas (lenguajes de bajo nivel) y eran muy pocas las personas que se dedicaban a programar en ese entonces, pero con el paso del tiempo se han hecho cada vez más amigables y gracias al uso de compiladores e intérpretes se ha podido llevar la programación a un nivel más humano (lenguajes de alto nivel) facilitando el proceso de desarrollo de software. En la historia de los lenguajes de programación podemos destacar también el hecho de que se han derivado varios tipos de lenguajes a partir de los primeros, así como otros detalles que podemos apreciar en la siguiente linea de tiempo: 1843: Ada Lovelace desarrolla el primer lenguaje de programación cuando escribió un algoritmo para la máquina analítica de Charles Babbage. 1957 – Fortran: (“The IBM Mathematical Formula Translating System”): Un lenguaje de programación de alto nivel de propósito general. Para cálculo numérico y científico (como alternativa al lenguaje ensamblador). Es el lenguaje de programación más antiguo que se utiliza hoy en día. 1958 – Lisp: (“List Processor”) Utilizado para la notación matemática y temas de ciencias de la computación. 1959 – Cobol: (“Common Business-Oriented Language) Usado principalmente para la informática empresarial. Es el primer lenguaje de programación que se demandan por el Departamento de Defensa de EE.UU..

1964 – Basic: (“Beginner’s All-purpose Symbolic Instruction Code”) Diseñado para la simplicidad. Su popularidad explotó a mediados de los años 70 con los computadores personales. 1970 – Pascal: (En honor al matemático/físico francés Blaise Pascal) Utilizado para la enseñanza de la programación estructurada y estructuración de datos. 1972 – Lenguaje C: (Basado en un lenguaje anterior llamado “B”) Creado para sistemas Unix. Muchos de lenguajes de programación más populares del mundo son derivados de el, entre ellos tenemos C#, Java, JavaScript, Perl, PHP y Python. 1980 – Ada: (En honor a Ada Lovelace): Es derivado del Pascal. Contratado por el Departamento de Defensa de los EE.UU. en 1977 para el desarrollo de sistemas de software grandes. 1983 – C++: (“C con clases”; ++ es el operador de incremento en “C”) Es una extensión de lenguaje C, con mejoras tales como clases, funciones virtuales y plantillas. 1983 – Objective-C: (Extensión de “C” orientada a objetos) Ampliación de C, se adiciona la funcionalidad de paso de mensajes basado en el lenguaje Smalltalk. 1987 – Perl: Creado para el procesamiento de informes en sistemas Unix. Hoy en día es conocido por su gran potencia y versatilidad. 1991 – Python: Creado para apoyar una variedad de estilos de programación y hacerlo divertido de usar. 1993 – Ruby: Una lenguaje influenciado por Perl, Ada, Lisp, Smalltalk, etc. Diseñado para la programación productiva y agradable. 1995 – Java: Hecho para un proyecto de televisión interactiva. Funciona multiplataforma. Es el segundo lenguaje más popular (detrás de lenguaje C). 1995 – PHP: (“Personal Home Page”) Usado para la creación de páginas web dinámicas. 1995 – JavaScript: Creado para ampliar la funcionalidad de las páginas web, permite utilizar formularios de presentación/validación, interactividad, animaciones, seguimiento de la actividad del usuario, etc… 2005 – Ruby On Rails: fue creado por David Heinemeier Hensson lo lanzó como código abierto en 2004. 2007 – Groovy: Un lenguaje de programación implementada sobre la plataforma java. 2009 – Julia: Pretende crear un lenguaje de programación a código abierto. 2010 – Grace: Creado principalmente con fines educativos, creado por James Nobel. 2017 – Regional Assembly: Es un lenguaje de programación de bajo nivel que consiste en un conjunto memorico.

1.2 Componentes Básicos de una Computadora HARDWARE Se denomina hardware o soporte físico al conjunto de elementos materiales que componen un ordenador. Hardware también son los componentes físicos de una computadora tales como el disco duro, CD-Rom, disquetera (floppy), etc... En dicho conjunto se incluyen los dispositivos electrónicos y electromecánicos, circuitos, cables, tarjetas, armarios o cajas, periféricos de todo tipo y otros elementos físicos. Hardware típico de una computadora El típico hardware que compone una computadora personal es el siguiente: ELEMENTOS CPU (Unidad Central de Proceso) El CPU es una de las partes fundamentales del Hardware. Contiene los circuitos, los procesadores y las memorias que ejecutan las transferencias de información. La unidad central de proceso (CPU), es un conjunto de circuitos electrónicos digitales encargados de recibir la información de los dispositivos de entrada/salida, procesarla y enviarla de nuevo a los dispositivos de entrada/salida, constituyéndose en la parte más importante del computador. Pantalla o Monitor Es un periférico de salida y en su superficie luminiscente es en la que se reproducen las imágenes. El monitor es el que mantiene informado al usuario de lo que está haciendo el computador en cada momento. Las características de un monitor dependen de la calidad de la imagen y esta del número de píxeles que dispone y del número de colores que pueda mostrar. Un monitor VGA muestra apenas 16 colores y una resolución de 640 x 480 (baja resolución). Un monitor SVGA llega hasta 16 millones de colores con resolución de 1280 x 1024 (altísima resolución). Ratón o Mouse Es un dispositivo de forma plana cuyo desplazamiento sobre una superficie lisa horizontal se refleja fielmente en el movimiento del cursor en la pantalla (o monitor) de visualización. Existen mouse que funciona con un cable conectado al computador y los que operan sin cable y transmiten las órdenes por rayos infrarrojos (también llamado mouse inalámbrico). Unidad de Disquetes Las unidades de disquetes (o drivers de disquete) son dispositivos de entrada y salida que permiten el cargue y descargue masivo de información al computador, así como su almacenamiento y transporte. Operan grabando y leyendo la información sobre la superficie de un disquete, modificando sus características magnéticas, por lo cual son un medio magnético.

Unidad (o Drive) de CD-Rom Es la unidad encargada de leer un disco óptico, es decir de lectura mediante un rayo láser, no recargable utilizado para el almacenamiento de información en sistemas informáticos. Las siglas de la expresión CD-Rom son Compact Disc Read-Only Memory que en español es disco compacto de sólo lectura. Quemador (o Grabadora) de CD Esta unidad no sólo lee los cd’s sino que permite grabar en ellos cualquier clase de información, utilizando un programa especialmente diseñado para esta función (Nero, Roxio CD Creator, etc.). Unidad de DVD Esta unidad se encarga de leer DVD (disco de video digital), que es un formato de almacenamiento de datos digitales, tiene una gran capacidad de almacenamiento. Permite guardar desde 4.5 GB (gigabytes) hasta 17 GB. Teclado El teclado es permite la comunicación con la computadora e ingresar la información. Es fundamental para utilizar cualquier aplicación. El teclado más comúnmente utilizado tiene 102 teclas, agrupadas en cuatro bloques: teclado alfanumérico, teclado numérico, teclas de función y teclas de control. Se utiliza como una máquina de escribir, presionando sobre la tecla que se quiere ingresar; algunas teclas tienen una función predeterminada que es siempre la misma, pero hay otras cuya función cambia según el programa que se esté usando. Placa Madre Tarjeta o placa central de circuitos en un equipo electrónico complejo (como una computadora personal). La placa madre también es conocida como motherboard, mainboard, baseboard, system board, placa/tarjeta base, etc. El propósito más básico de las placas madres es proveer las conexiones lógicas y eléctricas entre otros componentes del sistema. Una placa madre típica de una computadora de escritorio, consta de un microprocesador, de memoria principal, de puertos y conectores, etc. El resto de los dispositivos electrónicos como discos duros, tarjeta aceleradora de gráficos, placa de sonido, etc. son conectados a la placa madre a través de conectores y/o cables. fuente de alimentación: En computación, origen de la electricidad que alimenta una computadora. Tarjeta de sonido Placa que controla el sonido en una computadora. Muchas veces vienen integradas junto con la placa de video en la placa madre.

Redes (NIC, Network Interface Card, placa de red). Una tarjeta de red es un tipo de tarjeta de expansión que se inserta en la placa madre o a un puerto como el USB, y que permite conectar una computadora a una red y así poder compartir recursos (impresoras, archivos e internet). Una tarjeta de red inalámbrica permite lo mismo, sólo que sin emplear cables de red, sino que se utilizan ondas radio para transmitir la información. Tipos de hardware Se clasifica generalmente en básico y complementario, entendiendo por básico todo aquel dispositivo necesario para iniciar el ordenador, y el complementario como su nombre lo dice sirve para realizar funciones específicas o más allá de las básicas. Periféricos de entrada: Son los que permiten que el usuario aporte información exterior. Entre ellos podemos encontrar: teclado, ratón (mouse), escáner, SAI (Sistema de Alimentación Ininterrumpida), micrófono, etc. Periféricos de salida Son los que muestran al usuario el resultado de las operaciones realizadas por el PC. En este grupo podemos encontrar: monitor, impresora, altavoces, etc. Periféricos de entrada/salida: Son los dispositivos que pueden aportar simultáneamente información exterior al PC y al usuario. Aquí se encuentran: módem (Modulador/Demodulador), unidades de almacenamiento (Discos duros, disquetes o floppy), ZIP, Memorias de pequeño tamaño, flash, etc.) Compatibilidad Hardware es el substrato físico en el cual existe el software. El hardware abarca todas las piezas físicas de un ordenador (CPU, placa base, etc.) Software se refiere a los programas y datos almacenados en un ordenador.  

Los programas dan instrucciones para realizar tareas al hardware o sirven de conexión con otro software. Los datos solamente existen para su uso eventual por un programa.

1.3 Algoritmos Un algoritmo es una secuencia de pasos lógicos necesarios para llevar a cabo una tarea específica, como la solución de un problema. Los algoritmos son independientes tanto del lenguaje de programación en que se expresan como de la computadora que los ejecuta. En cada problema el algoritmo se puede expresar en un lenguaje diferente de programación y ejecutarse en una computadora distinta; sin embargo el algoritmo será siempre el mismo. Por ejemplo en una analogía con la vida diaria, una receta de un plato de cocina se puede expresar en español, inglés o francés, pero cualquiera que sea el lenguaje, los pasos para la elaboración del plato se realizaran sin importar el cocinero. Los pasos a seguir en la solución de una ecuación de segundo grado. Los pasos matemáticos para la solución de un número factorial. Las instrucciones para la liquidación de una nómina. Las acciones que se deben seguir para la obtención de una estadística. Para llegar a la realización de un programa es necesario el diseño previo de un algoritmo, de modo que sin algoritmo no puede existir un programa. Las características fundamentales que debe cumplir todo algoritmo son: Un algoritmo debe ser preciso e indicar el orden de realización de cada paso. Un algoritmo debe estar definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez. Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe terminar en algún momento; o sea debe de tener un número finito de pasos. La definición de un algoritmo debe describir tres partes: Entrada, Proceso y Salida. En el algoritmo citado anteriormente se tendrá: 

Entrada ingredientes y utensilios empleados



Proceso elaboración de la receta de cocina



Salida terminación del plato (por ejemplo, cordero)

Un algoritmo exige que se tengan varias propiedades importantes: Los pasos de un algoritmo deben ser simples y exentos de ambigüedades (diferentes significados), deben seguir un orden cuidadosamente prescrito, deben ser efectivos y deben de resolver el problema en un número finito de pasos. El siguiente ejemplo muestra un algoritmo para cambiar un foco quemado. Cambiar un foco quemado podría resumirse en dos pasos: 1. Quitar el foco quemado 2. Colocar un foco nuevo Pero, si tuviera que entrenar un robot domestico para que efectúe esta tarea, tendrá que ser más específico y claro en los pasos a seguir, dar más detalles (suponga que el foco se encuentra en el techo de una habitación):

1. 2. 3. 4. 5. 6. 7.

Situar escalera bajo el foco quemado. Elegir un foco de reemplazo (de la misma potencia que el anterior). Subir por la escalera hasta alcanzar el foco. Girar el foco contra las manecillas del reloj hasta que esté suelto. Ubicar el foco nuevo en el mismo lugar que el anterior. Enroscar en el sentido de las manecillas del reloj hasta que quede apretado. Bajar de la escalera.

1.4 Diagramas de flujo Un diagrama de flujo es una forma de representar gráficamente los detalles algorítmicos de un proceso multifactorial. Se utiliza principalmente en programación, economía y procesos industriales, pasando también a partir de estas disciplinas a formar parte fundamental de otras, como la psicología cognitiva. Estos diagramas utilizan una serie de símbolos con significados especiales y son la representación gráfica de los pasos de un proceso. En computación, son modelos tecnológicos utilizados para comprender los rudimentos de la programación lineal o estructurada. Símbolos usados en los Diagramas de Flujo. Estos varían de acuerdo al gusto del consumidor, Nosotros usaremos los siguientes:

Características En

los

que

diagramas

debe de

flujo

cumplir se

un

presuponen

diagrama los

siguientes

de

flujo

aspectos:

• Existe siempre un camino que permite llegar a una solución (finalización del algoritmo). • Existe un único inicio del proceso. • Existe un único punto de fin para el proceso de flujo (salvo del rombo que indica una comparación con dos caminos posibles). Desarrollo

del

Diagrama

de

Flujo

Las siguientes son acciones previas a la realización del diagrama de flujo: • Identificar las ideas principales a ser incluidas en el diagrama de flujo. Deben estar presentes el dueño o responsable del proceso, los dueños o responsables del proceso anterior y posterior y de otros procesos interrelacionados, otras partes interesadas. • Definir qué se espera obtener del diagrama de flujo. • Identificar quién lo empleará y cómo.

• Establecer el nivel • Determinar los límites del proceso a describir.

de

Los

el

pasos

a

seguir

para

construir

detalle diagrama

requerido. de

flujo

son:

• Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso previo y el final la entrada al proceso siguiente. • Identificar y listar las principales actividades/subprocesos que están incluidos en el proceso a describir y su orden cronológico. • Si el nivel de detalle definido incluye actividades menores, listarlas también. • Identificar y listar los puntos de decisión. • Construir el diagrama respetando la secuencia cronológica y asignando los correspondientes símbolos. • Asignar un título al diagrama y verificar que esté completo y describa con exactitud el proceso elegido. Ejemplo de Diagrama de flujo Para un sencillo programa que resta al número mayor un número menor. Ambos números so ingresados por el usuario y el resultado se muestra en la pantalla.

Los números en rojo no forman parte del DFD, son usados para explicar paso a paso la lectura de este diagrama. 1.

Inicio

(Todo

DFD

debe

tener

uno

y

solo

un

inicio)

2. Se leen (del teclado o de otro Sitio) dos números cualesquiera que nosotros llamaremos a y b (el computador los guardará en algún sitio pero nos devolverá su valor cuando nosotros se lo indiquemos 3.

Preguntamos

si

el

valor

de a es

mayor

que

el

valor

de b.

4. El flujo hará que se ejecute la resta del menor al número mayor (si la respuesta es Si, a la variable Res se le asignará el valor de a menos el valor de b en caso contrario a la variable Res se le asignará el valor de b menos el valor de a) 5.

Se

6. Fin del Programa

imprime

el

valor

de

Res

1.5 Metodología para la solución de problemas basados en computadora Definición del Problema: Esta fase está dada por el enunciado del problema, el cual requiere una definición 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 mucho caso continuar con la siguiente etapa. Análisis del Problema: Una vez que se ha comprendido lo que se desea de la computadora, es necesario definir:   

Los datos de entrada. Cuál es la información que se desea producir (salida) Los métodos y fórmulas que se necesitan para procesar los datos.

Una recomendación muy práctica 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. Diseño 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 definición del problema. Debe ser finito en tamaño y tiempo de ejecución.

Codificación: La codificación es la operación de escribir la solución del problema (de acuerdo a la lógica del diagrama de flujo o pseudocódigo), en una serie de instrucciones detalladas, en un código reconocible por la computadora, la serie de instrucciones detalladas se le conoce como código fuente, el cual se escribe en un lenguaje de programación o lenguaje de alto nivel. Prueba y Depuración: Los errores humanos dentro de la programación de computadoras son muchos y aumentan considerablemente con la complejidad del problema. El proceso de identificar y eliminar errores, para dar paso a una solución sin errores se le llama depuración. La depuración o prueba resulta una tarea tan creativa c...


Similar Free PDFs