# -*- coding: utf-8 -*-
"""
Created on Mon Sep  8 10:27:12 2025

@author: mgeoffroy
"""
from math import pi

def maximum(n1, n2, n3):
    """
    Fonction qui retourne le maximum de 3 valeurs
    Parameters
    ----------
    n1 : int ou float
        1ere valeur à prendre en compte
    n2 : int ou float
        2e valeur à prendre en compte
    n3 : int ou float
        3e valeur à prendre en compte

    Returns
    -------
    Maximum : Dépend des types de paramètres
        Le maximum des 3 valeurs 

    """
    Maximum=0
    if n1>n2 and n1>n3:
           Maximum = n1
    elif n2>n1 and n2>n3:
        Maximum=n2
    else : 
        Maximum = n3
    return Maximum

def aireDisque(rayon):
    aire= pi*rayon**2
    return aire

def volumeCylindre(rayon, hauteur):
    aire= aireDisque(rayon)
    volume = aire*hauteur
    return volume

def volumeSphere(rayon):
    volume = 4/3*pi*rayon**3
    return volume

def aireRectangle(longueur, largeur) :
    aire = longueur*largeur
    return aire 

def volumePrismeDroit(longueur, largeur=3, hauteur=5):
    aire = aireRectangle(longueur,largeur)
    volume = aire*hauteur
    return volume

if __name__ == '__main__':
    choix = "oui"
    while choix=="oui" :
        while True:
            print("Choisissez une fonction :")
            print("1: Calcul du maximum")
            print("2: Calcul de l'air d'un disque")
            print("3: Calcul du volume d'un cylindre")
            print("4: Calcul du volume d'une sphère")
            print("5: Calcul de l'aire d'un rectangle")
            print("6: Calcul du volume d'un prisme droit")
    
            choix = input("Entrez le numéro de votre choix : ")
    
            if choix == '1':
                n1 = float(input("Entrez le premier nombre : "))
                n2 = float(input("Entrez le deuxième nombre : "))
                n3 = float(input("Entrez le troisième nombre : "))
                resultat = maximum(n1, n2, n3)
                print(f"Le maximum est : {resultat}")
    
            elif choix == '2':
                rayon = float(input("Entrez le rayon du disque : "))
                resultat = aireDisque(rayon)
                print(f"L'aire du disque est : {resultat}")
    
            elif choix == '3':
                rayon = float(input("Entrez le rayon du cylindre : "))
                hauteur = float(input("Entrez la hauteur du cylindre : "))
                resultat = volumeCylindre(rayon, hauteur)
                print(f"Le volume du cylindre est : {resultat}")
    
            elif choix == '4':
                rayon = float(input("Entrez le rayon de la sphère : "))
                resultat = volumeSphere(rayon)
                print(f"Le volume de la sphère est : {resultat}")
    
            elif choix == '5':
                longueur = float(input("Entrez la longueur du rectangle : "))
                largeur = float(input("Entrez la largeur du rectangle : "))
                resultat = aireRectangle(longueur, largeur)
                print(f"L'aire du rectangle est : {resultat}")
    
            elif choix == '6' :
                print("Combien d'argument souhaitez-vous ajouter ?")
                print("1. La longueur")
                print("2. La longueur et la largeur")
                print("3. La longueur, la largeur et la hauteur")
                choix_prisme = input("Entrez votre choix :")
                if choix_prisme == '1':
                    longueur = float(input("Entrez la longueur de la base : "))
                    resultat = volumePrismeDroit(longueur)
                    print(f"Le volume du prisme est : {resultat}")
                elif choix_prisme == '2':
                    longueur = float(input("Entrez la longueur de la base : "))
                    largeur = float(input("Entrez la largeur de la base : "))
                    resultat = volumePrismeDroit(longueur, largeur)
                    print(f"Le volume du prisme est : {resultat}")
                else:
                    longueur = float(input("Entrez la longueur de la base : "))
                    largeur = float(input("Entrez la largeur de la base : "))
                    hauteur = float(input("Entrez la hauteur du prisme"))
                    resultat = volumePrismeDroit(longueur, largeur)
                    print(f"Le volume du prisme est : {resultat}")
            else :
                print("Choix invalide. Veuillez réessayer.")
            break
        choix = input("Tapez oui pour continuer ")
    print("AU REVOIR !")
    
