viernes, 30 de septiembre de 2011

Estructura Selectiva Parte 3

Con frecuencia en la practica es necesario que existan mas de dos elecciones posibles aunque se podria resolver por estructuras alternativas simples o dobles anidadadas o en cascada sin embargo este metodo si el numero de alternativas es grande puede plantear serios probles de escritura de algoritmo.

Usando la estructura de decisión múltiple se evaluará una expresión que podrá tomar n valores distintos, 1, 2 , 3, ....,n y según que elija uno de estos valores en la condición, se realizará una de las n acciones o lo que es igual, el flujo del algoritmo seguirá sólo un determinado camino entre los n posibles.

Esta estructura se representa por un selector el cual si toma el valor 1 ejecutará la acción 1, si toma el valor 2 ejecutará la acción 2, si toma el valor N realizará la acción N.
 Sintaxis

Diagrama
 Ejemplo 1:


Facil nos pide que le escribamos los dias de la semana dependiendo del numero insertado si el numero esta fuera del rango mandamos un mensaje de advertencia.

Mas adelante discutiremos mas afondo cuando usarlas y cuando no y sus diferencias.

Comenten no sean bayuncos

jueves, 29 de septiembre de 2011

Estructura Selectiva Parte 2

Hoy veremos la parte de las selectivas trabajaremos con las dobles las que llevan si sino .La estructura anterior es muy limitada y normalmente se necesitara una estructura que permita elegir entre dos opciones o
alternativas posibles,en funcion del cumplimiento o no e una determinada condicion si la condicion es verdadera se ejecuta la accion 1 si es falsa se ejecuta la accion 2.

Son estructuras lógicas que permiten controlar la ejecución de varias acciones y se utilizan cuando se tienen dos opciones de acción, por la naturaleza de estas se debe ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.

Ejemplo 1:
Dado como dato la calificación de un alumno en un examen, escriba "aprobado" si su calificación es mayor igual que 6 y "Reprobado" en caso contrario.


Un ejemplo tan sencillo que solo tenemos que leer la nota del alumno y formularnos SI la nota es mayor o igual a 6 entonces imprimimos aprobado sino es porque la nota es menor a 6 escribimos reprobado.

Ejemplo 2:
Dado como dato el sueldo de un trabajador, aplicar un aumento del 25% si su sueldo es inferior a $1000 y 11% en caso contrario, luego imprimir el nuevo sueldo del trabajador.


Otro sencillo leermos el sueldo y nos formulamos SI el sueldo es menor a 1000 entonces le aplica al sueldo un aumento del 25% sino es porque el sueldo es mayor a 1000 y se le hace un descuento del 11% .

Aca no importa el orden como que te quede la condicion lo puedes evaluar como tu quieras como por ejemplo primero evaluamos que el sueldo sea menor a 1000 pero podemos evaluar si el sueldo es mayor a 1000 y aplicar el descuento de 11% sino el de 25%.

Comenten no sean bayuncos ...

viernes, 16 de septiembre de 2011

Estructuras Selectivas Parte 1

Hoy seguiremos con lo basico veremos lo que nos complicara un poco la vida a lo que ya hemos ido haciendo que son las estructuras selectivas o de decision como les quieran llamar.

Las estructuras selectivas se utilizan para tomar decisiones logicas , de ahi que se suelen llamar tambien estructuras de decision o alternativas.

En las estructuras selectivas se evalua una condicion y en funcion del resultado de la misma se realiza una opcion u otra.

Las estructuras selectivas pueden ser:
  • simples
  • dobles
  • multiples
Las estructura selectiva simple si-entonces ejecuta una determinada accion cuando se cumple una determinada condicion.la seleccion si-entonces evalua la condicion.
  • si la condicion es verdadera entonces ejecuta la accion
  • si la condicion es falsa entonces no hace nada
Tenemos un cuadro de ejemplo en flujograma y pseudocodigo en ingles y en español ese cuadro que vemos es el diagrama N-S.

Ejemplo Practico :


Un ejercicio facil analizamos que nos pide el promedio de 4 notas y que SI ese promedio es mayor o igual a 6 es porque esta aprobado , declaramos las variables para las notas y el promedio y una cadena que diga aplazado como valor original y si el promedio esta aprobado esa variable tendra el valor de aprobado. si el promedio es mayor o igual a 6 entonces esta aprobado y mostrara el promedio con un mensaje de aprobado.


Ejemplo 2:
Lo analizamos y vemos que nos pide el total a pagar por 15 articulos y que SI el total a pagar excede a $100 le haremos un descuento del 30%.

Bien esta estructura nos sirve para tomar ciertas decisiones simples luego veremos las dobles y las multiples.

Comenten no sean bayuncos.

miércoles, 7 de septiembre de 2011

Ejercicios Practicos de Algoritmos parte 2

Hoy seguiremos haciendo ejemplos sencillos sobre pseudocodigo los ejemplos tambien los podemos representar como flujograma pero no los pongo ya que es innesario hacer el dibujito pero si te orientas mejor con el flujograma lo puedes hacer, pero los ejercicios mas complicados se hacen tediosos hacerle un diagrama por eso pienso que es mejor pseudocodigo.

Bien Seguiremos con un ejercicio que nos pone a pensar un poquito mas.
  • Determinar el porcentaje que tiene un estudiante, para concluir su carrera técnica, si se desconoce el  total de asignaturas que conforman el plan de estudios. Presentar nombre del estudiante, carnet, total de asignaturas pendientes de cursar y porcentaje que tiene. 
Aca como ya lo leimos nos damos cuenta de que hay algunos datos que no tenemos y que necesitamos para los datos de salida,Cuando el ejercicio no nos indique que necesitamos queda en nuestra sabia logica que es lo que vamos a pedir siempre y cuando lo necesitemos en este caso pediremos el total de materias de la carrera y el numero que ha cursado y lo demas que es el nombre  y el carnet.

Para obtener el porcentaje solamente se usa una expresion matematica sencilla luego imprimimos todo lo que nos pide el ejercicio y listo ya hicimos el algoritmo.

Ahora veamos otro ejemplo: 
  • Cuál será el sueldo que recibe un trabajador, si trabaja por horas y cada hora se le paga a $50  presentar: Nombre del trabajador, total de horas trabajadas, pago por hora y sueldo que recibirá.   
Ya leido nos damos cuenta en las primeras palabras lo que tenemos que calcular el sueldo luego nos da el parametro como lo vamos a calcular si la hora se paga a $50 luego nos indica lo que tenemos que devolver .

Primero declaramos nuestras variables y las constantes , luego leemos la informacion que necesitamos y hacemos el calculo para sacar el sueldo y imprimimos los resultados deseados y eso es todo lo que tenemos que hacer.

Descargar 
Dudas y comentarios o sugerencias pues aca estamos.

martes, 6 de septiembre de 2011

Ejercicios Practicos de Algoritmos

Bien hoy veremos unos ejemplos practicos sobre como analizar un problema y darle solucion, para empezar debemos de tener calma esto no lo aprenderemos haciendo 5 ejercicios , primero te tiene que gustar aunque al principio no entiendas nada.

Antes de poner un ejercicio facil tenemos que tener una mente analitica y pensar como lo podemos solucionar ,aca si ya tenes algun conocimiento sobre algo de programacion puede ser que te resulte facil ,pero tienes que olvidarte de toda interfaz grafica y pensar a modo consola, ya que tenemos que dominar el codigo primero como todo guerrero espartano.

Y ponernos a pensar en que alguien mas va usar ese programa no lo piensen de forma individual sino que alguien mas lo va usar y va ingresar informacion y tu tienes que devolverle un resultado correcto.

Luego tenemos que leer el enunciado unas 20 veces para entenderlo mucho mejor , despues tenemos que localizar la informacion que nos da el ejercicio para luego localizar lo que nos falta que el usuario nos lo va dar y lo que pide que devolvamos que seran nuestros procesos.

En ese proceso hay que destacar tres Entrada Proceso Y salida, acuerdense que siempre hay que declarar las variables luego leer la informacion que falta y hacer los procesos pertinentes veamos un ejemplo sencillo


Declaramos las variables leemos y calculamos la media y escribimos el resultado eso es todo.

Veamos un ejemplo mas chivo.


  • Se necesita determinar el descuento que se le realiza a un cliente en sus compras, considerando que el porcentaje de descuento a aplicar es del 56%. Presentar: Código del cliente, nombre, compra con descuento, sin descuento y descuento.
Primero lo leemos unas 30 veces y nos damos cuenta que en la primera palabra nos dice un dato de salida determinar un descuento que hay que sacarselo a la compra del cliente ya tenemos un dato de entrada la compra del cliente,luego nos dice que el porcentaje de descuento es del 56% esto es una constante sin duda, luego nos dice mas datos de salida. y al final tendremos un algoritmo parecido a este.

  Declaramos las variables a usar luego la constante del descuento y tambien algunas variables reales la compra la compra con descuento y el descuento.

Luego leemos la informacion del usuario y sacamos el descuento la compra * porcentaje luego a la compra le quitamos el descuento y tenemos la compra con descuento. Y finalmente imprimimos la informacion que nos pide el ejercicio.


Hasta aca todo sencillo nadie ha salido herido o traumado pero hay algunos ejercicios que si nos van a poner a sudar tinta y a pensar. los que veremos mas adelantes si seran mas complicados.

Bien aca les dejo la Guia resuelta de algoritmos 1.

Descargar 

comenten no sean bayuncos

viernes, 2 de septiembre de 2011

Fases de Resolucion de Problemas Algoritmos

Para empezar a programar primero tenemos que analizar y luego pensar una solucion al problema que se nos presenta , pues hoy veremos un poco de lo que tenemos que hacer cuando se desarrolle un sistema.

En el proceso de resolucion de un problema con una computadora se tienen que seguir ciertos pasos para la escritura y su ejecucion, aunque hay muchas formas de solucionar los problemas se pueden considerar una serie de pasos logicos que generalmente seguimos en algunos casos.
  • Analisis del problema
  • diseño del algoritmo
  • codificacion
  • compilacion y ejecucion
  • verificacion
  • depuracion
  • mantenimiento
  • documentacion
Antes de entrar de lleno en esos conceptos ya sabemos que un algoritmos es una serie de pasos logicos para llegar algun fin

Caracteristicas de un algoritmo
  • preciso (orden)
  • definido (logica)
  • finito (tiene fin)
Analisis del problema :


Esta fase requiere una clara definicion donde se contemple exactamente lo que debe hacer el programa y resultado o solucion deseada.

Para poder definir bien un problema es buenos hacer las siguientes preguntas:
  • Que entradas se requieren
  • Cual es la salida deseada
  • Cuales son las operaciones a realizar
Ejemplo:


Diseño del algoritmo :


En el analisis determinamos que hace el programa en el diseño determinamos como lo hara el programa.Aca se usa la tecnica de divive y venceras en algunos libros la mencionan en si es separar el programa por modulos para dividir carga pero que es un modulo a esto nos referimos con un subprograma .

El diseño del algoritmo es independiente del lenguaje de programacion a usar.

Herramientas de programacion:
Las dos herramientas mas utilizadas para diseñar son el diagrama de flujo o flujograma y pseudocodigos.

Diagrama de flujo :
Es la representacion grafica de un algoritmo.

Aca tenemos todos los elementos con los que construimos nuestros diagrama de flujo.


Pseudocodigo:
Aca escribimos palabras similares al ingles pero en español que facilitan la estritura y lectura de un programa en si es un lenguaje de especificaciones de algoritmos.

Codificacion :

Aca hacemos el programa ya en un lenguaje de programacion.Aca nos vamos cuenta si esta bien analizado o bien diseñado en esta parte es muy buena practica la documentacion interna del codigo.

Compilacion y ejecucion de un programa.
Aca compilamos en programa escrito y lo ejecutamos para ver si el resultado es el deseado y planteado en las anteriores etapas.

Verificacion y depuracion de un programa
Aca como bien lo dice verificamos que todo este en orden pero como somos humanos siempre saldran errores pero los errores se clasifican en:
  • Errores de compilacion : se producen por el uso incorrecto de las sintaxis del lenguaje de programacion
  • Errores de ejecucion : se producen por instrucciones que la computadora puede comprender pero no ejecutar como por ejemplo division por cero .
  • Errores logicos : son los mas dificiles de detectar ya que su fallo esta en el mal analisis y diseño del algoritmo aca no da ningun problema sino que los resultados obtenidos no son los deseados.
Documentacion y mantenimiento :


Esta es la parte que casi nadie le gusta pero es fundamental a la hora de corregir y darle mantenimiento al sistema. Aca se realizan los respectivos manuales del sistema.

programacion modular:
Es uno de los metodos de diseño mas potentes para mejorar la productividad de un programa.aca el programa se divide en modulos(partes independientes) cada modulo ejecuta una unica tarea y se programan independiente.

Dado que los modulos son independientes, diferentes programadores pueden trabajar simultaneamente en diferentes partes del mismo programa esto reducira tiempo y a la hora un error se podra depurar el modulo y no todo el sistema en si.

Bien algunos se preguntaran si esto se usa todavia y si se usa pero para aprender lo basico ahora hay diferentes etapas del software desde la vista orientada a objetos como el UML o otras tecnicas que se veran , mas adelante haremos ejercicios para aprender analizar y hacer un algoritmos y algunos tips mas.

comenten no sean bayuncos...