PDA

View Full Version : سوال: newline در cin



discover1993
چهارشنبه 22 آذر 1391, 22:28 عصر
سلام
سوال من اینه که چه طوری میتونیم جلوی ورودی که گرفتیم یه چیزی چاپ کنیم .آخه وقتی ار cin استفاده میکنیم وenter میزنیم میره یه سطر پایین تر ولی من یه راهی میخوام که بعد از گرفتن ورودی مکان نما جلوی ورودیمون بمونه
مثلا اگه برنامه بنویسیم که بخواد دو تا عدد رو از ورودی بگیره و جمع کنه و چاپش کنه



int a,b;
cin>>a;
cout<<"+";
cin>>b;
cout<<"="<<a+b;



خروجی انیجا به شکل




2
+3
=5


چاپ میشه ولی من میخوام خطی چاپ بشه یعنی:



2+3=5


چی کار کنم؟

shahmohammadi
چهارشنبه 22 آذر 1391, 22:49 عصر
سلام.
می تونید بعد از اینکه عدد اول رو وارد کردید اینتر نزنید و فاصله رو بزنید.

البته الان کامپایلرم iostream ندارم که امتحان کنم ولی اینو امتحان کنید ببینید با ایننتر هم جواب میده؟
int a,b;
cin>>a>>'\n';
cout<<"+";
cin>>b;
cout<<"="<<a+b;
البته مطمین نیستم که این کد درست کنه.

returnx
چهارشنبه 22 آذر 1391, 22:50 عصر
میتونید از تابع gotoxy استفاده کنید که البته فکر کنم یکم کارتون پیچیده بشه...

discover1993
چهارشنبه 22 آذر 1391, 23:13 عصر
من اینو

cin>>a>>'\n';


با vs 2010 امتحان کردم ولی ارور میده

discover1993
چهارشنبه 22 آذر 1391, 23:17 عصر
میتونید از تابع gotoxy استفاده کنید که البته فکر کنم یکم کارتون پیچیده بشه...
من تازه برنامه نویسی میکنم با gooxyکارنکردم.یه چیز ساده تر نیست؟

returnx
پنج شنبه 23 آذر 1391, 08:46 صبح
نمیدونم!! البته فکر نکنم gotoxy در header های vs باشه این ماله TC بود البته اینم کلی دردسر داره برای اینکه دقیقل همون چیزی که میخواید رو در بیارید با این تابع باید کل صفحه رو پاک کنید بعد همرو دوباره چاپ کنید که به دردسرش نمی ارزه...

omidshaman
پنج شنبه 23 آذر 1391, 14:06 عصر
از این کد Win32 استفاده کن
http://barnamenevis.org/showthread.php?371265-%D9%85%D8%A8%D8%AA%D8%AF%DB%8C-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%AA%D8%A7%D8%A8%D8%B9-gotoxy
و این که این خط هم اشتباست

cin>>a>>'\n';