You are on page 1of 81

UNIVERSIDAD NACIONAL DE HUANCAVELICA

Facultad de Ciencias de Ingeniería


Escuela Académico Profesional de Ingeniería Civil

Curso:
Programación Digital

Docente: Ing. Nelson Huamaní Villalva


Email: nelhv@hotmail.com
Objetivos del Curso
 Tener el conocimiento necesario de la nueva tecnología de
computadores con que se desarrolla en el mundo actual.

 Identificar la estructura general de un programa y los elementos que lo


componen.

 Conocer y aplicar técnicas de programación para la solución de


problemas.

 Preparar al estudiante en el desarrollo de módulos de programación


aplicables a las diferentes materias de la carrera de Ingeniería Civil.

 Proporcionar una visión de las características más importantes del


procesamiento electrónico de datos, las técnicas de programación y su
empleo en el procesamiento y manejo de la información para la
solución de problemas de Ingeniería.
Temática del Curso
TEMA I: INTRODUCCIÓN A LA PROGRAMACION DIGITAL

La computadora: componentes físicos y lógicos.


Surgimiento y evolución de la computación.
Concepto de Algoritmo
Diseño de Algoritmos
Pseudocódigo
Diagrama de Flujo
¿Qué es la programación de computadoras?.
Los Lenguajes de Programación

TEMA II: ESTRUCTURA GENERAL DE UN PROGRAMA


Partes constitutivas de un programa
Instrucciones y tipos de instrucciones
Elementos básicos de un programa
PRIMERA EVALUACION PARCIAL
Temática del Curso
TEMA III: PROGRAMACIÓN ESTRUCTURADA

Concepto de Programación Estructurada


Teorema de la estructura, instrucción GOTO
Segmentación e Identación
Estructuras Selectivas
Estructuras repetitivas
Funciones, Arrays y punteros

TEMA IV: PROGRAMACION ORIENTADA A OBJETOS

Diferencia con la Programación Estructurada


Objetos y Clases
Interfaz
Técnicas de programación con objetos
Ventana de edición de códigos - Sintaxis
SEGUNDA EVALUACION PARCIAL
Temática del Curso

TEMA V: LENGUAJE DE PROGRAMACION VISUAL BASIC 6.0

Entorno del Visual Basic


Descripción de los controles básicos
Elementos de la programación
Mejorando el aspecto de los formularios
Ingreso personalizado de datos
Manejo de varios formularios
Diseño de menú
Manejo de archivos
Manejo de base de datos
Programación DAO
Creación de reporte
Programación ADO
TERCERA EVALUACION PARCIAL
Evaluación
Criterios de Evaluación

Exámenes Parciales.
Trabajos Prácticos.

Calculo del Promedio Final

El Promedio Final (PF) resulta de la siguiente fórmula:

2*PEP + 1*PTP
PF = ------------------------
3

PEP : Promedio de Examen Parcial.


PPC : Promedio de Trabajos Prácticos.
PF : Promedio Final.
Recursos didácticos
En el desarrollo de las clases se utilizaran los medios y
materiales como:

Teoría: salón de clase


Horario III Ciclo A: miércoles de 08:00 a.m. a 10:00 a.m.
• Pizarra, plumones, mota.
• Calculadora.
•Laptop y proyector Multimedia.

Práctica: centro de computo


Horario: miércoles de 10:00 a.m. a 13:00 p.m.
Primer grupo: 10:00 a.m. a 11:30: a.m.
Segundo grupo: 11:30 a.m. a 13:00: a.m.
•Pizarra, plumones, mota.
•Computadoras y Software Matlab 7.
•Laptop y proyector Multimedia.
Bibliografía

MANUAL DE PROGRAMACION. Joyanes Aguilar, Luis. Edit.


Consultores. España. 3ra. Edición.

PRINCIPIOS DE PROGRAMACION. Carrasco Loli, Ángela. Edit. A & C.


1ra. Edición. Lima – Perú.

FUNDAMENTOS DE PROGRAMACION, ALGORITMOS,


ESTRUCTURAS DE DATOS Y OBJETOS. Joyanes Aguilar, Luis. Edit.
MCGRAW-HILL / INTERAMERICANA DE ESPAÑA, S.A. 2003.

VISUAL BASIC 6.0. COMO DEBE SER ...!. Castañeda León, Juan José
Lima- Perú : Editorial Megabyte, 2002.

VISUAL BASIC 6.0. Matías Blázquez Iglesias. Editorial Anaya


Multimedia. 1ª edición - 1999. España.
Consultas y consejería

Email: nelhv@hotmail.com

Celular: 954649880

En ambientes de la E.A.P. Civil:

Martes de 9:00 a.m. a 11:00 a.m.


Jueves de 9:00 a.m. a 11:00 a.m.
Introducción

INTRODUCCION A LA
PROGRAMACIONDIGITAL

¿Qué es una computadora?

10
Introducción

¿Qué es un computadora?

Máquina electrónica, analógica o digital, dotada


de una memoria de gran capacidad y de
métodos de tratamiento de información, capaz
de resolver problemas matemáticos y lógicos
mediante la utilización automática de programas
informáticos.
[ Introducción ] Historia

Surgimiento y evolución de la computación

Generación Años Características


0 hasta 1945 Sistemas mecánicos y electro-mecánicos
1 1945 – 1955 Tubos al vacío, tableros
2 1955 – 1965 Transistores y sistemas por lotes
3 1965 – 1980 Circuitos integrados y multiprogramación
4 desde 1980 Computadores personales
[ Introducción ] Historia

La generación 0 (hasta 1945)


Ábacos
Calculadoras mecánicas.
Sistemas basados en relés.

13
13 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Primera Computadora Digital (mecánica)

Usada para calcular tablas numéricas,


calculaba cualquier función
algebraica y almacenaba números. Se
programaba con tarjetas.

Charles Babbage y Ada Lovelace.

Difference Engine (1822)


14
14 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Usada para computar tablas


matemáticas y de
navegación.

Harvard Mark I (1930)


15
15 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

La primera generación (1940-1955)


Luego se utilizan tubos al vacío
Eran enormes (20.000 tubos) y lentas (un ciclo  1 seg.)
Un solo grupo diseñaba, construía, programaba, operaba y
mantenía cada máquina.
Toda la programación se hacía en lenguaje máquina
(alambrando tableros por ejemplo).
No existían los sistemas operativos.
En 1950 se introducen las tarjetas perforadas.

16
16 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

ENIAC (1946) 17
17 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Primera máquina que


funcionó con un
programa almacenado.
John von Neumann,
Princeton

Manchester Mark I (1948) 18


18 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

La segunda generación (1955-1965)


Se introducen los transistores.
Distinción entre diseñadores, constructores,
programadores, operadores y personal de mantenimiento.
Mainframes en salas acondicionadas.
Se escribían los programas en papel, luego se perforaban
las tarjetas, cuarto de entrada, café, esperar la salida.
Los operadores toman las tarjetas del programa y colocan
también los del compilador.
Se crea el proceso por lotes que agrupa trabajos.

19
19 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Transistor (1947) 20
20 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Línea de programa

A = 1 5 6

Tarjeta perforada 21
21 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Primer compilador
FORTRAN para IBM 704
(Formula Translator)

FORTRAN (1957) 22
22 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

IBM 1401: Centro de Cómputo


23
23 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

ERMA, General Electric (1959)


24
24 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Invención del mouse (1964).

25
25 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

La tercera generación (1965-1980)


• Se introducen los circuitos integrados, lo
cual es una gran ventaja en el precio y
desempeño del computador.
• Se introduce el sistema IBM 360 altamente
compatible.
• Se introduce la multiprogramación
• Se introducen los discos duros.
• Se introduce el tiempo compartido entre
usuarios.
26
26 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Circuitos integrados
27
27 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

IBM 360
28
28 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

4K de palabras de 18
bits.

US$ 120.000 < 5% del


precio de la IBM 7094

DEC PDP-1 (1961)


29
29 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Primer microprocesador en un chip


Intel 4004 (1971)
30
Präsentat
ion
[ Introducción ] Historia

Appel I (1976)
31
31 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

ALTAIR 8800 (1975)


32
32 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Apple II (1978) US$ 1930


33
33 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

La cuarta generación (desde 1980)


• Usan LSI (large scale integration).
• Intel 8080 (8 bits) -> IBM PC (1980) con DOS.
• Intel 80286 (1983), 80386 (1985) y 80486 (1989).
• GUI (graphical User Interface) -> Macintosh
• Microsoft adopta GUI y desarrolla Windows (sobre DOS)
• Microsoft saca Windows 95 como sistema operativo,
luego Windows 98 (basado en 16 bits), Windows NT (32
bits) con ideas de VAX VMS.
• Windows NT 5.0 se transformó en Windows 2000
• Windows 98 se transformó en Windows Me.
• Windows XP
34
34 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

La cuarta generación (desde 1980)

• UNIX se mantiene más fuerte en computadores potentes


• Se basa en chips RISC de alto desempeño.
• Pentium Liunx es una alternativa a Windows
• Unix saca X Windows basado en GUI
• Se introducen sistemas operativos en red (varios
computadores conectados) y sistemas operativos
distribuidos (múltiples procesadores).
• continuará…

35
35 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

IBM PC (1981)
36
36 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

IBM PC/AT (1983)


37
37 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Sony introduce el CD (1984)


38
38 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

X Windows para UNIX (1984)


39
39 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

“Estoy construyendo un sistema


operativo gratuito (no es más que un
hobby, no será una cosa grande y
profesional como GNU) para clónicos AT
(con un 386 o 346).”

Linus Torvalds, Helsinki, Oct. 91

Nace LINUX

40
40 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Intel Pentium (1993)


41
41 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

Windows 95 (1995)
42
42 Arquitectura de Computadores Präsentat
ion
[ Introducción ] Historia

43
43 Arquitectura de Computadores Präsentat
ion
Introducción

Arquitectura básica de una computadora:


La arquitectura de un computador está dividida en
dos partes importantes:

Hardware: Es la que hace referencia a la parte


física de un computador.

Software: Es la que hace referencia a la parte


lógica de un computador.
Introducción
Software

Software: conjunto de instrucciones que le dicen


al hardware que hacer.

Lenguaje de programación: lenguaje que


permite escribir un software.

Programa: representación de algún software en


un lenguaje de programación específico.
Introducción
Arquitectura de Software
Lenguaje Lenguaje Lenguaje Hardware
Alto
.
Nivel Ensamblador Maquina
. .
FOR i:=1 TO 10 DO . .
BEGIN 0010 00011010
ADD R1 F4 1010 10111000
j :=j+i; MOV F4 C2 0101 11010001
END; . .
. . .
.

Sistema Operativo

Print(Document) Hwnd=CreateWindow(10,10,200,200)
<Enter>
Aplicaciones Herramientas
Introducción

Definición de problema

Se tiene un PROBLEMA cuando se buscan


VARIABLES DESCONOCIDAS que cumplan con
ciertas CONDICIONES y/o RELACIONES dadas
respecto a una serie de VARIABLES
CONOCIDAS.
Introducción

Solución de problema
Solucionar el problema es encontrar las
variables desconocidas.

Primer paso en la búsqueda de soluciones:


determinar de manera clara y concisa cuales
son las variables conocidas, las condiciones y
de que tipo son las variables desconocidas.
Introducción

Algoritmo

Secuencia bien definida y finita de tareas


bien definidas, cada una de las cuales se
puede realizar con una cantidad de
recursos finitos.
Introducción

Características de un Algoritmo

Preciso.

Definido o determinístico.

Finito.
Introducción

Ejemplo de algoritmo

Un estudiante se encuentra en su casa


(durmiendo) y debe ir a la universidad (a
tomar la clase de programación digital),
¿Que debe hacer el estudiante?.
Introducción
Ejemplo de algoritmo
1. Dormir.
2. Hacer 1 hasta que suene el
despertador (o lo llame la mamá).
3. Mirar la hora.
4. Hay tiempo suficiente?
4.1. Si, entonces
4.1.1. Bañarse.
4.1.2. Vestirse.
4.1.3. Desayunar.
4.2. No,
4.2.1. Vestirse.
Introducción

Ejemplo de algoritmo
5. Lavarse la boca.
6. Despedirse de la mamá y papá.
7. Hay tiempo suficiente?
7.1. Si, Caminar al paradero.
7.2. No, Correr al paradero.
8. Hasta que pase un colectivo para la
universidad hacer:
8.1. Esperar el colectivo
8.2. Ver a las demás personas que
esperan un colectivo.
Introducción

Ejemplo de algoritmo
9. Tomar el colectivo.
10. Mientras que no llegue a la
universidad hacer:
10.1. Seguir en el colectivo.
10.2. Pelear mentalmente con el
chofer.
11. Llegar a paradero de la
universidad.
12. Bajarse.
13. Entrar a la universidad.
Introducción

Representación de Algoritmos

Las representaciones más conocidas son:


Diagramas de flujo.
Pseudo-código.
Introducción

Diagramas de Flujo

Esquema de representación gráfico de


algoritmos.
Usa elementos gráficos como rectángulos y
rombos.
Se pueden usar operaciones matemáticas.
Introducción

Diagrama de Flujo

A, B, C
Diagramas de Flujo
• INICIO/TERMINAR para indicar en
donde empieza el diagrama.
• OPERACIÓN para plantear
instrucciones de asignación (tales
como desarrollar una expresión
aritmética o mover un dato a otro).
• DECISIÓN para evaluar una
condición y plantear la selección
de una alternativa.
Diagramas de Flujo
• FLECHAS para unir los demás
símbolos del diagrama e indicar la
secuencia de las instrucciones.
• CONECTOR para realizar una
conexión en la misma página
• CONECTOR para realizar una
conexión a otra página.

• FORMAS CONTINUAS para


indicar que se imprime algún
resultado
• ENTRADA MANUAL de datos
desde una terminal o teclado del
computador
• ESTRUCTURA REPETIR para
plantear instrucciones que se
repiten un número no controlado
de veces.
• PROCESO predefinido para la
ejecución de un bloque de
instrucciones (rutina o función)
Normas y recomendaciones para
los diagramas de Flujo
• Indicar claramente dónde empieza y dónde
termina.
• Se debe desarrollar de arriba hacia abajo y de
izquierda a derecha.
• Los símbolos deben dibujarse proporcionales y
balanceados unos con otros.
• En un diagrama se escribe que se hace, no se
codifican instrucciones en él.
• No deben existir ciclos (bucles, loops) infinitos.
• Un diagrama debe de ser claro y bien
presentado.
• Diagrama de flujo
Algoritmo 1: suma
• Pseudo-código
1.
2.
3.
4.
Introducción

Pseudo Código

Esquema de representación de algoritmos que


usa un subconjunto del lenguaje natural del
diseñador de algoritmos.

Elimina posibles ambigüedades empleando una


notación que aunque libre es más restringida
que la del lenguaje natural.
Introducción

Pseudo Código

leer A, B, C sino
si A>B si B>C
si A>C Mayor B
Mayor  A sino
sino
Mayor C
Mayor  C
fin_si
fin_si
fin_si
escribir Mayor
Introducción

Solución de Problemas con


computador

Problema

Metodología

Programa
Introducción

Metodología de Programación
Pasos de una metodología:

Análisis del problema


Especificación.
Diseño.
Prueba y Verificación.
Codificación.
Depuración y refinamiento
Introducción
Análisis del Problema

Entender de manera clara el problema que se


esta resolviendo.

Esta fase de la metodología concuerda con el


proceso de identificación de variables
conocidas, variables desconocidas y condiciones
usado en la sección de problemas.
Introducción
Especificación del Problema

La especificación de un problema se hace


mediante una descripción clara y precisa de:

Las entradas que el problema recibirá.


Las salidas que dan solución al problema.
Las condiciones, es decir la dependencia que
mantendrán las salidas obtenidas con las
entradas recibidas.
Introducción

Ejemplo de Especificación
Problema:
Construir un algoritmo que determine el mayor de
tres números enteros.
Especificación:
Entradas:
A,B,C (números de entrada) de tipo entero.
Salidas:
Mayor (valor mayor) de tipo entero.
Condiciones:
Mayor debe ser el valor máximo de A, B y C.
Introducción

Diseño
La fase de diseño del algoritmo, es la fase en
la que se construye el algoritmo que
permitirá encontrar la solución al problema.

La forma adecuada de realizar este proceso


es subdividir el proceso.
Introducción
Ventajas de la división
Al dividir el problema en módulos o partes se
comprende más fácilmente.
Al hacer modificaciones es más fácil sobre un
módulo en particular que en todo el algoritmo.
En cuanto a los resultados, se probarán mucho
mejor comprobando si cada módulo da el
resultado correcto que si se intenta probar de
un golpe todo el programa
Introducción

División
P =
r =
o =
c =
e
=
s
=
o =
Introducción

Prueba de Escritorio y
Refinamiento
Proceso de seguimiento del algoritmo para verificar
que cumple con la especificación. Si no se cumple
con la especificación se va refinando hasta lograr
el objetivo.
Introducción

CODIFICACION

Proceso en el cual se escribe el algoritmo en


lenguaje de programación, utilizando el editor
del compilador.
Introducción

DEPURACION Y
REFINAMIENTO

Proceso en el cual se corrigen los errores de sintaxis y


de lógica del programa, hasta lograr que el programa
ejecute.
Resumen

PROGRAMACIÓN DIGITAL

Proceso seguido para Que funciona por


la creación de un medio de números.
programa Sinónimo de numérico

Programación Digital consiste entonces,


en crear programas para resolver
problemas que se puedan expresar
numéricamente
Resumen

? ¿Qué es programar?

Es la acción de escribir instrucciones correctas para


que sean interpretadas por una máquina.

¿En que medida nos compete programar?


Introducción

Un programa es la parte lógica, también


denominada software, que dota al
equipo físico (hardware) de capacidad
Pero, ¿qué es para realizar cualquier tipo de trabajo.
un programa?

Básicamente existen tres tipos de


programas:
 Programas del sistema
 Programas de traducción
 Programas de aplicación.
Resumen

¿Cómo está
Un programa está constituido por el constituido un
Programa?
conjunto de instrucciones ordenadas
lógica y secuencialmente que orientan
la resolución de un determinado
problema.

Instrucciones son órdenes que se le dan al


computador para que ejecute una tarea específica.
Las instrucciones que constituyen el programa deben
ser elaboradas mediante un lenguaje de
programación
Resumen

Lenguaje de programación es una notación


¿qué es un para escribir programas, mediante la cual
lenguaje de
programación? nos comunicamos con el computador para
que reciba y ejecute las instrucciones
contempladas en dicho programa.

¿y un
computador? Un computador es un dispositivo electrónico
que recibe un conjunto de datos de entrada,
los procesa de acuerdo a las instrucciones
del programa y genera determinados
resultados o información, con gran
capacidad de almacenamiento de los datos
y elevada velocidad de cálculo
Gracias por su atención

You might also like