#include unsigned long n; unsigned long A,B,C,max,x,y; void main() { cout << "Heu! Bonjour!!!\n\nCe programme determine la position d'un nombre\n dans un carre magique de cotes impairs.\n\n"; do { cout << "Nombre de cases par cote (impair SVP)\n"; cin >> A; } while ((A%2 == 0)||(A > 65535)); max = A*A; do { cout << "Entrer le nombre dont il faut trouver sa position\n"; cin >> n; } while (n > max); B=(n-1)/A; C=(n-1)%A; x=(A+1)/2; x=x+B; if (x<=C) x=x+A; x=x-C; y=1+2*B; if (y<=C) y=y+A; y=y-C; if (x<1) x=x+A; if (y<1) y=y+A; if (x>A) x=x-A; if (y>A) y=y-A; cout << "\nPOSITION ("<< x <<","<< y <<")\n\n"; }