Está en la página 1de 39

INTRODUCCIÓN A LA

PROGRAMACIÓN

Dr. Jorge Arturo Hernández Almazán

Curso en plataforma Eclass

jhernandeza@upv.edu.mx
PROGRAMA DE ESTUDIOS

Ver programa de estudios.

01
REGLAMENTOS Y SUGERENCIAS

Reglamentos Sugerencias:

1) Alimentos 1) Realizar 100% de


2) Bebidas apuntes.
3) Celulares 2) Hacer todas las
4) Gorras evidencias y/o
tareas.
5) Asistencia 80 %
obligatorio 3) Preguntar todas las
dudas.
6) Puntualidad
4) Hacer equipo con los
compañeros.
5) Evita distraerte
02
durante la clase.
RUBROS A EVALUAR
 Evidencias de Conocimiento: 30%
 Evidencias de Producto: 30%
 Evidencias de Desempeño: 40%
100%

 Evidencia de actitud es transversal a las


anteriores y debe ir inherente a ellas.
 80 % de asistencia obligatorio, sin valor para la
calificación.
 Emplear PSeInt (aprendizaje autónomo).

03
Algoritmos

Es un conjunto de pasos
lógicos ordenados,
secuencialmente y finita,
escritos de tal forma que
permiten visualizar la
solución de un problema
determinado en un momento
específico.
ALGORITMO: NOMBRE

El nombre en latín de
algoritmo proviene de la
traducción que realizó
Fibonacci, de la obra
del matemático árabe
Al'Khwarizmi llamada ,
Algoritmi de Numero
Indorum.

05
ALGORITMO: CARACTERÍSTICAS
LEGIBLE
CONCRETO

Debe realizar las EFICIENTE


FINITO Debe
Debe generar
estar
indicarbien
un
el
Debe
operaciones
Debe
funciones
estar
tenerlibre
u
con
Debe
mismo
estructurado
orden ser...
resultado
de
terminar
operaciones
un
demínimo
errores.
en algún
de
para
siempre
realización
para su quefácil
dese
utilización
las
(Validado)
momento
que fue de
entendimiento.
cadasiga.
paso.
recursos.
creado.
NO
DEFINIDO
AMBIGUO
PRECISO
ALGORITMO: ESTRUCTURA

Corresponden a los
Conforma
Determinan ella
grupo Datos
datos requeridos
de
organización
instrucciones
para realizar elde las
que
instrucciones
realizan
algoritmo las
quede
(datos
operaciones
deben
entrada)sery loscon los
datos
datos.
realizadas.
que son generados Procesos
(datos de salida)

Estructuras
de Control
ALGORITMO: ELEMENTOS
Definición
de variables y
Las instrucciones constantes
Es necesario
que se van a
identificar
realizar que estar
deben
datosestructuradas
bien se necesitan y Proceso
Entrada Estructuras
Salida
ingresar,
tener cuales
un orden
sirven de de control
lógico, conforma
el fin de
auxiliar y cuales se
evitar
van a generar. en
inconsistencias
el resultado.
Cuerpo del algoritmo
ALGORITMO: QUIENES PUEDEN HACER
UN ALGORITMO?

Toda persona, implícitamente


y diariamente diseña y realiza
algoritmos, para dar solución
a situaciones cotidianas de
forma natural.
Sin embargo el programador,
diseña el algoritmo conciente
de que al realizar cada paso
obtendrá la solución de un
problema específico.
ALGORITMO: CÓMO SE HACE?
El no programador haría lo siguiente:

Buscar la página de cines


en elSupongamos
diario local o en
que
internet y verificar
deseamos si a
ir al cine vever
la la
película
películaanunciada. Si la ve
Batman, ¿cómo
anunciada mira en qué cine
procedemos?
la presentan y se va a verla.
Si no la ve anunciada,
espera a los estrenos de
lasemana que viene.
ALGORITMO: CÓMO SE HACE?
El programador sin embargo, lo haría de este otro modo:

Buscar la página de cines en el diario


1
local, con fecha de hoy

2 Revisar la cartelera de arriba abajo y de izquierda


a derecha, buscando entre los títulos existentes.

3 Si se encuentra el título Batman, no seguir


buscando. Apuntar el nombre del cine, su
dirección y los horarios

Si no se encuentra el título en la cartelera,


4
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.
ALGORITMO: OTRO EJEMPLO
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar la
llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.
ALGORITMO: REQUISITOS

Seguir los pasos del Debe Definirse del


Por ejemplo: problema
algoritmo debe sellevarnos
SiLos
No sealgoritmos
requiere
debemos crean la
hallar
omitir el
a la resolución del
para
velocidad
contextoresolver
de de
un automóvil,
nuestros
problema. Debe estar dentro
esproblemas.
necesario, definir si la
algoritmos.
Siempre que sea posible de contexto
Es
Es importante
distancia debe
necesario que junto
ser
estableceren
seguiremos
al
lo algoritmo,
metros, quekilómetros,
se necesitaetc y y
personalmente los pasos Debe resolver el
eldescribamos
tiempo
dónde se claramente
estará
debe dado
comenzar. en
de nuestro que éste
el problema algoritmo problema
segundos u horas, ya nosque
para comprobar
resolver.que puede
son
lapermite velocidad
efectivamente correctos y
representarse en Km/h ó Debe evitar la
conducen efectivamente a
mts/seg. ambigüedad
la solución esperada.
ALGORITMO: TÉCNICAS DE REPRESENTACIÓN

Diagrama de Flujo
Es una técnica
Está técnica quepermite
permite representar
representar el algoritmo
Pseudocódigo
gráficamenteunlas lenguaje
mediante
operaciones estructurado,
más y
estructuras que
facilitando su se van a
posterior Inicio
realizar, mediante una
codificación. Instrucción 1
simbología estándar, con Instrucción 2
un único punto de inicio y Si condición entonces
Instrucción 3
uno de finalización. ..
.
Instrucción n
Fin
PSEUDOCÓDIGO:CÓMO SE HACE?
Cada instrucción que se va a realizar
1
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

2 Se debe mantener una identación o sangría


sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

3 La representación de las estructuras son


similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.
PSEUDOCÓDIGO:CÓMO SE HACE?
Inicio : Denota el punto de inicio del algoritmo.

Leer : Denota la acción de introducir datos o variables


desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde


variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación


aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.


DIAGRAMA DE FLUJO: SIMBOLOGÍA
Lectura
Inicio
Proceso
Captura
Fin Permite indicar la
Permite indicar la
realización
Se utiliza para
Entrada de datos
deelunpunto
indicar proceso
de
desde
matemático,
inicioun
y finalización
dispositivo
o una del
operación
diagramade
estándar
asignación
DIAGRAMA DE FLUJO: SIMBOLOGÍA

Conectores
Impresión
Decisión
Flujo Permiten
Permite enlazaruna
establecer
Permiten dar continuidad
los
Indica la realización
símbolos
al condición
de un sentido
diagrama relacional
si la página
deó
único
operaciones
lógica que pueden ser
de salida
o área depuede
trabajo tomar
esta
horizontales
un o verticales.
valor de verdadero a un o
llena, el círculo se
falso, deEstas
esteunno pueden
símbolo se
dispositivo
utiliza como estándar
conector
entrecruzarse
deduceny cada una
dentro la 2misma
demonitor
(el flujos
o
de ellasalternativos
debe tener un de
página, el otro símbolo
impresor.)
único símbolo ejecución.
de partida
se define como un
y un único símbolo de
conector a otra página.
destino.
DIAGRAMA DE FLUJO: SIMBOLOGÍA
ESTRUCTURAS DE DECISIÓN (CONDICIÓN)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Caso
Si condición
condición entonces
Val1:
Si condición entonces
Si condición entonces
Instrucciones
Instrucciones
Si No Val2:
Instrucciones
Condición Si
si condición
no entonces
No No Instrucciones
No
Si
Condición
Condición
No siVal3:
no
Instrucciones
Si condición entonces
Condición
Si No
Condición
Val1 Val2 Condición
Val3 Otro Instrucciones
Instrucciones
Instrucciones
Si Si si no
Otros:
Instrucciones
Instrucciones
Fin Caso
DIAGRAMA DE FLUJO: SIMBOLOGÍA
ESTRUCTURAS DE CICLO

Ciclo
Ciclo
Ciclo Para
Mientras
Hasta ..
..
.
Para v=valini, v=valfinal, inc
.
Instrucciones
Repita
Mientras que condición
v=valini,v=valfinal, incremento Fin Para
Instrucciones
No .Instrucciones
Instrucciones
..Hasta que condición
Condición Fin Mientras
..
v:.. variable
Instrucciones
Si No ..
valini: valor inicial
Condición valfinal: valor final
Instrucciones
Si inc: incremento
ALGORITMO: FASES DE DISEÑO
Definición del problema
Algoritmo
Análisis del problema

Selección de la mejor alternativa

Diagramación

Prueba de escritorio
ALGORITMO: DEFINICIÓN DEL PROBLEMA

Está dada por el enunciado


del problema, el cuál debe
ser claro y completo

Es importante que
conozcamos exactamente
que se desea.

Mientras qué esto no se


comprenda, no tiene caso
pasar a la siguiente etapa.
ALGORITMO: ANÁLISIS DEL PROBLEMA
Los datos de
entrada que nos Recursos
suministran Fórmulas

Área
Proceso de
Trabajo

Los datos de
salida o
resultados que
Entendido el problema para se esperan
resolverlo es preciso analizar
ALGORITMO: SELECCIÓN DE ALTERNATIVA
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.
Solución ..2

La que produce los Solución ..5


Lo importante
Analizado el problemaes
resultados Esperados en el
determinar
Posiblemente cuál
tengamos
menor tiempo y al menor
varias
es laformas
mejorde resolverlo
alternativa
costo
ALGORITMO: DIAGRAMACIÓN
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
Plasmar la
problema solucion
mediante el
Pseudocódigo
ALGORITMO: PRUEBA DE ESCRITORIO
Esta prueba consiste en:
Es Recomendable
Serealizar
Dar
Al utiliza
diferenteslo datos parase
de
anterior
Dar diferentes
corroborar
entrada datos
que el
puede ycomprobar
considerar todos
si el
de
los entrada
posiblesesal programa
casos, aún loso
algoritmo
algoritmo plasmado
correcto
de excepción o no
en si hay necesidad
cualquier
esperados,
seguir para
la asegurar
secuencia
de hacer ajustes
herramienta presenta
que el programa
indicada no
(volver
la
produzca al paso anterior)
solución
errores en al
problema
ejecución inicialse
cuando
hasta
presenten estos casos.
obtener los resultados
ALGORITMO: CONCEPTOS

Tipo
Constante
Variable
Dato
de Dato Minima parte de la
Corresponde al tipo de
Corresponde
información. a un
valor que puede
Corresponde a un
espacio
Se de
refiere memoria enque
espacio deamemoria
los
almacenarse un
que
almacena
elementos
espacio un
que dato
de se que
memoria
almacena un dato que
dentro
definido del
y programa
a la en
cantidad
dentro
utilizan del programa
en los mantiene en
ejecución
de espacio que requiere
ejecución
algoritmos cambia
para o varía
siempre su
parasualmacenar contenido
realizar alguna un
contenido valor.
(valor)..
(valor).
operación sobre estos.
ALGORITMO: TIPOS DE DATOS
Boleano

Real cadena
Lógicos
Entero Caracter

Numéricos Carácter
Tipos
de
Datos
ALGORITMO: OPERADORES
+ Aritméticos
> -
>=
<=
<
= / %
Relacionales ^
!=
<> No
Lógicos

Y &&
O ||
PROGRAMA
 Un programa, concepto desarrollado por Von Neumann en 1946, es un
conjunto de instrucciones que sigue la computadora para alcanzar un
resultado específico.

 El programa se escribe en un lenguaje de programación a partir de un


diagrama de flujo diseñado con anterioridad.

 Lenguaje de programación
 Está constituido por un conjunto de reglas sintácticas (especifica la
formación de instrucciones validas) y semánticas (especifica el
significado de estas instrucciones), que hacen posible escribir un
programa.
PROGRAMA
 Resolver un problema

 Algoritmo
 Una solución muy general

 Diagrama de flujo
 Esquematiza gráfica y detalladamente la solución del
problema

 Escribimos
el programa en un lenguaje de
programación.
La tarea intelectual, la que requiere de un
pensamiento profundo, de una capacidad de
razonamiento flexible y critica, es la de la
construcción del diagrama de flujo, que
representa la solución detallada del
problema.
PSEUDOCÓDIGO

 Independiente de cualquier lenguaje de programación en


particular.
 Fácil conversión a un lenguaje de programación.

Representación del Instrucción Ejemplo


símbolo

Leer…. Leer A, B, C
A, B, C

Hacer….

Hacer R=A+B+C
R=A+B+C

Escribir….. R Imprimir R
 Recordemos
 Todo programa tiene un nombre que lo define.
 Representativo de la función que cumplen.
 Escribir un párrafo como comentario de lo que
realiza el programa.
 Definir constantes y variables que utilizaremos a
lo largo del programa.
INVIERTE_DATOS
{El programa dado un conjunto de datos de entrada
invierte el orden de los mismos cuando los imprime}
{A, B, C Y D Son variables tipo entero}
1 Inicio
2 Leer A, B, C, D
3 Imprimir D, C, B, A
4 Fin
ESTRUCTURAS CÍCLICAS
ANIDADAS
BIBLIOGRAFIA
 Fundamentos de Programación. Algoritmos y
Estructuras. Luis Joyanes Aguilar. Editorial Mc
Graw Hill.
 http://fuxion.tripod.cl/fundamentos.htm#QUE
%20HERRAMIENTAS

También podría gustarte