Sunteți pe pagina 1din 12

Unidad 1: Algoritmo y Programas

o Concepto de Algoritmos y Programas.


o Lenguaje algorítmico y de programación.
o Partes de un algoritmo.
o Características y elementos para construir un algoritmo.
o Formas de representar un algoritmo: Lenguaje Natural, pseudocódigo y
diagrama de flujo.
o Traza de un algoritmo (corrida en frío).
Unidad 2: Estándares de Calidad en el Diseño de Algoritm os y
Construcción de Programas
o Introducción a los estándares de calidad.
o Forma de trazabilizar un algoritmo.
o Formas y técnicas de documentar algoritmos y programas.
o Introducción a la elaboración del manual del sistema, usuario y programas.
o Técnicas de escritura y pruebas de algoritmos y programas.
Unidad 3: Datos y Entidades Primitivas
o Concepto y diferencia entre dato e información, tipos de datos.
o Los Operadores: Concepto y tipos de operadores.
o Las Expresión: concepto, tipos y evaluación de expresiones, Los Identificadores:
Concepto, Reglas de escritura, las variables: clasificación de variables según su
contenido (numéricas, lógicas y alfanuméricas) y su uso (de trabajo, contador y
acumulador), constantes.
Unidad 4: Metodología para el Análisis y Planteamiento de Problemas
o Identificación del Problema.
o Identificación de los datos necesarios (entradas).
o Identificación de los datos a obtener (salidas).
o Descripción de las operaciones a utilizar (cálculos).
o Descripción de los pasos para llegar a la solución (procesos).
Unidad 5: Programación Estructurada
o Teoremas de la programación estructurada.
o Estructuras de control:
 Estructuras de decisión: concepto, tipos y sintaxis: Condicional, simples,
dobles, múltiples, anidadas y selectiva.
 Estructuras de control iterativas: Concepto y tipos, Ciclo Mientras y Repetir:
sintaxis y métodos para salir del ciclo. Ciclo Para: Sintaxis. Ciclos anidados.
Unidad 6: Programación Modular
o Funciones y procedimientos: Definición y Declaración.
o Ámbito de variables: Datos locales y globales.
o Llamada de una función y pase d parámetros.
Unidad 7: Técnicas de Mantenim iento de Programas
o Técnica de prueba caja negra.
o Reingeniería de programas.

En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas,


un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-
Juarismi)1 es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas
que permite llevar a cabo una actividad mediante pasos sucesivos que no generen dudas a
quien deba hacer dicha actividad.2 Dados un estado inicial y una entrada, siguiendo los pasos
sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de
estudio de la algoritmia.1
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos
ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las
instrucciones que recibe un trabajador de su patrón. Algunos ejemplos en matemática son
el algoritmo de multiplicación, para calcular el producto, el algoritmo de la división para
calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común
divisor de dos enteros positivos, o el método de Gauss para resolver un sistema de
ecuaciones lineales.
En términos de programación, un algoritmo es una secuencia de pasos lógicos que permiten
solucionar un problema.
Un programa informático o programa de computadora es una secuencia de instrucciones,
escritas para realizar una tarea específica en una computadora.1 Este dispositivo requiere
programas para funcionar, por lo general, ejecutando las instrucciones del programa en
un procesador central.2 El programa tiene un formato ejecutable que la computadora puede
utilizar directamente para ejecutar las instrucciones. El mismo programa en su formato
de código fuente legible para humanos, del cual se derivan los programas ejecutables (por
ejemplo, compilados), le permite a un programador estudiar y desarrollar sus algoritmos. Una
colección de programas de computadora y datos relacionados se conoce como software.
Generalmente, el código fuente lo escriben profesionales conocidos como programadores de
computadora.3 Este código se escribe en un lenguaje de programación que sigue uno de los
siguientes dos paradigmas: imperativo o declarativo, y que posteriormente puede ser
convertido en un archivo ejecutable(usualmente llamado un programa ejecutable o un binario)
por un compilador y más tarde ejecutado por una unidad central de procesamiento. Por otra
parte, los programas de computadora se pueden ejecutar con la ayuda de un intérprete, o
pueden ser empotrados directamente en hardware.
De acuerdo a sus funciones, los programas informáticos se clasifican en software de
sistema y software de aplicación. En las computadoras de 2015, al hecho de ejecutar varios
programas de forma simultánea y eficiente, se lo conoce como multitarea.

Un lenguaje de programación es un lenguaje formal diseñado para realizar procesos que


pueden ser llevados a cabo por máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una
máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.1
Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su
estructura y el significado de sus elementos y expresiones. Al proceso por el cual se
escribe, se prueba, se depura, se compila (de ser necesario) y se mantiene el código
fuente de un programa informático se le llama programación.
También la palabra programación se define como el proceso de creación de
un programa de computadora, mediante la aplicación de procedimientos lógicos, a través de
los siguientes pasos:

 El desarrollo lógico del programa para resolver un problema en particular.


 Escritura de la lógica del programa empleando un lenguaje de programación específico
(codificación del programa).
 Ensamblaje o compilación del programa hasta convertirlo en lenguaje de máquina.
 Prueba y depuración del programa.
 Desarrollo de la documentación.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y
'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y
a otros más, como por ejemplo HTML (lenguaje para el marcado de páginas web que no es
propiamente un lenguaje de programación, sino un conjunto de instrucciones que permiten
estructurar el contenido de los documentos).
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo
deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de
circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al
lenguaje humano o natural. Una característica relevante de los lenguajes de programación es
precisamente que más de un programador pueda usar un conjunto común de instrucciones
que sean comprendidas entre ellos para realizar la construcción de un programa de forma
colaborativa.

Lenguajes Algoritmicos
Es una serie de símbolos y reglas que se utilizan para describir de manera explícita un
proceso.
TiposdeLenguajesAlgoritmicos
•Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo
(diagrama de flujo).

•No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un
algoritmo (pseudocódigo).
Diagrama de flujo
Se basan en la utilización de diversos símbolos para representar operaciones especificas.
Se les llama diagramas de flujo porque los símbolos utilizados se conectan por medio de
flechas para indicar la secuencia de la operación.

Diagramas estructurados (Nassi-Schneiderman)

•El diagrama estructurado N-S también conocido como diagrama de chapin es como un
diagrama de flujo en el que se omiten las flechas de unión y las cajas son contiguas. Las
acciones sucesivas se pueden escribir en cajas sucesivas y como en los diagramas de
flujo, se pueden escribir diferentes acciones en una caja.
•Los diagramas estructurados, son una técnica que permite formular algoritmos
mediante una representación geométrica y de asignación de espacios de un bloque
específico.
Pseudocodigo

• Mezcla de lenguaje de programación y español (o ingles o cualquier otro idioma) que


se emplea, dentro de la programación estructurada, para realizar el diseño de un
programa. En esencial, el pseudocodigo 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 pseudocodigo utiliza palabras que indican el
proceso a realizar.

Clase sumar_numeros
Metodo Ppal()
real N1,N2,SUMA
IMPRIMA “DIGITE PRIMER NUMERO”
LEA N1
IMPRIMA “DIGITE SEGUNDO NUMERO”
LEA N2
SUMA= N1+ N2
IMPRIMA “LA SUMA ES”, SUMA
Fin Metodo
Fin Clase

partes y elementos para la construcción de


un algoritmo
1.1. PARTES DE UN ALGORITMO

Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir: entrada, proceso y
salida.

Donde:
ENTRADA

Corresponde al insumo, a los datos necesarios que requiere el proceso para ofrecer los resultados esperados.

PROCESO

Pasos necesarios para obtener la solución del problema o la situación planteada.

SALIDA

Resultados arrojados por el proceso como solución.

En el ejemplo del algoritmo de la sumatoria de los dos números, tenemos:

ENTRADA

Valores de de las variables A y B.

PROCESO

Asignar a la variable Suma, el valor de A mas el valor de B.

SALIDA

Impresión del valor de la variable Suma, que contiene la sumatoria

de los valores de A y B.

1.2. CARACTERÍSTICAS DE LOS ALGORITMOS

Las características fundamentales que debe cumplir un algoritmo son:

PRECISIÓN

Indica el orden de realización de cada paso dentro del proceso.

DEFINICION

Indica la exactitud y consistencia de los pasos descritos en el proceso,

si el algoritmo se prueba dos veces, en estas dos pruebas, se debe

obtener el mismo resultado.

FINITUD

Indica el número razonable de pasos, los cuales deben conllevar a la finalización del proceso y producir un
resultado en un tiempo finito.
Al diseñar un algoritmo se debe tener presente las características de precisión, definición y
finitud.

Visualicemos estas características a través del siguiente ejemplo:

Ejemplo: Algoritmo para hacer una torta

Entrada: Harina de trigo, mantequilla, huevos, sal, azúcar

Proceso: 1.- Unir la mantequilla con el azúcar

2.- Batir hasta lograr consistencia cremosa

3.- Agregar harina de trigo, huevos, sal y azúcar

4.- Batir hasta que esponje

5.- Precalentar el horno, en 250 °, y enmantequillar tortera

6.- Una vez logre la consistencia de esponjado, colocar en la tortera

7.- Introducir en el horno por espacio de 45 minutos

Salida:

Torta

Siguiendo el ejemplo recuerde determinar las instrucciones de Entrada, Proceso y Salida.

Según el ejercicio anterior, se puede determinar que el algoritmo para hacer torta, cumple con
las características fundamentales de los algoritmos. Es decir, ¿Es preciso?, ¿Es definido?, ¿Es
finito?, razona tus respuestas.

􀀢Ejercicio: Realice un algoritmo para la elaboración de pan

1.3. ELEMENTOS PARA LA CONSTRUCCIÓN DE UN ALGORITMO

Definíamos algoritmo como un conjunto de pasos conducentes a resolver un problema, cada


uno de esos pasos, corresponde a lo que se denomina en el programa, una instrucción, aunque
pudiera darse que, en una instrucción se junten dos o más pasos.

Aprender a realizar un algoritmo se fundamenta en lo que se persigue lograr con su desarrollo;


debido a que no existe un método único para resolver problemas se estudian diferentes métodos
de resolución o modelos de construcción para lograr la generación del resultado deseado.

Esto nos lleva a reestructurar el concepto de algoritmo, como un conjunto de instrucciones o


pasos en los que se describe su inicio, desarrollo o proceso y salida o resultado del algoritmo;
elaborados para lograr resolver un problema.
Dado que un algoritmo es un conjunto de instrucciones elaboradas con la finalidad de resolver
un problema, a continuación se describen los elementos que se utilizan en la construcción de
una instrucción.

Instrucción o sentencia

Dependiendo del origen del material instruccional se habla de instrucción o sentencia; ésta,
define una acción o un mandato que se debe realizar, esa acción o mandato se representa a
través de un comando o lo que es lo mismo palabras reservadas de un lenguaje de
programación en particular. Una instrucción esta compuesta por uno o más comandos (acción),
datos, símbolos, variables o constantes y expresiones, que en conjunto representan una
instrucción o sentencia.

Ejemplo de instrucción: En la construcción de los programas se estila utilizar una instrucción por línea. Así
mismo, se utiliza la identación, que no es más que la alineación de aquellas instrucciones dentro de las estructuras
que las contienen de manera ordenada que permita visualizar el inicio y fin de cada bloque de instrucciones.

Si ASISTIO =”SI” Entonces

Leer Sueldo,

Asignar Sueldo = Sueldo + HoraExtra

Fin Si

Donde:

SI

Representa una estructura condicional utilizada para establecer preguntas

o programar ciertas condiciones

ASISTIO

Nombre de una Variable lógica que puede obtener sólo dos valores “SI”

o “NO”. En el ejemplo se programa la condición de la variables cuando

es “SI”

ENTONCES

Parte de la instrucción o estructura condicional

LEER SUELDO

Instrucción utilizando el comando cuya acción es la lectura de un campo

o dato
Asignar SUELDO=

SUELDO+HORAEXTRA

Instrucción de asignación, permite asignar o calcular el valor que adquirirá

una variable

Fin SI

Cierra la estructura condicional Si –Entonces –Fin Si

Comandos o palabras reservadas

Todos los lenguajes, naturales o computacionales, tienen palabras que denotan una acción. Los
comandos no son más que acciones que debe interpretar y ejecutar el computador. Cada
comando conserva una sintaxis determinada, es decir la forma de utilizarlo. Los lenguajes
computacionales tienen en su repertorio comandos dirigidos al procesamiento de archivos y
datos, entre ellos: Leer, Calcular, Asignar, Clasificar, Imprimir.

Datos

Los datos son símbolos que se convierten en condiciones, hechos, situaciones o valores. Un
dato puede significar un número, una letra, un signo ortográfico o cualquier símbolo que
represente una cantidad, una medida, una palabra o una descripción. La importancia de los
datos está en su capacidad de asociarse dentro de un contexto para convertirse en información.
Es decir, por si mismos los datos no tienen capacidad de comunicar un significado y por tanto
no pueden afectar el comportamiento de quien los recibe. Para ser útiles, los datos deben
convertirse en información que ofrezca un significado, conocimiento, ideas o conclusiones.

TIPOS DE DATOS

Como se describió anteriormente, un dato es un campo que puede convertirse en información.

Existen datos simples (sin estructura) y compuestos (estructurados).

Los datos simples son los siguientes

– Numéricos (Reales, Enteros)

– Lógicos

– Carácter (Char, String)

Los tipos de datos simples son:

Tipos de datos
Numéricos Lógicos Carácter

Reales Enteros Char String

Ejemplo. Ejemplos de tipos de datos simples

Tipo de datos Características

Ejemplos

Numéricos Enteros

Los números enteros son los números naturales positivos y negativos que conocemos.

25

146

-456

Numéricos Reales

Los números reales, son los números que tienen

parte decimal.

0.56

1.00

25.13

148.45

-456.23

Lógicos o boléanos

Son aquellos datos cuyos únicos valores sólo pueden

ser: Verdadero (V) o Falso (F), puede encontrarse,

Verdadero (True) o Falso (False). Se utiliza

para representar las opciones (si/no) a determinadas


condiciones.

Nacionalidad = “Venezolano”

(S/N)?

Carácter o Char

Su valor lo comprenden todos los caracteres alfabéticos,

mayúsculas y minúsculas (A – Z), numéricos

(0 – 9) y símbolos especiales (#,@,%,&).

Carácter String o

cadena

Su valor esta representado por un conjunto de caracteres.

“Abril”

“Reporte Anual de Fallas

Técnicas”

“1º de mayo, Día del

Trabajador”

Traza de un algoritmo (corrida en frío)


La traza de un algoritmo se puede definir como la ejecución manual de forma secuencial de las
sentencias que lo componen. La traza de un algoritmo (o programa) indica la secuencia de
acciones (instrucciones) de su ejecución, así como, el valor de las variables del algoritmo (o
programa) después de cada acción (instrucción).

La función principal que posee realizar la traza de un algoritmo es la de comprobar que éste
funciona correctamente o para realizar la etapa de depuración en la que se intenta corregir errores,
simplificar el algoritmo al máximo e incrementar su eficacia y velocidad.

S-ar putea să vă placă și