===== Calcul des nombres d’Armstrong =====
=== Objectif : ===
On dénomme nombre d’Armstrong un entier naturel qui est égal à la somme des cubes des chiffres qui le composent.
=== Exemple : ===
153 = 1 + 125 + 27, est un nombre d’Armstrong.
=== Spécifications de l’algorithme :===
On sait qu'il n'existe que 4 nombres d’Armstrong, et qu'ils ont tous 3 chiffres (ils sont compris entre 100 et 500). Si l'on suppose qu'un tel nombre est écrit ijk (i chiffre des centaines, j chiffres des dizaines et k chiffres des unités), il suffit simplement d'envisager tous les nombres possibles en faisant varier les chiffres entre 0 et 9 et de tester si le nombre est d’Armstrong.
=== Implantation en C# ===
Ecrivez le programme C# complet qui fournisse les 4 nombres d’Armstrong :
Nombres d’Armstrong:
* 153
* 370
* 371
* 407
=== Proposition de squelette de classe C# à implanter : ===
class ApplicationArmstrong {
static void Main(string[ ] args) {
……..
}
}
La méthode Main calcule et affiche les nombres d’Armstrong.
=== Squelette plus détaillé de la classe C# à implanter :===
using System;
namespace CsExosAlgo1
{
class ApplicationArmstrong {
static void Main(string[ ] args) {
int i, j, k, n, somcube;
System.Console.WriteLine("Nombres d’Armstrong:");
for(i = 1; i<=9; i++)
for(j = 0; j<=9; j++)
for(k = 0; k<=9; k++)
{
……
}
}
}
}
===== Calcul d'un Palindrome =====
Objectif : Une phrase est dite palindrome si en éliminant les blancs entre les mots, elle représente la même lecture dans les deux sens.
Exemple : elu par cette crapule = eluparc ettec rap ule
=== Proposition de squelette de classe C# à implanter : ===
class palindrome
{
static string compresser ( string s )
{ …..
}
static string inverser ( string s )
{ …..
}
static void Main ( string [ ] args )
{
System .Console.WriteLine ("Entrez une phrase :");
string phrase = System .Console.ReadLine ( );
string strMot = compresser ( phrase );
string strInv = inverser ( strMot );
if( strMot == strInv )
System .Console.WriteLine ("phrase palindrome !");
else
System .Console.WriteLine ("phrase non palindrome !");
System .Console.ReadLine ( );
}
}
=== Travail à effectuer : ===
Ecrire les méthodes compresser et Inverser, il est demandé d'écrire une version de la méthode Inverser en construisant une chaîne locale à la méthode, caractère par caractère avec une boucle for à un seul indice.