Saltar a contenido

Parcialito 1 - 2023a - Tema 2#

Ejercicio 1#

Implemente un programa que reciba datos ingresados por el usuario y se almacenen en tres variables booleanas, llamadas p, q y r, respectivamente. El programa debe imprimir cuánto vale z para el patrón de valores ingresados. La relación entre las entradas y z está dada por la siguiente tabla de verdad:

p q r z
False False False 1
False False True 0
False True False 0
False True True 1
True False False 0
True False True 1
True True False 1
True True True 0

Ejercicio 2#

Dado el código que se muestra más abajo, se pide mostrar lo que se vería por la terminal si se evaluaran las variables x, y y z para cada uno de los siguientes casos:

  1. x = 0, y = 3, z = 1
  2. x = 1, y = 1, z = 1
  3. x = 1, y = -2, z = 0
x = # valor correspondiente a x
y = # valor correspondiente a y
z = # valor correspondiente a z

if y == 1:
    z = 2
if z == 1:
    w = x + y
    print("alpha")
elif z == 1 and x == 0:
    print("beta")
    w = z + x + y
    if w == 4:
        w = 2
    print("gamma")
elif z == 2:
    z = 1
    print("delta")
else:
    w = 10
    print("epsilon")

print("z =", z)
print("w =", w)

Ejercicio 3#

Considere un algoritmo en el que se solicita al usuario que ingrese un número entero para representar un año y, si el valor ingresado por el usuario es un número entero no negativo, muestra en la pantalla el mensaje “El año X es bisiesto” o “El año X no es bisiesto” (donde X es el año). Un año es bisiesto si es un número divisible por 4, pero no si es divisible por 100, excepto que también sea divisible por 400. Si el número no es entero o es negativo, muestra un mensaje al usuario indicando el error y no realiza el cálcuantes descripto ni imprime el mensaje indicando si el año es o no bisiesto.

  1. Realizar el diagrama de flujo del algoritmo descripto.
  2. Implementar, usando el lenguaje de programación python, el algoritmo descripto.

Ejercicio 4#

Para los siguientes items, considere que cada inciso es independiente de los demás y, en caso de mostrar código python, no guardan relación con líneas anteriores.

  1. Seleccione cuáles de las siguientes sentencias corresponden a código python sin errores (puede marcar más de una opción):

    • 4_1_a = 'es válida'
    • ix = 230 / 0 + 3
    • zi = 100 * 'no debo'
    • print('esta', 'también', 'es', 'válida')
    • _epsilon = 0.345
    • cadena = 'la' + '4.1.d' + 'no' + 'es' + "válida"
    • is = 'this a string? no, it is a pencil.'
    • bi = int('2.0')
    • iz = -7 * 8.0 / (3 * 2 ** 0 * 3 - 1) + 7
    • si = 'flores' - 'es'
  2. Seleccione cuáles de las siguientes afirmaciones son correctas (puede marcar más de una opción):

    • Al programar en python, los errores semánticos de programación nos los detecta y muestra el IDE.
    • Utilizar nombres de variables en mayúsculas es un error.
    • La operación x += x ** 3 es equivalente a x = 4 * x.
    • Un problema en programación intratable es un problema para el que no se puede proponer un algoritmo que lo resuelva.
    • En python, el siguiente bloque de código no produce ninguna excepción.

      cuentas = 0
      if cuentas != 0 and (100 / cuentas) > 10:
          print(f"resultado: {cuentas ** 2}")