float min2(float a, float b) {
if (a < b)
return a;
else
return b;
}
Pour calculer le minimum de 3 nombres, on peut, par exemple, calculer d'abord le minimum des 2 premiers, et ensuite calculer le minimum de ce résultat et du dernier nombre. Comme on a déjà écrit une fonction retournant le minimum de 2 nombres au point précédent, on peut donc la réutiliser.
int min3(int a, int b, int c) {
return int(min2(min2(a, b), c));
}
Pour arrondir un nombre à 2 décimales, il suffit de le multiplier par 100, le convertir en int, le reconvertir en float et le diviser par 100, comme nous l'avions vu à la série 2. Lorsqu'on divise 2 nombres, si l'un d'entre eux est un float, le compilateur effectuera une division réelle. Dans le corrigé, on écrit la constante 100 100.0 afin que le compilateur la considère comme une constante float, ce qui nous évite de faire la conversion explicite.
float arrondi(float a) {
return int(a * 100) / 100.0;
}
Il n'y pas d'autre manière que de fournir un texte particulier pour chaque nombre. La fonction peut aussi s'écrire avec des ifs.
void traduction(int n) {
switch (n) {
case 0:
cout << "zero";
break;
case 1:
cout << "un";
break;
case 2:
cout << "deux";
break;
case 3:
cout << "trois";
break;
case 4:
cout << "quatre";
break;
case 5:
cout << "cinq";
break;
case 6:
cout << "six";
break;
}
}