DFD, clase11 – ciclo: para..

Hola a todos/as,

Bien, ya hemos ido viendo todos los simbolos usados en DFD, junto con sus respectivos ejercicios de muestra y luego unos ejercicios de aplicacion para reforzarlo. Ahora solo nos queda pendiente éste simbolo, el ciclo: «para..«

Este simbolo, es parecido al anterior ( ciclo: mientras que.. ), solo que a éste le podemos agregar un inicio, un fin y un incremento. Para la variable con la que trabajemos. Pero sus usos son muy parecidos. Entonces vamos a ver un ejercicio para dejar más claro como funciona el ciclo: «para..»

15.) Hacer un algoritmo que muestre la tabla de multiplicar de un numero ingresado por el usuario. Y que la muestre con el fomato: A x B = C

Bien, como dice el ejercicio simplemente hay que realizar una tabla de multiplicar de algun numero que ingrese el usuario. Recordando que la tabla de multiplicar lleva un formato general del 1 al 12. Comencemos:

– Abrimos DFD

– Colocamos el detalle del ejercicio:

imagen1ampliar imagen

– Declaramos las variables que vamos a usar, en éste caso 3 variables:

numero = cantidad que va a ingresar el usuario, del cual va a ser la tabla. Por ejemplo si ingresa el 4, se va a generar la tabla de multiplicar del 4.

ciclo = controlador que vamos a usar, como ya les dije en la introduccion el ciclo: «para..» sirve parecido al ciclo: «mientras que..» pero a diferencia que lleva un inicio, un fin, y un incremento. Entonces por eso siempre debemos crear una variable para hacer las condiciones. En éste caso la variable se va a llamar ciclo.

resp = respuesta, es en donde vamos a almacenar el valor de la multiplicacion, osea el resultado. Por ejemplo:

A x B = C

El valor de «C» es el que se almacenará en resp. Y es el que mostraremos.

imagen2ampliar imagen

– Ahora pedimos el dato, osea de que numero desea generar la tabla

imagen3ampliar imagen

imagen4ampliar imagen

– Mostramos un mensaje de comprobacion, para que al usuario observe que de ése numero que ingreso, se mostrará la tabla de multiplicacion

imagen5ampliar imagen

– Ahora vamos a abrir el «ciclo para..» porque el usuario/a, ya nos ha dado el numero para generar la tabla de multiplicar. Entonces decimos que:

imagen6ampliar imagen

EXPLICACION: el simbolo «para..» tiene la siguiente estructura:

De izquierda a derecha,

primer recuadro: ahi se coloca la variable controladora, es decir la variable que vamos a usar para el ciclo. En nuestro caso, la variable se llama: ciclo

segundo recuadro: es el valor inicial ( comienzo / partida ) que le daremos a la variable. Es decir que nuestra variable ciclo va a valer 1 al comienzo, por lo tanto la tabla de multiplicacion la comenzaremos con 1, lo cual está correcto porque las tablas de multiplicar llevan un formato:

2 x 1 = 2

2 x 2 = 4 …

tercer recuadro: es el valor final ( tope / meta ) que le daremos a la variable. Es decir que nuestra variable ciclo va a llegar a valer un maximo de 12 al final, por lo tanto la tabla de multiplicacion la terminaremos con 12

2 x 11 = 22

2 x 12 = 24

cuarto recuadro: es el incremento, es decir de cuanto en cuanto va a ir aumentando el ciclo. En éste caso de uno en uno. Porque la tabla de multiplicar va de uno en uno, demostracion:

2 x 5 = 10

2 x 6 = 12

2 x 7 = 14

2 x 8 = 16 …

Ven que la tabla va incrementando, en 1. Porque 5,6,7,8 es el orden con que va avanzando la tabla, y asi seguirá hasta el tope, en éste caso el tope es 12

–  Ahora queda calcular la respuesta, ya tenemos expresado el ciclo que vamos a usar, osea desde 1 hasta 12 de uno en uno ( nuestra tabla de multiplicar ). Entonces solo nos queda expresar la respuesta, que es la multiplicacion de:

a) el numero ingresado ( que no va a cambiar ), por ejemplo arriba en la tabla del 2, el dos (2) no cambia en toda la tabla porque de él se trata.

b) el incremento ( de cuanto en cuanto va subiendo ), en éste caso de uno en uno, y como vimos arriba en el ejemplo de la tabla del 2, el incremento si va cambiando valia: 5, depsues 6, despues 7, etc..

Vamos a realizar la operacion, y como ya sabemos. Para realizar operaciones se usa el simbolo de «asignacion» porque le vamos a asignar a resp un valor ( la multiplicacion del numero y el incremento ). Así:

imagen7ampliar imagen

– Y por ultimo, solo nos queda mostrar la tabla con el formato: A x B = C

imagen8ampliar imagen

Saludos 😉

81 respuestas

  1. Muy buenos programas y tutoriales 😀 gracias!! 😀

  2. Hermano te pasaste, EXCELENTE, estoy comenzando en DFD y me salvaste para mi examen, anduve buscando en la web cursos de dfd, pero parece que hay muy pocos y encima de eso son malos cursos.

    Tu curso me encanta gracias, salu2 bye

  3. Tengo una duda en este ejercicio «Tabla de multiplicar» , lo realize correctamente, pero mi duda es si es necesario asignar al principio el valor de cero a «numero, ciclo y resp», ya que lo hize de las dos formas y en las dos funciono correctamente.Salu2

    • Hola Gustavo,
      pues si, como sabemos las variables que usamos deben tener un valor inical siempre. Como «numero» vamos a ingresar un numero cualquiera pues debe tener un valor inicial cero pues no se ha ingresado ningun numero durante ese lapso de tiempo ( cuando recien se ejecuta ), «ciclo» tambien porque comienza valiendo cero y despues va incrementando de 1 en 1 para que la tabla llegue a 12, y por ultimo la variable «resp» si al comenzar el programa no se ha generado la tabla aun ¿que resultado tiene el no generar nada? pues «nada» y nada=cero. Hasta que se comiencen a generar la tabla y los nuevos resultados, pues cambiara el valor de cero (0) al valor de la tabla solicitada. Saludos compañero 😉

  4. gracias man me ah servido de mucha utilidad

    • Hola Santiago, bienvenido al blog 😀
      gracias a ti por el comentario y por apreciar el esfuerzo que hago en cada entrada, mucha suerte en todo campeon 😉

      • Oye men buen tutorial y buena clase, Pero mira. Yo ago todo el procedimiento en el dfd tal y como tu lo haces, y cuando lo ejecuto le coloco para que salga la tabla del 5 pero cuando llega a la parte cuando va a comenzar a dar la tabla me sale toda la tabla, pero todos los rezultados dan 0. ¿Como ago men? que hize mal.

  5. Simplemente MUY BUENO.

    Me gustaria seguir el curso desde el uno en adelante.

    Gracias

    • Hola Pedro, bienvenido al blog 😀
      gracias a ti por apreciar mi esfuerzo compañero, sip te recomiendo que veas desde el uno, asi vas llenando algun vacio que te haya quedado ademas de reforzar conocimientos, recordar ejemplos, usos de funciones, etc..
      En fin, muchas gracias denuevo Pedro. Que pases bien 😉

  6. Gracias eddy¡¡¡¡ me has ayudado un buen pork ya staba desesperado con sta tarea , eres la ley en esto krnal
    Saludos y gracias x la ayuda

  7. excelente pero quiero hacr un algoritmo que me pueda convrtir numeros naturales a numeros romanos le agradesco mi correo es elmefri@homail.com

  8. munchas grasias me sirvio de muncho

  9. gracias por esta ayuda.

  10. Hola que buen tutorial me salvaste y me gane un punto muy valioso jeje gracias

  11. mui buena explicacion.. graciasss!!!

    jajaja ahora entiendo el uso del ciclo para..

    me ha ayudado mucho!!! 🙂

  12. hey gracias brother.
    esto esta excelente me salvaste !!!!!!
    graciaaaaaaaasssssss!!!

  13. Eddy!! Muy buena explicacion graciasss.. tngo q hacer uno de lgenerar y mostrar la tabla d multiplicar del 5 pero no se como 😦 si podrias ayudarme t lo agradeceria un mundo! Cuidate

    • Hola Fabi, bienvenido!
      Pues amigo, mira el programa que hice de la tabla de multiplicar que ves, está hecho para cualquier numero tu solo lo ejecutas y pones el numero del que quieres generar la tabla; en tu caso el numero 5. Para descargarlo puedes acceder [ AQUI ], no te olvides que cada ejercicio que hago en cada clase, los subo al servidor para que puedan usarlo ustedes 😉
      P.D. y amigo como es eso de que no sabes como hacerlo, si en ésta clase estoy explicando paso a paso como hacer las tablas de multiplicar :S
      Saludos y suerte! 😀

  14. Hola !
    esta muy buena esta pagina, se la recomendare a todos mis compañeros de ing !
    mi pregunta es, por que siempre da (cero)
    por qe no me muestra el resultadoo

    saludos !

    • Hola Mauro, bienvenido!
      Gracias por el aprecio, tambien gracias por la recomendacion de mi blog te quedo muy agradecido.
      Con respecto a tu pregunta, no te entiendo lo de que siempre da cero; quizá no te has fijado
      de que cada clase que hago, es comprobada que funciona correctamente, puedes descargar
      el algoritmo de la clase11 [ AQUI ], puede ser que si lo estabas copiando o haciendolo de otra
      manera, se te paso por alto algun dato o estabas haciendo mal alguna operación por lo tanto
      te daba cero, pero tal cual lo hice funcionaba perfectamente. saludos y suerte Mauro!

  15. oye muchas gracias mi hermano tengo parcial de dfd y no sabia para que se utilizaba esto que buen tutorial gracias por compartir tu conocimiento

  16. el algoritmo de la tabla es exelente, pero porfavor quisiera que me ayudara con una explicacion de la variable bandera. porfavor espero me conteste rapido.

    gracias. hasta luego.

  17. hola estoy empezando con los problemas de dfd y no se por que se me hace muy dificil ahora me dejaron un problema de sacar el factorial de 5 numeros y no se ni como comenzar ayuda porfa

    • Hola Fernanda, bienvenida!
      Pues mira, al empezar ( si nunca has tenido una experiencia con los programas logisticos como DFD o practicado a mano lo que son los Pseudocódigos ), siempre se va a tener una cierta dificultad a la hora de «captar» éste nuevo ambiente.. Bueno, la recomendacion es siempre debes ser ordenada, aprender bien para que sirve cada simbolo,codigo,etc.. y hacer diferentes ejemplos de donde se aplica dicho simbolo,codigo para que le cojas «el truco». Con respecto al ejercicio sobre factorial, justamente hace tiempo habia hecho uno para eso; puedes revisar la [ miscelanea de ejercicios ] que está en la seccion de [ AYUDA ] es puntualmente el ejercicio #34 . Te digo de una vez que hacer un algoritmo de esa magnitud ya requiere una destreza cierta y logica, asi que vamos practica más. Saludos y suerte!

  18. gracias por ese tuto me ayudo mucho muy muymuymuymuymuymuymuymuymuymuymu util….thanks

  19. como puedo el resultado de la multiplicación de una? osea, que en el primer pantallazo me muestre todos los resultados y no independientemente.

    • Hola Edwin, bienvenido!
      Eso seria posible si usamos vectores, porque en una localidad e memoria con el mismo nombre de la variable podrias almacenar muchos variables
      indexadas por posicion, pero en éste caso como no hemos visto vector ( ó arreglos ), se debe mostrar de esa manera porque en cada reiteracion cambia
      el valor de la variable, si la muestras 12 veces en la misma salida.. las 12 veces contendrá el mismo valor. Saludos!

  20. hola edy lo felicito por su labor quiero comentarle que su programa me ha ayudado con mis trabajos pero he tenido problemas en algunos casos cuando utilizo el mq ya que realizo toda la estructura ke me piden pero cuando la ejecuto el programa se queda procesandola y por mas que espere no se logra ejecutar, quisiera saber si ud seria tan cordial en ayudarme para saber si es el programa o el computador.
    por favor le agradeceria si me respondiera lo mas pronto posible ya que estoy en semanas de parciales, es usted muy gentil por darnos un espacio de su valioso tiempo.
    muchas gracias

  21. que buen curso,me puedes mandar todad las lecciones ,te lo agradesco,grasias

    • Hola Mario, bienvenido!
      gracias por el apoyo; pero vamos no te entiendo ¿que te envie todas las lecciones?
      puedes revisar el apartado de [AYUDA] donde encontraras diversos ejercicios de diferentes
      temas a tratar, saludos!

  22. ta mostro gracias por los ejercicios!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    🙂

  23. sos grande chavo, gracias por tu colaboración. Saludos y seguí adelante.

  24. Hola mr. eddy, a pesar de aprender bien hasta aki, creo q me falto mas tiempo de practica (jale la practica de ayer, xD), pero igual gracias, me preguntaba si me pudieras ayudar a resolver los ejercicios q me dejaron en la practica, por suerte no era el parcial, asi q tengo q prepararme mas para eso, te los dejo pa q me heches una mano por favor, 1. un algoritmo para determinar si un numero es primo, 2.un algoritmo que calcule el factorial de un numero, 3. Un algoritmo q genere la relacion de multiplos de 3 y 5 menores a 100. En fin yo creo q mi profe se maleo, y bien feo, tu q opinion tienes de estos ejercicios??, weno supongo q el parcial vendra mas o menos de ese nivel, de estos ejercicios tengo una idea, al tratar de realizarlos me debieron salir pero no se q paso q no me salio ni uno T_T, weno, gracias, y otra vez… excelente blog.

  25. Buenisimo de mucha ayuda
    Gracias!!!!!

  26. GRACIAS POR DARTE UN TIEMPO, PARA MOSTRARNOS EL USO DE ESTE PROGRAMA ES MUY BUENO, FELICIDADES!!!!

  27. gracias carnal por el pequeño curso, no le entendia a los ciclos pero con esto ya aprendi

  28. hola, gracias por los conocimientos y por la buena explicacion, con esto te sacas las tablas de todas las operacion =DDDD

  29. quien me ayuda a desarrollar un ejercicio de pseudocodigo leer tres notas que corresponden al primero, segundo y tercer parcial par cinco estudiantes con los siguientes porcentajes (30,30,40) el programa debera decir si aprobo o no la materia

  30. hola gracias por este gran pagina esta exelente una pregunta el ciclo para es colo para mostrar tablas de multiplicar de un numero k tu introduscas por que si es asi: a mi me dejaron hacer un algoritmo que al introducir 9 numeros me saque el promedio de estos pero utilizando el ciclo para ya lo intente pero no veo la forma de como incorporar el ciclo para ya que asi solo es muy facil de ahcerlo pero al tener que incorporar el cilco para no se? k hacer y de nuevo muchas gracias por tus explicaciones estan muy bien explicadas y visualizadas muy bien

  31. hola soy yo otra vez ya cheke tus ejercicios el ejercicio 17 me ayudo mucho ya pude resolver ese ejercicio tan dificil que al final era facil pero me ayudo mucho tu exelente ´pagina muchas gracias y adios estare por aqui muy seguido siguiendo tus clases maestro adios y gracias

  32. muy buen post!

    tengo una pregunta, ¿ como podria sumar todos los resultados que me da el para?

    • Hola Camilo, bienvenido!
      Pues mira para sumar los resultados de un ciclo para o mientras hace falta que declares un acumulador que como su nombre lo indica vaya acumulando valores osea los vaya sumando y al final ya tienes lo que buscas; ejercicios con acumuladores puedes encontrar aqui por ejemplo en esa clase en el ejercicio 17 usamos la variable «sum» como acumulador, revisa esa clase entenderas mejor las cosas. Saludos!

  33. Gracias Me ayudo Bastante en Mi Clasee 🙂

  34. HOLA!!!! AYUDAME PLIS!!
    COMO ELBORAR UN DFD QUE SUME LOS 100 Nº NATURALES!!!, OTRTO QUE SUME LOS PARES DE LOS 100 Nº NATURALES, OTRO QUE SUME LOS IMPARES DE LOS 100 Nº NATURALES, OTRTO Q PERMITA INGRESAR 3 NUMEROS DIFERENTES Y CALCULE LA SUMA DE LOS FACTORIALES DE LOS NUMEROS INGRESADOS…. POR FAVOR!!!! DAME LUCES MUCHAS LUCES!!!!! SI!!!!!!!!! TE LO AGRADECERE MUCHOOOOOOOOOOOOOOOO!!!!! =)

  35. hola eddy me podrias deciar como hacer para imprimir varios resultados en una sola impresion,como en una lista ?

  36. Hola eddy,como estas queria preguntarte si sabes pasar un archivo de excel a un programa C,estoy buscando pero todavia no hay razon a ver si me das el dato por favor chevere

  37. Oh muchisimas gracias, has salvado mis notas x)

  38. Gracias, me ayudate a resolver una tareaota re dificil :D.

  39. Amigo, Tus Ejemplos son Expectaculares…
    Oye,
    Era Para saber si Podrias hacer un ejemplo sobre el Ciclo mientras: Dice que Hacer un Programa que genere (n) terminos de la siguiente serie:
    0, 1 , 1, 2, 3, 5, 8, 13, 21, 34
    Porfa, Te agradeceria…
    Hasta donde entiendo si uno digita el numero 1, se mostrara en pantalla el numero (0), y asi sucesivamente, digamos se digita el numero 6, se mostrara el resutaldo en serie que es = (5)

  40. muchas gracias por la informacion me esta sirviendo de mucho, las clases son claras y especificas que mas puedo pedir.

  41. gracias por el ejemplo, me sirvió para mi tarea

  42. necesito ayuda para un programa en dfd donde el programa recibe 5 notas e imprime la nota final…….. con el ciclo repetitivo para……. por favor alguien que me ayude gracias 🙂

    • Hola Sergio, bienvenido al blog!
      Amigo revisa las clases en la sección [AYUDA] para revisar ejercicios similares y poder guiarte. Saludos!

  43. NECESITO AYUDA URGENTE SI ALGUIEN ESTA CONECTADO POR FAVOR QUE ME AYUDE A RESOLVER ESTE EJERCICIO DFD:

    REALIZAR UN DFD QUE PERMITA INGRESAR UN VALOR Y QUE POSTERIORMENTE, REALICE LA SUMA DE LOS NUMEROS PARES SEGUN EL VALOR QUE HAYA SIDO INGRESADO (EJ. SI EL VALOR INGRESADO ES 2, ESTE SUMARIA LOS PRIMEROS DOS NUMEROS PARES 2+4=6; SI EL VALOR INGRESADO ES 3 SUMARIA 2+4+6=12)

    UTILIZANDO LA ESTRUCTURA REPETITIVA FOR O CICLO PARA
    URGENTE

  44. ES PARA MAÑANA 17/06/2011
    AYUDA POR FAVOR

  45. GENIAL!! (Y)
    Perfecta Tu Explicacion, Me Pase EL Semestre Buscando Algo Asi..
    Haha
    LIKE!!!

  46. hola queria saber si para el valor final puedo utilizar un variable. por ejemplo N. donde antes asigno el valor de N.

  47. hola queria saber si se puede sacar por medio del ciclo (para) el factorial
    de un numero y como se hace

  48. EXCELENTE!!(: MUY BUENA EXPLICACIÓN QUEDE SIN DUDA ALGUNA, MUCHISIMAS GRACIAS BUEN TRABAJO

  49. GRACIAS, GRACIAS, GRACIAS
    Me ayudo muchisimo a comprender mejor esto.
    GRACZ…

  50. hola eddy buenisima so uexplicacion ,,,tienes una forma super facil de explicarlo todo, me ha ido bien en este semestre gracias a ti.

  51. hola necesito ayuda …Realizar un diagrama de flujo y seudo código que genere y despliegue los números del 1 al 10 lo mas pronto es para el dia miercoles porfaa

  52. Men es un gran tutorial excelente gracias m ayudo mucho

  53. AQUI APRENDI MEJOR QUE CON EL PROFE GRACIAS

  54. una ayuda en esto… buscar si un numero se encuentra en la serie de fibonnacci

  55. Crear un programa que permite mostrar el total de ventas del dia en una cabina de Internet, el programa debe permitir ingresar un total de 8 ventas y al final mostrar el total de ventas por servicio:
    costo alquiler -> 1 por hora
    impresión -> 0.5 por hoja
    escaneo -> 1 por foto

    ejemplo:

    servicio cantidad total

    alquiler 2 2
    impresión 5 2.5
    escaneo 1 1

    el programa debe pedir la cantidad y el tipo de servicio (alquilar, imprimir y escanear)

  56. ayuda por favor!!

  57. excelente, necesito ayuda con un ejercicio por mas que le busco no encuentro por donde. el ejercicio es el siguiente:
    Construya un diagrama que dado X numeros enteros como datos, calcule cual es el mayor y cual es el menor de estos numeros. muchas gracias de antemano.

Replica a Santiago Uribe Cancelar la respuesta