PDA

View Full Version : سوال: کار نکردن if



Faraz Mehraien
شنبه 11 آبان 1392, 17:49 عصر
با سلام.من این برنامه رو نوشتم.می خوام که بر عکس یک عدد رو (مقلوب عدد)چاپ کنه و اگر با خود عدد برابر بود بگه که برابره ولی این آخرشو درست انجام نمیده.اینم کدم و از کامپایلر dev استفاده می کنم.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main(int argc, char *argv[])
{
int number,r,d=0;
printf("adady vared konid\n");
scanf("%d",&number);
while(number!=0)
{
r=number%10;
d=(d*10)+r;
number=(number-r)/10;

}

printf("%d",d);
if(d!=number)
printf("\naddad maghloub nemibashad");
else
printf("\naddad maghloub mibashad");
printf("\n");
system("PAUSE");
return 0;
}

Amir_Developer
شنبه 11 آبان 1392, 18:18 عصر
حله ؟
int number,temp,r,d=0;
printf("adady vared konid\n");
scanf("%d",&number);
temp=number;
while(number!=0)
{
r=number%10;
d=(d*10)+r;
number=(number-r)/10;

}

if(d!=temp)
{
printf("%d",d);
printf("\n addad maghloub mibashad");

}
else
printf("\n addad maghloub nemibashad");

Faraz Mehraien
شنبه 11 آبان 1392, 18:24 عصر
حله ؟
int number,temp,r,d=0;
printf("adady vared konid\n");
scanf("%d",&number);
temp=number;
while(number!=0)

{
r=number%10;
d=(d*10)+r;
number=(number-r)/10;

}

if(d!=temp)
{
printf("%d",d);
printf("\n addad maghloub mibashad");

}
else
printf("\n addad maghloub nemibashad");

بله. با تشکر درست کار می کنه.فقط این temp مثل flag می مونه؟یا چیز دیگست؟

Amir_Developer
شنبه 11 آبان 1392, 19:02 عصر
یه متغیر عددی مثل بقیه متغیر هاست که برای نگهداشتن مقدار عدد وارد شده در برنامه استفاده میشه. اصطلاحا متغیر کمکیه