Algoritmo
Algoritmo
Algoritmo
Pseudocódigo
La idea es una forma intermedia entre usar lenguaje natural y un
lenguaje de programación. No posee una forma estricta pero
normalmente se respeta:
Ejemplo de algoritmo:
Lenguajes Algorítmicos
Los algoritmos pueden describirse utilizando diversos lenguajes. Cada uno de estos
lenguajes permiten describir los pasos con mayor o menor detalle.
La clasificación de los lenguajes para algoritmos puede enunciarse de la siguiente
manera :
Lenguaje Natural.
Lenguaje Natural.
Es aquél que describe en español, para nuestro caso, los pasos a seguir utilizando un
vocabulario cotidiano. Se le conoce como lenguaje jergacuando se utilizan términos
especializados de una determinada ciencia, profesión o grupo.
Es aquél que se vale de diversos símbolos para representar las ideas o acciones a
desarrollar. Es útil para organizar las acciones o pasos de un algoritmo pero requiere de
etapas posteriores para implementarse en un sistema de cómputo.
Son aquéllos que están orientados a la solución de problemas que se definen de una
manera precisa. Generalmente son aplicados para la elaboración de fórmulas o métodos
científicos.
Diagrama de Flujo
Lenguajes Algoritmicos
Es una serie de símbolos y reglas que se utilizan para describir de
manera explícita un proceso.
¿QUE ES UN ALGORITMO?
¿QUE ES UN PROGRAMA?
LENGUAJE ALGORITMICO
Es una serie de símbolos y reglas que se utilizan para describir de manera
explícita un proceso. Teniendo en cuenta la forma en que describen el proceso,
existen dos tipos de lenguajes algorítmicos:
LENGUAJE DE PROGRAMACIÓN
PARTES DE UN ALGORITMO
Los algoritmos deben estar compuestos por tres partes principales que son
entrada, proceso y salida.
Entrada
Proceso
Salida
PRECISIÓN
indica el orden de realización de cada paso dentro del proceso.
DEFINICION
FINITUD
Comandos
Datos
Variables y contantes
Operadores
Datos
Constante
Es un dato que permanece con un valor, sin cambios, es decir constante, a lo largo
del desarrollo del algoritmo o a lo largo de la ejecución del programa. Se utiliza
cuando necesitamos que el valor de determinada variable se mantenga durante la
ejecución del programa o hasta tanto se requiera su cambio.
Variable
Es un dato cuyo valor puede variar a lo largo del desarrollo del algoritmo o en el
transcurso de la ejecución del programa.
Operadores aritméticos
Operadores relacionales
Operadores lógicos
Lenguaje natural
Pseudocódigo
Es una descripción de alto nivel de un algoritmo que emplea una mezcla de
lenguaje natural con algunas convenciones sintácticas propias de lenguajes
de programación, como asignaciones, ciclos y condicionales, aunque no está
regido por ningún estándar.
Diagramas de Flujo
Los criterios se definen como aquella condición que debe cumplir una determinada actividad, actuación o proceso para ser
considerada de calidad. Es decir qué perseguimos, cuál es el objetivo, qué pretendemos teniendo en cuenta aquellas características
que mejor representan (siempre que puedan medirse) lo que deseamos lograr.
Por lo general, los criterios de calidad parten de la combinación de las necesidades reales y de las demandas de los clientes, aunado al
conocimiento de las ofertas y productos de organizaciones de la competencia y las posibilidades que nuestra organización posee para
satisfacer esas necesidades y expectativas o para procurar en la medida de lo posible y/o aconsejable.
A diferencia de la sintaxis del lenguaje de programación, que son reglas fijas que obligatoriamente hay que seguir, un estilo de
programación está constituido por directrices que ayudan a obtener programas más legibles. Es por esto que, si bien no existen
estilos de programación absolutamente correctos o incorrectos, es aconsejable la adopción, de una manera sistemática, de un
conjunto de normas para la escritura de programas. Por ello, se proponen aquí algunas normas relativas a la denominación de los
elementos de los programas y de la estructuración de los mismos.
- Identación
Indentación es un anglicismo (de la palabra inglesa indentation) de uso común en informática y significa mover un bloque de texto
hacia la derecha insertando espacios o tabuladores para separarlo del texto adyacente, lo que en el ámbito de la imprenta se ha
denominado siempre como sangrado o sangría.
Se debe utilizar un único modelo de indentación a lo largo de todo el programa.
Los bloque de código (por .ejemplo, dentro de un bucle o el cuerpo de una función) deberán ir indentados.
Si un bloque de código está anidado dentro de otro bloque de código, el bloque más interno deberá ir indentado respecto al externo.
Para evitar que cuando haya múltiples bloques anidados, unos dentro de otros, el código sobrepase la anchura de la página, se
recomienda que el número de espacios de la indentación no sea excesivo.
Se separará cada una de las partes o bloques del programa con una línea en blanco.
Así mismo, se recomienda dejar un espacio en blanco antes de cada punto y coma ( ; ) utilizado para finalizar las sentencias de un
programa.
Documentación del programa
Consiste en describir por escrito a nivel técnico los procedimientos relacionados con el programa y su modo de uso. También se debe
documentar el programa para que sea más entendible.
Documentación interna
COMENTARIOS GENERALES DE LOS PROGRAMAS
Cada programa debe tener un comentario general, que debe aparecer al comienzo del mismo. En general, este comentario debe
contener la siguiente información:
· Versión:
ejemplo:
/*Nombre de programa: Calculadora
Librerias: #include<iostream.h>
#include<stdlib.h>
Fecha: 31 de mayo de 2006
Ciudad: Acarigua
Autor: Profesores de programación
Dependencia: Informática
Empresa: IUTEP
Versión 1.0
Una breve historia de todas las modificaciones realizadas, indicando el programador que las realiza y el motivo que las causó
Cada subprograma debe tener un comentario general, que debe aparecer cerca del comienzo del mismo. En general, este comentario
debe contener la siguiente información:
· Descripción: Un breve resumen de lo que hace el programa y del método que para ello utiliza.
· Parámetros: Descripción de los parámetros que se le pasan y que devuelve Si es relevante, también se indicará la siguiente
información:
· Condiciones de entrada
· Condiciones de salida:
· Enumeración de los subprogramas que le utilizan
· Una breve historia de todas las modificaciones realizadas, indicando el programador que las realizan y el motivo que las causó
Funcion Par
Recibe: Un valor de referencia
Devuelve Valor verdadero si cumple con el obejtivo
En lenguaje c++
string ListaObjetos::toString() const
{
string toret;
// Obtener las descripciones de los objetos
for(unsigned int i = 0; i < v.size(); ++i) {
toret += v[ i ]>
toString() + '\n';
}
// Formatear
StringMan::trimCnvt( toret );
StringMan::pasarMaysCnvt( toret );
return toret;
}
- Documentación de las especificaciones del programa :
Es importante disponer de documentación permanente. Deben registrarse todos los datos necesarios para el procesamiento
requerido. Esto conduce al siguiente paso del diseño del programa.
- Formas y Técnicas de documentar un Algoritmo y un programa:
-Documentación:
Todos los programas tienen errores y descubrirlos sólo es cuestión de tiempo y de que el
programa tenga éxito y se utilice frecuentemente
Todos los programas sufren modificaciones a lo largo de su vida, al menos todos aquellos que
tienen éxito.
Por una u otra razón, todo programa que tenga éxito será modificado en el futuro, bien por el
programador original, bien por otro programador que le sustituya. Pensando en esta revisión
de código es por lo que es importante que el programa se entienda: para poder repararlo y
modificarlo.
- Código ASCIL
Fue creado en 1963 por el Comité Estadounidense de Estándares o "ASA", este organismo cambio
su nombre en 1969 por "Instituto Estadounidense de Estándares Nacionales" o "ANSI" como se
lo conoce desde entonces.
Datos:
Los datos son comunicados por varios tipos de símbolos, tales como las letras del
alfabeto, números, movimientos de labios, puntos y rayas, señales con la mano,
dibujo, entre otros. Estos símbolos se pueden ordenar y reordenar de forma utilizable y
se les denomina información. Los datos son símbolos que describen condiciones,
hechos, situaciones o valores y se caracterizan por no contener ninguna información.
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. 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 proporcione un significado, conocimiento, idea o conclusión.
Tipos de Datos.
25
146
-456
1.00
25.13
148.45
-456.23
“Abril”
Carácter String o Su valor está representado por un conjunto de “Reporte Anual de Fa-
cadena caracteres. llas Técnicas”
Trabajador”
Información
La información no es un dato conjunto cualquiera. Es más bien una colección de
hechos significativos y pertinentes, para el organismo u organización que los percibe.
DATOS SIGNIFICATIVOS.
Para ser significativos, los datos deben constar de símbolos reconocibles, estar
completos y expresar una idea no ambigua. Los símbolos de los datos son
reconocibles cuando pueden ser correctamente interpretados. Muchos tipos diferentes
de símbolos comprensibles se usan para transmitir datos. La integridad significa que
todos los datos requeridos para responder a una pregunta específica están
disponibles. Por ejemplo, un marcador de béisbol debe incluir el tanteo de ambos
equipos. Si se oye el tanteo "New York 6" y no oyes el del oponente, el anuncio será
incompleto y sin sentido. Los datos son inequívocos cuando el contexto es claro.
Por ejemplo, el grupo de signos 2-x puede parecer "la cantidad 2 menos la cantidad
desconocida llamada x" para un estudiante de álgebra, pero puede significar "2 barra
x" a un vaquero que marca ganado. Por lo tanto, debemos conocer el contexto de
estos símbolos antes de poder descifrar su significado.
Dato: es un elemento aislado, recabado para un cierto fin, pero que no ha pasado por
un proceso que lo interrelacione con otros.
De este modo, cada dato por si solo no nos dice nada, por ello tienen que pasar por un
proceso (análisis, ordenamiento, agregado, etc.), el cuál le de sentido a los datos
anteriores:
+ Ejemplo:
Nombre: Roberto
Apellidos: Gutiérrez Barrios
Edad: 25 años
Dirección (calle y número): Sur 73, #38
Colonia: El Campestre
Teléfono: 6-12-89-74
Banco: Socialista
Cuenta: 345893457843
Los Datos a diferencia de la información son utilizados como diversos métodos para
comprimir la información a fin de permitir una transmisión o almacenamiento más
eficaces.
Datos Información
- Restar A-B -3
** Exponenciación A ** B 100.000.000.000.000
Expresiones Lógicas
Una expresión lógica “Y” (AND) es verdadera, si y sólo sí, se cumplen las dos
condiciones simples.
Lectura de Datos
Status = “Aspirante”
Grabar en archivo de Aspirantes
Fin Si
Identificador
En general, los identificadores deben ser tan cortos como sea posible, pero a la
vez tan informativos como sea posible. Muchas veces, además, es imposible utilizar
un sólo sustantivo para nombrar una variable, función o clase; en ese caso, se
concatenarán todos para formar el identificador final, poniendo cada inicial en
mayúscula. Si bien algunos lenguajes modernos lo permiten, a través del soporte
único debe evitarse los acentos, las diéresis, entre otros elementos, en los
identificadores.
Existen reglas para construir identificadores, las cuales son las siguientes:
CostoArticulo
Nuevo_sueldo
Direccion
Nombre
Horas_Trab
Nombre1
#alumnos
profesión
2categoría
Sueldo Neto
Nombre-Apellido
Área2
Clasificación de Variables
Por su Contenido
Variables numéricas:
Son aquellas en las cuales se almacenan valores numéricos, positivos o negativos,
es decir almacenan números del 0 al 9, signos (+ y -) y el punto decimal.
Ejemplo:
Variables lógicas:
Cuando una variable es declarada lógica, ésta almacena únicamente valores lógicos,
ya sea TRUE o FALSE (cierto o falso).
Variables alfanuméricas:
Esta formada por caracteres alfanuméricos (letras, números y caracteres
especiales).
Ejemplo:
SEGÚN SU USO
De trabajo:
Variables que reciben el resultado de una operación matemática completa y que se
usan normalmente dentro de un programa.
Ejemplo:
Suma = a + b /c
Contadores:
Es una variable (casi siempre de tipo entero) cuyo valor se incrementa o decrementa
en cada repetición de un ciclo o bucle. Es habitual llamar a esta variable “cont” (de
contador) ó “i” de índice.
Segundo, se modifica dentro del cuerpo del bucle. Lo más habitual es que se
incremente su valor en una unidad. Por ejemplo: cont = cont + 1 o
cont = cont - 1
algoritmo tabla_multiplicar
variables
cont es entero
N es entero
inicio
leer (N)
cont = 1
inicio
escribir (N * cont)
cont = cont + 1
fin
fin
Acumuladores:
Las variables acumuladoras tienen la misión de almacenar resultados sucesivos, es
decir, de acumular resultados, de ahí su nombre. Las variables acumuladores también
deben ser inicializadas. Si llamamos “acum” a un acumulador, escribiremos antes de
iniciar el bucle algo como esto: acum. = 0
Ejemplo:
Siguiente
3. Media = Sumatorio / 35
5. Fin
Constantes:
Como su nombre lo indica, son datos que no varían durante la ejecución de un
programa, al igual que las variables, se debe escoger adecuadamente el nombre o
identificador.