Skip to main content

Ejercicios de creación

EJEMPLO 1

ENUNCIADO

A partir de los ejercicios vistos anteriormente realiza un programa que simule ser una pequeñpequeña calculadora con las cuatro operaciones sicas (sumar, restar, multiplicar y dividir):

  • Que muestre un menúmenú inicial donde se elija la operacióoperación que se va a realizar.

  • Si alguien escoge una opcióopción no contemplada debe volver a mostrar las opciones iniciales.
  • Que solicite los meros implicados en cada operacióoperación y muestre el resultado.
  • Que de opcióopción a reiniciar el programa una vez realizada una operacióoperación.
SOLUCIÓSOLUCIÓN

Seguimos los mismos pasos vistos en el capícapítulo anterior en la creaciócreación de un programa.

Pasos 1 y 2: AnáAnálisis y diagrama de flujo del programa Calculadora.

Los elementos implicados son

  • Salidas: Mostrar menúmenú inicial, preguntar por meros implicados, mostrar resultado.

  • Entradas: OperacióOperación a realizar (operac), meros implicados (sumando1, sumando2....), reinicio.

  • Almacenamiento de datos: operacion a realizar (operac), meros implicados, resultado, reinicio (S/N)

  • Operaciones: bucle y condicional (SEGUN, SI-ENTONCES, REPETIR hasta que), operaciones gicas (comparaciones, Y, O), operaciones aritméaritméticas.

En cuanto a la estructura del programa se propone realizar funciones parciales para cada una de las operaciones.

Para mostrar el menúmenú se propone la estructura SEGUN ya que las opciones son discretas (4 operaciones) dentro de una estructura REPETIR hasta que la opcióopción seleccionada sea la correcta.

El reinicio se realiza al finalizar cada operacióoperación, preguntando y si la respuesta es afirmativa, modificar la condiciócondición que volvívolvía a mostrar el menúmenú inicial (operac).

Diagrama de flujo:

diagramaflujo.pngdiagramaflujo.png

Las dimensiones del diagrama no permiten distinguirlo bien, pero notar que hay una estructura REPETIR HASTA QUE la variable operac tenga un valor comprendido entre 1 y 4, que muestra el mensaje inicial con las operaciones a elegir.

image-1664305359822.pngimage-1664305359822.png

image-1664305246214.pngimage-1664305246214.png

Dentro de ella una estructura SEGÚSEGÚN que abre 5 opciones posibles, la úúltima la de que se haya elegido un mero distinto del 1 al 4 que vuelve a iterar el proceso, y las otras 4 una por cada operacióoperación.

TambiéTambién que cada una de las 4 operaciones termina con un bloque condicional para preguntar por el reinicio, y en caso de querer reiniciar, le da a la variable operac un valor diferente de 1,2, 3 y 4 lo que reactiva el bucle repetir hasta que.

image-1664305097276.pngimage-1664305097276.png

Pasos 3, 4 y 5: CodificacióCodificación, compilaciócompilación y verificacióverificación del programa Calculadora con PSeInt.

Empezamos por definir las funciones. La suma la haremos directamente dentro del algoritmo principal para ver la diferencia.

image-1654451001598.pngimage-1654451001598.png

El algoritmo principal quedaríquedaría de la siguiente forma:

image-1664305476461.pngimage-1664305476461.png

image-1664305520242.pngimage-1664305520242.png

image-1664305565107.pngimage-1664305565107.png

EJEMPLO2

ENUNCIADO

Crea un programa en Scratch para aprender las tablas de multiplicar. Las condiciones del programa son:

  • Al inicio un personaje pregunta si quieres participar o no. Tiene que seguir preguntando hasta que se le diga que .
  • DespuéDespués preguntarápreguntará del 1 al 10 quéqué tabla de multiplicar quiere practicar.
  • A continuaciócontinuación mostrarámostrará en pantalla las operaciones de la tabla de multiplicar del mero introducido.
  • Al terminar se despedirádespedirá.
SOLUCIÓSOLUCIÓN

Seguimos los mismos pasos vistos en el capícapítulo anterior en la creaciócreación de un programa.

Pasos 1 y 2: AnáAnálisis y diagrama de flujo del programa Tabla de multiplicar

Los elementos implicados son

  • Salidas: Saludar, preguntar si se participa, preguntar la tabla a recitar, recitar la tabla, saludar al final.

  • Entradas: Respuesta /No a participar, mero de la tabla.

  • Almacenamiento de datos: almacenamos las respuestas obtenidas, y una variable contador para recorrer la tabla del 0 al 10

  • Operaciones: bucle condicional (repetir mientras la respuesta sea no), bucle con mero prefijado (multiplicar del 0 al 10), multiplicaciones, comparaciones, concatenaciones.

Diagrama de flujo:

image-1663263840580.pngimage-1663263840580.png

Pasos 3, 4 y 5: CodificacióCodificación, compilaciócompilación y verificacióverificación del programa Tabla de multiplicar con Scratch

Como siempre empezamos por definir las variables. Definimos una variable contador y le asignamos el valor 0 al inicio del programa. La otra variable no seráserá necesario crearla puesto que al ser respuesta de una pregunta, la crea el programa por defecto.

image-1663264147617.pngimage-1663264147617.png

image-1663264137317.pngimage-1663264137317.png

Saludamos y realizamos la pregunta con los bloques correspondientes de Apariencia y Sensores ya que son Salidas.

image-1663264272988.pngimage-1663264272988.png

AhíAhí comienza el primer bucle, en este caso condicional puesto que depende de la respuesta obtenida. En scratch el bloque que realiza esta operacióoperación es Repetir hasta que

image-1663264383423.pngimage-1663264383423.png

Cuando realizamos comparaciones con textos, hay que tener en cuenta las variaciones de mayúmayúsculas, minúminúsculas, tildes, etc...Lo mejor en ese caso serísería usar el operador "O" que nos admite como lidas cualquiera de las posibilidades (, Si, SI, si)

Una vez obtenida la respuesta afirmativa (ENTRADA), pasamos a preguntar de nuevo por el mero del 1 al 10 del que se quiere usar la tabla (SALIDA).

image-1663264617264.pngimage-1663264617264.png

Con la respuesta obtenida (ENTRADA) realizamos otro bucle en este caso del 0 al 10 por lo que son 11 veces, donde se va a mostrar en pantalla al personaje diciendo el numero de la tabla x contador = resultado y el valor del contador se va incrementando de uno en uno en cada iteracióiteración.

image-1663264859184.pngimage-1663264859184.png

Tras una úúltima salida con la despedida, el programa quedaríquedaría asíasí.

image-1663264971872.pngimage-1663264971872.png

Por úúltimo vendrívendría el momento de verificacióverificación del funcionamiento.

image-1663265372307.gifimage-1663265372307.gif

Consideraciones finales:

  • Este programita se podípodía haber hecho de muchas otras formas, como casi todos los programas. Se pueden utilizar estructuras condicionales anidadas, por ejemplo. Te invitamos a que explores algunas de ellas.
  • Se ha escogido esta forma porque es una de las que menos bloques de digo requiere. Es una buena prápráctica para nuestro alumnado exponerle a crear un programa de distintas formas y hacer un anáanálisis crícrítico de cada una de ellas.
  • Es bueno tener presente siempre en programacióprogramación las siglas DRY (Don't Repeat Yourself) Si se repiten muchas neas de digo o muchos bloques iguales, probablemente hay una forma s eficiente de hacerlo.

{{@5685}}