Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Parcialito de programación, Exámenes de Programación Informática

Parcial con ejercicios resueltos

Tipo: Exámenes

2022/2023

Subido el 12/06/2023

shara-zapata
shara-zapata 🇦🇷

2 documentos

1 / 2

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Primer parcialito 2021 (unidades 1 a 3)
Resolver simulando una situación de parcial, individualmente, y controlando el tiempo
(1h 30m para los dos ejercicios)
Ejercicio 1
Se desea simular el inicio de sesión de usuario de una aplicación. La aplicación debe solicitar
nombre y contraseña.
- Si el nombre y la contraseña son correctos, mostrar el mensaje "bienvenido al sistema", y un
mensaje informando cuantos intentos fallidos hubo.
- Si el nombre o la contraseña son incorrectos mostrar un menú (escribir la opciones en pantalla) con
dos opciones: "1- reintentar, 2- recuperar contraseña".
- Si el usuario elige 1, debe poder volver a ingresar la contraseña como al comienzo.
- Nota: Solo puede reintentar 5 veces. Luego del 5 intento fallido, en lugar del menú, el
sistema debe mostrar el mensaje "cuenta bloqueada" y finalizar.
- Si el usuario elige 2, el sistema debe pedir una cuenta de correo
- Si la cuenta es correcta, debe mostrar el mensaje "correo de recuperación enviado"
- Si la cuenta es incorrecta, debe mostrar el mensaje "datos incorrectos, cuenta
bloqueada".
Para este ejemplo, el nombre de usuario y la contraseña correcta serían "alumno” y "FooBar42”, y el
email para la recuperación "[email protected]
Ayudas: Comenzar por versiones más simples e ir complicándolo de a poco:
1. Primero escriba un algoritmo que simplemente muestre el menú (una sola vez) y si el usuario selecciona 1, pida nombre
y password, si selecciona 2 pida email (y en ambos casos verifique si los datos ingresados son correctos).
2. Anide el algoritmo del punto 1 en alguna estructura repetitiva que itere 5 veces
3. Modifique el algoritmo para que en la 1er iteración no muestre el menú, sino actúe como si el usuario hubiese ingresado
1 y directamente pida nombre y contraseña.
4. Modifique la condición de su estructura repetitiva principal para que si el usuario acierta la contraseña o ingresa a la
opción 2, esta deje de iterar (aunque no llegue a 5 iteraciones)
5. Modifique el código de la opción 1, para que en el 5to intento, si falla, agregue el mensaje8 "cuenta bloqueda”; y desde el
2do, si acierta, muestre el conteo de intentos anteriores.
Ejemplo de resolución: https://youtu.be/eV6ZBnvwql4
pf2

Vista previa parcial del texto

¡Descarga Parcialito de programación y más Exámenes en PDF de Programación Informática solo en Docsity!

Primer parcialito 2021 (unidades 1 a 3) ▪ Resolver simulando una situación de parcial, individualmente, y controlando el tiempo (1h 30m para los dos ejercicios) Ejercicio 1 Se desea simular el inicio de sesión de usuario de una aplicación. La aplicación debe solicitar nombre y contraseña.

  • Si el nombre y la contraseña son correctos, mostrar el mensaje "bienvenido al sistema", y un mensaje informando cuantos intentos fallidos hubo.
  • Si el nombre o la contraseña son incorrectos mostrar un menú (escribir la opciones en pantalla) con dos opciones: "1- reintentar, 2- recuperar contraseña".
    • Si el usuario elige 1, debe poder volver a ingresar la contraseña como al comienzo.
      • Nota: Solo puede reintentar 5 veces. Luego del 5 intento fallido, en lugar del menú, el sistema debe mostrar el mensaje "cuenta bloqueada" y finalizar.
    • Si el usuario elige 2, el sistema debe pedir una cuenta de correo
      • Si la cuenta es correcta, debe mostrar el mensaje "correo de recuperación enviado"
      • Si la cuenta es incorrecta, debe mostrar el mensaje "datos incorrectos, cuenta bloqueada". Para este ejemplo, el nombre de usuario y la contraseña correcta serían "alumno” y "FooBar42”, y el email para la recuperación "[email protected]” Ayudas: Comenzar por versiones más simples e ir complicándolo de a poco:
  1. Primero escriba un algoritmo que simplemente muestre el menú (una sola vez) y si el usuario selecciona 1, pida nombre y password, si selecciona 2 pida email (y en ambos casos verifique si los datos ingresados son correctos).
  2. Anide el algoritmo del punto 1 en alguna estructura repetitiva que itere 5 veces
  3. Modifique el algoritmo para que en la 1er iteración no muestre el menú, sino actúe como si el usuario hubiese ingresado 1 y directamente pida nombre y contraseña.
  4. Modifique la condición de su estructura repetitiva principal para que si el usuario acierta la contraseña o ingresa a la opción 2, esta deje de iterar (aunque no llegue a 5 iteraciones)
  5. Modifique el código de la opción 1, para que en el 5to intento, si falla, agregue el mensaje "cuenta bloqueda”; y desde el 2do, si acierta, muestre el conteo de intentos anteriores. Ejemplo de resolución: https://youtu.be/eV6ZBnvwql

Ejercicio 2 En una carrera de mountain bike, el tiempo se mide de la siguiente manera: Cuando larga la primer categoría, el cronómetro oficial empieza a correr. A partir de allí, cada 1 minuto se larga una nueva categoría. Es decir, si son 3 categorías, la primera larga cuando el cronómetro comienza en 0, la segunda cuando lleva 1min, y la tercera cuando lleva 2min. Luego, cuando los corredores finalizan, al tiempo que registra el cronómetro se le debe descontar el tiempo de demora de su largada. Por ejemplo, si un competidor de la categoría 3 registra 1h, 30m y 15s, su tiempo real de carrera sería 1h, 28m y 15s, porque comenzó cuando el cronómetro oficial llevaba 2min. Escriba un algoritmo que permita (a) ir ingresando los números, tiempos y las categorías de los competidores (5 valores por corredor: cat, nro, h, m, s; la carga finaliza cuando cat=0) a medida que van finalizando su carrera, e informe al finalizar la carga: (b) promedio de tiempo de cada categoría (c) nro y tiempo del ganador de cada una de las 3 categoría (d) nro del mejor en general (considerando todos los competidores sin distinguir categoría) Ayudas:

  1. para que le sea más fácil guardar y comparar los tiempos, combine horas, minutos y segundos en un solo número (pueden pegarlo como hemos hecho con las fechas, o pasar todo a segundos)
  2. para obtener los promedios de cada categoría, habrá que sumar todos los tiempos por categoría (3 acumuladores), y contar cuántos competidores hay por categoría (3 contadores)
  3. Para saber el ganador de cada categoría no hacer falta buscar el menor... dado que los datos se cargan a medida que los competidores van arribando a la meta, el primero que se cargue en cada categoría será el ganador
  4. El ganador de la general será uno de los tres ganadores que obtuvo para el punto (c): el que registre el menor tiempo de esos tres Ejemplo de resolución: https://youtu.be/jerKmqjm2oE