UNIVERSIDAD INDUSTRIAL DE SANTANDER
FACULTAD DE INGENIERIA FISICO MECÁNICAS
ESCUELA DE INGENIERÍA ELÉCTRICA, ELECTRONICA
SEDE BARBOSA
NOMBRE DE LA ASIGNATURA: PROGRAMACION DE COMPUTADORES I
DOCENTE: ING. CARLOS ANDRES LOZANO VIDES
Magister en Educación
(Universidad Minuto de Dios, Bogotá, Agosto 2015)
Maestro en Educación
(Instituto de Estudios Superiores de Monterrey, México D.F, Mayo 2015)
Especialista en Ingeniería Administrativa y Financiera
(Fundación Universidad de América, Bogotá, Septiembre 2008)
Ingeniero de Sistemas
(Universidad Distrital Francisco José de Caldas, Bogotá Octubre 2004)
1.0
CONTENIDOS ASIGNATURA
• Definiciones iniciales básicas • Funciones
• Algoritmo • Definición de funciones
• Procesador • Paso de parámetros por valor y
• Programa referencia
• Lenguajes de Programación • Funciones Recursivas
• Desarrollo de algoritmos • Clases y objetos
• Variables • Definiciones de clases
• Secuencias • “Instanciación” de una clase
• Desarrollo de algoritmos • Herencia
• Bloques condicionales • Sobrecarga de operadores
• Bloques de repetición
• Uso de arreglos
• Arreglos de una dimensión
• Arreglos de dos dimensiones
1.1
OBJETIVOS ASIGNATURA
• Estudiar y utilizar de la terminología y de los conceptos básicos de la informática.
• Definir las propiedades básicas de un algoritmo para resolver problemas que involucran
procesos de entrada y salida de datos, selección, suma, cuenta, repetición,
ordenamiento, búsqueda, operaciones básicas de vectores y matrices.
• Desarrollar habilidades y destrezas para concebir un problema como una serie de
procedimientos lógicamente relacionados entre sí y susceptibles de ser programados en
el computador.
• Usar un lenguaje de programación de alto nivel en forma eficiente.
• Usar un lenguaje de programación convenientemente para ejecutar, probar y poner a
punto algoritmos que resuelvan problemas de complejidad creciente.
1.2
BIBLIOGRAFIA
• CAIRO, Osvaldo. Metodología de la programación, Tomo I,
Computec, Alfa Omega Grupo Editor S.A. UREÑA.
• BRONSON, Gary J. C++ Para Ingeniería y Ciencias, Segunda
Edición. Editorial THOMSON.
• JIMÉNEZ Isabel. Técnico Superior en Desarrollo de
Aplicaciones Multiplataforma y Web, Garceta.
• JOYANES, Luis. Fundamentos de Programación, algoritmos,
estructuras de datos y objetos. McGrawHill
1.3
WEBGRAFIA
• Villalobos, Ricardo.
Libro Fundamentos de
programación
https://es.slideshare.net/Avall
ejos_/ricardo-marcelo-
villalobos-c
• Curso pseint desde cero.
https://www.youtube.com/wat
ch?v=SPIG14UV934&list=PLiplY
DjUMtth8RvrndUPDVOMD20I4
O2Wd
1.4
HORARIOS
• Clase Magistral:
• Lunes de 14h:00 a 16h:00
• Parte Teórica de la asignatura
• Practica en Computador
• Miércoles de 14h:00 a 16h:00
• Ejercicios guiados a realizar con presencia del docente.
• Ejercicios realizados de forma autónoma.
1.5
NORVATIVIDAD
• Puntualidad
• Inicio de clase según el horario asignado.
• Responsabilidad
• Trabajo autónomo es clave para el éxito.
1.6
DATOS IMPORTANTES
• Contacto
• [email protected]
[email protected]
• Horario de Consulta
• Martes 18: - 19 am.
1.7
EVALUACION
Tipo Porcentaje Descripción FECHA
Sentencias Básicas de
Previo 1 20% 9 de mayo
Programación
Estructuras Básicas de
Previo 2 30%
Datos
Proyecto durante el
Proyecto 30%
semestre
Estructuras
Compuestas y
Previo 3 20%
Programación Modular
(FUNCIONES)
1.8
McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved.
¿Qué vamos a aprender hoy?
• ¿Porqué es importante aprender a programar?
• https://youtu.be/1bDK1-U1edE
• Conceptos de hardware
• Papel del software en el sistema cómputacional
• Papel de los datos en el sistema de cómputacional
• Papel del usuario en el sistema de cómputacional
1B-10
Partes de un sistema computo
• Los sistemas computacionales se componen de:
• Hardware
• Software
• Datos
• Usuarios
1B-11
Partes de un sistema computo.
• Hardware
• Dispositivos mecánicos de la computadora
• “Lo que se puede tocar”
• Software
• Indica las instrucciones de la computadora
• También se les llama “programas”
• Existen miles de programas
1B-12
Partes de un sistema computo.
• Datos
• Piezas de información
• La computadora organiza y presenta los datos
• Usuarios
• Personas operando la computadora
• Son la parte más importante
• Dictan el comportamiento de la computadora
1B-13
Ciclo de Procesamiento de la Información
• Pasos que se hacen con los datos
• Entrada
• Procesamiento
• Salida
• Almacenamiento
1B-14
Hardware Esencial
• Todas las computadoras utilizan el mismo hardware básico
• Existen cuatro tipos de hardware
1B-15
Hardware Esencial
• Dispositivos de procesamiento
• Son el cerebro de la computadora
• Ejecutan las instrucciones de los programas
• Manipulan los datos
• La mayoría de las computadoras tienen muchos procesadores
• Unidad Central de Procesamiento (CPU)
• Procesadores secundarios
• Se fabrican con silicón y cobre
1B-16
Hardware Esencial
• Dispositivos de memoria
• Almacenan datos o programas
• Memoria de Acceso Aleatorio (RAM)
• Volátil
• Almacena datos y programas que se usan en el momento
• Mientras más RAM, más rápido el sistema
• Memoria de Sólo Lectura (ROM)
• Almacenamiento permanente de programas
• Almacena las instrucciones de arranque de la computadora
1B-17
Hardware Esencial
• Dispositivos de entrada/salida
• Permiten la interacción con el usuario
• Dispositivos de entrada: recopilan datos
• Teclado, mouse
• Dispositivos de salida: producen datos
• Monitor, impresora, bocinas
• Algunos dispositivos pueden ser tanto de entrada como de salida
• Touch screens
1B-18
Hardware Esencial
• Dispositivos de almacenamiento
• Guardan datos y programas permanentemente
• Son diferentes a la memoria RAM
• Almacenamiento magnético
• Floppy, disco duro, memoria flash
• Usa imanes para acceder a la información
• Almacenamiento óptico
• CD, DVD, BlueRay
• Usa láser para acceder a los datos
1B-19
Software “la máquina cobra vida”
• Indica las instrucciones de la computadora
• Razón fundamental para que las personas utilicen las computadoras
• Dos tipos de software:
• Software de sistema
• Software de aplicación
1B-20
Software “la máquina cobra vida”
• Software de sistema
• Es el software más importante
• Sistema operativo (OS)
• Windows
• Mac OS
• Unix/Linux
• Sistema operativo de red
• Windows Server
• CentOS
• Utilidades
• Symantec AntiVirus
1B-21
Software “la máquina cobra vida”
• Software de aplicación
• Realiza tareas muy específicas
• Tipo de software más popular
• ICQ
• Google Chrome, Mozilla Firefox, Internet Explore, Opera.
• iTunes, Ad-aware, Skype, Real Player,Adobe Acrobat Reader
• Sirven para los usos más comunes de las computadoras
1B-22
Datos de computadora
• Es un hecho o evento que no tiene significado por sí mismo
• Se almacenan usando un sistema de numeración binario
• Los datos se pueden organizar en archivos
1B-23
Usuarios de computadora
• Su papel depende de su habilidad
• Configurar el sistema
• Instalar software
• Ejecutar programas
• Administrar archivos
• Mantenimiento del sistema
• Computadoras “sin usuario”
• Trabajan sin usar datos por partes del usuario
• Sistemas automatizados
1B-24
¿Qué entiende la computadora?
La computadora manipula únicamente información digital:
Datos e instrucciones se codifican como
dígitos binarios (0’s y 1’s)
• ¿Por qué no se usa una representación de otro tipo?
• Problema tecnológico (es más fácil representar ceros y unos)
• ¿A qué nos conduce la solución adoptada para evitar el
problema tecnológico?
• La máquina sólo puede trabajar con cadenas de ceros y unos
1.25
HISTORIA DE LENGUAJES DE PROGRAMACIÓN
1.26
DESARROLLO DE LOGICA ALGORITMICA
A lo largo de toda nuestra vida hemos aprendido a resolver
problemas, y lo hacemos tan innatamente que no nos percatamos,
sin embargo no siempre tenemos una metodología, si no que lo
realizamos empíricamente.
1.27
DESARROLLO DE LOGICA ALGORITMICA
Lo mismo ocurre con los algoritmos, en donde casi
inconscientemente (más de lo que podemos imaginarnos)
realizamos: una serie de pasos, procedimientos o acciones que nos
permiten alcanzar un resultado o resolver un problema.
1.28
DESARROLLO DE LOGICA ALGORITMICA
Para demostrar lo anterior basta con preguntarnos a nosotros
mismos, ¿qué hacemos todas las mañanas al despertarnos?
1.29
DESARROLLO DE LOGICA ALGORITMICA
seguramente la mayoría preguntará:
¿Qué día de la semana es hoy?
Dependiendo de lo anterior responderá:
• Levantarse de la cama,
• ir al baño
• bañarse
• arreglarse
• desayunar y por último
• salir al trabajo, a la universidad, hacer deporte o regresar a la
cama.
1.30
DESARROLLO DE LOGICA ALGORITMICA
Si optáramos por analizar la acción de “levantarse de la cama”,
debemos cuestionarnos ¿cual sería su planteamiento del
problema?,
siendo que este podría ser:
“Un día cualquiera por la mañana, una persona debe levantarse de
la cama, pero esta se encuentra tapada por una sabana y dos
cobijas, indica ¿cuáles son los pasos a seguir para lograr estar
levantado y junto a la cama?”.
Para responder a este cuestionamiento, aplicamos lo que
llamamos lógica algorítmica.
1.31
Críticas, dudas, sugerencias…
Carlos Andrés Lozano Vides
[email protected]Para finalizar contesta esta prueba diagnostica
Prueba diagnostica introducción a la
programación de computadores