Vous êtes sur la page 1sur 8

Algoritmos - Parte II

Algoritmos: parte II
Introduccion
La asignatura logica de programacion cubre la solucion de problemas en 7 etapas:

ETAPA 1: EL ENUNCIADO

ETAPA 2: EL ANALISIS

ETAPA 3: EL SEUDOCODIGO ORIENTADO A OBJETOS

ETAPA 4: LAS CLASES Y LOS OBJETOS

ETAPA 5: LOS METODOS ( APLICAN LAS ESTRUCTURAS Y REGISTROS)


LAS 7 ESTRUCTURAS

Comentarios

Constantes

Variables

Operadores

Asignaciones y calculos

Decisiones

Ciclos

LOS 3 REGISTROS

Registro contador

Registro acumulador

Registro centinela

ETAPA 6: LOS DATOS

Parmetros

Valores

ETAPA 7: LOS PRINCIPIOS

Herencia

Encapsulacin

polimorfismo

Siete Pasos de Solucion


El enunciado
Es el problema propiamente dicho y requiere 3 caracteristicas minimas
1. Ser claro: El problema se debe entender para poderlo solucionar adecuadamente
2. Ser preciso: Un problema tiene unas especificaciones que deben estar definidas
3. Ser conciso: Un problema no puede irse por las ramas y debe referirse en forma la mas corta posible

El analisis
Con el analisis se pretende obtener la Definicion De Variables y por lo general utiliza la siguiente matriz de solucion:
a. Los Datos:
es lo que me dan en el enunciado
b. Los Resultados:
son las respuestas que pide el enunciado
c. Los Calculos,
son calculos, decisiones y repeticiones o ciclos.
d. Las Investigaciones: Investigar lo que pida el enunciado; en la mayoria de problemas no se requiere investigar nada

El seudocodigo
Es la logica de solucion definida en el analisis y representada con codigos cortos en lenguaje espaol como por ejemplo:
profesor@dariolara.com

http://www.dariolara.com
1

Algoritmos - Parte II

Inicio, Lea, Imprima, Fin Estas palabras se denominan identificadores y son palabras reservadas

profesor@dariolara.com

http://www.dariolara.com
2

Algoritmos - Parte II

Ejemplo 1
Enunciado: Calcular e imprimir el sueldo de 1 empleado que gana una tarifa dada por una cantidad de horas trabajadas
Analisis: Definicion de Variables horas - tarifa - sueldo
Seudocodigo:
Inicio
|
|
|
|
Fin

// Aqu se definen los tipos de variables


Lea horas, tarifa
sueldo = horas * tarifa
Imprima sueldo

Ejemplo 2
Enunciado: Calcular e imprimir el sueldo de 10 empleados que ganan una tarifa dada por una cantidad de horas trabajadas
Analisis: Definicion de Variables nroEmpleados - nombre - horas - tarifa - sueldo
Seudocodigo:
Inicio
|
|
|
|
|
|
|
Fin

// Aqu se definen los tipos de variables


// Aqu se inicia un ciclo de 10 calculos repetidos
Para nroEmpleados desde 1 hasta 10 incrementa 1
|
Lea nombre, horas, tarifa
|
sueldo = horas * tarifa
|
Imprima nombre, sueldo
Fin_Para

El diagrama de flujo
Es la solucion obtenida en el analisis y determinada en el seudocodigo pero representada en forma grafica:
"Una imagen vale mas que mil palabras"

Tipos de diagramas:
1.
2.

Diagramacion libre
Diagramacion estructurada

Por simbolos
Por bloques

Notas
En la Ingeniera de Software se utilizan multitud de diagramas para representar flujos y soluciones tanto
estaticas como dinamicas .
En Ingeneiria de Software estructural aplican los DFD Diagramas de Flujo de Datos, Los DD
Diccionarios de Datos, los DER Diagramas Entidad Relacion .
En la Ingeniera de Software Orientada a Objetos se utiliza la tecnologia UML ( Unified Modeling
Language = Lenguaje de Modelado Unificado ) consistente en un juego estatico - dinamico de
diagramas para representar y resolver los multiples requerimientos de un software solucion de un
problema dado.
En la empresa y la industria se utilizan multitud de diagramas, ordinogramas, organigramas, etc. Para
representar situaciones especificas de gestion.
profesor@dariolara.com

http://www.dariolara.com
3

Algoritmos - Parte II

Diagramacion libre
Utiliza simbolos graficos y representa la forma libre en que se expresa la solucion.

Los simbolos
Simbolo

Descripcin
Incio y Fin de proceso
Lectura de datos ( "Lea" )
Calculos y Asignaciones

Simbolo combinado de ciclos Inicia y Termina

Simbolo indicador de decisiones


Simbolo de Impresin o Escritura de datos
Simbolo conector de procesos o entre paginas
Simbolo que indica el flujo de la logica de solucion en el diagrama

Ejemplo 3
Enunciado: Calcular e imprimir el sueldo de 10 empleados que ganan una tarifa dada por una cantidad de horas trabajadas
Si el numero de horas trabajadas es igual a cero entonces el trabajador queda suspendido.
Analisis: Definicion de Variables nroEmpleados - nombre - horas - tarifa - sueldo
Seudocodigo:
Inicio
|
|
|
|
|
|
|
|
|
|
|
Fin
profesor@dariolara.com

// Aqu se inicia un ciclo de 10 calculos repetidos


Para nroEmpleados desde 1 hasta 10 incrementa 1
|
Lea nombre, horas, tarifa
|
// Aqu se toma la decision de suspender al trabajador que no tiene horas (horas=0)
|
Si horas = 0 entonces
|
|
Imprima nombre + " Ha sido suspendido por cero horas trabajadas"
|
Sino
|
|
sueldo = horas * tarifa
|
|
Imprima nombre, sueldo
|
Fin_Si
Fin_Para
http://www.dariolara.com
4

Algoritmos - Parte II

Solucin Grafica en Diagramacin Libre del Ejemplo 3


El diagrama libre: Se basa en simbolos que siguen siempre la ruta trazada por las flechas o "flujo" de los procesos

INICIO
Para I = 1 hasta 10

Lea nombre, horas, tarifa

horas = ? = 0
Salida por SI

Salida por Sino

Sueldo = 0

Sueldo = tarifa x horas

nombre
"Suspendido"

nombre
sueldo

Next I

FIN

Notas
1. Los seguidores de esta tecnica la sustentan con el criterio de que es la forma en que el pensamiento se comporta y es
una solucion logica correcta
2. Los detractores sostienen que el sistema se puede volver confuso de depurar y dificil para encontrar errores logicos.
3. A esta metodologia la denominan "Tecnica Spaguetti" por las diferentes vias o flujos que toman los razonamientos y los
procesos involucrados en la solucin.
4. En la actualidad se aplica un sistema de soluciones graficas llamado UML (Unified Modeling Language) que se aplican
en la Programacion Orientada a Objetos

profesor@dariolara.com

http://www.dariolara.com
5

Algoritmos - Parte II

Diagramacin estructurada
Utiliza bloques graficos y representa la forma estructurada o sistema Top - Down (de arriba abajo) de representar la
solucion.

Los Bloques
Bloque

Descripcin
Incio de Proceso, Fin de Proceso, Lectura de Datos, Escritura de
Datos, Calculos y Asignaciones

La decision
Bloque para Decisiones
SI

NO

Para I = 0 hasta N
Bloque para Ciclos o Repeticiones

Solucin Grafica en Diagramacin Estruturada del Ejemplo 3

INICIO
PARA

I = 1 HASTA 10

LEA NOMBRE HORAS TARIFA


HORAS = ? = 0
SI

NO

SUELDO = 0

SUELDO = HORAS X TARIFA

IMPRIMA NOMBRE "Suspendido"

IMPRIMA NOMBRE SUELDO

FIN
Notas
1. Observe cuidadosamente la diferencia entre los simbolos utilizados en diagramacion libre que propician cierto grado
de desorden y genera lo que se denomina "Tecnica Spaguetti"
2. Los bloques se siguen desde el tope hacia abajo y forman un rectangulo mayor que contiene todos los bloques
internos que generan la solucion.
profesor@dariolara.com

http://www.dariolara.com
6

Algoritmos - Parte II

El codigo
La solucion definida en los pasos anteriores se codifica en un lenguaje de programacion ( C, Basic, Pascal, Visual Basic
.Net, Java, etc. )
Normalmente estos codigos se escriben en INGLES
Ejemplo 3
Vamos a presentar la solucion del ejemplo 3 en codigo de lenguaje JAVA
Notas
1. Todo en java son clases
2. Todas las instruccione en java van en minusculas con algunas excepciones,
3. Todas las instrucciones en java terminan en punto y coma ;
4. Las aplicaciones en JAVA tienen un metodo o funcion principal dentro del cual se declaran las variables y se ejecutan
todos los demas metodos y funciones que requiere la solucion
5. Los metodos se reconocen porque llevan PARENTENSIS
- ( )
6. Las acciones o procesos se encierran siempre entre LLAVES
- { }
Solucion en lenguaje JAVA
Creamos la clase sueldos
class sueldos {
}
Creamos el metodo principal (main) publico (public) estatico (static) neutro (void) y con argumentos de cadena (String)
public static void main (String argumentos[ ] ) {
}
Para el ciclo o repeticion utilizamos la funcion for (
) {
}
for( i = 0; i <= 10; i = i + 1) {
}
Para la decision utilizamos la funcion if ( ) {
} else {
}
Para imprimir utlizamos la funcion print (
);
System.out.print (
);
Nota especial
Se requiere una clase especial para leer datos por teclado llamada LeerVariable .
El codigo de solucion
class sueldos // se crea la clase que soluciona el problema. Este es el nombre del archivo: sueldos.java
{
public static void main ( String argumentos[ ] )
{
int i = 1 ;
// Se declara la variable i que es el numero de empleados e inicia en 1
String nombre = " " ;
// Se declara la variable nombre de tipo cadena de caracteres vacia
Int horas = 0;
// Se declara la variable horas, no se ha leido aun y vale 0
Int tarifa = 0 ;
// Se declara la variable tarifa iniciada en 0
Int sueldo = 0 ;
// Se declara la variable sueldo iniciada en 0
for ( i = 1; i <= 10; i = i + 1)
{
nombre =
// se requiere aplicar LeerVariable.leerTexto( Entre el nombre : )
horas =
// se requiere aplicar LeerVariable.leerEntero( Entre el nombre : )
tarifa =
// se requiere aplicar LeerVariable.leerEntero( Entre el nombre : )
if ( horas == 0 )
{
System.out.print( " Seor " + nombre + " Queda suspendido " );
}
else
{
sueldo = horas * tarifa
System.out.print ( "Seor " + nombre + " su sueldo es " + sueldo );
}
}
}
}
Nota adicional: como ya se dijo anteriormente se requiere de la clase especial LeerVariable para lecturas por teclado.

profesor@dariolara.com

http://www.dariolara.com
7

Algoritmos - Parte II

La Instalacion, control y mantenimiento


Una vez generada la solucion en codigo fuente, este debe convertirse a codigo objeto. El codigo objeto es aquel que se
instala y que permite procesar datos

Codigo Fuente

Compilacion
o
Interpretacion

Codigo Objeto

El codigo Fuente :
Son codigos de lenguaje de programacion (en ingles) que en cierto orden dan la solucion al problema
El codigo Objeto :
Son codigos binarios ilegibles que se instalan en un computador para que procesen datos y los
conviertan en informacion util para los usuarios finales.
El instalador
Es uno o varios archivos que ensamblan e instalan los ejecutables, las bases de datos, las
librerias .dll y los archivos de soporte, ayuda, training, etc.
La documentacion:
Es la parte final de una solucion y consta de los manuales de entrenamiento del programa, los manuales de gestion, los
manuales de instalacion, las ayudas integradas, y en fin todos los procedimientos de instalacion, de mantenimiento y
control, soporte y funcionamiento de la aplicacin desarrollada.
Normalmente a esta fase o paso se llega y se la denomina la Ingeniera del Software e incluye las Bases de Datos y la
instalacion en Red o en la WEB.
Practicas
Practica #
El supermercado.
Analisis del cliente
Analisis del IVA
Analisis de descuentos
Analisis de los resultados adicionales
Los turnos
Practica # El colegio
Los profesores
Los alumnos
Las asignaturas
Las autlas
La asistencia
Las calificaciones
Practica # El Taller Los servicios
Practica # La Universidad Las Facultades Los programas
Practica # Las votaciones Los Partidos Los candidatos Los votantes

profesor@dariolara.com

http://www.dariolara.com
8

Vous aimerez peut-être aussi