SlideShare una empresa de Scribd logo
Estimados alumnos, el material que se presenta a continuación
está diseñado para apoyar la asignatura de Fundamentos de
Programación que tienen como objetivo el lograr resolver
problemas simples mediante un programa escrito en algún
lenguaje de programación.
El objetivo general es resolver problemas básicos a través de la
construcción de programas basados en algoritmos.
INTRODUCCION
Presentamos los siguientes ejemplos: Si
alguna vez dimos a una persona
Instrucciones para:
Supongamos que queremos enseñar a una persona a elaborar un sándwich de jamón con queso que
tendríamos que hacer:
Instrucciones para hacer un sándwich
RECETA PARA PREPARAR UNA SANDWICH
Podemos observar que el proceso de elaborar un sándwich es una secuencia de pasos que
se siguen en orden uno tras de otro
CAMBIAR EL FOCO QUEMADO DE UNA LAMPARA
El proceso lo podemos hacer de forma segura de la siguiente manera:
INSTRUCCIONES PARA CAMBIAR EL FOCO QUEMADO DE UNA LAMPARA
CON LAS ESTRUCTURAS DE CONTROL
CONSTRUIMOS LOS PROGRAMAS
Un estudiante se encuentra en su casa (durmiendo) y debe ir a la universidad, ¿Qué debe
hacer el estudiante?
1. Dormir
2. Hacer 1 hasta que suene el despertador
3. Mirar la hora
4. Hay tiempo suficiente
4.1 Si hay entonces
4.1.1 Bañarse
4.1.2 Vestirse
4.1.3 Desayunar
4.2 Sino
4.2.1 Vestirse
5. Cepillarse los dientes
6. Despedirse de la familia
7. Hay tiempo suficiente?
7.1 Si hay entonces
7.1.1 Caminar al paradero
7.2 Sino
7.2.1 Correr al paradero
8. Hasta que pase un bus para la universidad hacer:
8.1 Esperar el bus
8.2 Ver a las demás personas que esperan un bus
9. Tomar el bus
10. Mientras no llegue a la universidad hacer
10.1 Seguir en el bus
10.2 Leer mis cuadernos
10.3 Utilizar el celular
11. Timbrar
12. Bajarse
13. Entrar a la universidad
INTRODUCCION
ALGORITMOS
Diariamente el ser humano trata de dar solución a cada problema que se le presenta;
algunas veces la solución de éstos se obtiene de seguir una serie de acciones de
manera ordenada, otras veces la solución depende del estado de ánimo de la persona
o de las condiciones de su entorno, mientras que en otras ocasiones no se puede
llegar a solución alguna.
Resolución De Problemas
• Resolver un problemas muchas veces no es trivial, ya que es
necesario comprender qué se quiere resolver, encontrar las
herramientas adecuadas para resolver el problema, y luego
implementar la solución con las herramientas disponibles.
Problema Solución Problema
Resuelto+ =
Muchas veces existe mas de un algoritmo para resolver un problema,
veamos el siguiente ejemplo
EJEMPLO
Deseamos dar al turista las instrucciones para
llegar a la estación del tren: Proponga 2 algoritmos
para el turista
Solucion No 1
EJEMPLO
Deseamos dar al turista las instrucciones para
llegar a la estación del tren: Proponga 2 algoritmos
para el turista
Solucion No 2
Los algoritmos anteriores pueden adopter varias formas, o de hecho algunos pueden o no ser
representados en un programa. El algoritmo del mapa puede ser representado por:
Ejemplos de algoritmos
En cada problema planteado debemos
tomar en cuenta suposiciones.
Las instrucciones del algoritmo deben ser
claras.
Realice la siguiente actividad
Clasificación de los problemas
Tipos de Problemas
Tipos de Problemas
Tipos de Problemas
Un algoritmo lo podemos definir como un conjunto de pasos lógicamente ordenados,
escritos a través de símbolos o en lenguaje natural. Lo podemos comparar con una
receta de cocina, o con las instrucciones para armar un mueble, las instrucciones que
vienen en un manual de un grabador de CD, por mencionar algunos ejemplos. La
diferencia está en la precisión que deben tener cada una de las instrucciones de un
algoritmo. Por ejemplo, no podemos indicar en un algoritmo, agregue sal a gusto, o
apreté esta tuerca pues son indicaciones poco precisas, que no pueden ser traducidas a
una instrucción escrita en un lenguaje de programación.
En el diseño e implementación de los algoritmos debemos indicar agregue 10 grs. de sal,
o apreté esta tuerca dando diez giros a la derecha. Es decir las instrucciones dadas en un
algoritmo deben de ser precisas y no ambiguas
GENERALIDADES
ALGORITMOS
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.
Así, 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
realizarán sin importar el idioma del cocinero.
En la ciencia de la computación y en la programación, los algoritmos son más importantes que los lenguajes
de programación o las computadoras. Un lenguaje de programación es tan sólo un medio para expresar un
algoritmo y una computadora es sólo un procesador para ejecutarlo.
Tanto el lenguaje de programación como la computadora son los medios para obtener un fin: conseguir que el
algoritmo se ejecute y se efectúe el proceso correspondiente.
El diseño de la mayoría de los algoritmos requiere creatividad y conocimientos profundos de la técnica de la
programación. En esencia, la solución de un problema se puede expresar mediante un algoritmo.
CONSIDERACIONES A SEGUIR EN LA ESCRITURA
DE UN ALGORITMO
El sistema para escribir un algoritmo consiste en realizar una descripción paso a paso con un lenguaje
natural del citado algoritmo.
Recordemos que Algoritmo es un método o conjunto de reglas para solucionar un problema, las mismas que
tienen las siguientes propiedades:
 Deben estar seguidas de alguna secuencia definida de pasos hasta que se obtenga un resultado
coherente.
 Solo puede ejecutarse una operación a la vez..
1 2 3
ANALOGIA CON EL COMPUTADOR
ESTRUCTURA BASICA DE UN ALGORITMO
DATOS INSTRUCCIONES ESTRUCTURAS DE CONTROL
Lo que el algoritmo recibe, procesa y
entrega como resultado
Las acciones o procesos que el
algoritmo realiza sobre los datos
Las que determinan el orden en que
se ejecutarán las instrucciones del
algoritmo
Herramientas Algorítmicas
HERRAMIENTAS ALGORITMICAS
Diagramas de
Flujo en FreeDFD
Pseudocódigo
Es un lenguaje de especificación de algoritmos. El uso de tal lenguaje hace el
paso de codificación final relativamente fácil.
El Pseudocódigo nació como un lenguaje similar al lenguaje natural y era un
medio para presentar básicamente las estructuras de control de programación
estructurada.
Se considera un primer borrador, dado que el pseudocódigo tiene que
traducirse posteriormente a un lenguaje de programación.
La ventaja del pseudocódigo es que en su uso en la planificación de un
programa, el programador se puede concentrar en su lógica y en las estructuras
de control y no preocuparse de las reglas de un lenguaje específico.
El pseudocódigo utiliza para representar las acciones sucesivas palabras
reservadas a sus homónimos en los lenguajes de programación, tales como
inicio, fin, si-entonces, mientras…..,etc.
PSEUDOCÓDIGO
• Es una forma de representar un algoritmo, que se acerca a los lenguajes de
programación y con elementos del lenguaje natural.
• El pseudocódigo se compone de:
- Cabecera
- Declaraciones
- Cuerpo
• La cabecera es la parte del algoritmo que posee el nombre de éste.
• Las declaraciones son las variables y constantes que utilizará el algoritmo
para resolver el problema.
• El cuerpo son el conjunto de instrucciones o acciones que están entre el
Inicio y el Fin.
PSEUDOCODIGO
LENGUAJE NATURAL
Problema: Sumar 2 números.
Representación mediante Lenguaje natural:
- Inicio Suma
- Ingresar primer número
- Guardar número en variable a
- Ingresar segundo número
- Guardar número en variable b
- Sumar a y b
- Guardar resultado en R
- Mostrar R
- Fin
• Desventajas:
-Ambiguo
-Extenso
PSEUDOCÓDIGO
• La estructura del pseudocódigo es la siguiente:
• La sección “Proceso SinTitulo” es la cabecera del algoritmo
• La sección “acción 1, acción 1,…” es el cuerpo del algoritmo
• En este caso como utilizaremos el Pseint la sección de declaraciones del
algoritmo no se toma en cuenta, ya que el software se encarga de asignarle
el tipo de dato a cada variable dependiendo del uso que se le dé.
PSEUDOCÓDIGO
• Representación mediante Pseudocódigo:
TIPOS DE
DATOS
NUMÉRICOS
NO NUMÉRICOS
ENTEROS
REALES
ALFANUMÉRICOS
LÓGICO
Tipos de Datos
PSEINT – EXPRESIONES
• Operadores:
PSEINT – EXPRESIONES
• Funciones:
PSEINT – ACCIONES SECUENCIALES
• Asignación: nos permite guardar un valor en una variable.
• c <- 2; por lo tanto c=2.
• Leer: nos permite recibir valores por teclado y guardarlos en variables.
• Leer a; recibe el valor y lo almacena en a.
• Leer a, b, c; recibe 3 valores y los guarda en la variable que
corresponda.
PSEINT – ACCIONES SECUENCIALES
• Escribir: nos permite mostrar en pantalla algún tipo de dato, o varios
separados por ‘,’.
• Escribir ‘hola mundo’;
• Escribir ‘hola mundo’, ‘hola’, 2, c;
EXPRESIONES
EXPRESIONES ARITMETICAS
EJERCICIOS
REGLAS DE PRIORIDAD
EJEMPLOS
EJEMPLOS
EJEMPLOS
EJEMPLOS
X = 5 Y = 9 K = 2 N = 7
Y = ( X + N mod 6 / 3 ) - ( Y * 7 mod K mod ( Y + 8 / 2 + X mod 5)) * X + N
EJEMPLOS
EJEMPLOS
1. Calcular el doble de un número ingresado, a ese resultado calcularle el 10% y mostrar
ese valor
2. Informar en pantalla el promedio de cinco números
3. Resuelva un algoritmo que solucione el problema de calcular el área de un triangulo
con la fórmula: AREA = BASE x ALTURA / 2.
4. Conociendo el valor de la entrada al cine, calcule el monto a pagar para una
delegación de personas. Recuerde que deberá hacer un descuento del 3% por
cantidad.
5. Ingresando la cantidad de un producto y su precio unitario, obtener como resultado el
precio final que debe pagar el cliente.
6. Realizar una aplicación que calcule las cuatro operaciones básicas, suma, resta,
división, multiplicación, con dos números.
7. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente
desea saber cuanto deberá pagar finalmente por su compra.
8. Un alumno desea saber cual será su calificación final en la materia de Algoritmos.
Dicha calificación se compone de los siguientes porcentajes:
55% del promedio de sus tres calificaciones parciales.
30% de la calificación del examen final.
15% de la calificación de un trabajo final.
9. Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres
hay en un grupo de estudiantes.
EJERCICIOS
PROGRAMACION ESTRUCTURADA
1. Realizar una aplicación que calcule las cuatro operaciones básicas, suma, resta,
división, multiplicación, con dos números.
2. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente
desea saber cuanto deberá pagar finalmente por su compra.
3. Un alumno desea saber cual será su calificación final en la materia de
Algoritmos. Dicha calificación se compone de los siguientes porcentajes:
55% del promedio de sus tres calificaciones parciales.
30% de la calificación del examen final.
15% de la calificación de un trabajo final.
4. Un maestro desea saber que porcentaje de hombres y que porcentaje de
mujeres hay en un grupo de estudiantes.
Ejercicios
EJERCICIO
Algoritmo que lee dos valores numéricos ‘X’ e ‘Y’, determina si son iguales y,
en caso de no serlo, indica cuál de ellos es el mayor.
Definición del problema
1. Escribir un algoritmo que acepte tres números enteros e imprima el mayor
de ellos
Definición del problema
Identificar menor de dos números o si son iguales
Definición del problema
Suponga que dados cuatros números (a, b, c y d), se desea determinar cual de ellos es el número menor
y mostrar dicho número en pantalla.
Elabore el Algoritmo.
Definición del problema
Ingresar 2 números y verificar si son pares e impares
Definición del problema
Ingresar un numero A y verificar si es divisible para N
Alternativas Multiples
• Cuando existen más de dos alternativas posibles, es cuando se
presenta el caso de alternativas múltiples.
Muchas decisiones deben tomarse, no solo entre dos alternativas, sino de un
conjunto mayor. Estos casos bien pueden solucionarse utilizando condicionales
dobles anidados; sin embargo, en favor de la claridad del algoritmo y la facilidad
para el programador, es mejor utilizar una estructura de decisión múltiple, la cual es
fácil de llevar a un lenguaje de programación, ya que éstos incluyen alguna
instrucción con este fin.
La decisión múltiple determina el valor de una variable y dependiendo de éste sigue
un curso de acción.
Representación
PSEINT – ESTRUCTURAS DE CONTROL
• Segun: es una estructura de control que depende del valor de una variable
de tipo numérica o caracter para ejecutar una secuencia de instrucciones
asociada a ese valor.
• Puede suceder que una secuencia de instrucciones sea común para más de
un valor de la variable numérica, es el caso que se ve en la imagen
siguiente, donde el valor 2 y 3 de la variable numérica lleva a ejecutar una
misma secuencia de instrucciones.
• Cada valor de la variable numérica es una opción que ejecuta una serie de
instrucciones, es por esto que esta instrucción es recomendable para
manejar Menú muy complejos.
PSEINT – ESTRUCTURAS DE CONTROL
• La opción “De otro modo” significa que si la variable numérica toma un
valor que no está en ninguna de las opciones anteriores ejecuta las
instrucciones de esa opción.
• Esta opción es ocupada generalmente para capturar(Catch) errores al
ingresar una opción no disponible y así avisarle al usuario.
• Ej:
Ejercicios
Ejercicios
una distribuidora de motocicletas tiene una promoción de fin de año que consiste en los siguiente. Las
motos marca HONDA tienen un descuento del 5%, las de marca Yamaha del 8% y las Suzuki el 10%, las
de otras marcas el 2%
Definición del problema
Calcular el valor del descuento y el valor a pagar por la motocicleta.
Análisis del problema
Porcentaje descuento = 5% para motos Honda
Porcentaje descuento = 8% para motos Yamaha
Porcentaje descuento = 10% para motos Suzuki
Porcentaje descuento = 2% para motos otras marcas
Datos de entrada: marca, valor
Datos de salida: descuento, valor a pagar
Proceso:
descuento = valor * porcentaje
CASOS GENERALES DE LAS ESTRUCTURAS
REPETITIVAS
CASOS GENERALES DE LAS ESTRUCTURAS
REPETITIVAS
Repetitivas Mientras (WHILE)
Representación
PSEINT – ESTRUCTURAS DE CONTROL
• REPETITIVA:
• Mientras: permite ejecutar una secuencia de instrucciones repetidamente
hasta que la condición no se cumpla.
EJECUCION DE BUCLES 0 VECES
BUCLES INFINITOS
REGLA PRACTICA
TERMINACION DE BUCLES CON DATOS DE ENTRADA
TERMINACION DE BUCLES CON DATOS DE ENTRADA
ESTRUCTURA HACER MIENTRAS DO WHILE
REGLA
ESTRUCTURA HACER MIENTRAS DO WHILE
Repetir Hasta (Until)
Representación
Repetir Hasta (Until)
Repetir Hasta (Until)
CASOS GENERALES DE LAS ESTRUCTURAS
REPETITIVAS
CICLO PARA
Este ciclo, al igual que los demás, permite ejecutar repetidas veces una instrucción o un grupo de ellas, pero a diferencia de
otras instrucciones de repetición, ésta maneja el valor inicial, el valor de incremento o decremento y el valor final de la
variable de control como parte de la instrucción.
Cuando al ejecutarse un algoritmo se encuentra una instrucción para la variable de control (contador) toma el valor inicial, se
verifica que el valor inicial no sobrepase el valor final y luego se ejecutan las instrucciones del ciclo. Al encontrar la instrucción
fin para, se produce el incremento y se vuelve a verificar que la variable de control no haya superado el límite admitido, y se
vuelven a ejecutar las instrucciones que están dentro del ciclo, y así sucesivamente tantas veces como sea necesario hasta
que se supere el valor final establecido.
El ciclo para termina en el momento en que la variable de control (contador) sobrepasa el valor final; es decir, que la igualdad
está permitida y las instrucciones se ejecutan cuando el contador es igual al valor final.
Este ciclo puede presentarse de tres maneras: la primera es la más común, cuando se produce un incremento de 1 en cada
iteración, en cuyo caso no es necesario escribir explícitamente.
ESCRIBIR LOS NUMEROS
DEL1 AL10
ESCRIBIR LOS NUMEROS
DE 5 EN 5
DADO UN NUMERO N, MOSTRAR LOS
MENORES A ESTE EN FORMA
DESCENDENTE
CICLO PARA
EL SOFTWARE (PROGRAMAS)
Las operaciones que debe realizar el hardware son específicas por una lista de instrucciones,
llamadas programas o software. El software se divide en dos grandes grupos: software del
sistema y de aplicaciones
Software de sistema Es el conjunto de programas indispensable para que la máquina funcione,
se domina también programas del sistema. Estos programas son básicamente el Sistema
Operativo, los editores de texto, los compiladores/interpretes (lenguajes de
programación) y los programas de utilidad.
Uno de los programas mas importantes es el Sistema Operativo que sirve, esencialmente para
facilitar la escritura y usos de sus programas. Este dirige las operaciones globales de la
computadores e instruye a la computadora para ejecutar otros programas y controla el
almacenamiento y recuperación de archivos (programas y datos).
Gracias al Sistema Operativo es posible que el programador pueda introducir y grabar nuevos
programas así como instruir a la computadora para que los ejecute.
Los lenguajes de programación sirven para escribir programas que permitan la
comunicación usuario maquina. Unos programas especiales llamados traductores
(compiladores o interpretes) convierten las instrucciones escritas en lenguajes de
programación en instrucciones escritas en lenguajes de maquina que esta pueda
entender.
Los programas de utilidad facilitan el uso de la computadora. Por ejemplo el editor de
textos
Los programas que realizan tareas concretas como nominas, contabilidad análisis
estadístico, etc de denominan programas de aplicación.
LENGUAJE DE MAQUINA
LENGUAJE DE BAJO NIVEL
LENGUAJE DE BAJO NIVEL
LENGUAJE DE ALTO NIVEL
LENGUAJE DE ALTO NIVEL
TRADUCTORES DE LENGUAJE
Los traductores de lenguaje son programas que traducen a su vez los programas fuente escritos en
lenguajes de alto nivel a código de máquina. Los traductores se dividen en: compiladores e interpretes
COMPILADOR
LA COMPILACION Y SUS FASES
La compilación es el proceso de traducción de programas fuente a programas objeto. El
programa objeto obtenido de la compilación ha sido traducido normalmente a código de
máquina.
Para conseguir el programa máquina real se debe utilizar un programa llamando montador o
enlazador (linker). El proceso de montaje conduce a un programa en lenguaje máquina
directamente ejecutable.
El proceso de ejecución de un programa escrito en un lenguaje de programación y mediante un
compilador suele tener los siguientes pasos:
1. Escritura del programa fuente y guardarlo en un dispositivo de almacenamiento
2. Introducir el programa fuente en memoria
3. Compilar el programa con el compilador
4. Verificar y corregir errores de compilación
5. Obtención del programa objeto
6. El enlazador obtiene el programa ejecutable
7. Se ejecuta el programa y se tendrá la salida deseada
EJECUCION DE UN PROGRAMA
FASES DE EJECUCION DE UN PROGRAMA

Más contenido relacionado

La actualidad más candente

Campos de acción Ingenieria de Software
Campos de acción Ingenieria de SoftwareCampos de acción Ingenieria de Software
Campos de acción Ingenieria de Software
Arnold Torres
 
Diapositivas de la historia del computador
Diapositivas de la historia del computadorDiapositivas de la historia del computador
Diapositivas de la historia del computadormariacaroandrea
 
Técnicas de programación
Técnicas de programaciónTécnicas de programación
Técnicas de programación
María Alvarez
 
Elaboracion de algoritmos
Elaboracion de algoritmosElaboracion de algoritmos
Elaboracion de algoritmos
Ballbreakerhouse .
 
Mapa conceptual del sistema operativo
Mapa conceptual del sistema operativoMapa conceptual del sistema operativo
Mapa conceptual del sistema operativo
Alecamacho8
 
Analisis de registro
Analisis de registroAnalisis de registro
Analisis de registro
Mileydi T Contreras C
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De Programacioncarlos
 
diapositivas algoritmos
diapositivas algoritmos diapositivas algoritmos
diapositivas algoritmos
TiffanyMartinez
 
Ejercicios de grafos
Ejercicios de grafosEjercicios de grafos
Ejercicios de grafos
Tere Suarez
 
5. Diseño de un algoritmo
5. Diseño de un algoritmo5. Diseño de un algoritmo
5. Diseño de un algoritmorcarrerah
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del softwarearealisherrera
 
Modelos o Ciclos de vida de software
Modelos o Ciclos de vida de softwareModelos o Ciclos de vida de software
Modelos o Ciclos de vida de software
William Matamoros
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
da4
 
Trazado de lineas rectas
Trazado de lineas rectasTrazado de lineas rectas
Trazado de lineas rectasSam Rdgz
 
Caracteristicas de la computadora
Caracteristicas de la computadoraCaracteristicas de la computadora
Caracteristicas de la computadoraAlberto Andrade
 
Presentación pseudocódigo
Presentación pseudocódigoPresentación pseudocódigo
Presentación pseudocódigoStudent
 
1 introduccion a la programacion 1
1 introduccion  a la programacion 11 introduccion  a la programacion 1
1 introduccion a la programacion 1
Evelin Claudia
 
HISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACIONHISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACION
Fredy Olaya
 

La actualidad más candente (20)

Campos de acción Ingenieria de Software
Campos de acción Ingenieria de SoftwareCampos de acción Ingenieria de Software
Campos de acción Ingenieria de Software
 
Diapositivas de la historia del computador
Diapositivas de la historia del computadorDiapositivas de la historia del computador
Diapositivas de la historia del computador
 
Técnicas de programación
Técnicas de programaciónTécnicas de programación
Técnicas de programación
 
Elaboracion de algoritmos
Elaboracion de algoritmosElaboracion de algoritmos
Elaboracion de algoritmos
 
Mapa conceptual del sistema operativo
Mapa conceptual del sistema operativoMapa conceptual del sistema operativo
Mapa conceptual del sistema operativo
 
Analisis de registro
Analisis de registroAnalisis de registro
Analisis de registro
 
Lenguajes De Programacion
Lenguajes De ProgramacionLenguajes De Programacion
Lenguajes De Programacion
 
diapositivas algoritmos
diapositivas algoritmos diapositivas algoritmos
diapositivas algoritmos
 
Herramientas CASE
Herramientas CASEHerramientas CASE
Herramientas CASE
 
Ejercicios de grafos
Ejercicios de grafosEjercicios de grafos
Ejercicios de grafos
 
Quinta y Sexta Generacion
Quinta y Sexta GeneracionQuinta y Sexta Generacion
Quinta y Sexta Generacion
 
5. Diseño de un algoritmo
5. Diseño de un algoritmo5. Diseño de un algoritmo
5. Diseño de un algoritmo
 
Ciclo de vida del software
Ciclo de vida del softwareCiclo de vida del software
Ciclo de vida del software
 
Modelos o Ciclos de vida de software
Modelos o Ciclos de vida de softwareModelos o Ciclos de vida de software
Modelos o Ciclos de vida de software
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
 
Trazado de lineas rectas
Trazado de lineas rectasTrazado de lineas rectas
Trazado de lineas rectas
 
Caracteristicas de la computadora
Caracteristicas de la computadoraCaracteristicas de la computadora
Caracteristicas de la computadora
 
Presentación pseudocódigo
Presentación pseudocódigoPresentación pseudocódigo
Presentación pseudocódigo
 
1 introduccion a la programacion 1
1 introduccion  a la programacion 11 introduccion  a la programacion 1
1 introduccion a la programacion 1
 
HISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACIONHISTORIA DE LA PROGRAMACION
HISTORIA DE LA PROGRAMACION
 

Similar a Algoritmos

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
YESENIA CETINA
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
alexcastellano14
 
Alg diag
Alg diag Alg diag
Alg diag
Kary Cusacani
 
Conceptos básicos de algorítmica
Conceptos básicos de algorítmicaConceptos básicos de algorítmica
Conceptos básicos de algorítmica
colegio emanuel
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
CarlosJahnsen3
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
gustavozamora32
 
Modulo de algoritmo_-_programacion
Modulo de algoritmo_-_programacionModulo de algoritmo_-_programacion
Modulo de algoritmo_-_programacion
adrianangel4
 
Mauricio oropeza
Mauricio oropezaMauricio oropeza
Mauricio oropeza
mauricioo5
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
Alejandro Leon Cerna
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
Lincoln School
 
Programación
ProgramaciónProgramación
Programación
belenramiz
 
PROGRAMACION-copia.pptx
PROGRAMACION-copia.pptxPROGRAMACION-copia.pptx
PROGRAMACION-copia.pptx
OrlandoLopez271483
 
Introducción a la Informática - Los Algoritmos
Introducción a la Informática - Los AlgoritmosIntroducción a la Informática - Los Algoritmos
Introducción a la Informática - Los Algoritmos
hugocuella1
 
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptxDAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
DavidMontalvo37
 
Unidad 02 metodología para solucionar un problema
Unidad 02   metodología para solucionar un problemaUnidad 02   metodología para solucionar un problema
Unidad 02 metodología para solucionar un problemaLorenzo Alejo
 
Algoritmo Y Pseudocódigo
Algoritmo Y PseudocódigoAlgoritmo Y Pseudocódigo
Algoritmo Y Pseudocódigo
JohanCaro5
 

Similar a Algoritmos (20)

Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Alg diag
Alg diagAlg diag
Alg diag
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Alg diag
Alg diag Alg diag
Alg diag
 
Rpp
RppRpp
Rpp
 
Alg diag
Alg diagAlg diag
Alg diag
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Conceptos básicos de algorítmica
Conceptos básicos de algorítmicaConceptos básicos de algorítmica
Conceptos básicos de algorítmica
 
Semana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdfSemana 1 - Principios de Algoritmos.pdf
Semana 1 - Principios de Algoritmos.pdf
 
algoritmos-.ppt
algoritmos-.pptalgoritmos-.ppt
algoritmos-.ppt
 
Modulo de algoritmo_-_programacion
Modulo de algoritmo_-_programacionModulo de algoritmo_-_programacion
Modulo de algoritmo_-_programacion
 
Mauricio oropeza
Mauricio oropezaMauricio oropeza
Mauricio oropeza
 
Algoritmos y programacion en C++
Algoritmos y programacion en C++Algoritmos y programacion en C++
Algoritmos y programacion en C++
 
Tema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmicoTema 4 -_introduccion_a_razonamiento_algoritmico
Tema 4 -_introduccion_a_razonamiento_algoritmico
 
Programación
ProgramaciónProgramación
Programación
 
PROGRAMACION-copia.pptx
PROGRAMACION-copia.pptxPROGRAMACION-copia.pptx
PROGRAMACION-copia.pptx
 
Introducción a la Informática - Los Algoritmos
Introducción a la Informática - Los AlgoritmosIntroducción a la Informática - Los Algoritmos
Introducción a la Informática - Los Algoritmos
 
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptxDAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
DAVID MONTALVO INTRODUCCION A LA PROGRAMACION.pptx
 
Unidad 02 metodología para solucionar un problema
Unidad 02   metodología para solucionar un problemaUnidad 02   metodología para solucionar un problema
Unidad 02 metodología para solucionar un problema
 
Algoritmo Y Pseudocódigo
Algoritmo Y PseudocódigoAlgoritmo Y Pseudocódigo
Algoritmo Y Pseudocódigo
 

Más de Cesar Oswaldo Osorio Agualongo

Aprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación PythonAprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación Python
Cesar Oswaldo Osorio Agualongo
 
Notas 2 do parcial
Notas 2 do parcialNotas 2 do parcial
Notas 2 do parcial
Cesar Oswaldo Osorio Agualongo
 
Repaso excel
Repaso excelRepaso excel
Notas 2490
Notas 2490Notas 2490
Notas 2625
Notas 2625Notas 2625
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Parte i curso c
Parte i curso cParte i curso c
Punteros y funciones
Punteros y funciones Punteros y funciones
Punteros y funciones
Cesar Oswaldo Osorio Agualongo
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Material estudio c
Material estudio cMaterial estudio c
Material estudio c
Cesar Oswaldo Osorio Agualongo
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
Cesar Oswaldo Osorio Agualongo
 
Punteros presentacion
Punteros presentacionPunteros presentacion
Punteros presentacion
Cesar Oswaldo Osorio Agualongo
 
Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1
Cesar Oswaldo Osorio Agualongo
 
2do parcial c
2do parcial c2do parcial c
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
Cesar Oswaldo Osorio Agualongo
 
Funciones recursivas
Funciones recursivasFunciones recursivas
Funciones recursivas
Cesar Oswaldo Osorio Agualongo
 
Punteros y funciones abril agosto 2016
Punteros y funciones abril agosto 2016Punteros y funciones abril agosto 2016
Punteros y funciones abril agosto 2016
Cesar Oswaldo Osorio Agualongo
 
Programacion semanal programacion i
Programacion semanal programacion iProgramacion semanal programacion i
Programacion semanal programacion i
Cesar Oswaldo Osorio Agualongo
 
Silabo programacion i abril2016 agosto2016
Silabo programacion i abril2016 agosto2016Silabo programacion i abril2016 agosto2016
Silabo programacion i abril2016 agosto2016
Cesar Oswaldo Osorio Agualongo
 

Más de Cesar Oswaldo Osorio Agualongo (20)

Aprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación PythonAprendizaje de Lenguaje de Programación Python
Aprendizaje de Lenguaje de Programación Python
 
Notas 2 do parcial
Notas 2 do parcialNotas 2 do parcial
Notas 2 do parcial
 
Repaso excel
Repaso excelRepaso excel
Repaso excel
 
Notas 2490
Notas 2490Notas 2490
Notas 2490
 
Notas 2625
Notas 2625Notas 2625
Notas 2625
 
Material iii parcial
Material iii parcialMaterial iii parcial
Material iii parcial
 
Unidad 2 curso c
Unidad 2 curso cUnidad 2 curso c
Unidad 2 curso c
 
Parte i curso c
Parte i curso cParte i curso c
Parte i curso c
 
Punteros y funciones
Punteros y funciones Punteros y funciones
Punteros y funciones
 
Memoria dinamica
Memoria dinamicaMemoria dinamica
Memoria dinamica
 
Material estudio c
Material estudio cMaterial estudio c
Material estudio c
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
 
Punteros presentacion
Punteros presentacionPunteros presentacion
Punteros presentacion
 
Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1Practica 6 manejo de archivos v1
Practica 6 manejo de archivos v1
 
2do parcial c
2do parcial c2do parcial c
2do parcial c
 
Estructuras en c++
Estructuras en c++Estructuras en c++
Estructuras en c++
 
Funciones recursivas
Funciones recursivasFunciones recursivas
Funciones recursivas
 
Punteros y funciones abril agosto 2016
Punteros y funciones abril agosto 2016Punteros y funciones abril agosto 2016
Punteros y funciones abril agosto 2016
 
Programacion semanal programacion i
Programacion semanal programacion iProgramacion semanal programacion i
Programacion semanal programacion i
 
Silabo programacion i abril2016 agosto2016
Silabo programacion i abril2016 agosto2016Silabo programacion i abril2016 agosto2016
Silabo programacion i abril2016 agosto2016
 

Último

Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Demetrio Ccesa Rayme
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
Alejandrino Halire Ccahuana
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
JAVIER SOLIS NOYOLA
 
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁIMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
Claude LaCombe
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
Alejandrogarciapanta
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Monseespinoza6
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
cintiat3400
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
20minutos
 
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdfUNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
Joan Ribes Gallén
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
H4RV3YH3RN4ND3Z
 
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docxENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
SandraPiza2
 
Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
danitarb
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
lautyzaracho4
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
LorenaCovarrubias12
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
cportizsanchez48
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
lautyzaracho4
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
El Fortí
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
SandraBenitez52
 

Último (20)

Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
 
El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10El espiritismo desenmascarado.pdf. Lec. 10
El espiritismo desenmascarado.pdf. Lec. 10
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
 
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁIMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁ
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
 
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
Productos contestatos de la Séptima sesión ordinaria de CTE y TIFC para Docen...
 
Junio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividadesJunio 2024 Fotocopiables Ediba actividades
Junio 2024 Fotocopiables Ediba actividades
 
Examen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdfExamen Lengua y Literatura EVAU Andalucía.pdf
Examen Lengua y Literatura EVAU Andalucía.pdf
 
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdfUNA VISITA A SAN PEDRO EN EL VATICANO.pdf
UNA VISITA A SAN PEDRO EN EL VATICANO.pdf
 
Presentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdfPresentación Curso C. Diferencial - 2024-1.pdf
Presentación Curso C. Diferencial - 2024-1.pdf
 
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docxENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
ENSAYO SOBRE LA ANSIEDAD Y LA DEPRESION.docx
 
Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdfBlogs_y_Educacion_Por Zaracho Lautaro_.pdf
Blogs_y_Educacion_Por Zaracho Lautaro_.pdf
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
 
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxxPLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
PLAN DE CAPACITACION xxxxxxxxxxxxxxxxxxx
 
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptxNuevos espacios,nuevos tiempos,nuevas practica.pptx
Nuevos espacios,nuevos tiempos,nuevas practica.pptx
 
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdfFORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
FORTI-JUNIO 2024. CIENCIA, EDUCACION, CULTURA,pdf
 
El Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundoEl Liberalismo económico en la sociedad y en el mundo
El Liberalismo económico en la sociedad y en el mundo
 

Algoritmos

  • 1. Estimados alumnos, el material que se presenta a continuación está diseñado para apoyar la asignatura de Fundamentos de Programación que tienen como objetivo el lograr resolver problemas simples mediante un programa escrito en algún lenguaje de programación. El objetivo general es resolver problemas básicos a través de la construcción de programas basados en algoritmos.
  • 2. INTRODUCCION Presentamos los siguientes ejemplos: Si alguna vez dimos a una persona Instrucciones para: Supongamos que queremos enseñar a una persona a elaborar un sándwich de jamón con queso que tendríamos que hacer: Instrucciones para hacer un sándwich
  • 3. RECETA PARA PREPARAR UNA SANDWICH Podemos observar que el proceso de elaborar un sándwich es una secuencia de pasos que se siguen en orden uno tras de otro
  • 4. CAMBIAR EL FOCO QUEMADO DE UNA LAMPARA El proceso lo podemos hacer de forma segura de la siguiente manera:
  • 5. INSTRUCCIONES PARA CAMBIAR EL FOCO QUEMADO DE UNA LAMPARA CON LAS ESTRUCTURAS DE CONTROL CONSTRUIMOS LOS PROGRAMAS
  • 6. Un estudiante se encuentra en su casa (durmiendo) y debe ir a la universidad, ¿Qué debe hacer el estudiante? 1. Dormir 2. Hacer 1 hasta que suene el despertador 3. Mirar la hora 4. Hay tiempo suficiente 4.1 Si hay entonces 4.1.1 Bañarse 4.1.2 Vestirse 4.1.3 Desayunar 4.2 Sino 4.2.1 Vestirse 5. Cepillarse los dientes 6. Despedirse de la familia 7. Hay tiempo suficiente? 7.1 Si hay entonces 7.1.1 Caminar al paradero 7.2 Sino 7.2.1 Correr al paradero 8. Hasta que pase un bus para la universidad hacer: 8.1 Esperar el bus 8.2 Ver a las demás personas que esperan un bus 9. Tomar el bus 10. Mientras no llegue a la universidad hacer 10.1 Seguir en el bus 10.2 Leer mis cuadernos 10.3 Utilizar el celular 11. Timbrar 12. Bajarse 13. Entrar a la universidad
  • 7. INTRODUCCION ALGORITMOS Diariamente el ser humano trata de dar solución a cada problema que se le presenta; algunas veces la solución de éstos se obtiene de seguir una serie de acciones de manera ordenada, otras veces la solución depende del estado de ánimo de la persona o de las condiciones de su entorno, mientras que en otras ocasiones no se puede llegar a solución alguna.
  • 8. Resolución De Problemas • Resolver un problemas muchas veces no es trivial, ya que es necesario comprender qué se quiere resolver, encontrar las herramientas adecuadas para resolver el problema, y luego implementar la solución con las herramientas disponibles. Problema Solución Problema Resuelto+ = Muchas veces existe mas de un algoritmo para resolver un problema, veamos el siguiente ejemplo
  • 9. EJEMPLO Deseamos dar al turista las instrucciones para llegar a la estación del tren: Proponga 2 algoritmos para el turista Solucion No 1
  • 10. EJEMPLO Deseamos dar al turista las instrucciones para llegar a la estación del tren: Proponga 2 algoritmos para el turista Solucion No 2
  • 11.
  • 12. Los algoritmos anteriores pueden adopter varias formas, o de hecho algunos pueden o no ser representados en un programa. El algoritmo del mapa puede ser representado por:
  • 13. Ejemplos de algoritmos En cada problema planteado debemos tomar en cuenta suposiciones. Las instrucciones del algoritmo deben ser claras. Realice la siguiente actividad
  • 14.
  • 19. Un algoritmo lo podemos definir como un conjunto de pasos lógicamente ordenados, escritos a través de símbolos o en lenguaje natural. Lo podemos comparar con una receta de cocina, o con las instrucciones para armar un mueble, las instrucciones que vienen en un manual de un grabador de CD, por mencionar algunos ejemplos. La diferencia está en la precisión que deben tener cada una de las instrucciones de un algoritmo. Por ejemplo, no podemos indicar en un algoritmo, agregue sal a gusto, o apreté esta tuerca pues son indicaciones poco precisas, que no pueden ser traducidas a una instrucción escrita en un lenguaje de programación. En el diseño e implementación de los algoritmos debemos indicar agregue 10 grs. de sal, o apreté esta tuerca dando diez giros a la derecha. Es decir las instrucciones dadas en un algoritmo deben de ser precisas y no ambiguas GENERALIDADES
  • 20.
  • 21. ALGORITMOS 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. Así, 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 realizarán sin importar el idioma del cocinero. En la ciencia de la computación y en la programación, los algoritmos son más importantes que los lenguajes de programación o las computadoras. Un lenguaje de programación es tan sólo un medio para expresar un algoritmo y una computadora es sólo un procesador para ejecutarlo. Tanto el lenguaje de programación como la computadora son los medios para obtener un fin: conseguir que el algoritmo se ejecute y se efectúe el proceso correspondiente. El diseño de la mayoría de los algoritmos requiere creatividad y conocimientos profundos de la técnica de la programación. En esencia, la solución de un problema se puede expresar mediante un algoritmo.
  • 22. CONSIDERACIONES A SEGUIR EN LA ESCRITURA DE UN ALGORITMO El sistema para escribir un algoritmo consiste en realizar una descripción paso a paso con un lenguaje natural del citado algoritmo. Recordemos que Algoritmo es un método o conjunto de reglas para solucionar un problema, las mismas que tienen las siguientes propiedades:  Deben estar seguidas de alguna secuencia definida de pasos hasta que se obtenga un resultado coherente.  Solo puede ejecutarse una operación a la vez..
  • 23.
  • 24. 1 2 3
  • 25. ANALOGIA CON EL COMPUTADOR
  • 26.
  • 27. ESTRUCTURA BASICA DE UN ALGORITMO DATOS INSTRUCCIONES ESTRUCTURAS DE CONTROL Lo que el algoritmo recibe, procesa y entrega como resultado Las acciones o procesos que el algoritmo realiza sobre los datos Las que determinan el orden en que se ejecutarán las instrucciones del algoritmo
  • 30.
  • 31.
  • 32.
  • 34.
  • 35. Pseudocódigo Es un lenguaje de especificación de algoritmos. El uso de tal lenguaje hace el paso de codificación final relativamente fácil. El Pseudocódigo nació como un lenguaje similar al lenguaje natural y era un medio para presentar básicamente las estructuras de control de programación estructurada. Se considera un primer borrador, dado que el pseudocódigo tiene que traducirse posteriormente a un lenguaje de programación. La ventaja del pseudocódigo es que en su uso en la planificación de un programa, el programador se puede concentrar en su lógica y en las estructuras de control y no preocuparse de las reglas de un lenguaje específico. El pseudocódigo utiliza para representar las acciones sucesivas palabras reservadas a sus homónimos en los lenguajes de programación, tales como inicio, fin, si-entonces, mientras…..,etc.
  • 36. PSEUDOCÓDIGO • Es una forma de representar un algoritmo, que se acerca a los lenguajes de programación y con elementos del lenguaje natural. • El pseudocódigo se compone de: - Cabecera - Declaraciones - Cuerpo • La cabecera es la parte del algoritmo que posee el nombre de éste. • Las declaraciones son las variables y constantes que utilizará el algoritmo para resolver el problema. • El cuerpo son el conjunto de instrucciones o acciones que están entre el Inicio y el Fin.
  • 38. LENGUAJE NATURAL Problema: Sumar 2 números. Representación mediante Lenguaje natural: - Inicio Suma - Ingresar primer número - Guardar número en variable a - Ingresar segundo número - Guardar número en variable b - Sumar a y b - Guardar resultado en R - Mostrar R - Fin • Desventajas: -Ambiguo -Extenso
  • 39. PSEUDOCÓDIGO • La estructura del pseudocódigo es la siguiente: • La sección “Proceso SinTitulo” es la cabecera del algoritmo • La sección “acción 1, acción 1,…” es el cuerpo del algoritmo • En este caso como utilizaremos el Pseint la sección de declaraciones del algoritmo no se toma en cuenta, ya que el software se encarga de asignarle el tipo de dato a cada variable dependiendo del uso que se le dé.
  • 44. PSEINT – ACCIONES SECUENCIALES • Asignación: nos permite guardar un valor en una variable. • c <- 2; por lo tanto c=2. • Leer: nos permite recibir valores por teclado y guardarlos en variables. • Leer a; recibe el valor y lo almacena en a. • Leer a, b, c; recibe 3 valores y los guarda en la variable que corresponda.
  • 45. PSEINT – ACCIONES SECUENCIALES • Escribir: nos permite mostrar en pantalla algún tipo de dato, o varios separados por ‘,’. • Escribir ‘hola mundo’; • Escribir ‘hola mundo’, ‘hola’, 2, c;
  • 46.
  • 52.
  • 54.
  • 55.
  • 57.
  • 58. X = 5 Y = 9 K = 2 N = 7 Y = ( X + N mod 6 / 3 ) - ( Y * 7 mod K mod ( Y + 8 / 2 + X mod 5)) * X + N
  • 60.
  • 62. 1. Calcular el doble de un número ingresado, a ese resultado calcularle el 10% y mostrar ese valor 2. Informar en pantalla el promedio de cinco números 3. Resuelva un algoritmo que solucione el problema de calcular el área de un triangulo con la fórmula: AREA = BASE x ALTURA / 2. 4. Conociendo el valor de la entrada al cine, calcule el monto a pagar para una delegación de personas. Recuerde que deberá hacer un descuento del 3% por cantidad. 5. Ingresando la cantidad de un producto y su precio unitario, obtener como resultado el precio final que debe pagar el cliente. 6. Realizar una aplicación que calcule las cuatro operaciones básicas, suma, resta, división, multiplicación, con dos números. 7. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finalmente por su compra. 8. Un alumno desea saber cual será su calificación final en la materia de Algoritmos. Dicha calificación se compone de los siguientes porcentajes: 55% del promedio de sus tres calificaciones parciales. 30% de la calificación del examen final. 15% de la calificación de un trabajo final. 9. Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes. EJERCICIOS
  • 64.
  • 65.
  • 66. 1. Realizar una aplicación que calcule las cuatro operaciones básicas, suma, resta, división, multiplicación, con dos números. 2. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea saber cuanto deberá pagar finalmente por su compra. 3. Un alumno desea saber cual será su calificación final en la materia de Algoritmos. Dicha calificación se compone de los siguientes porcentajes: 55% del promedio de sus tres calificaciones parciales. 30% de la calificación del examen final. 15% de la calificación de un trabajo final. 4. Un maestro desea saber que porcentaje de hombres y que porcentaje de mujeres hay en un grupo de estudiantes. Ejercicios
  • 67.
  • 68.
  • 69.
  • 71. Algoritmo que lee dos valores numéricos ‘X’ e ‘Y’, determina si son iguales y, en caso de no serlo, indica cuál de ellos es el mayor. Definición del problema 1. Escribir un algoritmo que acepte tres números enteros e imprima el mayor de ellos
  • 72.
  • 73. Definición del problema Identificar menor de dos números o si son iguales Definición del problema Suponga que dados cuatros números (a, b, c y d), se desea determinar cual de ellos es el número menor y mostrar dicho número en pantalla. Elabore el Algoritmo. Definición del problema Ingresar 2 números y verificar si son pares e impares Definición del problema Ingresar un numero A y verificar si es divisible para N
  • 74. Alternativas Multiples • Cuando existen más de dos alternativas posibles, es cuando se presenta el caso de alternativas múltiples. Muchas decisiones deben tomarse, no solo entre dos alternativas, sino de un conjunto mayor. Estos casos bien pueden solucionarse utilizando condicionales dobles anidados; sin embargo, en favor de la claridad del algoritmo y la facilidad para el programador, es mejor utilizar una estructura de decisión múltiple, la cual es fácil de llevar a un lenguaje de programación, ya que éstos incluyen alguna instrucción con este fin. La decisión múltiple determina el valor de una variable y dependiendo de éste sigue un curso de acción.
  • 76. PSEINT – ESTRUCTURAS DE CONTROL • Segun: es una estructura de control que depende del valor de una variable de tipo numérica o caracter para ejecutar una secuencia de instrucciones asociada a ese valor. • Puede suceder que una secuencia de instrucciones sea común para más de un valor de la variable numérica, es el caso que se ve en la imagen siguiente, donde el valor 2 y 3 de la variable numérica lleva a ejecutar una misma secuencia de instrucciones. • Cada valor de la variable numérica es una opción que ejecuta una serie de instrucciones, es por esto que esta instrucción es recomendable para manejar Menú muy complejos.
  • 77. PSEINT – ESTRUCTURAS DE CONTROL • La opción “De otro modo” significa que si la variable numérica toma un valor que no está en ninguna de las opciones anteriores ejecuta las instrucciones de esa opción. • Esta opción es ocupada generalmente para capturar(Catch) errores al ingresar una opción no disponible y así avisarle al usuario. • Ej:
  • 80. una distribuidora de motocicletas tiene una promoción de fin de año que consiste en los siguiente. Las motos marca HONDA tienen un descuento del 5%, las de marca Yamaha del 8% y las Suzuki el 10%, las de otras marcas el 2% Definición del problema Calcular el valor del descuento y el valor a pagar por la motocicleta. Análisis del problema Porcentaje descuento = 5% para motos Honda Porcentaje descuento = 8% para motos Yamaha Porcentaje descuento = 10% para motos Suzuki Porcentaje descuento = 2% para motos otras marcas Datos de entrada: marca, valor Datos de salida: descuento, valor a pagar Proceso: descuento = valor * porcentaje
  • 81.
  • 82.
  • 83. CASOS GENERALES DE LAS ESTRUCTURAS REPETITIVAS
  • 84. CASOS GENERALES DE LAS ESTRUCTURAS REPETITIVAS
  • 87. PSEINT – ESTRUCTURAS DE CONTROL • REPETITIVA: • Mientras: permite ejecutar una secuencia de instrucciones repetidamente hasta que la condición no se cumpla.
  • 90. TERMINACION DE BUCLES CON DATOS DE ENTRADA
  • 91. TERMINACION DE BUCLES CON DATOS DE ENTRADA
  • 92.
  • 93. ESTRUCTURA HACER MIENTRAS DO WHILE REGLA
  • 95.
  • 100.
  • 101. CASOS GENERALES DE LAS ESTRUCTURAS REPETITIVAS
  • 102. CICLO PARA Este ciclo, al igual que los demás, permite ejecutar repetidas veces una instrucción o un grupo de ellas, pero a diferencia de otras instrucciones de repetición, ésta maneja el valor inicial, el valor de incremento o decremento y el valor final de la variable de control como parte de la instrucción. Cuando al ejecutarse un algoritmo se encuentra una instrucción para la variable de control (contador) toma el valor inicial, se verifica que el valor inicial no sobrepase el valor final y luego se ejecutan las instrucciones del ciclo. Al encontrar la instrucción fin para, se produce el incremento y se vuelve a verificar que la variable de control no haya superado el límite admitido, y se vuelven a ejecutar las instrucciones que están dentro del ciclo, y así sucesivamente tantas veces como sea necesario hasta que se supere el valor final establecido. El ciclo para termina en el momento en que la variable de control (contador) sobrepasa el valor final; es decir, que la igualdad está permitida y las instrucciones se ejecutan cuando el contador es igual al valor final. Este ciclo puede presentarse de tres maneras: la primera es la más común, cuando se produce un incremento de 1 en cada iteración, en cuyo caso no es necesario escribir explícitamente. ESCRIBIR LOS NUMEROS DEL1 AL10 ESCRIBIR LOS NUMEROS DE 5 EN 5 DADO UN NUMERO N, MOSTRAR LOS MENORES A ESTE EN FORMA DESCENDENTE
  • 103.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109. EL SOFTWARE (PROGRAMAS) Las operaciones que debe realizar el hardware son específicas por una lista de instrucciones, llamadas programas o software. El software se divide en dos grandes grupos: software del sistema y de aplicaciones Software de sistema Es el conjunto de programas indispensable para que la máquina funcione, se domina también programas del sistema. Estos programas son básicamente el Sistema Operativo, los editores de texto, los compiladores/interpretes (lenguajes de programación) y los programas de utilidad. Uno de los programas mas importantes es el Sistema Operativo que sirve, esencialmente para facilitar la escritura y usos de sus programas. Este dirige las operaciones globales de la computadores e instruye a la computadora para ejecutar otros programas y controla el almacenamiento y recuperación de archivos (programas y datos). Gracias al Sistema Operativo es posible que el programador pueda introducir y grabar nuevos programas así como instruir a la computadora para que los ejecute.
  • 110.
  • 111. Los lenguajes de programación sirven para escribir programas que permitan la comunicación usuario maquina. Unos programas especiales llamados traductores (compiladores o interpretes) convierten las instrucciones escritas en lenguajes de programación en instrucciones escritas en lenguajes de maquina que esta pueda entender. Los programas de utilidad facilitan el uso de la computadora. Por ejemplo el editor de textos Los programas que realizan tareas concretas como nominas, contabilidad análisis estadístico, etc de denominan programas de aplicación.
  • 117. TRADUCTORES DE LENGUAJE Los traductores de lenguaje son programas que traducen a su vez los programas fuente escritos en lenguajes de alto nivel a código de máquina. Los traductores se dividen en: compiladores e interpretes
  • 119.
  • 120. LA COMPILACION Y SUS FASES La compilación es el proceso de traducción de programas fuente a programas objeto. El programa objeto obtenido de la compilación ha sido traducido normalmente a código de máquina. Para conseguir el programa máquina real se debe utilizar un programa llamando montador o enlazador (linker). El proceso de montaje conduce a un programa en lenguaje máquina directamente ejecutable. El proceso de ejecución de un programa escrito en un lenguaje de programación y mediante un compilador suele tener los siguientes pasos: 1. Escritura del programa fuente y guardarlo en un dispositivo de almacenamiento 2. Introducir el programa fuente en memoria 3. Compilar el programa con el compilador 4. Verificar y corregir errores de compilación 5. Obtención del programa objeto 6. El enlazador obtiene el programa ejecutable 7. Se ejecuta el programa y se tendrá la salida deseada EJECUCION DE UN PROGRAMA
  • 121. FASES DE EJECUCION DE UN PROGRAMA