# -*- coding: utf-8 -*-
from math import pi

#primera parte
def calculadora(radio, opción):
    if opción == 'a':
        diámetro = 2 * radio
        respuesta = print('El diámetro es: {:.2f} cm.'.format(diámetro))
    elif opción == 'b':
        perímetro = 2 * pi * radio
        respuesta = print('El perimetro es: {:.2f} cm.'.format(perímetro))
    elif opción == 'c':
        área = pi * radio ** 2
        respuesta = print('El área es: {:.2f} cm^2.'.format(área))
    elif opción == 'd':
        superficie = 4 * pi * radio ** 2
        respuesta = print('la superficie de la esfera es: {:.2f} cm^2.'.format(superficie))
    elif opción == 'e':
        volumen = (4 * pi / 3) * radio ** 3
        respuesta = print('El volumen de la esfera es: {:.2f} cm^3.'.format(volumen))
    else:
        respuesta = print('solamente puede seleccionar a, b, c, d, o e')

    return respuesta 
    
#segunda parte
def run():
    print('Diferentes calculos que se pueden hacer con el radio')
    opción = ''
    while opción < 'a' or opción > 'e':
        radio = float(input('Escriba un radio en cm: '))
        print(' a) calular diámetro')
        print(' b) calular perímetro')
        print(' c) calular área')
        print(' d) calular la superficie de la esfera')
        print(' e) calular volumen de la esfera')
        opción = str(input('¿qué desea calcular?'))
        
        calculadora(radio, opción)
        return opción

if __name__ == '__main__':
    run()

Explicación:

1.Primera parte
Definimos nuestra función para realizar los cálculos

def calculadora(radio, opción):
    if opción == 'a':
        diámetro = float(2 * radio)
        respuesta = print('El diámetro es: {:.2f} cm.'.format(diámetro))
    elif opción == 'b':
        perímetro = float(2 * pi * radio)
        respuesta = print('El perimetro es: {:.2f} cm.'.format(perímetro))
    elif opción == 'c':
        área = pi * radio ** 2
        respuesta = print('El área es: {:.2f} cm^2.'.format(área))
    elif opción == 'd':
        superficie = 4 * pi * radio ** 2
        respuesta = print('la superficie de la esfera es: {:.2f} cm^2.'.format(superficie))
    elif opción == 'e':
        volumen = (4 * pi / 3) * radio ** 3
        respuesta = print('El volumen de la esfera es: {:.2f} cm^3.'.format(volumen))
    else:
        respuesta = print('solamente puede seleccionar a, b, c, d, o e')

    return respuesta 

Esta función recibe un radio y una opción, dependiendo de la opción que se escoja la función realizará el cálculo correspondiente, si se escoge una opción diferente a los cálculos que puede realizar la función, se imprimirá “solamente puede seleccionar a, b, c, d, o e” y nos regresará “respuesta”.

2.Segunda parte

def run():
    print('Diferentes calculos que se pueden hacer con el radio')
    opción = ''
    while opción < 'a' or opción > 'e':
        radio = float(input('Escriba un radio en cm: '))
        print(' a) calular diámetro')
        print(' b) calular perímetro')
        print(' c) calular área')
        print(' d) calular la superficie de la esfera')
        print(' e) calular volumen de la esfera')
        opción = str(input('¿qué desea calcular?'))
        
        calculadora(radio, opción)
        return opción

if __name__ == '__main__':
    run()

  • Se inicializa “opción” como un string vacío.

  • Luego viene un while que hace que se repita el ciclo si se escoge una opción diferente a las que aparecen en pantalla.

  • Dentro del while se pide que se ingrese un radio, luego de introducir un radio se muestran los cálculos que puede hacer el programa y se pide una opción.

  • Luego llamamos a la función calcular y por ultimo se regresa la opción que se escogió, si esta opción está por fuera de nuestro rango de opciones, el ciclo se repetirá hasta que se escoja una opción valida.

¡Muchas gracias por haber leído!
Espero que sea de ayuda.

0 Comentarios

para escribir tu comentario

Artículos relacionados