دو سال پیش من به همین روش حل کردم . الان برنامه شو ندارم وگرنه می ذاشتم .موفق باشین:10:نقل قول:
Printable View
دو سال پیش من به همین روش حل کردم . الان برنامه شو ندارم وگرنه می ذاشتم .موفق باشین:10:نقل قول:
دوستان من ایده دارم اگر فکر میکنید عملیه دوستمون که برنامه رو لازم دارن شروع به نوشتنش کنن
فکر نکنم کد نویسیش سخت بشه مخصوصا تو سی....
چون تا جایی که من می دونم قرار دادن برنامه آماده خلاف قوانینه...
چه 654.321 و چه 456.123نقل قول:
خب اگر 123.456 رو گرفت خروجیش چی باشه؟!
خسته نباشی. خدا قوتنقل قول:
اعشاری رو نمیدونم
یعنی روش فکر نکردم
ولی بدون اعشارش اینطوریه :
مثلا :
156 به 651
چطوری به رشته تبدیلش کنیم؟نقل قول:
من یه ایده دارم، البته عملیش نکردم
عددمون رو اول به یه رشته تبدیل کنیم ، بعد رشته رو پیمایش کنیم تا به ممیز برسیم و اینجوری متوجه میشیم که رقم چندم اعشار داره و ممیز اون رو حذف کنیم و در رشته دیگه ای بریزیم
حالا رشته جدید رو به عدد تبدیل کنیم و طبق روابطی که بچه ها گفتن (البته الگوریتمش رو هم دارم) معکوس کنیم حالا دوباره کارایی رو که اول انجام دادیم رو انجام می دیم و ممیز رو سر جاش می ذاریم
فکر کنم عملی باشه....
با توابع آماده یا پیمایش و اضافه کردن کاراکتر معادل اون عدد به رشته؟
تابع آماده که ما نمی خوایم!
اگه با پیمایش که مشکل سر همین هست. اگه می شد به یه پیشمایش درست برسیم اصلاً نیازی به اوردن رشته نیست که
برای تبدیل رشته به عدد و بالعکس تابع آماده وجود دارهنقل قول:
چرا تابع آماده نمی خوای؟!
شما عدد رو نمی تونید پیمایش کنید ولی رشته رو که میشه پیمایش کرده
رشته ها آرایه ای از کاراکتر ها هستند ....
دقیقا مشکلتون رو متوجه نشدم کجاش بود
به نظر خودم که اجراییه...
اصاً کجای سوال نوشته از توابع آماده استفاده نکنین؟!
من واسه سوالی که توی ذهن خودم بود منظورمهنقل قول:
اینکه می گم تابع آماده نه به این خاطره که می خوام بدونم دلیل اینکه اینطوری می شه چیه و یه راه حل منطقی براش پیدا کنم
حتما راهی برای پیاده سازی توابع آماده هم هست.نقل قول:
پس اینکه از تابع آماده استفاده میکنیم دلیل بر این نمیشه که راه حل منطقی نباشه
به هر حال این اولین راه حلی بود که به ذهن من رسید حتما راههای بهتری هم وجود داره...
من به علت ذيق وقت فرصت نكردم زياد رو اين كد كاركنم
حالا گذاشم شايد بدرتون خورد
کد:#include <iostream>
#include <string>
using namespace std;
int main()
{
char Mahdi[256];
cout <<"Enter your number:";
int x = strlen(Mahdi);
for(int j=x;j<=x;j--)
cout <<Mahdi[j];
return 0;
}
ببخشیدا ولی زیادی مشکل داره ها....نقل قول:
اصلاً از ورودی چیزی نگرفته :دی
كد پست قبل رو تصحيح كردم هرچند اصلا از بعضيا...
کد:#include <iostream>
#include <string>
using namespace std;
int main()
{
char mahdi[256];
cout<<"Enter your number:";
cin.getline(mahdi,256);
int x = strlen(mahdi);
cout <<"is it good???\nyour number->\t";
for(int i=x;i<=x;i--)
{
if(mahdi[i] == mahdi[x+1])
break;
cout<<mahdi[i];
}
return 0;
}