SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
Unidad II. Representación de Algoritmo




                 Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


1. DEFINICIÓN DE UN ALGORITMO

Un algoritmo es un método para resolver un problema. Debe presentarse como una secuencia
ordenada de instrucciones que siempre se ejecutan en tiempo finito y con una cantidad de esfuerzo
también finito. Los algoritmos tienen un inicio y un final, son únicos y deben ser fácilmente
identificables.

Es un Método para resolver un problema mediante una serie de pasos precisos, definidos y finitos.
Un algoritmo es una serie de operaciones detalladas, en otras palabras un algoritmo es un conjunto
de reglas para resolver una cierta clase de problemas y se puede formular de muchas formas con el
cuidado de que no exista ambigüedad.

También lo podemos definir como:




2. CARACTERÍSTICAS DE LOS ALGORITMOS

Todo algoritmo debe cumplir:

  * Preciso (debe indicar el orden de realización en cada paso y no puede tener ambigüedad).
  * Definido (si se sigue dos veces, obtiene el mismo resultado cada vez)
  * Finito (tiene fin; un número determinado de pasos).
  * Debe ser Sencillo.
  * Eficiente y Efectivo.
  * Todo Algoritmo debe tener cero ó mas entradas.
  * Debe tener al menos una salida


3. COMPONENTES DE UN ALGORITMO:
Un algoritmo está compuesto por tres componentes:




                                                                             Licda Leidy Mendoza
Unidad II. Representación de Algoritmo




Un ejemplo de un algoritmo es la preparación de una receta de comida (no computacional).
                                                                         computacional)




- Entrada : ingredientes y utensilios empleados.
- Proceso : elaboración de la receta en la cocina.
- Salida : terminación del plato.
Ejemplo de un algoritmo computacional
                        computacional:
Determinar la suma de acuerdo a la siguiente fórmula:
Suma = N*(N+1) / 2

Entrada: Número entero (N)
Proceso: cálculo matemático Suma = N*(N+1) / 2
Salidas: resultado de la Suma




                                                                         Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


4. ELEMENTOS DE UN ALGORITMO

4.1 CONSTANTES Y VARIABLES

Las constantes son datos cuyos valores no cambian, pero existen datos cuyos valores sí
varían durante la ejecución del programa, a éstos los llamamos variables. En la mayoría de
los lenguajes de programación se permiten diferentes tipos de constantes: enteras, reales,
caracteres y boolean o lógicas, quienes representan datos de estos tipos.

Sueldominimo= 1586 su valor no cambia durante la ejecución del programa

Sueldototal= Sueldominimo + (ventas*0.3) el sueldo total va cambiar de acuerdo a las
ventas realizdas

A las variables o constante se les identifica por los atributos siguientes:
Nombre que se le asigna y tipo que describe el uso de la variable.
                                    Sueldominimo: entero

                 Nombre que se le asigna                    Tipo de datos de las
                 a la variable o constante                 Variables o constante


TIPOS DE DATOS

Las variables o constante pueden ser de varios tipos.

Datos Numéricos: Se llama así al conjunto de valores numéricos y son representados de
distintas formas:

- Tipo de dato numérico entero (integer):
El tipo entero es un subconjunto finito de los números enteros.

Ej: 5, 6, -15, 4, 2.480

- Tipo de dato numérico real (real):
El tipo real consiste en un subconjunto de los números reales. Los números reales siempre
tienen un punto decimal y pueden ser positivos o negativos. Los números reales constan de
una parte entera y una decimal.

Ej: 0.006, 9.3632, 6471.71, 3.0, -8.17, -63.3387


Datos Lógicos (booleanos):
Conocidos también como datos, este tipo de dato es aquel que sólo admite dos tipos de
valores, los que son verdadero (true) o falso (false). Los dos son usados para la
representación de alternativas (si/no) que se dan según la condición que se plantee, es decir,


                                                                              Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


si se quiere que el programa evalúe una condición determinada, ésta puede ser verdadera o
falsa, dependiendo de las reglas que se hayan planteado anteriormente.
Conocidos también como datos booleanos, este tipo de dato es aquel que sólo admite dos
tipos de valores, los que son verdadero (true) o falso (false).

Los dos son usados para la representación de alternativas (si/no) que se dan según la
condición que se plantee, es decir, si se quiere que el programa evalúe una condición
determinada, ésta puede ser verdadera o falsa, dependiendo de las reglas que se hayan
planteado anteriormente.

Datos Tipo Carácter: Los datos de este tipo forman un conjunto finito y ordenado que la
computadora puede reconocer. Un dato tipo carácter contendrá solamente un carácter. No
existe un estándar en lo que respecta al reconocimiento de caracteres, pero
las computadoras pueden reconocer los siguientes caracteres:
  Caracteres alfabéticos (A,B,C,D,.....)
  Caracteres numéricos (1,2,3,4, ......)
  Caracteres especiales (+, -, *, /,., ;,<, >, ..., etc.)

Datos tipo Cadena: son el tipo Cadena (string).
Estos se forman por una sucesión de caracteres, encontrándose delimitados por una comilla,
con esto se entiende entonces que el tamaño que tendrá una cadena o su longitud
´hola Rebeca´
´28 de Julio de 1821´
´Sr. Alvarado´

2. EXPRESIONES
Son la combinación de constantes, variables, símbolos de operación, paréntesis y nombres
de funciones especiales, idea que puede ser utilizada en notaciones de matemática
tradicional.

- aritméticas         resultado tipo numérico.
- relacionales        resultado tipo lógico.
- lógicas             resultado tipo lógico.
- carácter            resultado tipo carácter.

Expresiones Aritméticas
Estas expresiones son análogas a las fórmulas matemáticas. Las variables y constantes
son numéricas (real o entera) y las operaciones son las aritméticas.
+       suma
-       resta
*        Multiplicación
/      división
**, ^ exponenciación
Div      división entera
mod      módulo o resto



                                                                       Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


6.2. Reglas de Prioridad
Cuando existen expresiones que tienen más de dos operandos, se requiere de reglas
matemáticas que permitan determinar el orden de las operaciones y éstas, son reglas de
prioridad o precedencia y son:

- Operaciones que están encerradas entre paréntesis se evalúan primero. Si existen
diferentes paréntesis anidados (interiores unos a otros), las expresiones más internas se
evalúan primero.

- Las operaciones aritméticas dentro de una expresión generalmente suelen seguir el
siguiente orden de prioridad:
1. Operador exponencial (^, bien **)
2. Operadores *, /
3. Operadores +, -.
4. Operadores div y mod

7. REPRESENTACION DE ALGORITMO:

Existen muchas Técnicas para representar un algoritmo, las más conocidas para el desarrollo de un
algoritmo son el Pseudocódigo y el Diagrama de flujo o flujograma.

7.1 PSEUDOCODIGO:

Pseudocódigo: Es la representación de un algoritmo en una secuencia lógica de actividades, que
llevarán en conjunto a la solución de un problema. Serie de normas léxicas y gramaticales parecidas
a la mayoría de los lenguajes de programación, conocido como lenguaje falso.

7.2 DIAGRAMAS DE FLUJO:

Diagrama de Flujo: Son símbolos gráficos que representan a un algoritmo. Estos símbolos están
estandarizados, teniendo cada uno un significado universal.

Símbolo                                           Se usa para representar
                                                  Inicio y final del diagrama de flujo

                                                  Se emplea para representar entrada de
                                                  datos, generalmente, desde el teclado,
                                                  Algunos autores también la usan para
                                                  representar salida de datos.
                                                  Representa un proceso. Dentro del
                                                  símbolo se indica la fórmula que se va
                                                  a utilizar:


                                                  Representa una selección simple. La
                                                  condición se establece dentro de la
                                                  figura, si ésta se cumple, ejecuta las

                                                                              Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


                                                 tareas laterales marcadas con “Sí”, de
                                                 no ser así, ejecuta la del “No”. Al
                                                 terminar la rutina, se encuentran los
                                                 caminos para continuar el proceso.
                                                 Representa la salida de datos. Imprime
                                                 los resultados o los muestra en la
                                                 pantalla.
                                                 Conecta dos secciones del diagrama de
                                                 flujo en la misma página.
                                                 Indican la dirección del flujo del
                                                 diagrama.




Resolver el ejemplo anterior en Pseudocódigo y en diagrama de flujo


                                                Inicio



                                      Suma, N: entero



                                          Ingresar N


                                      Suma = N(N+1)/2



                                       “La suma es: “ suma



                                                Fin


Programa Suma
Declaración de Variables
N: entero:;

Cuerpo del Programa
Imprimir (“Ingresar un número entero:”, N)
Leer (N)
Calcular suma por fórmula:
Suma = N*(N+1)/2

                                                                           Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


“La suma es: “ suma
Fin

Programa Suma
Declaración de Variables
Num, Num2, total;

Cuerpo
 Imprimir (“Ingresar un numero 1:”, N1)
Leer (N1)
Imprimir (“Ingresar un numero: ”, N2”)
Leer (N2)

Total=N1+N2;
Imprimir (“La suma es, ” , total)
Fin


8. Metodología Para Solución De Problemas:
La solución de un problema requiere ciertos pasos, dispuestos de tal forma que cada uno es
dependiente de los anteriores, lo cual indica que se trata de un proceso complementario y
por lo tanto cada paso exige el mismo cuidado en su elaboración. Los siete pasos de la
metodología son los siguientes:

1. Definición del problema
2. Análisis de la solución
3. Diseño de la solución
4. Codificación

1.2.1 Definición del problema
Es el enunciado del problema, el cual debe ser claro y completo. Es fundamental conocer y
delimitar por completo el problema, saber qué es lo se desea realice la computadora,
mientras esto no se conozca del todo, no tiene caso continuar con el siguiente paso.

.2.2 Análisis de la solución
Consiste en establecer una serie de preguntas acerca de lo que establece el problema, para
poder determinar si se cuenta con los elementos suficientes para llevar a cabo la solución
del mismo, algunas preguntas son:

¿Con qué cuento?
Cuáles son los datos con los que se va a iniciar el proceso, qué tenemos que proporcionarle
a la computadora y si los datos con los que cuento son suficientes para dar solución al
problema.

¿Qué hago con esos datos?

                                                                        Licda Leidy Mendoza
Unidad II. Representación de Algoritmo


Una vez que tenemos todos los datos que necesitamos, debemos determinar qué hacer con
ellos, es decir que fórmula, cálculos, que proceso o transformación deben seguir los datos
para convertirse en resultados.

¿Qué se espera obtener?
Que información deseamos obtener con el proceso de datos y de qué forma presentarla; en
caso de la información obtenida no sea la deseada replantear nuevamente un análisis en los
puntos anteriores.

Es recomendable que nos pongamos en el lugar de la computadora y analicemos que es lo
que necesitamos que nos ordenen y en que secuencia para producir los resultados
esperados.

1.2.3 Diseño de la solución
Una vez definido y analizado el problema, se procede a la creación del algoritmo
(Diagrama de flujo ó pseudocódigo), en el cual se da la serie de pasos ordenados que nos
proporcione un método explícito para la solución del problema.

1.2.4 Codificación
Consiste en escribir la solución del problema (de acuerdo al pseudocódigo); en una serie de
instrucciones detalladas en un código reconocible por la computadora; es decir en un
lenguaje de programación (ya sea de bajo o alto nivel), a esta serie de instrucciones se le
conoce como PROGRAMA.




                                                                        Licda Leidy Mendoza

Contenu connexe

Tendances

Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representaciónBenjamin Medina Ramirez
 
Introducción a la Programación
Introducción a la ProgramaciónIntroducción a la Programación
Introducción a la ProgramaciónJeckson Loza
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionBoris Salleg
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSLuiS YmAY
 
estructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasestructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasJohan Velandia
 
Generalidades algoritmos
Generalidades algoritmosGeneralidades algoritmos
Generalidades algoritmosMagda Fernandez
 
Tutorial algoritmo expresiones
Tutorial algoritmo expresionesTutorial algoritmo expresiones
Tutorial algoritmo expresionesMichele André
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1Silvanac
 
Clases 2 dfd y basico 2011
Clases 2  dfd y basico 2011Clases 2  dfd y basico 2011
Clases 2 dfd y basico 2011seolivares
 
Algoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaAlgoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaIsrael Alfonso
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosMary Sanchez
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacionMichele André
 

Tendances (20)

Revista Algoritmos
Revista AlgoritmosRevista Algoritmos
Revista Algoritmos
 
Estructuras algoritmicas representación
Estructuras algoritmicas representaciónEstructuras algoritmicas representación
Estructuras algoritmicas representación
 
Revista Algoritmos
Revista AlgoritmosRevista Algoritmos
Revista Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Introducción a la Programación
Introducción a la ProgramaciónIntroducción a la Programación
Introducción a la Programación
 
Algoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacionAlgoritmo variables, constantes, tipos de datos y asignacion
Algoritmo variables, constantes, tipos de datos y asignacion
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
U7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOSU7.resumen.ANALISIS DE LOS ALGORITMOS
U7.resumen.ANALISIS DE LOS ALGORITMOS
 
algoritmo
algoritmoalgoritmo
algoritmo
 
estructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientrasestructuras algoritmicas ciclicas mientras
estructuras algoritmicas ciclicas mientras
 
Generalidades algoritmos
Generalidades algoritmosGeneralidades algoritmos
Generalidades algoritmos
 
Tutorial algoritmo expresiones
Tutorial algoritmo expresionesTutorial algoritmo expresiones
Tutorial algoritmo expresiones
 
Algoritmos Y Programas Unidad1
Algoritmos Y  Programas Unidad1Algoritmos Y  Programas Unidad1
Algoritmos Y Programas Unidad1
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Clases 2 dfd y basico 2011
Clases 2  dfd y basico 2011Clases 2  dfd y basico 2011
Clases 2 dfd y basico 2011
 
Algoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salidaAlgoritmos de entrada, proceso y salida
Algoritmos de entrada, proceso y salida
 
Entidades Primitivas Para Algoritmos
Entidades Primitivas Para AlgoritmosEntidades Primitivas Para Algoritmos
Entidades Primitivas Para Algoritmos
 
Unidad II
Unidad IIUnidad II
Unidad II
 
Tutorial algoritmo representacion
Tutorial algoritmo representacionTutorial algoritmo representacion
Tutorial algoritmo representacion
 

En vedette

II corte software libre administracion
II corte software libre administracionII corte software libre administracion
II corte software libre administraciontammyrodriguez2010
 
Preguntas cuestionario i corte
Preguntas cuestionario i cortePreguntas cuestionario i corte
Preguntas cuestionario i cortetammyrodriguez2010
 
II corte ejercicios ejercicios de windows XP y teoria
II corte ejercicios ejercicios de windows XP y teoriaII corte ejercicios ejercicios de windows XP y teoria
II corte ejercicios ejercicios de windows XP y teoriatammyrodriguez2010
 
Algoritmo minimax
Algoritmo minimaxAlgoritmo minimax
Algoritmo minimaxJeffoG92
 
Preguntas cuestionario I corte computacion
Preguntas cuestionario I corte computacionPreguntas cuestionario I corte computacion
Preguntas cuestionario I corte computaciontammyrodriguez2010
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clasetammyrodriguez2010
 
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieria
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieriaIi y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieria
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieriatammyrodriguez2010
 

En vedette (7)

II corte software libre administracion
II corte software libre administracionII corte software libre administracion
II corte software libre administracion
 
Preguntas cuestionario i corte
Preguntas cuestionario i cortePreguntas cuestionario i corte
Preguntas cuestionario i corte
 
II corte ejercicios ejercicios de windows XP y teoria
II corte ejercicios ejercicios de windows XP y teoriaII corte ejercicios ejercicios de windows XP y teoria
II corte ejercicios ejercicios de windows XP y teoria
 
Algoritmo minimax
Algoritmo minimaxAlgoritmo minimax
Algoritmo minimax
 
Preguntas cuestionario I corte computacion
Preguntas cuestionario I corte computacionPreguntas cuestionario I corte computacion
Preguntas cuestionario I corte computacion
 
Ii corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_claseIi corte algoritmo_tr_1era_clase
Ii corte algoritmo_tr_1era_clase
 
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieria
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieriaIi y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieria
Ii y iii corte ejercicios de algoritmos_secuenciales_y_condicionales_ingenieria
 

Similaire à Unidad II

algoritmos 7 4p.pptx
algoritmos 7 4p.pptxalgoritmos 7 4p.pptx
algoritmos 7 4p.pptxmartin298577
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxyvillada8
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxDanielHidalgo92
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacionAndrsTutillo1
 
Introduccion a la logica de programacion
Introduccion a la logica de programacionIntroduccion a la logica de programacion
Introduccion a la logica de programacionnmqy28
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxTIRZOANTONIOMEDINACA1
 
Unidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasUnidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasAverkleyCH
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadorarestradal
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadorarestradal
 
Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoClariza
 
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...FabianaMartinez39
 
Razonamiento algoritmico
Razonamiento algoritmicoRazonamiento algoritmico
Razonamiento algoritmicopaty_cursocompu
 
Conceptos basicos de programacion
Conceptos basicos de programacion Conceptos basicos de programacion
Conceptos basicos de programacion Rika Furude
 

Similaire à Unidad II (20)

algoritmos 7 4p.pptx
algoritmos 7 4p.pptxalgoritmos 7 4p.pptx
algoritmos 7 4p.pptx
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
 
informatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptxinformatica_iv_-_unidad_2._algoritmos.pptx
informatica_iv_-_unidad_2._algoritmos.pptx
 
algoritmos
algoritmosalgoritmos
algoritmos
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Fundamentos de programacion
Fundamentos de programacionFundamentos de programacion
Fundamentos de programacion
 
Resumen prgramacion
Resumen prgramacionResumen prgramacion
Resumen prgramacion
 
Introduccion a la logica de programacion
Introduccion a la logica de programacionIntroduccion a la logica de programacion
Introduccion a la logica de programacion
 
Algortimos jury
Algortimos juryAlgortimos jury
Algortimos jury
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptxAlgoritmos (DFD, Pseudocodigos).pptx
Algoritmos (DFD, Pseudocodigos).pptx
 
Diagrama
DiagramaDiagrama
Diagrama
 
Unidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades PrimitivasUnidad II Datos y Entidades Primitivas
Unidad II Datos y Entidades Primitivas
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 
Solución de problemas aplicando la computadora
Solución de problemas aplicando la computadoraSolución de problemas aplicando la computadora
Solución de problemas aplicando la computadora
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Algoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujoAlgoritmos y diagramas_de_flujo
Algoritmos y diagramas_de_flujo
 
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...
Algoritmo, Pseudocódigo, Diagramas de Flujo y Metodología para resolver probl...
 
Razonamiento algoritmico
Razonamiento algoritmicoRazonamiento algoritmico
Razonamiento algoritmico
 
Conceptos basicos de programacion
Conceptos basicos de programacion Conceptos basicos de programacion
Conceptos basicos de programacion
 

Unidad II

  • 1. Unidad II. Representación de Algoritmo Licda Leidy Mendoza
  • 2. Unidad II. Representación de Algoritmo 1. DEFINICIÓN DE UN ALGORITMO Un algoritmo es un método para resolver un problema. Debe presentarse como una secuencia ordenada de instrucciones que siempre se ejecutan en tiempo finito y con una cantidad de esfuerzo también finito. Los algoritmos tienen un inicio y un final, son únicos y deben ser fácilmente identificables. Es un Método para resolver un problema mediante una serie de pasos precisos, definidos y finitos. Un algoritmo es una serie de operaciones detalladas, en otras palabras un algoritmo es un conjunto de reglas para resolver una cierta clase de problemas y se puede formular de muchas formas con el cuidado de que no exista ambigüedad. También lo podemos definir como: 2. CARACTERÍSTICAS DE LOS ALGORITMOS Todo algoritmo debe cumplir: * Preciso (debe indicar el orden de realización en cada paso y no puede tener ambigüedad). * Definido (si se sigue dos veces, obtiene el mismo resultado cada vez) * Finito (tiene fin; un número determinado de pasos). * Debe ser Sencillo. * Eficiente y Efectivo. * Todo Algoritmo debe tener cero ó mas entradas. * Debe tener al menos una salida 3. COMPONENTES DE UN ALGORITMO: Un algoritmo está compuesto por tres componentes: Licda Leidy Mendoza
  • 3. Unidad II. Representación de Algoritmo Un ejemplo de un algoritmo es la preparación de una receta de comida (no computacional). computacional) - Entrada : ingredientes y utensilios empleados. - Proceso : elaboración de la receta en la cocina. - Salida : terminación del plato. Ejemplo de un algoritmo computacional computacional: Determinar la suma de acuerdo a la siguiente fórmula: Suma = N*(N+1) / 2 Entrada: Número entero (N) Proceso: cálculo matemático Suma = N*(N+1) / 2 Salidas: resultado de la Suma Licda Leidy Mendoza
  • 4. Unidad II. Representación de Algoritmo 4. ELEMENTOS DE UN ALGORITMO 4.1 CONSTANTES Y VARIABLES Las constantes son datos cuyos valores no cambian, pero existen datos cuyos valores sí varían durante la ejecución del programa, a éstos los llamamos variables. En la mayoría de los lenguajes de programación se permiten diferentes tipos de constantes: enteras, reales, caracteres y boolean o lógicas, quienes representan datos de estos tipos. Sueldominimo= 1586 su valor no cambia durante la ejecución del programa Sueldototal= Sueldominimo + (ventas*0.3) el sueldo total va cambiar de acuerdo a las ventas realizdas A las variables o constante se les identifica por los atributos siguientes: Nombre que se le asigna y tipo que describe el uso de la variable. Sueldominimo: entero Nombre que se le asigna Tipo de datos de las a la variable o constante Variables o constante TIPOS DE DATOS Las variables o constante pueden ser de varios tipos. Datos Numéricos: Se llama así al conjunto de valores numéricos y son representados de distintas formas: - Tipo de dato numérico entero (integer): El tipo entero es un subconjunto finito de los números enteros. Ej: 5, 6, -15, 4, 2.480 - Tipo de dato numérico real (real): El tipo real consiste en un subconjunto de los números reales. Los números reales siempre tienen un punto decimal y pueden ser positivos o negativos. Los números reales constan de una parte entera y una decimal. Ej: 0.006, 9.3632, 6471.71, 3.0, -8.17, -63.3387 Datos Lógicos (booleanos): Conocidos también como datos, este tipo de dato es aquel que sólo admite dos tipos de valores, los que son verdadero (true) o falso (false). Los dos son usados para la representación de alternativas (si/no) que se dan según la condición que se plantee, es decir, Licda Leidy Mendoza
  • 5. Unidad II. Representación de Algoritmo si se quiere que el programa evalúe una condición determinada, ésta puede ser verdadera o falsa, dependiendo de las reglas que se hayan planteado anteriormente. Conocidos también como datos booleanos, este tipo de dato es aquel que sólo admite dos tipos de valores, los que son verdadero (true) o falso (false). Los dos son usados para la representación de alternativas (si/no) que se dan según la condición que se plantee, es decir, si se quiere que el programa evalúe una condición determinada, ésta puede ser verdadera o falsa, dependiendo de las reglas que se hayan planteado anteriormente. Datos Tipo Carácter: Los datos de este tipo forman un conjunto finito y ordenado que la computadora puede reconocer. Un dato tipo carácter contendrá solamente un carácter. No existe un estándar en lo que respecta al reconocimiento de caracteres, pero las computadoras pueden reconocer los siguientes caracteres: Caracteres alfabéticos (A,B,C,D,.....) Caracteres numéricos (1,2,3,4, ......) Caracteres especiales (+, -, *, /,., ;,<, >, ..., etc.) Datos tipo Cadena: son el tipo Cadena (string). Estos se forman por una sucesión de caracteres, encontrándose delimitados por una comilla, con esto se entiende entonces que el tamaño que tendrá una cadena o su longitud ´hola Rebeca´ ´28 de Julio de 1821´ ´Sr. Alvarado´ 2. EXPRESIONES Son la combinación de constantes, variables, símbolos de operación, paréntesis y nombres de funciones especiales, idea que puede ser utilizada en notaciones de matemática tradicional. - aritméticas resultado tipo numérico. - relacionales resultado tipo lógico. - lógicas resultado tipo lógico. - carácter resultado tipo carácter. Expresiones Aritméticas Estas expresiones son análogas a las fórmulas matemáticas. Las variables y constantes son numéricas (real o entera) y las operaciones son las aritméticas. + suma - resta * Multiplicación / división **, ^ exponenciación Div división entera mod módulo o resto Licda Leidy Mendoza
  • 6. Unidad II. Representación de Algoritmo 6.2. Reglas de Prioridad Cuando existen expresiones que tienen más de dos operandos, se requiere de reglas matemáticas que permitan determinar el orden de las operaciones y éstas, son reglas de prioridad o precedencia y son: - Operaciones que están encerradas entre paréntesis se evalúan primero. Si existen diferentes paréntesis anidados (interiores unos a otros), las expresiones más internas se evalúan primero. - Las operaciones aritméticas dentro de una expresión generalmente suelen seguir el siguiente orden de prioridad: 1. Operador exponencial (^, bien **) 2. Operadores *, / 3. Operadores +, -. 4. Operadores div y mod 7. REPRESENTACION DE ALGORITMO: Existen muchas Técnicas para representar un algoritmo, las más conocidas para el desarrollo de un algoritmo son el Pseudocódigo y el Diagrama de flujo o flujograma. 7.1 PSEUDOCODIGO: Pseudocódigo: Es la representación de un algoritmo en una secuencia lógica de actividades, que llevarán en conjunto a la solución de un problema. Serie de normas léxicas y gramaticales parecidas a la mayoría de los lenguajes de programación, conocido como lenguaje falso. 7.2 DIAGRAMAS DE FLUJO: Diagrama de Flujo: Son símbolos gráficos que representan a un algoritmo. Estos símbolos están estandarizados, teniendo cada uno un significado universal. Símbolo Se usa para representar Inicio y final del diagrama de flujo Se emplea para representar entrada de datos, generalmente, desde el teclado, Algunos autores también la usan para representar salida de datos. Representa un proceso. Dentro del símbolo se indica la fórmula que se va a utilizar: Representa una selección simple. La condición se establece dentro de la figura, si ésta se cumple, ejecuta las Licda Leidy Mendoza
  • 7. Unidad II. Representación de Algoritmo tareas laterales marcadas con “Sí”, de no ser así, ejecuta la del “No”. Al terminar la rutina, se encuentran los caminos para continuar el proceso. Representa la salida de datos. Imprime los resultados o los muestra en la pantalla. Conecta dos secciones del diagrama de flujo en la misma página. Indican la dirección del flujo del diagrama. Resolver el ejemplo anterior en Pseudocódigo y en diagrama de flujo Inicio Suma, N: entero Ingresar N Suma = N(N+1)/2 “La suma es: “ suma Fin Programa Suma Declaración de Variables N: entero:; Cuerpo del Programa Imprimir (“Ingresar un número entero:”, N) Leer (N) Calcular suma por fórmula: Suma = N*(N+1)/2 Licda Leidy Mendoza
  • 8. Unidad II. Representación de Algoritmo “La suma es: “ suma Fin Programa Suma Declaración de Variables Num, Num2, total; Cuerpo Imprimir (“Ingresar un numero 1:”, N1) Leer (N1) Imprimir (“Ingresar un numero: ”, N2”) Leer (N2) Total=N1+N2; Imprimir (“La suma es, ” , total) Fin 8. Metodología Para Solución De Problemas: La solución de un problema requiere ciertos pasos, dispuestos de tal forma que cada uno es dependiente de los anteriores, lo cual indica que se trata de un proceso complementario y por lo tanto cada paso exige el mismo cuidado en su elaboración. Los siete pasos de la metodología son los siguientes: 1. Definición del problema 2. Análisis de la solución 3. Diseño de la solución 4. Codificación 1.2.1 Definición del problema Es el enunciado del problema, el cual debe ser claro y completo. Es fundamental conocer y delimitar por completo el problema, saber qué es lo se desea realice la computadora, mientras esto no se conozca del todo, no tiene caso continuar con el siguiente paso. .2.2 Análisis de la solución Consiste en establecer una serie de preguntas acerca de lo que establece el problema, para poder determinar si se cuenta con los elementos suficientes para llevar a cabo la solución del mismo, algunas preguntas son: ¿Con qué cuento? Cuáles son los datos con los que se va a iniciar el proceso, qué tenemos que proporcionarle a la computadora y si los datos con los que cuento son suficientes para dar solución al problema. ¿Qué hago con esos datos? Licda Leidy Mendoza
  • 9. Unidad II. Representación de Algoritmo Una vez que tenemos todos los datos que necesitamos, debemos determinar qué hacer con ellos, es decir que fórmula, cálculos, que proceso o transformación deben seguir los datos para convertirse en resultados. ¿Qué se espera obtener? Que información deseamos obtener con el proceso de datos y de qué forma presentarla; en caso de la información obtenida no sea la deseada replantear nuevamente un análisis en los puntos anteriores. Es recomendable que nos pongamos en el lugar de la computadora y analicemos que es lo que necesitamos que nos ordenen y en que secuencia para producir los resultados esperados. 1.2.3 Diseño de la solución Una vez definido y analizado el problema, se procede a la creación del algoritmo (Diagrama de flujo ó pseudocódigo), en el cual se da la serie de pasos ordenados que nos proporcione un método explícito para la solución del problema. 1.2.4 Codificación Consiste en escribir la solución del problema (de acuerdo al pseudocódigo); en una serie de instrucciones detalladas en un código reconocible por la computadora; es decir en un lenguaje de programación (ya sea de bajo o alto nivel), a esta serie de instrucciones se le conoce como PROGRAMA. Licda Leidy Mendoza