SlideShare una empresa de Scribd logo
1 de 24
REPÚBLICA BOLIVARIANA DE VENEZUELA
UNIVERSIDAD PEDAGÓGICA EXPERIMENTAL LIBERTADOR
INSTITUTO DE MEJORAMIENTO PROFESIONAL DEL MAGISTERIO
NUCLEO ACADÉMICO PORTUGUESA
Materia: Estructura de Datos y programación I
ALGORITMOS DE PROGRAMACIÓN
Febrero 2017
ALGORITMOS DE PROGRAMACIÓN
Un Algoritmo, se puede definir como una
secuencia de instrucciones que representan un
modelo de solución para determinado tipo de
problemas. O bien como un conjunto de
instrucciones que realizadas en orden conducen a
obtener la solución de un problema. Por lo tanto
podemos decir que es un conjunto ordenado y
finito de pasos que nos permite solucionar un
problema.
Los algoritmos son independientes de los
lenguajes de programación. En cada problema el
algoritmo puede escribirse y luego ejecutarse en
un lenguaje de diferente programación. El
algoritmo es la infraestructura de cualquier
solución, escrita luego en cualquier lenguaje de
programación.
Todo Algoritmo debe tener las siguientes partes:
· Entrada de datos, son los datos necesarios que el algoritmo necesita
para ser ejecutado.
· Proceso, es la secuencia de pasos para ejecutar el algoritmo.
· Salida de resultados, son los datos obtenidos después de la ejecución
del algoritmo.
PARTES DE UN ALGORITMO:
Contenido
Características.
• Variables constantes y expresiones de los
Algoritmos.
• Tipos de Lenguajes Algorítmicos: gráficos y no
gráficos.
• Variable:
– Representa a un dato en particular alojado en la
memoria que es identificado mediante un nombre
(identificador de la variable)
– Las variables pueden ser de tipo:
• Numérico
• Carácter
• Lógico
• Reglas para los nombres (identificadores) de las
variables:
– Debe iniciar con una letra del alfabeto, mayúscula o
minúscula.
– No debe tener espacios en blanco. En su lugar puede usar
el símbolo guión bajo ( _ ) para separar nombres largos.
– Puede incluir números, siempre que no se presenten al
principio del nombre.
– Los nombres de variables son sensibles a mayúsculas o
minúsculas. Es decir, aunque un identificador tenga el
mismo nombre que otro, el orden y uso de mayúsculas los
haría diferentes.
Variables, constantes y expresiones … (7)
• Algoritmo para el primer ejemplo:
1. Iniciar
2. Escribir en pantalla un mensaje solicitando al usuario que
introduzca su nombre
3. Asignar el dato leído en la variable nombre_usuario
4. Escribir en pantalla el mensaje “hola, bienvenido ”
seguido de lo almacenado en nombre_usuario
5. Finalizar
• Constantes:
– Al valor que se le asigna al inicio del algoritmo a
un identificador y permanece sin cambios en todo
el cuerpo del algoritmo se le denomina constante.
– Por ejemplo: el valor de pi, el número de días de la
semana, etc.
– Las reglas que aplican para los nombres de las
variables son los mismos que aplican para los
nombres de las constantes.
• La manipulación de variables y constantes nos conduce a un
nuevo concepto: expresiones. Las expresiones son una forma
de describir las siguientes acciones:
– Operaciones de cálculo aritmético
• Son instrucciones que implican el uso de operadores
aritméticos (suma, resta, multiplicación, división, etc.)
para realizar operaciones matemáticas y cuyo resultado
se puede o no asignar a una variable
– Operaciones lógicas
• Corresponden a instrucciones donde comparamos
valores, variables, constantes o resultados de
operaciones de cálculo para saber si son iguales,
diferentes, si uno es mayor a otro, etc.
– Operaciones de asignación
• Corresponde a instrucciones en donde una variable o
constante: 1) recibe un valor directamente, 2) recibe
datos almacenados en otro identificador, 3) recibe el
resultado de una operación de cálculo, o 4) recibe el
resultado de una operación lógica
• Las expresiones u operaciones de asignación, establecen el
valor que toma una variable o constante.
• Ejemplos:
– nombre_usuario = “Roberto”
– edad = 25
– estatura_metros = 1.70
– pi = 3.1416
– edad_nueva = edad
• En los ejemplos anteriores debemos advertir dos cosas:
1. La asignación siempre se realiza de derecha (dato) a
izquierda (nombre de la variable).
2. Una vez asignado un valor a una variable por primera vez,
dicha variable solo aceptará datos del mismo tipo
• Las siguientes expresiones u operaciones de asignación NO SON
CORRECTAS:
– “Roberto” = nombre_usuario NO ES CORRECTO
– 25 = edad NO ES CORRECTO
y
– edad = edad_nueva NO SIGNIFICA LO MISMO QUE edad_nueva = edad
• Si una variable se inicializa con un dato de tipo carácter, sería un ERROR
asignarle posteriormente un dato de tipo numérico y viceversa. Sin
embargo, hay que tomar en cuenta que una variable a la que se le
asignó un valor numérico se comportará de la siguiente manera:
– Si se asignó por primera vez un valor de tipo numérico entero, entonces:
• edad = 23.5 ES CORRECTO, PERO EL VALOR ALMACENADO SERÁ 23
– Si se asigno por primera vez un valor de tipo numérico real, entonces:
• estatura_metros = 2 ES CORRECTO, PERO EL VALOR ALMACENADO SERÁ 2.0
• Las operaciones de cálculo aritmético que solo
involucran enteros dan como resultado un entero:
– Suma = 1 + 1
– Res_prod = 2 * 4
– Res_division = 9 / 2 (aquí el resultado es 4)
• Las operaciones de cálculo aritmético que
involucren al menos un dato real darán como
resultado un real:
– Suma_r = 1.0 + 2 + 1
– Res_prod_r = 2.5 * 2
– Res_div_r = 9.0 / 2 (aquí el resultado es 4.5)
• Operadores aritméticos y sus reglas de
prioridad:
cantidad = 2 + 1 * 3 ¿el resultado es 9 o 5 ?
• Cuál es el resultado de las siguientes
expresiones de cálculo aritmético?:
– cantidad2 = -3 * 1 + 7
– cantidad3 = 12 - 2 / 2 + 3
– cantidad4 = 2 + 2 * 4 / 2
– cantidad3_A = (12 - 2)/(2 + 3)
– cantidad3_B = 12 - ((2/2)+ 3)
• Las operaciones de cálculo aritmético generalmente están expresadas
en los libros usando una notación algebraica, debemos reescribir estas
operaciones de forma algorítmica para poder utilizarlas.
Tipos de Algoritmos
GRÁFICOS: son la representación gráfica de las operaciones que
realiza un algoritmo (diagrama de flujo).
El diagrama de flujo se caracteriza por la forma detallada como representa
de forma gráfica los pasos a seguir para encontrar la solución del problema
propuesto.
La representación gráfica se da por medio de varios símbolos(cada uno con
su propósito establecido ), que unidos entre si, indican el orden en el que se
debe dar el proceso.
NO GRÁFICOS: representan en forma descriptiva las operaciones que
debe realizar un algoritmo(pseudocòdigo).
INICIO
Edad:Entero
ESCRIBA"cual es tu edad?"
lea Edad
SI Edad>=18 entonces
ESCRIBA "Eres mayor de Edad"
FINSI
ESCRIBA "fin del algoritmo "
FIN
El pseudocódigo es un lenguaje intermedio entre nuestro lenguaje y el
lenguaje de programación, su característica principal es el de representar
la solución de forma mas detallada y lo mas parecida al lenguaje, para que
posteriormente se pueda codificar.
otras características son:
Se puede ejecutar en un ordenador.
Facilita el paso del programa al lenguaje de programación.
Es independiente del lenguaje del programación que se vaya a utilizar.
Método que facilita la programación y solución al algoritmo del programa.
Técnicas de diseño de algoritmos de
programación, el Top Down y el Bottom Up.
Top Down
También conocida como de arriba-abajo y consiste en establecer una
serie de niveles de mayor a menor complejidad (arriba-abajo) que den solución al
problema. Consiste en efectuar una relación entre las etapas de la estructuración
de forma que una etapa jerárquica y su inmediato inferior se relacionen mediante
entradas y salidas de información. Este diseño consiste en una serie de
descomposiciones sucesivas del problema inicial, que recibe el refinamiento
progresivo del repertorio de instrucciones que van a formar parte del programa.
La utilización de la técnica de diseño Top-Down tiene los siguientes
objetivos básicos:
Simplificación del problema y de los subprogramas de cada descomposición.
Las diferentes partes del problema pueden ser programadas de modo
independiente e incluso por diferentes personas.
El programa final queda estructurado en forma de bloque o módulos lo que hace
mas sencilla su lectura y mantenimiento.
Bottom Up
El diseño ascendente se refiere a la identificación de aquellos procesos
que necesitan computarizarse con forme vayan apareciendo, su análisis como
sistema y su codificación, o bien, la adquisición de paquetes de software para
satisfacer el problema inmediato.
Cuando la programación se realiza internamente y haciendo un enfoque
ascendente, es difícil llegar a integrar los subsistemas al grado tal de que el
desempeño global, sea fluido. Los problemas de integración entre los subsistemas
son sumamente costosos y muchos de ellos no se solucionan hasta que la
programación alcanza la fecha limite para la integración total del sistema. En esta
fecha, ya se cuenta con muy poco tiempo, presupuesto o paciencia de los
usuarios, como para corregir aquellas delicadas interfaces, que en un principio, se
ignoran. Aunque cada subsistema parece ofrecer lo que se requiere, cuando se
contempla al sistema como una entidad global, adolece de ciertas limitaciones por
haber tomado un enfoque ascendente.
Uno de ellos es la duplicación de esfuerzos para acceder el software y
mas aún al introducir los datos.
Otro es, que se introducen al sistema muchos datos carentes de valor.
Un tercero y tal vez el mas serio inconveniente delenfoque ascendente, es que los
objetivos globales de la organización no fueron considerados y en consecuencia no
se satisfacen.

Más contenido relacionado

La actualidad más candente

Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programación
ionurrutia
 
Arquitectura ALMA
Arquitectura ALMAArquitectura ALMA
Arquitectura ALMA
LoloUBD
 
Funcion computable y parcialmente computable
Funcion computable y parcialmente computableFuncion computable y parcialmente computable
Funcion computable y parcialmente computable
Aniitha Mtz
 

La actualidad más candente (20)

Presentación trabajo programación
Presentación trabajo programaciónPresentación trabajo programación
Presentación trabajo programación
 
Arquitectura ALMA
Arquitectura ALMAArquitectura ALMA
Arquitectura ALMA
 
APLICACION DEL CALCULO EN LA INFORMATICA
APLICACION DEL CALCULO EN LA INFORMATICAAPLICACION DEL CALCULO EN LA INFORMATICA
APLICACION DEL CALCULO EN LA INFORMATICA
 
Autómata de pila (AP)
Autómata de pila (AP)Autómata de pila (AP)
Autómata de pila (AP)
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Semana 1
Semana 1Semana 1
Semana 1
 
Diapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacionDiapositivas fundamentos-de-programacion
Diapositivas fundamentos-de-programacion
 
Toma de decisiones If Else
Toma de decisiones If ElseToma de decisiones If Else
Toma de decisiones If Else
 
Reglas de Oro
Reglas de OroReglas de Oro
Reglas de Oro
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Autómatas de pila
Autómatas de pila Autómatas de pila
Autómatas de pila
 
Unidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatasUnidad1 Lenguajes y automatas
Unidad1 Lenguajes y automatas
 
Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.Equivalencia de autómatas finitos y expresiones regulares.
Equivalencia de autómatas finitos y expresiones regulares.
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Lenguaje maquina
Lenguaje maquinaLenguaje maquina
Lenguaje maquina
 
Lenguajes de programación
Lenguajes de programaciónLenguajes de programación
Lenguajes de programación
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Funcion computable y parcialmente computable
Funcion computable y parcialmente computableFuncion computable y parcialmente computable
Funcion computable y parcialmente computable
 
Fundamentos de Programación
Fundamentos de ProgramaciónFundamentos de Programación
Fundamentos de Programación
 

Destacado (11)

metodología de solución de problemas
metodología de solución de problemasmetodología de solución de problemas
metodología de solución de problemas
 
Ejercicios algoritmos
Ejercicios algoritmosEjercicios algoritmos
Ejercicios algoritmos
 
Ejercicios Algoritmos
Ejercicios AlgoritmosEjercicios Algoritmos
Ejercicios Algoritmos
 
Ejercicios de algoritmos
Ejercicios de algoritmosEjercicios de algoritmos
Ejercicios de algoritmos
 
programacion lineal con analisis de sensibilidad
programacion lineal con analisis de sensibilidadprogramacion lineal con analisis de sensibilidad
programacion lineal con analisis de sensibilidad
 
Programacion Lineal
Programacion LinealProgramacion Lineal
Programacion Lineal
 
Metodo De Transporte & Transbordo
Metodo De Transporte & TransbordoMetodo De Transporte & Transbordo
Metodo De Transporte & Transbordo
 
Logaritmos
LogaritmosLogaritmos
Logaritmos
 
Logica de la Programación Problemas y Soluciones
Logica de la  Programación  Problemas y SolucionesLogica de la  Programación  Problemas y Soluciones
Logica de la Programación Problemas y Soluciones
 
EJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOSEJERCICIOS DE ALGORITMOS
EJERCICIOS DE ALGORITMOS
 
Operaciones con logaritmos
Operaciones con logaritmosOperaciones con logaritmos
Operaciones con logaritmos
 

Similar a Algoritmos

Similar a Algoritmos (20)

Estructuras de un Algoritmo
Estructuras de un AlgoritmoEstructuras de un Algoritmo
Estructuras de un Algoritmo
 
Logica computacional conceptos basicos
Logica computacional conceptos basicosLogica computacional conceptos basicos
Logica computacional conceptos basicos
 
algortimos
algortimosalgortimos
algortimos
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programa
 
Tema n° 1
Tema n° 1Tema n° 1
Tema n° 1
 
ALGORITMOS DE PROGRAMACION (1).pdf
ALGORITMOS DE PROGRAMACION (1).pdfALGORITMOS DE PROGRAMACION (1).pdf
ALGORITMOS DE PROGRAMACION (1).pdf
 
Video Primer Bimestre Metodologia Abierta
Video Primer Bimestre Metodologia AbiertaVideo Primer Bimestre Metodologia Abierta
Video Primer Bimestre Metodologia Abierta
 
Algoritmos2daparte
Algoritmos2daparteAlgoritmos2daparte
Algoritmos2daparte
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Unidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.pptUnidad 1 Introducción a los Algoritmos.ppt
Unidad 1 Introducción a los Algoritmos.ppt
 
Unidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmosUnidad 2 introducción a los algoritmos
Unidad 2 introducción a los algoritmos
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
Estructuras básicas
Estructuras básicas Estructuras básicas
Estructuras básicas
 
ESTRUCTURAS BÁSICAS
ESTRUCTURAS BÁSICASESTRUCTURAS BÁSICAS
ESTRUCTURAS BÁSICAS
 
Tecnologia
TecnologiaTecnologia
Tecnologia
 
Mod 2 algoritmos
Mod 2 algoritmosMod 2 algoritmos
Mod 2 algoritmos
 
Tecno
TecnoTecno
Tecno
 
Estructuras basicas
Estructuras basicasEstructuras basicas
Estructuras basicas
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (11)

Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 

Algoritmos

  • 1. REPÚBLICA BOLIVARIANA DE VENEZUELA UNIVERSIDAD PEDAGÓGICA EXPERIMENTAL LIBERTADOR INSTITUTO DE MEJORAMIENTO PROFESIONAL DEL MAGISTERIO NUCLEO ACADÉMICO PORTUGUESA Materia: Estructura de Datos y programación I ALGORITMOS DE PROGRAMACIÓN Febrero 2017
  • 3. Un Algoritmo, se puede definir como una secuencia de instrucciones que representan un modelo de solución para determinado tipo de problemas. O bien como un conjunto de instrucciones que realizadas en orden conducen a obtener la solución de un problema. Por lo tanto podemos decir que es un conjunto ordenado y finito de pasos que nos permite solucionar un problema. Los algoritmos son independientes de los lenguajes de programación. En cada problema el algoritmo puede escribirse y luego ejecutarse en un lenguaje de diferente programación. El algoritmo es la infraestructura de cualquier solución, escrita luego en cualquier lenguaje de programación.
  • 4. Todo Algoritmo debe tener las siguientes partes: · Entrada de datos, son los datos necesarios que el algoritmo necesita para ser ejecutado. · Proceso, es la secuencia de pasos para ejecutar el algoritmo. · Salida de resultados, son los datos obtenidos después de la ejecución del algoritmo. PARTES DE UN ALGORITMO:
  • 5. Contenido Características. • Variables constantes y expresiones de los Algoritmos. • Tipos de Lenguajes Algorítmicos: gráficos y no gráficos.
  • 6. • Variable: – Representa a un dato en particular alojado en la memoria que es identificado mediante un nombre (identificador de la variable) – Las variables pueden ser de tipo: • Numérico • Carácter • Lógico
  • 7. • Reglas para los nombres (identificadores) de las variables: – Debe iniciar con una letra del alfabeto, mayúscula o minúscula. – No debe tener espacios en blanco. En su lugar puede usar el símbolo guión bajo ( _ ) para separar nombres largos. – Puede incluir números, siempre que no se presenten al principio del nombre. – Los nombres de variables son sensibles a mayúsculas o minúsculas. Es decir, aunque un identificador tenga el mismo nombre que otro, el orden y uso de mayúsculas los haría diferentes.
  • 8. Variables, constantes y expresiones … (7) • Algoritmo para el primer ejemplo: 1. Iniciar 2. Escribir en pantalla un mensaje solicitando al usuario que introduzca su nombre 3. Asignar el dato leído en la variable nombre_usuario 4. Escribir en pantalla el mensaje “hola, bienvenido ” seguido de lo almacenado en nombre_usuario 5. Finalizar
  • 9. • Constantes: – Al valor que se le asigna al inicio del algoritmo a un identificador y permanece sin cambios en todo el cuerpo del algoritmo se le denomina constante. – Por ejemplo: el valor de pi, el número de días de la semana, etc. – Las reglas que aplican para los nombres de las variables son los mismos que aplican para los nombres de las constantes.
  • 10. • La manipulación de variables y constantes nos conduce a un nuevo concepto: expresiones. Las expresiones son una forma de describir las siguientes acciones: – Operaciones de cálculo aritmético • Son instrucciones que implican el uso de operadores aritméticos (suma, resta, multiplicación, división, etc.) para realizar operaciones matemáticas y cuyo resultado se puede o no asignar a una variable – Operaciones lógicas • Corresponden a instrucciones donde comparamos valores, variables, constantes o resultados de operaciones de cálculo para saber si son iguales, diferentes, si uno es mayor a otro, etc. – Operaciones de asignación • Corresponde a instrucciones en donde una variable o constante: 1) recibe un valor directamente, 2) recibe datos almacenados en otro identificador, 3) recibe el resultado de una operación de cálculo, o 4) recibe el resultado de una operación lógica
  • 11. • Las expresiones u operaciones de asignación, establecen el valor que toma una variable o constante. • Ejemplos: – nombre_usuario = “Roberto” – edad = 25 – estatura_metros = 1.70 – pi = 3.1416 – edad_nueva = edad • En los ejemplos anteriores debemos advertir dos cosas: 1. La asignación siempre se realiza de derecha (dato) a izquierda (nombre de la variable). 2. Una vez asignado un valor a una variable por primera vez, dicha variable solo aceptará datos del mismo tipo
  • 12. • Las siguientes expresiones u operaciones de asignación NO SON CORRECTAS: – “Roberto” = nombre_usuario NO ES CORRECTO – 25 = edad NO ES CORRECTO y – edad = edad_nueva NO SIGNIFICA LO MISMO QUE edad_nueva = edad • Si una variable se inicializa con un dato de tipo carácter, sería un ERROR asignarle posteriormente un dato de tipo numérico y viceversa. Sin embargo, hay que tomar en cuenta que una variable a la que se le asignó un valor numérico se comportará de la siguiente manera: – Si se asignó por primera vez un valor de tipo numérico entero, entonces: • edad = 23.5 ES CORRECTO, PERO EL VALOR ALMACENADO SERÁ 23 – Si se asigno por primera vez un valor de tipo numérico real, entonces: • estatura_metros = 2 ES CORRECTO, PERO EL VALOR ALMACENADO SERÁ 2.0
  • 13. • Las operaciones de cálculo aritmético que solo involucran enteros dan como resultado un entero: – Suma = 1 + 1 – Res_prod = 2 * 4 – Res_division = 9 / 2 (aquí el resultado es 4) • Las operaciones de cálculo aritmético que involucren al menos un dato real darán como resultado un real: – Suma_r = 1.0 + 2 + 1 – Res_prod_r = 2.5 * 2 – Res_div_r = 9.0 / 2 (aquí el resultado es 4.5)
  • 14. • Operadores aritméticos y sus reglas de prioridad: cantidad = 2 + 1 * 3 ¿el resultado es 9 o 5 ?
  • 15. • Cuál es el resultado de las siguientes expresiones de cálculo aritmético?: – cantidad2 = -3 * 1 + 7 – cantidad3 = 12 - 2 / 2 + 3 – cantidad4 = 2 + 2 * 4 / 2 – cantidad3_A = (12 - 2)/(2 + 3) – cantidad3_B = 12 - ((2/2)+ 3)
  • 16. • Las operaciones de cálculo aritmético generalmente están expresadas en los libros usando una notación algebraica, debemos reescribir estas operaciones de forma algorítmica para poder utilizarlas.
  • 17.
  • 18.
  • 19. Tipos de Algoritmos GRÁFICOS: son la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo). El diagrama de flujo se caracteriza por la forma detallada como representa de forma gráfica los pasos a seguir para encontrar la solución del problema propuesto. La representación gráfica se da por medio de varios símbolos(cada uno con su propósito establecido ), que unidos entre si, indican el orden en el que se debe dar el proceso.
  • 20.
  • 21. NO GRÁFICOS: representan en forma descriptiva las operaciones que debe realizar un algoritmo(pseudocòdigo). INICIO Edad:Entero ESCRIBA"cual es tu edad?" lea Edad SI Edad>=18 entonces ESCRIBA "Eres mayor de Edad" FINSI ESCRIBA "fin del algoritmo " FIN El pseudocódigo es un lenguaje intermedio entre nuestro lenguaje y el lenguaje de programación, su característica principal es el de representar la solución de forma mas detallada y lo mas parecida al lenguaje, para que posteriormente se pueda codificar. otras características son: Se puede ejecutar en un ordenador. Facilita el paso del programa al lenguaje de programación. Es independiente del lenguaje del programación que se vaya a utilizar. Método que facilita la programación y solución al algoritmo del programa.
  • 22. Técnicas de diseño de algoritmos de programación, el Top Down y el Bottom Up.
  • 23. Top Down También conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-abajo) que den solución al problema. Consiste en efectuar una relación entre las etapas de la estructuración de forma que una etapa jerárquica y su inmediato inferior se relacionen mediante entradas y salidas de información. Este diseño consiste en una serie de descomposiciones sucesivas del problema inicial, que recibe el refinamiento progresivo del repertorio de instrucciones que van a formar parte del programa. La utilización de la técnica de diseño Top-Down tiene los siguientes objetivos básicos: Simplificación del problema y de los subprogramas de cada descomposición. Las diferentes partes del problema pueden ser programadas de modo independiente e incluso por diferentes personas. El programa final queda estructurado en forma de bloque o módulos lo que hace mas sencilla su lectura y mantenimiento.
  • 24. Bottom Up El diseño ascendente se refiere a la identificación de aquellos procesos que necesitan computarizarse con forme vayan apareciendo, su análisis como sistema y su codificación, o bien, la adquisición de paquetes de software para satisfacer el problema inmediato. Cuando la programación se realiza internamente y haciendo un enfoque ascendente, es difícil llegar a integrar los subsistemas al grado tal de que el desempeño global, sea fluido. Los problemas de integración entre los subsistemas son sumamente costosos y muchos de ellos no se solucionan hasta que la programación alcanza la fecha limite para la integración total del sistema. En esta fecha, ya se cuenta con muy poco tiempo, presupuesto o paciencia de los usuarios, como para corregir aquellas delicadas interfaces, que en un principio, se ignoran. Aunque cada subsistema parece ofrecer lo que se requiere, cuando se contempla al sistema como una entidad global, adolece de ciertas limitaciones por haber tomado un enfoque ascendente. Uno de ellos es la duplicación de esfuerzos para acceder el software y mas aún al introducir los datos. Otro es, que se introducen al sistema muchos datos carentes de valor. Un tercero y tal vez el mas serio inconveniente delenfoque ascendente, es que los objetivos globales de la organización no fueron considerados y en consecuencia no se satisfacen.