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ñapequeña calculadora con las cuatro operaciones básicasbásicas (sumar, restar, multiplicar y dividir):

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

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

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

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

Los elementos implicados son

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

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

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

  • Operaciones: bucle y condicional (SEGUN, SI-ENTONCES, REPETIR hasta que), operaciones lógicaslógicas (comparaciones, Y, O), operaciones aritméticas.
    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ónopción seleccionada sea la correcta.

El reinicio se realiza al finalizar cada operación,operación, preguntando y si la respuesta es afirmativa, modificar la condicióncondición que volvíavolví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ÚNSEGÚN que abre 5 opciones posibles, la últimaúltima la de que se haya elegido un númeronúmero distinto del 1 al 4 que vuelve a iterar el proceso, y las otras 4 una por cada operación.operación.

TambiénTambié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ón,Codificación, compilacióncompilación y verificaciónverificació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íaquedarí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 sí.sí.
  • DespuésDespués preguntarápreguntará del 1 al 10 quéqué tabla de multiplicar quiere practicar.
  • A continuacióncontinuación mostrarámostrará en pantalla las operaciones de la tabla de multiplicar del númeronúmero introducido.
  • Al terminar se despedirá.despedirá.
SOLUCIÓNSOLUCIÓN

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

Pasos 1 y 2: AnálisisAná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 Sí/Sí/No a participar, númeronú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 númeronúmero prefijado (multiplicar del 0 al 10), multiplicaciones, comparaciones, concatenaciones.

Diagrama de flujo:

image-1663263840580.pngimage-1663263840580.png

Pasos 3, 4 y 5: Codificación,Codificación, compilacióncompilación y verificaciónverificació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ónoperación es Repetir hasta que

image-1663264383423.pngimage-1663264383423.png

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

Una vez obtenida la respuesta afirmativa (ENTRADA), pasamos a preguntar de nuevo por el númeronú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ón.iteración.

image-1663264859184.pngimage-1663264859184.png

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

image-1663264971872.pngimage-1663264971872.png

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

image-1663265372307.gifimage-1663265372307.gif

Consideraciones finales:

  • Este programita se podíapodí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 códigocódigo requiere. Es una buena prácticapráctica para nuestro alumnado exponerle a crear un programa de distintas formas y hacer un análisisanálisis críticocrítico de cada una de ellas.
  • Es bueno tener presente siempre en programaciónprogramación las siglas DRY (Don't Repeat Yourself) Si se repiten muchas líneaslíneas de códigocódigo o muchos bloques iguales, probablemente hay una forma másmás eficiente de hacerlo.

{{@5685}}