examples/functions/01_functions.cat
# Exemple 3 : Fonctions
print("⇒ Fonctions simples")
# Fonction sans paramètres
dire_bonjour = () => {
print("Bonjour depuis une fonction!")
}
dire_bonjour()
# Fonction avec paramètres
additionner = (a, b) => {
a + b
}
resultat = additionner(15, 27)
print(f"15 + 27 = {resultat}")
# Fonction avec valeur par défaut
mantra = (nom="World") => {
print("Born to segfault,", nom, "!")
}
mantra()
mantra("Alice")
mantra("Bob")
print("\n⇒ Fonctions mathématiques")
# Fonction pour calculer le carré
carre = (x) => {
x * x
}
print("5² =", carre(5))
print("12² =", carre(12))
# Fonction pour calculer la puissance
puissance = (base, exposant) => {
resultat = 1
i = 0
while i < exposant {
resultat = resultat * base
i = i + 1
}
resultat
}
print("2^10 =", puissance(2, 10))
print("3^4 =", puissance(3, 4))
print("\n⇒ Fonction récursive (avec while)")
# Factorielle utilisant une boucle
factorielle = (n) => {
match n {
0 | 1 => { 1 }
n => {
resultat = 1
i = 2
while i <= n {
resultat = resultat * i
i = i + 1
}
resultat
}
}
}
print("5! =", factorielle(5))
print("10! =", factorielle(10))