French
File size: 1,814 Bytes
68be1dd
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50

// Package mathématique en JavaScript pour BzzBee
// Convention: pollen -> paramètres : miel

const args = process.argv.slice(2);

if (args.length === 0) {
    console.log("🍯 Package Math BzzBee chargé! Fonctions disponibles:");
    console.log("- addition [a] [b]");
    console.log("- soustraction [a] [b]");
    console.log("- multiplication [a] [b]");
    console.log("- division [a] [b]");
    console.log("- modulo [a] [b]");
    console.log("- factorielle [n]");
    process.exit(0);
}

const operation = args[0];

function calculate(op, a, b) {
    const numA = parseFloat(a) || 0;
    const numB = parseFloat(b) || 0;
    
    switch(op) {
        case 'addition':
            return `🍯 Résultat: ${numA} + ${numB} = ${numA + numB}`;
        case 'soustraction':
            return `🍯 Résultat: ${numA} - ${numB} = ${numA - numB}`;
        case 'multiplication':
            return `🍯 Résultat: ${numA} × ${numB} = ${numA * numB}`;
        case 'division':
            if (numB === 0) return "❌ Division par zéro impossible!";
            return `🍯 Résultat: ${numA} ÷ ${numB} = ${numA / numB}`;
        case 'modulo':
            if (numB === 0) return "❌ Modulo par zéro impossible!";
            return `🍯 Résultat: ${numA} % ${numB} = ${numA % numB}`;
        case 'factorielle':
            if (numA < 0 || !Number.isInteger(numA)) return "❌ Factorielle uniquement pour les entiers positifs!";
            let fact = 1;
            for (let i = 1; i <= numA; i++) fact *= i;
            return `🍯 Résultat: ${numA}! = ${fact}`;
        case 'test':
            return "🍯 Package Math JavaScript testé avec succès!";
        default:
            return `❌ Opération '${op}' non reconnue!`;
    }
}

console.log(calculate(operation, args[1], args[2]));