Avec deux entiers positifs a et b, on a effectué les opérations suivantes :
1) L'addition des deux nombres,
2) La soustraction (du plus grand on a retranché le plus petit),
3) La multiplication des deux nombres,
4) La division du plus grand par le plus petit.
La somme de ces quatre résultats a été trouvée égale à 16807.
Quels sont les deux nombres initiaux ?
Donner toutes les solutions possibles.
Analyse
a+b+a-b+ab+a/b = 16807 soit 2a+ab+a/b = 16807, ne reste plus qu'à trouver toutes
les solutions avec a<8404.
Programme
void main ( void ) {
unsignedlong a,b;
for ( a=2; a<8404 ; a++ )
for ( b=1 ; ++b<a ; (!(2*a*b+a+a*b*b-16807*b)?printf("a=%ld b=%ld\n",a,b):0) ) ;
}