اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

معکوس کردن یک عدد در c++

0 امتیاز
19,410 نمایش

با سلام
میخواستم بدونم چطور میشه یک عدد رو معکوس کنم؟
یه کد پیدا کردم ولی بعضی دستوراتشو نمیدونم ممنون میشم یکی برام توضیح بده

#include
main()
{
  long a;
  int b,c;
  cin>>a;
  while(a!=0)
  {
    b=a%10;
    cout<c=a/10;
    a=c;
  }

  cin.get();
  cin.ignore ();
  return 0;
}
پرسیده شده شنبه ۲۵ آبان ۱۳۹۲ در C++ توسط marmolak  
ویرایش شده شنبه ۲۵ آبان ۱۳۹۲ توسط prodo

فکر کنم cout<c=a/10 اشتباه خورده اونجا. احتمالاً c=a/10 بوده.

2 پاسخ

0 امتیاز
 
بهترین پاسخ

این کد درستش باید این طوری باشه

#include <iostream>
using namespace std;

int main()
{
  long a, b=0;
  cin>>a;
  while(a!=0)
  {
    b=b*10+a%10;
    a/=10;
  }
  cout<<b;
  return 0;
}
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده شنبه ۲۵ آبان ۱۳۹۲ توسط prodo  
انتخاب شده شنبه ۲۵ آبان ۱۳۹۲ توسط marmolak

خیلی ممنون

سلام ممنون

0 امتیاز

این کد که مشکل داره. cout<c=a/10 چیه؟

به طور کلی برای معکوس کردن یک عدد صحیح یک روش معمول وجود داره.
مثلاً فرض کنید عدد a=123 رو می‌خوایم معکوس کنیم (y=321).
۰) ابتدا عدد معکوس رو ۰ در نظر می‌گیریم.

۱) یکان رو از a برمی‌داریم (b=3)
۲) یکان رو با ده برابر y جمع می‌کنیم. (10*y+3 = 3)
۳) a رو تقسیم بر ۱۰ می‌کنیم. (a = 12)

دوباره

۱) یکان رو از a‌ برمی‌داریم (b=2)
۲) یکان رو با ده برابر y جمع می‌کنیم. (10*y+2 = 10*3+2 = 32)
۳) a رو تقسیم بر ۱۰ می‌کنیم. (a=1)

دوباره

۱) یکان رو از a‌ برمی‌داریم (b=1)
۲) یکان رو با ده برابر y جمع می‌کنیم. (10*32+1 = 321)
۳) a رو تقسیم بر ۱۰ می‌کنیم. (a=0)

چون a صفر شده پس y الان معکوس a هست. که درسته یعنی ۳۲۱

توی کدی که نوشتین while(a!=0) برای بررسی همین صفر شدن a هست. b یکانی هست که هر دفعه از a برمی‌داریم. c هم عدد معکوس هست.

پاسخ داده شده شنبه ۲۵ آبان ۱۳۹۲ توسط admin  

من این کد رو ننوشتم از یه جایی کپی کردم‌:D
این کد رو تو یه کامپایلر نوشتم اررور میده
بعد اون c=a/10 رو اصلاح کردم کار کرد ولی چیزی تو خروجی چاپ نکرد چون دستور cout رو تعریف نکردیم
والا یخورده گیج شدم
اگه زحمتی واستون نمیشه میشه خودت یه کد بنویسی؟ :D
مرسی

سلام خسته نباشید سایت بسیار جالب و بروزی دارید ممنون از شما.

این برنامه ای که شما نوشیتید رو اگه لطف کنید به زبان c بنوسید. اگر هم براتون زحمت نمیشه برام ایمیل کنید .

دعاتون میکنم.

با تشکر فراوان از مدریت محترم سایت.

موفق باشید

کدی که در پاسخ قبلی مطرح شده به زبان C++ هست که با کمی تغییرات می‌شه زبان C.
این تبدیل طبیعتاً دیگه یه اشکال برنامه‌نویسی نیست. کاری هست که خودتون باید انجام بدین. موفق باشین.

سلام...
همین سوالو بخایم با آرایه بنویسیم کدش چی میشه؟به زبانC++