Bibliografia.
● JOYANES AGUILAR, Luis 2003 FUNDAMENTOS DE
PROGRAMACIÓN Algoritmos, Estructura de Datos y Objetos. McGraw-Hill,
Madrid, 1004p.
● SCHILDT, Herbert 1993 Turbo C/C++ 3.1 MANUAL DE
REFERENCIA. McGraw-Hill, Madrid, 1028p.
● STAUGAARD C. Andrew 1998 TÉCNICAS ESTRUCTURADAS
Y ORIENTADAS A OBJETOS Una Introducción utilizando C++. Prentice
Hall, México D. F. 770p.
● CAIRO. Oswaldo,
METODOLOGÍA DE LA PROGRAMACIÓN, 1990. Alfa y Omega.
● VÁSQUEZ PARAGULLA Julio
DISEÑO DE PROGRAMACIÓN, 1998,S.M Editorial, Perú, 660.
INTRODUCCIÓN
CONCEPTO DE ALGORITMO
Problemas y programas de computador
Problema:
Abstraer: Eliminar lo irrelevante y quedarnos
con lo realmente importante.
¿Qué es lo importante?
DESCOMPOSICION :
DIVIDE Y VENCERAS
Dividir el problema en partes , en sub problemas
más fáciles de realizar.
Solución de un Problema
● Lea bien el enunciado del problema
Solución de un problema
● Haga una lista con las suposiciones y
aproximaciones involucradas en la solución
del problema
Solución de un problema
● Relacione el problema con otro, o una
experiencia similar
Solución de un problema
● Escriba un algoritmo
Solución de un problema
● Examine y evalúe la respuesta para ver si
tiene sentido
Definición de Algoritmo
● Método que se realiza paso a paso, a fin de
solucionar un problema en un número finito
de pasos.
Características del Algoritmo
• Preciso: tiene que indicar el orden de realización en
cada paso.
• Definido: si el algoritmo se prueba dos veces, en estas
dos pruebas, se debe obtener el mismo resultado(con
excepción de los programas que contienen comandos
de generación de datos aleatorios).
• Finito: tiene un número determinado de pasos y debe
producir un resultado en un tiempo finito.
Representación de Algoritmos
● Redactar la secuencia de pasos.
Lenguaje natural.
● Diagrama de Nassi-Schneiderman (N-S)
Los diagramas N-S constan de una serie de cajas, que comienzan con un primer
rectángulo que se va rellenando de arriba-abajo. Al igual que el diagrama de flujo, el
diagrama N-S también es un medio de presentación visual y gráfica del flujo de
datos
● Diagramas de Flujo
Es un esquema para representar gráficamente un algoritmo. Se basan en la utilización de
diversos símbolos para representar operaciones específicas. Se les llama diagramas de
flujo porque los símbolos utilizados se conectan por medio de flechas para indicar la
secuencia de operación.
● Pseudocódigo
El pseudocódigo es un forma de representar un algoritmo, mediante
sentencias similares al lenguaje natural, pero con una precisión
mayor.
Ejemplo 1. Ver una película.
1. Buscar el videocasete de la película.
2. Si el televisor y la video-casetera se encuentran
apagados, encenderlos.
3. Sacar el video del estuche.
4. Introducirlo en la video-casetera.
5. Tomar el control del televisor y la video.
6. Dirigirme a el sofá.
7. Ponerme cómodo.
8. Ajustar el volumen.
9. Disfrutar la película
Ejemplo 2.Cocinar arroz.
1.Lavar bien el arroz.
2.Buscar un recipiente (caldero) de tamaño adecuado.
3. Agregar el agua necesaria de acuerdo a la cantidad de
arroz.
4. Agregar aceite, sal, cebolla, ajo, porro.
5. Colocar el recipiente en la cocina.
6. Encender la hornilla.
7. Esperar a que hierva el agua.
8. Agregar el arroz al agua hirviendo.
9. Dejar el recipiente en el fuego hasta que el arroz este
blando.
10. Apagar la hornilla.
11. Servir.
12. Comer. ¡¡Buen provecho!!
Representación de Algoritmos
Redactar la secuencia de pasos.Lenguaje natural.
Ejemplo
Diseñar un algoritmo para calcular el área y el perímetro de un
rectángulo.
Para desarrollar este problema es necesario conocer las fórmulas para
obtener tanto el área como el perímetro de un rectángulo.
1. Sea b = base y h = altura
2. Datos de entrada: b y h (base y altura)
3. Procesos:
a. área = b * h
b. Perímetro = 2 * (b + h)
4. Datos de salida: área y perímetro
Representación de Algoritmos
Diagrama de Nassi-Schneiderman (N-S)
Los diagramas N-S constan de una serie de cajas, que comienzan
con un primer rectángulo que se va rellenando de arriba-abajo. Al igual
que el diagrama de flujo, el diagrama N-S también es un medio de
presentación visual y gráfica del flujo de datos
Ejemplo:
Se desea un algoritmo para obtener el valor absoluto de un número
Representación de Algoritmos
● Diagramas de Flujo
Es un esquema para representar
gráficamente un algoritmo. Se basan
en la utilización de diversos
símbolos para representar
operaciones específicas. Se les
llama diagramas de flujo porque los
símbolos utilizados se conectan por
medio de flechas para indicar la
secuencia de operación
Representación de Algoritmos
● Pseudocódigo
El pseudocódigo describe un
algoritmo utilizando una
mezcla de frases en lenguaje
común, instrucciones de
programación y palabras
clave que definen las
estructuras básicas.
Su objetivo es permitir que el
programador se centre en los
aspectos lógicos de la
solución a un problema.
INICIO
Entero Suma 0
Leer( N )
Si ( N >0)
Suma N + 1
FIN Si
Escribe (Suma)
FIN
Importancia
Algoritmo/Máquina
● El estudio de los algoritmos y las máquinas
(computadores) forman la “columna
vertebral” de las Ciencias de la Computación
Algoritmos en el
Computador
PROBLEMA PROGRAMA
Algoritmos
+
Estructuras
de datos
Elaboración de Programa
de computador
1.ANALISIS DEL PROBLEMA
2.DEFINICIÓN DEL ALGORITMO
3.CODIFICACIÓN DEL ALGORITMO
4.EJECUTAR O PROBAR
Aunque el proceso de diseñar programas es un proceso
creativo, se pueden considerar cuatro pasos que ayudan al
programador en este proceso:
Lenguajes de Programación
Principales lenguajes utilizados en la actualidad:
Lenguaje de máquina: combinación de ceros (0) y
unos (1) que crean instrucciones entendibles por el
hardware para llevar a cabo operaciones.
Lenguaje de bajo nivel: entre ellos es lenguaje
ensamblador, un intermedio entre el lenguaje
máquina y el natural. Usa abreviaturas de letras y
números. Ejemplo Assembler.
Lenguaje de alto nivel: lenguajes más cercanos a
nuestro lenguaje natural. Ejemplo C, C++, Java.
Revisa la pagina de youtube siguiente y luego
comentamos en clase
https://www.youtube.com/watch?v=pWw4UtQhdek
Lenguajes de Programación
Estructura de Control
> Secuencial
> Condicional o
Selectiva
> Repetitiva o
Iterativa
Estructura de Datos
> Arreglos
> Vectores
> Matrices
> Registros
> Punteros
> Archivos
Componentes de un Lenguaje de Programación.
INSTRUCCIONES DATOS
FIN

1. Introduccion programacion.pptx

  • 1.
    Bibliografia. ● JOYANES AGUILAR,Luis 2003 FUNDAMENTOS DE PROGRAMACIÓN Algoritmos, Estructura de Datos y Objetos. McGraw-Hill, Madrid, 1004p. ● SCHILDT, Herbert 1993 Turbo C/C++ 3.1 MANUAL DE REFERENCIA. McGraw-Hill, Madrid, 1028p. ● STAUGAARD C. Andrew 1998 TÉCNICAS ESTRUCTURADAS Y ORIENTADAS A OBJETOS Una Introducción utilizando C++. Prentice Hall, México D. F. 770p. ● CAIRO. Oswaldo, METODOLOGÍA DE LA PROGRAMACIÓN, 1990. Alfa y Omega. ● VÁSQUEZ PARAGULLA Julio DISEÑO DE PROGRAMACIÓN, 1998,S.M Editorial, Perú, 660.
  • 2.
  • 3.
    Problemas y programasde computador Problema:
  • 4.
    Abstraer: Eliminar loirrelevante y quedarnos con lo realmente importante. ¿Qué es lo importante?
  • 5.
    DESCOMPOSICION : DIVIDE YVENCERAS Dividir el problema en partes , en sub problemas más fáciles de realizar.
  • 6.
    Solución de unProblema ● Lea bien el enunciado del problema
  • 7.
    Solución de unproblema ● Haga una lista con las suposiciones y aproximaciones involucradas en la solución del problema
  • 8.
    Solución de unproblema ● Relacione el problema con otro, o una experiencia similar
  • 9.
    Solución de unproblema ● Escriba un algoritmo
  • 10.
    Solución de unproblema ● Examine y evalúe la respuesta para ver si tiene sentido
  • 11.
    Definición de Algoritmo ●Método que se realiza paso a paso, a fin de solucionar un problema en un número finito de pasos.
  • 12.
    Características del Algoritmo •Preciso: tiene que indicar el orden de realización en cada paso. • Definido: si el algoritmo se prueba dos veces, en estas dos pruebas, se debe obtener el mismo resultado(con excepción de los programas que contienen comandos de generación de datos aleatorios). • Finito: tiene un número determinado de pasos y debe producir un resultado en un tiempo finito.
  • 13.
    Representación de Algoritmos ●Redactar la secuencia de pasos. Lenguaje natural. ● Diagrama de Nassi-Schneiderman (N-S) Los diagramas N-S constan de una serie de cajas, que comienzan con un primer rectángulo que se va rellenando de arriba-abajo. Al igual que el diagrama de flujo, el diagrama N-S también es un medio de presentación visual y gráfica del flujo de datos ● Diagramas de Flujo Es un esquema para representar gráficamente un algoritmo. Se basan en la utilización de diversos símbolos para representar operaciones específicas. Se les llama diagramas de flujo porque los símbolos utilizados se conectan por medio de flechas para indicar la secuencia de operación. ● Pseudocódigo El pseudocódigo es un forma de representar un algoritmo, mediante sentencias similares al lenguaje natural, pero con una precisión mayor.
  • 14.
    Ejemplo 1. Veruna película. 1. Buscar el videocasete de la película. 2. Si el televisor y la video-casetera se encuentran apagados, encenderlos. 3. Sacar el video del estuche. 4. Introducirlo en la video-casetera. 5. Tomar el control del televisor y la video. 6. Dirigirme a el sofá. 7. Ponerme cómodo. 8. Ajustar el volumen. 9. Disfrutar la película
  • 15.
    Ejemplo 2.Cocinar arroz. 1.Lavarbien el arroz. 2.Buscar un recipiente (caldero) de tamaño adecuado. 3. Agregar el agua necesaria de acuerdo a la cantidad de arroz. 4. Agregar aceite, sal, cebolla, ajo, porro. 5. Colocar el recipiente en la cocina. 6. Encender la hornilla. 7. Esperar a que hierva el agua. 8. Agregar el arroz al agua hirviendo. 9. Dejar el recipiente en el fuego hasta que el arroz este blando. 10. Apagar la hornilla. 11. Servir. 12. Comer. ¡¡Buen provecho!!
  • 16.
    Representación de Algoritmos Redactarla secuencia de pasos.Lenguaje natural. Ejemplo Diseñar un algoritmo para calcular el área y el perímetro de un rectángulo. Para desarrollar este problema es necesario conocer las fórmulas para obtener tanto el área como el perímetro de un rectángulo. 1. Sea b = base y h = altura 2. Datos de entrada: b y h (base y altura) 3. Procesos: a. área = b * h b. Perímetro = 2 * (b + h) 4. Datos de salida: área y perímetro
  • 17.
    Representación de Algoritmos Diagramade Nassi-Schneiderman (N-S) Los diagramas N-S constan de una serie de cajas, que comienzan con un primer rectángulo que se va rellenando de arriba-abajo. Al igual que el diagrama de flujo, el diagrama N-S también es un medio de presentación visual y gráfica del flujo de datos Ejemplo: Se desea un algoritmo para obtener el valor absoluto de un número
  • 18.
    Representación de Algoritmos ●Diagramas de Flujo Es un esquema para representar gráficamente un algoritmo. Se basan en la utilización de diversos símbolos para representar operaciones específicas. Se les llama diagramas de flujo porque los símbolos utilizados se conectan por medio de flechas para indicar la secuencia de operación
  • 19.
    Representación de Algoritmos ●Pseudocódigo El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de programación y palabras clave que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema. INICIO Entero Suma 0 Leer( N ) Si ( N >0) Suma N + 1 FIN Si Escribe (Suma) FIN
  • 20.
    Importancia Algoritmo/Máquina ● El estudiode los algoritmos y las máquinas (computadores) forman la “columna vertebral” de las Ciencias de la Computación
  • 21.
    Algoritmos en el Computador PROBLEMAPROGRAMA Algoritmos + Estructuras de datos
  • 22.
    Elaboración de Programa decomputador 1.ANALISIS DEL PROBLEMA 2.DEFINICIÓN DEL ALGORITMO 3.CODIFICACIÓN DEL ALGORITMO 4.EJECUTAR O PROBAR Aunque el proceso de diseñar programas es un proceso creativo, se pueden considerar cuatro pasos que ayudan al programador en este proceso:
  • 23.
    Lenguajes de Programación Principaleslenguajes utilizados en la actualidad: Lenguaje de máquina: combinación de ceros (0) y unos (1) que crean instrucciones entendibles por el hardware para llevar a cabo operaciones. Lenguaje de bajo nivel: entre ellos es lenguaje ensamblador, un intermedio entre el lenguaje máquina y el natural. Usa abreviaturas de letras y números. Ejemplo Assembler. Lenguaje de alto nivel: lenguajes más cercanos a nuestro lenguaje natural. Ejemplo C, C++, Java.
  • 24.
    Revisa la paginade youtube siguiente y luego comentamos en clase https://www.youtube.com/watch?v=pWw4UtQhdek Lenguajes de Programación
  • 25.
    Estructura de Control >Secuencial > Condicional o Selectiva > Repetitiva o Iterativa Estructura de Datos > Arreglos > Vectores > Matrices > Registros > Punteros > Archivos Componentes de un Lenguaje de Programación. INSTRUCCIONES DATOS
  • 26.