<- DON

Fikir bir onceki sorunun cozumunde kullanilandakine benzer, tek fark bir fikir daha icermesidir.


double x;
scanf("%d%d",(int*)(&x), ((int*)(&x)+1));

*(int*)(&x) = *(int*)(&x) + *((int*)(&x)+1);
*((int*)(&x)+1) = *(int*)(&x) - *((int*)(&x)+1);
*(int*)(&x) = *(int*)(&x) - *((int*)(&x)+1);

printf("%d %d",*(int*)(&x), *((int*)(&x)+1));
(Bir onceki sorunun cozumune benzer sekilde, eger bu calismazsa, +1'leri -1'lere cevirin) Ek fikir, klasik icerik degistirilmesi probleminden alinmistir. Soru soyle: iki tamsayi degiskenin baska bir degisken kullanilmadan nasil degistirilecegidir. Cozumu asagidaki gibi.

int x,y;
scanf("%d%d",&x,&y);

x += y;
y = x-y;
x = x-y;

printf("%d %d",x,y);