Está en la página 1de 12

...Programa que resuelve una ecuacion de primer grado.

print('Programa para la resolucion de la ecuacion a x + b = 0.')

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

x = -b / a

print('Solucion: ', x)

52. Un programador propone el siguiente programa para resolver la ecuacion


de primer grado:
print('Programa para la resolucion de la ecuacion a x + b = 0.')

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

a * x + b = 0

print('Solucion: ', x)
REVISION//
este programa no resuelve la ecuacion por que asigna el valor 0 a una ecuacion,
(SyntaxError: cannot assign to operator)

53. Otro programador propone este programa:


print('Programa para la resolucion de la ecuacion a x + b = 0.')

x = -b / a

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

print('Solucion: ', x)
REVISION//
este programa no funciona por que la ecuacion llama a las variables antes de
declararlas.
(NameError: name 'b' is not defined)

54. Un estudiante ha tecleado el ultimo programa:


print('Programa para la resolucion de la ecuacion a x + b = 0.')

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

if a != 0:
x = -b / a
print('Solucion: ', x)

if a = 0:
print('La ecuacion no tiene solucion.')
REVISION//
este programa no funcion por que la segunda condicional (if a = 0:) tiene un
simbolo
de asignacion(=), no un signo de igualdad(==).
(SyntaxError: invalid syntax)
55. Un programador primerizo cree que la linea 10 de la ultima version del
programa(54)
es innecesaria, asi que propone esta otra version como solucion valida:
print('Programa para la resolucion de la ecuacion a x + b = 0.')

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

if a != 0:
x = -b / a
print('Solucion: ', x)

print('La ecuacion no tiene solucion.')


REVISION//
este programa no sirve por que si la variable a es 0 no hay mensaje que lo
advierta,
ademas que soluciona la ecuacion y al salir de la seleccion tambien imprimer el
mensaje
de 'La ecuacion no tiene solucion.'
(Solucion: -0.2
La ecuacion no tiene solucion.)

-----------------------------------------------------------------------------------
--------
...Programa que resuelve la ecuacion utilizando selecciones anidadas...
print('Programa para la resolucion de la ecuacion a x + b = 0.')

a = float(input('Valor de a: '))
b = float(input('Valor de b: '))

if a != 0:
x = -b / a
print('Solucion: ', x)

if a == 0:
if b != 0:
print('La ecuacion no tiene solucion.')
if b == 0:
print('la ecuacion tiene soluciones infinitas.')
-----------------------------------------------------------------------------------
-------

56. Indica que lineas del ultimo programa(y en que orden) se ejecutaran para cada
uno
de los siguientes casos:
a) a = 2 y b = 6 (Solucion: -3.0)
SOLUCION//
este programa ejecuta la primera condicional(if a != 0:) por que (b = 6) es
diferente que 0.
b) a = 0 y b = 3 (La ecuacion no tiene solucion.)
SOLUCION//
este programa ejecuta la segunda condicional(if a == 0:) por que (a = 0), despues
ejecuta
la primera condicional anidada (if b != 0:) por que (b = 3) es diferente de 0.
c) a = 0 y b = -3 (La ecuacion no tiene solucion.)
SOLUCION//
este programa ejecuta la segunda condicional(if a == 0:) por que (a = 0), despues
ejecuta
la primera condicional anidada (if b != 0:) por que (b = -3) es diferente de 0.
d) a = 0 y b = 0 (la ecuacion tiene soluciones infinitas.)
SOLUCION//
este programa ejecuta la segunda condicional(if a == 0:) por que (a == 0), despues
ejecuta
la segunda condicional anidada (if b == 0:) por que (b = 0) es igual a 0.

57. Diseñe un programa que lea un numero flotante por teclado y muestre por
pantalla
el mensaje <<El numero es negativo>>, solo si el numero es menor que cero.
ENTENDER EL PROBLEMA//
este programa es una secuencia que recibe un numero, despues tiene una condicional
que
imprime el mensaje si el numero es menor que 0, debe tener una segunda condicional
que se cumple si el numero es igual que 0, despues una tercera condicion que se
cumple
si el numero es mayor que 0.
1. un mensaje que explica de que se trata el programa
2. una entrada que recibe el numero del usuario (number)
3. una condicional que se ejecuta si el numero es negativo
4. una condicional que se ejecuta si el numero no es negativo
5. una condicional que se ejecuta si el numero es posivito
6. una condicional que se ejecuta si el numero es igual a 0
LOGICA//
***
start
Declarations
num number

output "Este programa evalua si un numero es negativo."


output "Escribe un numero: "
input number
if number < 0 then
output "El numero es negativo."
elif number == 0 then
output "El numero no es negativo."
else number > 0 then
output "El numero no es negativo."
stop
***
PROGRAMA PYTHON//
print('Este programa evalua si un numero es negativo.')

number = int(input('Escribe un numero: '))

if number < 0:
print('El numero es negativo.')
elif number == 0:
print('El numero no es negativo.')
else:
print('El numero no es negativo.')

58. Diseña un programa que lea un numero flotante por teclado y muestre por
pantalla
el mensaje <<El numero es positivo>>, solo si el numero es mayor o igual que 0.
ENTENDER EL PROBLEMA//
este programa es una secuencia que continua con tres condicionales, primero recibe
una entrada
continua con tres condicionales, dos de ellas se ejecutan si el numero es mayor o
igual a 0
la otra se ejecuta si el numero es menor que 0.
FLUJO//
1. un mensaje que explica de que se trata el programa
2. una entrada que recibe el numero del usuario (number)
3. una condicional que se ejecuta si el numero es positivo
4. una condicional que se ejecuta si el numero no es positivo
5. una condicional que se ejecuta si el numero es igual a 0.
LOGICA//
***
start
Declarations
num number

output "Este programa evalua si un numero es positivo."


output "Escribe un numero: "
input number
if number > 0 then
output "El numero es positivo."
if not number > 0 then
if number < 0 then
output "El numero es positivo."
else number == 0 then
output "El numero no es positivo."
endif
endif
stop
***
PROGRAMA PYTHON//
print('Este programa evalua si un numero es positivo.')

number = int(input('Escribe un numero: '))

if number > 0:
print('El numero es positivo.')
if not number > 0:
if number < 0:
print('El numero no es positivo.')
else:
print('El numero no es positivo.')

59. Diseña un programa que lea la edad de dos personas y diga quien es el mas
joven,
la primera o la segunda. Ten en cuenta que ambas pueden tener la misma edad. En tal
caso,
hazlo saber con un mensaje adecuado.
ENTENDER EL PROGRAMA//
este programa recibe la edad de dos personas y con condicionales decide cual de las
dos
edades es menor.
FLUJO//
1. un mensaje que declare lo que hace el programa
2. una entrada que recibe el primer valor de edad (edad1)
3. una entrada que recibe el segundo valor de edad (edad2)
4. una condicional que se ejecuta si la primera edad es mayor que la segunda
5. una condicional que se ejecuta si la segunda edade es mayor que la primera
6. una condicinal final que se ejecuta si las dos edades son iguales.
LOGICA//
***
start
Declarations
num edad1
num edad2

output "Este programa decide cual persona es menor."


output "Escriba la edad de la primera persona: "
input edad1
output "Escriba la edad de la segunda persona: "
input edad2
if edad1 < edad2 then
output "La primera persona es menor que la segunda."
elif edad1 > edad2 then
output "La segunda persona es menor que la primera."
else edad1 == edad then
output "Las dos personas tienen la misma edad."
endif
stop
***
PROGRAMA PYTHON//
print('Este programa decide cual persona es menor.')

edad1 = int(input('Escriba la edad de la primera persona: '))


edad2 = int(input('Escriba la edad de la segunda persona: '))

if edad1 < edad2:


print('La primera persona es menor que la segunda.')
elif edad1 > edad2:
print('La segunda persona es menor que la primera.')
else:
print('Las dos personas tienen la misma edad.')

60. Diseña un programa que lea un caracter de teclado y muestre por pantalla el
mensaje
<<Es parentesis>> solo si el caracter leido es parentesis abierto o cerrado.
ENTENDER EL PROGRAMA//
este programa es una secuencia seguida por dos tres condicionales, las dos primeras
deciden si el caracter es un parentesis abierto o cerrado y la ultima envia un
mensaje
si el caracter no es parentesis.
PROGRAMA PYTHON//
print('Este programa indica si un caracter es un parentesis.')

caracter = str(input('Escriba un caracter: '))

if caracter == '(':
print('El caracter es un parentesis abierto.')
elif caracter == ')':
print('El caracter es un parentesis cerrado.')
else:
print('El caracter no es un parentesis.')
61. Indica en cada uni de los siguientes programas que valores en las respectivas
entradas
provocan la aparicion de distintos mensajes.Piensa primero la solucion y comprueba
luego
que es correcta ayudandote con el ordenador.
-----------------------------------------------------------------------------------
----
def misterio_py():
letra = input('Dame una letra minuscula: ')

if letra <= 'k':


print('Es de las primeras del alfabeto: ')
if letra >= 'l':
print('Es de las ultimas del alfabeto: ')
-----------------------------------------------------------------------------------
----
REVISION//
este programa recibe una letra en formato cadena que se evalua en dos condicionales

cada una tiene un parametro que se ubica antes y despues de la mitad del alfabeto,
a partir de los valores numericos de cada letra determina si la letra minuscula
introducida
por el usuario pertenece a la primera letras o a las ultimas letras, al elegir la
condicion
correcta da salida a un mensaje correspondiente a los resultados.
-----------------------------------------------------------------------------------
----
from math import floor #la funcion floor redondea hacia abajo

def cuadrante_py():

grados = float(input('Dame un angulo o (en grados): '))

cuadrante = floor(grados) % 360 // 90


if cuadrante == 0:
print('primer cuadrante.')
if cuadrante == 1:
print('segundo cuadrante.')
if cuadrante == 2:
print('tercer cuadrante.')
if cuadrante == 3:
print('cuarto cuadrante.')
-----------------------------------------------------------------------------------
----
REVISION//
este programa recibe un valor tipo flotante que representa un angulo en grados,
primero
llama a la funcion floor del modulo la cual es necesaria para redondear hacia abajo
el numero
tipo float introducido por el usuario, la variable cudrante hace la operacion,
despues
de redondear el numero hacia abajo hace una division entera entre 360 y 90, estos
dos numeros
los divide y sus residuo lo utiliza para determinar el cuadrante en el que se
encuentra
el angulo, cuadrante 1, 2, 3 o 4, con el resultado entra a la seleccion correcta y
esto
da salida al mensaje correspondiente al resultado.
62. Que mostrara en pantalla el siguiente programa?
-----------------------------------------------------------------------------------
----
def comparaciones_py():
if 14 < 120:
print('Primer saludo.')
if '14' < '120':
print('Segundo saludo.')
-----------------------------------------------------------------------------------
----
REVISION//
este programa no tiene entradas y tiene dos condicionales, la primera condicional
es True
el numero 14 es menor que 120, la segunda es False, por esa razon solo da salida al
mensaje
de la primera condicional, si la segunda condicion fuera True tambien daria salida
a este
mensaje.

63. Diseña un programa que, dado un numero entero, muestre por pantalla el mensaje
<<El numero es par>> cuando el numero sea par y el mensaje <<El numero es impar>>
cuando
sea impar.
(Una pista: un numero es par si el resto dividirlo por 2 es 0, es impar en caso
contrario).
ENTENDER EL PROBLEMA//
este programa recibe un numero entero y determina a partir de una ecuacion si el
numero es
par o impar, el truco es determinar si el residuo de dividir el numero por 2 es 1 o
0,
al hacer la ecuacion se utiliza el resultado para elegir la condicional correcata y
dar
salida al mensaje correpondiente.
LOGICA//
***
start
Declarations
num number
str numberPar = "El numero es par."
str numberImpar = "El numero es impar."

output "Este programa determina si un numero es par o impar."


output "Escriba un numero entero: "
input number
if number % 2 = 0 then
output numberPar
if numver % 2 = 1 then
output numberImpar
endif
stop
***
PROGRAMA PYTHON//
print('Este programa determina si un numero es par o impar.')

numberPar = 'El numero es par.'


numberImpar = 'El numero es impar.'

number = int(input('Escriba un numero entero: '))


if number % 2 == 0:
print(numberPar)
if number % 2 == 1:
print(numberImpar)

64. Diseña un programa que, dado un numero entero, determine si este es el doble de
un
numero impar.(Ejemplo: 14 es el doble de 7, que es impar.)
ENTENDER EL PROBLEMA//
este programa es una secuencia sencilla que recibe un numero, tiene una variable
que divide
el numero por 2 y ese resultado lo evalua en dos condicionales que determinan si el
resultado
de la division es un numero par o impar, si es posible tengo la idea de que se
pueda hacer
la operacion completa y asi hacer un programa mas corto y entendible.
LOGICA//
***
start
Declarations
num number
str numberImpar = "El numero es el doble de un numero impar"

output "Este programa determina si un numero es el doble de un numero impar."


output "Escribe un numero: "
input number
if (number / 2) % 2 > 0 then
output numberImpar
else then
output "El numero no es el doble de un numero impar."
endif
stop
***
PROGRAMA PYTHON//
print('Este programa determina si un numero es el doble de un numero impar.')

numberImpar = 'El numero es el doble de un numero impar.'


number = int(input('Escribe un numero: '))

if (number / 2) % 2 > 0:
print(numberImpar)
else:
print('El numero no es el doble de un numero impar.')

65. Diseña un programa que, dados dos numeros enteros, muestre por pantalla uno de
estos
mensajes: -El segundo numero es el cuadrado del primero-,-El segundo numero es
menor que
el cuadrado del primero-, o bien -El segundo es mayor que el cuadrado del primero-
dependiendo
de la verificacion de la condicion correspondiente al significado de cada mensaje.
ENTENDER EL PROGRAMA//
este programa tiene dos entradas que reciben dos numeros enteros, usando los
numeros de
esas entradas se deben ejecutar ecuaciones que determinen diferentes condiciones
respecto
a si uno es el cuadrado del otro, usa diferentes condicionales donde se pueden
hacer las
operaciones como lo supe en el ejercicio anterior. Es mejor crear variables que
potencien
los numeros para que las operaciones se ejecuten una sola vez en la variable y no
cada ves
en cada condicional.
LOGICA//
***
start
Declarations
num number1
num number2
num number1to2 = number1 ** 2
num number2to2 = number2 ** 2

output "Escribe el primer numero: "


input number1
output "Escribe el segundo numero: "
input number2
if number1to2 == number2to2 then
output "Los cuadrados de los dos numeros es igual."
if number1to2 < number2to2 then
output "El cuadrado del segundo numero es mayor que el cuadrado del
primero."
if number1to2 > number2to2 then
outptu "El cuadrado del primer numero es mayor que el cuadrado del
segundo."
if number1 == number2to2 then
output "El primer numero es igual al cuadrado del segundo numero."
else
output "El numero no cumple ninguna de las condicionales."
endif
stop
***
PROGRAMA PYTHON//
#declaracion de las variables
number1 = int(input('Escribe el primer numero: '))
number2 = int(input('Escribe el segundo numero: '))
number1to2 = number1 ** 2
number2to2 = number2 ** 2

#Condicionales
if number1to2 == number2to2:
print('Los cuadrados de los dos numeros es igual.')
if number1to2 < number2to2:
print('El cuadrado del segundo numero es mayor que el cuadrado del primero.')
if number1to2 number2to2:
print('El cuadrado del primer numero es mayor que el cuadrado del segundo.')
if number1 == number2to2:
print('El primer numero es igual al cuadrado del segundo numero.')

66. Un capital de C euros a un interes del x por cien anual durante n años se
convierte
en C * (1 + x / 100) ** n euros. Diseña un programa Python que solicite la cantidad
C,
el interes x y el numero de años n y calcule el capital final solo si x es una
cantidad
positiva.
ENTENDER EL PROBLEMA//
este programa recibe tres entrdas en una secuencia que utiliza esos datos para
ejecutar
una ecuacion que calcula el interes de cierta cantidad de euros invertidos durante
cierta
cantidad de años, este calculo se ejecuta solo si el valor C es positivo, sino es
positvo
ejecuta una condiconal que da salida a un mensaje correspondiente.
LOGICA//
***
start
Declarations
num C
num x
num n
num inversionC

output "Este programa calcula un capital de inversion."


output "Escribe el capital de inversion: "
input C
output "Escribe el porcentaje de interes anual: "
input x
output "Escribe la cantida de años: "
input n
if C > 0 then
set inversionC = (C * (1 + (x / 100))) ** n
output inversionC
else
output "El valor de la inversion no es valido."
stop
***
PROGRAMA PYTHON//
#Inicio del programa
print('Este programa calcula un capital de inversion.')

#Entradas del usuario


C = int(input('Escribe el capital de inversion: '))
x = float(input('Escribe el porcentaje de interes anual: '))
n = int(input('Escribe la cantidad de años: '))

#Condicionales
if C > 0:
inversionC = (C * (1 + (x / 100))) ** n
print('El resultado es {0}.'.format(inversionC))
else:
print('El valor de la inversion no es valido.')

67. Realiza un programa que calcule el desglose minime en billetes y monedas de una
cantidad exacta de euros. Hay billetes de 500, 200, 100, 50, 20, 10 y 5 Euros
y monedas de 2 y 1 Euros.
ENTENDER EL PROBLEMA//
este programa tiene una entrada que recibe una cantidad de euros y los desglosa
poco
a poco hasta que da salida, debe tener una variable que empiece a dividir el valor
entre
los valores de cada billete y vaya asignando los valores a cada tipo de moneda,
este
programa es algo mas complicado que los anteriores por lo que es mejor si hago el
FLUJO
y la LOGICA completa para tener un buen resultado. Creo que lo mas coveniente es
usar
condicionales anidadas asi el numero se va desglosando poco a poco, en cada
operacion
va a ser necesario descontar el valor del billete.
FLUJO//
PROGRAMA PYTHON//
#Inicio del programa
print('Este programa hace un desglose de cierta cantidad de euros. ')

#Entrada del usuario


numberTotal = int(input('Escribe una cantidad de Euros: '))

#Inicio de las condicionales


if numberTotal > 500:
bill500 = numberTotal // 500
if bill500 == 1:
print(bill500, 'billete de 500 euros.')
else:
print(bill500, 'billetes de 500 euros.')
valorParcial = numberTotal - ((numberTotal // 500) * 500)
numberTotal = valorParcial
if numberTotal > 200:
bill200 = numberTotal // 200
if bill200 == 1:
print(bill200, 'billete de 200 euros.')
else:
print(bill200, 'billetes de 200 euros.')
valorParcial = numberTotal - ((numberTotal // 200) * 200)
numberTotal = valorParcial
if numberTotal > 100:
bill100 = numberTotal // 100
if bill100 == 1:
print(bill100, 'billete de 100 euros.')
else:
print(bill100, 'billetes de 100 euros.')
valorParcial = numberTotal - ((numberTotal // 100) * 100)
numberTotal = valorParcial
if numberTotal > 50:
bill50 = numberTotal // 50
if bill50 == 1:
print(bill50, 'billete de 50 euros.')
else:
print(bill50, 'billetes de 50 euros.')
valorParcial = numberTotal - ((numberTotal // 50) * 50)
numberTotal = valorParcial
if numberTotal > 20:
bill20 = numberTotal // 20
if bill20 == 1:
print(bill20, 'billete de 20 euros.')
else:
print(bill20, 'billetes de 20 euros.')
valorParcial = numberTotal - ((numberTotal // 20) * 20)
numberTotal = valorParcial
if numberTotal > 10:
bill10 = numberTotal // 10
if bill10 == 1:
print(bill10, 'billete de 10 euros.')
else:
print(bill10, 'billetes de 10 euros.')
valorParcial = numberTotal - ((numberTotal // 10) * 10)
numberTotal = valorParcial
if numberTotal > 5:
bill5 = numberTotal // 5
if bill5 == 1:
print(bill5, 'billete de 5 euros.')
else:
print(bill5, 'billetes de 5 euros.')
valorParcial = numberTotal - ((numberTotal // 5) * 5)
numberTotal = valorParcial
if numberTotal > 2:
bill2 = numberTotal // 2
if bill2 == 1:
print(bill2, 'moneda de 2 euros.')
else:
print(bill2, 'monedas de 2 euros.')
valorParcial = numberTotal - ((numberTotal // 2) * 2)
numberTotal = valorParcial
if numberTotal > 0:
if numberTotal == 1:
print(numberTotal, 'moneda de 1 Euro.')
else:
print(numberTotal, 'monedas de 1 Euro.')

También podría gustarte