برنامه نویسی

  • شروع کننده موضوع شروع کننده موضوع zabolian
  • تاریخ شروع تاریخ شروع
پاسخ : برنامه نویسی

آهان یعنی بابلو از اون بالا بیارمش تو


یا sort بزنم

این سرت تو کجاس؟
کامپایلرم
borland c++ 5.02
 
پاسخ : برنامه نویسی

فکر کنم یه ذره (خیلی) بد توضیح دادم.
کد:
#include <iostream>
#include <algorithm>

using namespace std;


int main()
{
	const int k = 4;
	int a[k];
	
	for(int i=0; i<k; i++)
		cin >> a[i];
		
	sort(a, a+k);
	
	for(int i=0; i<k; i++)
		cout << a[i] << endl;
	return 0;
}
فکر کنم این یه کم مفهوم‌تر باشه. این برنامه، k تا عدد می‌گیره و مرتب می‌کنه. اگه باز هم نامفهوم بود حتما بگو.

پ.ن. مطمئن نیستم که این کد رو borland کامپایل بشه. و کلا هم خوب نیست که با borland کار کنی. تو پست‌های قبلی توضیح داده‌شده که چجوری از ++g استفاده کنی.
 
پاسخ : برنامه نویسی

گرفتم ولی using namespace std
چیه؟ ;D
می دونما ،فقط شک کردم


به نقل از مهران :
فکر کنم یه ذره (خیلی) بد توضیح دادم.
کد:
#include <iostream>
#include <algorithm>

using namespace std;


int main()
{
	const int k = 4;
	int a[k];
	
	for(int i=0; i<k; i++)
		cin >> a[i];
		
	sort(a, a+k);
	
	for(int i=0; i<k; i++)
		cout << a[i] << endl;
	return 0;
}
فکر کنم این یه کم مفهوم‌تر باشه. این برنامه، k تا عدد می‌گیره و مرتب می‌کنه. اگه باز هم نامفهوم بود حتما بگو.

پ.ن. مطمئن نیستم که این کد رو borland کامپایل بشه. و کلا هم خوب نیست که با borland کار کنی. تو پست‌های قبلی توضیح داده‌شده که چجوری از ++g استفاده کنی.


ببینم این کامپایلری که استفاده می کنی getch(); k (اون k رو زدم صاف شه) نمی خواد دیگه؟
 
پاسخ : برنامه نویسی

فکر نکنم فعلا لازم باشه در مورد namespace بدونید. ولی برای اینکه جوابم حکم «فضولی نکن» نداشته باشه، در همین حد بدون که namespaceها در واقع یه بسته‌بندی برای یه سری توابع و متغیرها هستن. برای همین، اگه این خط رو نزنی، برای دسترسی به اعضای std مجبوری مثلا به جای cout << a بنویسی std::cout << a باز هم می‌گم. لازم نیست خیلی وارد جزئیات بشی.

البته به نظر می‌آد که این قضیه تو borland یه کم فرق داره. باز هم توصیه می‌کنم حتما از ++g استفاده کنی ;D
 
پاسخ : برنامه نویسی

آخ دوباره ویرایش کردم،میشه بازم به سوالم جواب بدین


یعنی کلهم اون using namespace std; رو اون بالا بزنم؟


من getch(); تو برلند می زنم که برنامه نپره دیگه اجرا نمیشه
 
پاسخ : برنامه نویسی

getch تابع استانداردی (!) نیستش. در واقع اصلا conio.h استاندارد نیست. برای همین بهتره از getch استفاده نکنی. یا اگر استفاده می‌کنید، قبل از فرستادن برنامه‌تون حتما هم خودش و هم خط #include <conio.h> رو حذف کنید. (یکی از قابلیت‌های Code::Blocks که توی صفحه‌ی قبل ازش تعریف کردم همینه. خودش بعد از اتمام برنامه، یه چیزی شبیه getch می‌ذاره.)

در مورد using namespace std; وقتی که داری از ++g استفاده می‌کنی، تقریبا پای ثابت همه‌ی برنامه‌هاست.
 
پاسخ : برنامه نویسی

خب پس من یه سری چیزا رو چون از جعفر نژاد خوندم تحت برلند بلدم حالا چی کار کنم؟دیتل و دیتل دیروز گرفتم،هنوز نخوندم
 
پاسخ : برنامه نویسی

نه، دیگه اینقدر فرق ندارن که بخوای کتاب عوض کنی ;D اما کلا برای این گفتم، که به کامپایلر عادت کنی. زیاد از لحاظ یادگیری فرق ندارن، فقط موقع استفاده شاید یه کم errorهاش و ... فرق داشته باشه. بعضی چیزا که ممکنه توی ++g فرق بکنه:
* توی خط include، برای فایل‌ها پسوند h. نمی‌گذاریم.
* اکثرا بعد از includeها، ;using namespace std میاد.
* تا جایی که یادمه، توی TurboC نمی‌شد با STL به این راحتی‌ها کار کرد.
اگه باز هم چیزی یادم اومد ویرایش می‌کنم.
 
پاسخ : برنامه نویسی

خیلی ممنون
فقط فردا باید برم کافی نت دانلودش کنم
لینکش تو صفحه ی اوله دیگه؟
 
پاسخ : برنامه نویسی

صفحه‌ی دوم.
 
پاسخ : برنامه نویسی

سلام

این کتاب آموزش c++ deitel&deitel انگلیسی تو ایران گیر میاد ؟(من اصولا با کتاب های ترجمه شده مشکل دارم :( )
 
پاسخ : برنامه نویسی

Ebookش که فکر کنم خیلی راحت پیدا می‌شه.
خود کتاب هم احتمالا هست، اگه اشتباه نکنم دست یکی از بچه‌ها دیده بودم.
 
پاسخ : برنامه نویسی

اینگلیسییش از فارسیش راحت تر گیر می آد !
 
پاسخ : برنامه نویسی

من امروز نتونستم کد بزنم ولی اون سوال sgu به این شکل حل میشه دیگه


یه n ثابت می گیریم
k رو ورودی میگیریم
یه آرایه به طول n تعریف می کنیم
بعد یه for می دیم عناصر آرایه رو می گیریم
8 تا متغییر در نظر می گیریم
بعد با یه for عناصر آرایه رو تقسیم صحیح بر هزار می کنیم،
بعد یه for میدیم که عناصر آرایه تقسیم صحیح به 1000 بشن بعد یه if می دیم که مثلا اگه جواب 1 شد متغیر 1 از اون 8 تا به علاوه ی یک بشه،همینطوری تو if واسه 8 تای دیگه شرط تعیین می کنیم

بعد 8 تا متغیر رو تقسیم صحیح به k می کنیم به علاوه ی یک می کنیم(برای هر کدوم یه متغیر جدید در نظر می گیریم)

بعد حاصل 8 تا رو باهم جمع می کنیم
به علاوه ی دو می کنیم درسته؟
 
پاسخ : برنامه نویسی

به نقل از حامد مهدوی :
من امروز نتونستم کد بزنم ولی اون سوال sgu به این شکل حل میشه دیگه


یه n ثابت می گیریم
k رو ورودی میگیریم
یه آرایه به طول n تعریف می کنیم
بعد یه for می دیم عناصر آرایه رو می گیریم
8 تا متغییر در نظر می گیریم
بعد با یه for عناصر آرایه رو تقسیم صحیح بر هزار می کنیم،
بعد یه for میدیم که عناصر آرایه تقسیم صحیح به 1000 بشن بعد یه if می دیم که مثلا اگه جواب 1 شد متغیر 1 از اون 8 تا به علاوه ی یک بشه،همینطوری تو if واسه 8 تای دیگه شرط تعیین می کنیم

بعد 8 تا متغیر رو تقسیم صحیح به k می کنیم به علاوه ی یک می کنیم(برای هر کدوم یه متغیر جدید در نظر می گیریم)

بعد حاصل 8 تا رو باهم جمع می کنیم
به علاوه ی دو می کنیم درسته؟

خوب کدشو بزن بده تست کنه دیگه!
 
پاسخ : برنامه نویسی

آخه اینترنتم زغالیه بابا
2 ساعت داشتم کامپایلر Ide رو دانلود می کردم
ولی روش کد زدنشو گفتم ببینم درسته یا نه
 
پاسخ : برنامه نویسی

سلام.
راجع به سوال چند دارید حرف میزنید؟
 
پاسخ : برنامه نویسی

همون sgu که اولش گفتین

بعد یه کمک دیگم می خوام
تفاوت های این کد بلاکس که من دانلود کردمو با برلند بگین
ممنون
 
پاسخ : برنامه نویسی

به نقل از حامد مهدوی :
من امروز نتونستم کد بزنم ولی اون سوال sgu به این شکل حل میشه دیگه


یه n ثابت می گیریم
k رو ورودی میگیریم
یه آرایه به طول n تعریف می کنیم
بعد یه for می دیم عناصر آرایه رو می گیریم
8 تا متغییر در نظر می گیریم
بعد با یه for عناصر آرایه رو تقسیم صحیح بر هزار می کنیم،
بعد یه for میدیم که عناصر آرایه تقسیم صحیح به 1000 بشن بعد یه if می دیم که مثلا اگه جواب 1 شد متغیر 1 از اون 8 تا به علاوه ی یک بشه،همینطوری تو if واسه 8 تای دیگه شرط تعیین می کنیم

بعد 8 تا متغیر رو تقسیم صحیح به k می کنیم به علاوه ی یک می کنیم(برای هر کدوم یه متغیر جدید در نظر می گیریم)

بعد حاصل 8 تا رو باهم جمع می کنیم
به علاوه ی دو می کنیم درسته؟

شرمنده که دیر جواب دادم! چرا هیشکی دیگه جواب نداد؟
جوابت درسته ( البته اون جا که تقسیم صحیح به k میکنی، باید فقط در صورتی که باقیموندش بر K از صفر بیشتر بود، جواب رو به علاوه ی ۱ کنی )، کلا اگه کدش رو درست بزنی، درسته دیگه!

به نقل از حامد مهدوی :
بعد یه کمک دیگم می خوام
تفاوت های این کد بلاکس که من دانلود کردمو با برلند بگین
ممنون

من با کدبلاکس کار نکردم! ولی تا جایی که میدونم، ادیتورش ( editor :D ) بهتره، و کامپایلر برلند با کامپایلری که توی سایتایی sgu و اینا هست فرق داره، یعنی معمولا اگه کدی که تو برلند زدی رو بدی به سایت sgu یا usaco یا ... بهت CE ( کامپایل ارور ) میده! واسه همین میگیم از کد بلاکس استفاده کن!

قرار شد خبر بدید که چه کدایی زدید ( تا بقیه هم برند سراغ اون سوالا ) ، کسایی که اینجا عضوند، هنوز کد زنی رو شروع نکردند؟ دیره ها!
 
پاسخ : برنامه نویسی

می شه چند تا سوال خوب(به قول شاز) توی sgu معرفی کنین که ما بریم کد همونا رو بزنیم؟
خیلی ممنون
 
Back
بالا