Lectura N2 Tdda

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 14

Contenido

1. Análisis de un problema...................................................................................................... 3
2. Entidades primitivas para el desarrollo de algoritmos................................................ 4
3. Flujogramas............................................................................................................................ 9
4. Pseudocódigo......................................................................................................................... 11
Bibliografía................................................................................................................................... 13

2
1. Análisis de un problema

Para la solución de un problema general, en el anterior núcleo de aprendizaje hemos observado una
estructura para el desarrollo de una actividad, en este apartado nos concentraremos en la solución
de problemas encaminados a la estructura que se debe realizar para poder resolverlos con el uso
de ordenador, para llegar a este debemos identificar una serie de fases propias de la resolución de
problemas por computadora.

Reconocimiento
del objetivo.

Analisís de un
problema
Establecer un
proceso.

Recoconocimiento
de resultados.

Cuando nos referimos a las fases para la construcción de un algoritmo que se ajuste a modelos
computacionales, los términos generales de la solución de un problema adquieren una definición más
precisa en el campo de la computación de esta manera aclararemos la idea de cada una de las fases
antes mencionadas.

Reconocimiento de un objetivo: como su nombre lo indica es establecer el fin del desarrollo del
algoritmo, identificar cual va ser la solución final que se quiere o producto.

Identificación de variables: este paso es en el cual identificamos los datos que nos brinda el
problema para poder empezar a formular un camino de solución, de esta manera podemos establecer
variables y constantes que nos permiten poder crear relaciones de los datos que tenemos y los que
podamos no tener explícitos en el desarrollo de un problema.

3
Establecer un proceso: si bien todas las fases son importantes, esta fase es el desarrollo general
del problema, este desarrollo debe ser estructurado desde la lógica teniendo en cuenta los datos que
tenemos y el objetivo planteado del problema, los procesos de desarrollo de algoritmos en el campo
computacional obedecen a estructuras de solución que más adelante desarrollaremos.

Reconocimiento de resultados: en el reconocimiento de resultados validaremos las fases anteriores


contrastando con el objetivo que identificamos anteriormente para definir si el algoritmo cumplió a
cabalidad con el desarrollo del problema y su objetivo.

Identificaremos las fases antes descritas por medio del siguiente ejemplo:

Problema: Dados la base y la altura de un rectángulo halle su área.

Reconocimiento Identificación de Establecer un


de un objetivo variables proceso

Hallar el area de Datos conocidos El área de un


un rectángulo base y altura rectangulo es b*h/2

El reconocimiento de resultados se produce después de realizar una prueba del algoritmo en este
caso bastaría con sustituir valores numéricos para la base y la altura y desarrollar la fórmula de área,
se entiende la construcción del análisis y se valida que el algoritmo es correcto.

2. Entidades primitivas para el


desarrollo de algoritmos

Basado en el análisis del problema debemos ajustar la escritura de los algoritmos de tal forma que
sean expresiones válidas para la computadora de esta manera debemos reconocer los tipos entradas
que se pueden usar en un algoritmo.

4
Importante: Razon:

una vez el algortimo este diseñado De esta manera la escritura del


(flujograma o Pseudocódigo) servira algortimo debe seguir parametros
como base para traducirlo a un que sean compatibles cuando
lenguaje de programación donde se la computadora realice el
compilara dicho programa procesamiento del mismo.

Las escrituras de los algoritmos tienen las siguientes características.

Datos:

Son las formas de escritura que expresa la descripción de un objeto que se usara en el algoritmo,
pueden ser de varios tipos como un valor numérico 35 o un carácter escrito “hola”, el tipo de dato
determina la forma que va tomar una variable asociado a ella.

Tipos de Datos:

Datos

Simples

Númericos Lógicos Alfanuméricos Arreglos Registros

• Numéricos: Como su nombre lo indica son valores de cantidad, valores numéricos que dependen
su conjunto numérico (entero o real) dependiendo de la forma del algoritmo. Se pueden usar para
hacer operaciones entre números reales.

Ejemplo: 2, -5, 1001, etc.

• Lógicos: Son valores heredados del lenguaje lógico proposicional (verdadero o falso), se usan para
la comparación de dos proposiciones.

Ejemplo: V, F

5
• Alfanuméricos: Son valores textuales, o cadenas de texto que se deben colocar entre comillas
cumplen funciones descriptivas y no se pueden realizar operaciones matemáticas con ello.

Ejemplo: “hola”, “2010”, “el número es”.

Los datos pueden venir expresados en:

• Constantes
• Variables
• Expresiones
• Funciones

• Constantes: Son datos que mantienen su valor durante todo el algoritmo. Pueden ser de diferentes
tipos:

• Numéricas: Son valores numéricos del conjunto real el cual puede operar de forma
algebraica.
• Lógicas: valores de v o f.
• Carácter: son cadenas de texto, debe estar encerrados en comillas, pueden
representar un valor numérico.

• Variables: Son datos que pueden cambiar en el desarrollo del algoritmo, tienen la facultad de
guardar información de manera temporal para la ejecución del programa. Siempre debe tener un
nombre ya que así se identificará en la memoria del computador por el resto del programa.

Ejemplo:

Área = base x altura (si esto está dentro de un algoritmo, indica que la palabra área, base y
altura son variables que almacenaran valores numéricos cuando se desarrolle el programa)

• Contadores: Se utilizan para llevar el control del número de ocasiones en que se


realiza una operación o se cumple una condición. Con los incrementos generalmente
de uno en uno.

• Acumuladores: Forma que toma una variable y que sirve para llevar la suma
acumulativa de una serie de valores que se van leyendo o calculando progresivamente.
(Hernandez, 2010)

• Expresiones: las expresiones son combinaciones de constantes y variables que se operan, de


esta manera podemos distinguir como estructura de una expresión operador y operadores de la
siguiente manera.

6
Operadores aritméticos:

(+) suma
(-) resta
(*) multiplicación
(/) división
Mod (modulo o residuo)

^ (potenciación)

Ejemplo:

• 7+7 (expresión) 14 (resultado), el resultado puede ser guardado en una variable si se


quiere seguir trabajando con él.

• 2 mod 2 (expresión) 0 (resultado)

Recordar en las expresiones numéricas la jerarquía de operaciones úsales en matemáticas.

Operadores de relación:

(<) Menor que


(>) Mayor que
(=) Igual
(>=) Mayor o igual que
(<=) menor o igual que

Ejemplo:

• 3<2
• 3=3

Operadores lógicos: Operadores de la lógica proposicional.

(y), (and) disyunción.


(o), (or) conjunción.
(no), (not) negación.
Ejemplo:

• 30 > 20 y 30 > 40
• a<b or a < c

Funciones: En la mayoría de lenguajes de programación encontramos funciones matemáticas que


se están precargadas por defecto, de esta manera podemos hacer uso de ellas, escribiendo algún
comando para indicar dicha función, dependiendo el lenguaje de programación puede cambiar la
forma de introducir la función, pero de manera general las encontramos de esta forma:

7
Función Significado

RC(x) o RAIZ(x) Raíz cuadrada de x

ABS(x) Valor absoluto de x

LN(x) Logaritmo natural de x

EXP(x) Función exponencial de x

SEN(x) Seno de x

COS(x) Coseno de x

TAN(x) Tangente de x

ASEN(x) Arcoseno de x

ACOS(x) Arcocoseno de x

ATAN(x) Arcotangente de x

TRUNC(x) Parte entera de x

REDOND(x) Entero más cercano de x

AZAR(x) Entero aleatorio entre 0 y x-1

Después de describir la estructura para escribir un algoritmo solo no queda observar cómo elaborar
identificadores en el desarrollo de un problema y cuáles son sus reglas.
Identificadores: Los identificadores representan los datos de un programa (constantes, variables,
tipos de datos). Un identificador es una secuencia de caracteres que sirve para identificar una posición
en la memoria de la computadora, que nos permite ingresar a su contenido.

Reglas para formar un Identificador:

• Debe comenzar con una letra (A a Z, mayúsculas o minúsculas) y no deben contener espacios en
blanco.
• Letras, dígitos y caracteres como la subraya (…) están permitidos después del primer carácter.
• La longitud de identificadores puede ser de hasta 8 caracteres. (Hernandez, 2010)

8
3. Flujogramas

Es la representación gráfica de un algoritmo para la solución de un problema, muestra el flujo de


información y organiza los procesos de tal forma que sean sencillo para el reconocimiento de los
procesos dentro del algoritmo.

El flujograma tiene una serie de símbolos que indican un proceso y están unidos por línea de flujo
donde muestra el orden en el cual se está llevando a cabo el algoritmo.

Simbolo de inicio y fin del algortimo

Entrada y salida de datos

Simbolo de proceso para la asignacion de


variables cuando se realizan operaciones

Simbolo de decision

Simbolo para estructuras repetitivas

Salida de información por pantalla

Lineas de flujo , para la trasnmición de información

9
Reglas básicas para el diseño de Diagramas de Flujo:

• Se deben se usar solamente líneas de flujo horizontal y/o vertical.


• Se debe evitar el cruce de líneas utilizando los conectores.
• Se deben usar conectores solo cuando sea necesario.
• No deben quedar líneas de flujo son conectar.
• Se deben trazar los símbolos de manera que se puedan leer de arriba hacia abajo y de izquierda
a derecha.
• Todo texto escrito dentro de un símbolo deberá ser escrito claramente, evitando el uso de
muchas palabras. (Hernandez, 2010)

Ejemplo:

Dado el siguiente problema crear el flujograma que desarrolla el algoritmo.

Halle la hipotenusa de un triángulo rectángulo dado el valor de sus catetos.

Inicio

Leer
a cateto opuesto
b cateto adyacente

hipotenusa √(a2+b2)

Escribir
Hipotenusa

Fin

Si no damos cuenta el flujograma muestra la información de manera gráfica, donde existen dos
variables a y b que representan los catetos del triángulo, seguido a esto se realiza la formula (teorema
de Pitágoras) donde la palabra hipotenusa guarda el resultado, dado dos valores, y por ultimo muestra
el resultado.

10
4. Pseudocódigo

Mezcla de lenguaje de programación y español (o inglés o cualquier otro idioma) que se emplea, dentro
de la programación estructurada, para realizar el diseño de un programa. En esencial, el pseudocódigo
se puede definir como un lenguaje de especificaciones de algoritmos. Es la representación narrativa de
los pasos que debe seguir un algoritmo para dar solución a un problema determinado. El pseudocódigo
utiliza palabras que indican el proceso a realizar. (Hernandez, 2010)

Para la formulación de pseudocódigos se necesita emplear un lenguaje claro además de palabras


específicas que representan convenciones generales en la escritura de un algoritmo (leer, escribir,
inicio, fin, etc.)

El pseudocódigo se usa por practicidad respecto a la escritura en hoja de papel, de igual forma facilita el
no tener que representar graficas de flujo y se relaciona directamente con la escritura en algún lenguaje
de programación. Además, es mucho más sencillo realizar modificaciones en un pseudocódigo que un
flujograma, aunque el flujograma muestra espacialmente mejor la información.

Uso de algunas palabras claves utilizadas de modo general en lenguaje de programación:

Español Ingles

Inicio Begin

Fin End

Leer Read/input

Escribir Write/print

Si-entonces If-them

Desde For

Mientras While

Repetir Repeat

Parada, fin Stop, end

Es importante el uso de espacio tipo sangría para evidenciar los procesos y estructuras de solución en
un pseudocódigo.

11
Ejemplo:

Dado el siguiente problema crear un pseudocódigo que desarrolla el algoritmo.

Halle la hipotenusa de un triángulo rectángulo dado el valor de sus catetos.

Inicio
Leer (a, b)
Hipotenusa ← √(a^2 )+b^2
Escribir (Hipotenusa)
Fin

12
Bibliografía

• Hernandez, M. L. (2010). Obtenido de https://goo.gl/xS5Gkq

• Joyanes, L. (1996). Fundamentos de Programación. Madrid: Mc Graham Hill.

13
Politécnico Internacional, Institución de Educación Superior SNIES 4727 Resolución No. 4135 del 11 de nov. de 2004
Todos los derechos reservados ® 2018
Vigilado por el Ministerio de Educación Nacional.

14

También podría gustarte