برنامه نویسِ تنبل‌!

مرتبط با هر چی که گیت nan توش داره

استفاده از دستور ()gotoxy در IDE های جدید

این یه دستور اصیل زبان c و cpp هستش که قبلا توی turbo c وجود داشته ولی الان توسط کامپایلر های جدید شناخته نمیشه ، منم گشتم تو نت ببینم موضوع از چه قراره ی راهکاری پیدا کردم که بهتون میگم .

بگیم که این دستور چی هس ؟ چی کار میکنه ؟

- با استفاده از این دستور شما میتونین خیلی راحت تو هر جای کنسول ( همون صفحه سیاهه ) چیزی رو چاپ کنین .. فرضا برای ساخت بازی Snake شما نیازمنده این دستور خاهید شد چون باید کاراکتر بدنه ی مار رو یجایی از کنسول پرینت کنین ..

* سینتکس1 دستور به این شکل :

gotoxy( int a , int b ) //syntax

ی مثال دیگه بزنم براتون :

gotoxy ( 40 , 10 ) ;

cout << " Codingtime.blogfa.com" ;

خط اول دستور gotoxy ، نقطه شروعه کنسول ( که همیشه گوشه بود ) رو به اندازه 10 خط به پایین و 40 کاراکتر به راست منتقل میکنه

اتفاق اینی میشه که تو عکس میبینین :

همونطورم ک تو عکس میبینین همچین اتفاقی ک توضیح دادم ، افتاد ...

شاید تا الان که تست کردین به ارورر مواجه شدین ؟ چون این تابع رو هم باید مثله تابع رنگ تعریف کنیم تو کدمون

برای ساخت این تابع کد زیر رو بالای تابع main قرار میدیم :

COORD coord = { 0 , 0 } ;
void gotoxy(int x, int y) //goto x y function
{
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}

نکته مهم اینه که باید کتابخونه Windows.h رو هم اینکلود کنین

.

.
#include
using namespace std ;

COORD coord = { 0 , 0 } ;
void gotoxy(int x, int y) //goto x y function
{
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}

int main()
{
gotoxy ( 10 , 0 ) ;
cout << "Welcome" ;

gotoxy ( 20 , 5 ) ;
cout << "To" ;

gotoxy ( 30 , 10 ) ;
cout << "my blog" ;

gotoxy ( 10 , 15 ) ;
cout << "codingtime.blogfa.com" ;

getch() ; //#include

}

یک مساله دیگه، این روش مختص ویندوز هست، عزیزانی ک از سیستم عامل های یونیکس بیس استفاده میکنن میتونن از این لینک استفاده بهینه رو ببرن :)‌

https://tldp.org/HOWTO/NCURSES-Programming-HOWTO/printw.html#PRINTWCLASS

سینتکس : قواعد نوشتاری زبان

شنبه دوازدهم خرداد ۱۳۹۷ , 1:6
Ar

ایجاد اعداد تصادفی بدون تکرار

قسمت دوم اعداد تصادفی با زبان c و cpp / قسمت اول - کلیک کنید

اینجا فقط الگوریتم من درآوردیمو ( شاید هم زیاد بهینه نباشه ) میگم بهتون، در کل روش های زیادی رو میشه بکار برد برای ایجاد اعداد تصادفی بدون تکرار اینی هم ک من میگم قطعا استاندارد نیست :) ولی کاراییشو داره به هر حال ..

 

* اول بگم که برای این کار دست به دامن آرایه و دستور goto هم میشیم،

 

سوال : n عدد تصادفی در بازه a تا b تولید شود .. 

 

الگوریتم کار : 

1- یک عدد تصادفی در بازه دلخواه تولید و در temp ریخته میشود 

2- چک میکنیم عدد تصادفی temp در آرایه نباشه ( با استفاده از حلقه for ) 

3- شرط: اگه temp در ارایه وجود داشت .. دوباره یک عدد تصادفی دیگه انتخاب بشه .

4- اگه 3 نبود پس temp رو در ارایه ذخیره کن 

5- برگشت به مورد اول 

 

البته این الگوریتمی ک گفتم فقط برای اون قسمت تولید عدد تصادفی غیر تکراریه، و فقط برای اینکه متوجه

بشین قضیه از چه قراره گفتم .. 

 

1    for ( i = 0 ; i < n ; ++ i )
2    {
again :
4    temp = ( rand()%a + b ) ; // عدد تصادفی تولید میشه و ریخته میشه تو تمپ //

  for ( j = i ; j < n ; ++ j ) // از همون آی شروع میشه چون خونه قبلیش چک شده که تکراری نباش //
6    {
7        if ( arr[j] == temp ) // چک میشه که عدد تصادفی تولید شده تو کد آرایه هس یا ن //
8        {
9             goto  again ;
10      }
11   }
12   arr[ i ] = temp ;
13   }

highlighting by me v1.2  

کلله کده سوالمو تو این فایل قرار میدم خاستین دانلود کنین : دانلود 

جمعه یازدهم خرداد ۱۳۹۷ , 21:23
Ar

کتاب آموزش کد نویسی زبان cpp

کاملترین کتابی هستش در زمینه اموزش زبان cpp که خیلی هم در دنیا طرفدار داره و واقعا بی نظیره ...

 

نسخه فارسی   دانلود
نسخه انگلیسی  دانلود

*لینک ها از سایت مهندس یار

 

پنجشنبه دهم خرداد ۱۳۹۷ , 19:12
Ar

دانلود نرم افزار Code::Blocks آخرین ورژن 17.12

آخرین ورژن نرم افزار اوپن سورسه کدبلاکس : 

- از نظر گرافیکی برای من یخورده مشکل داره برا همین من از همون ورژن قبلیش استفاده میکنم ..

- این نسخه دارای کامپایلر میباشد ، در حال حاظر (تا به این تاریخ :)، ورژن آخرش توی نت فقط یجا هست ک اونم بدون کامپایلر داخلیه .. 

- لینک دانلود نرم افزار تو خود سایتشون هست ولی تحریمیم ..

دانلود ورژن 17.12 به همراه کامپایلر

پنجشنبه دهم خرداد ۱۳۹۷ , 19:7
Ar

ایجاد اعداد تصادفی با تکرار

برای ایجاد اعداد تصادفی باید با دو تا تابع آشنا شیم : 

rand () ; 

srand ( time ( 0 ) ) ;  // be jaye 0 az NULL ham estefade mishe 

آشنا شدیم  

حالا اینا برای چی هستن و چجوری ازشون استفاده باید کنیم ؟! 

تابع اول همون تابعیه ک عدد تصادفی برامون تولید میکنه، ( خروجیش ی عدد تصادفیه صحیح هستش ممولن بین 1 تا 5 رقم .. ) 

حالا تابع دومی چیه ؟ تابع دومی باعث میشه هر بار که برناممون اجرا میشه ی عدد تصادفی جدید بهمون بده

اگه تابع دوم نباشه ما هر بار با اعداد تصادفی یکسانی ربرو خاهیم شد .. اگه میخاین امتحان کنین فقط کافیه توی کد، همون تابع اول رو حذف کنین 

نکته ریز : برای استفاده از تابع rand در زبان c باید کتابخونه رو اینکلود کنین 

و در زبان cpp علاوه بر کتابخونه بالا کتابخونه رو هم اینکلود کنین ../ 

 

خب حالا میریم سراغ اینکه چجوری از این توابع استفاده کنیم :

int a = rand() ;

                                                     // یک عدد 6 رقمی تصادفی بدون هیچ بازه ای تعریف میکنه

int b = rand() % 10 ;

                                                      // یه عدد بین 0 تا 9 بصورت تصادفی ایجاد میکنه *1 

int c = rand() % 10 + 5 

                                                      // اول یه عدد تصادفی بین 0 تا 9 انتخاب میکنه و بعد اون رو بعلاوه 5                                                          //   میکنه ینی در کل یه عدد تصادفی بین 5 تا 14 انتخاب میشود 

*1  : در مورد %10 توضیح بدم .. هر عددی که تو تابع رندوم درست شد رو تقسیم بر 10 میکنه و هر چی که باقی ماندش شد رو میریزه تو متغیر b مون ... 

 

 

پنجشنبه دهم خرداد ۱۳۹۷ , 16:25
Ar

رنگی کردن کنسول در c  و c++

خب برای رنگی کردن کنسول ( یا همون نوشته هایی ک تو اون جعبه سیاهه هستش ) چن تا کار میتونیم کنیم 

بهترین نوعش از نظرم این مدلیه ک اول میگم .. حالا اگه حوصله داشتین راه های دیگه رو هم تو اینترنت هست امتحان کنین .. 

1- استفاده از تابع رنگی ک خودمون میسازیم ..

باید کتابخونه  رو اینکلود کنیم .. 

به کدمون تابع رو اضافه میکنیم که توش از دستورای سیستمی استفاده میشه .

   #include 

   void set_color  (  int color_code  )
   {
           SetConsoleTextAttribute ( GetStdHandle (STD_OUTPUT_HANDLE) ,   color_code   )  ;
   }

** کد رنگ هارو هم میتونین تو این عکس ببینین 

 .: برای دیدن اندازه اصلی روش کلیک کنین :.

بعد به این صورت باید استفاده کنیم .. 

set_color ( 10 ) // کد رنگ سبز با پیش زمینه سیاه //
   printf ( " codingtime.blogfa.com ") ; // رنگه این متن سبز میشه تو خروجی //
set_color ( 7 ) // اینم برای اینه که فقط همین سلام رو سبز کنه و بقیه همون رنگ اصلیش کنه  //

 

پ.ن : برای زبان سی پلاس پلاس فقط به جای printf از cout  استفاده میکنیم :) 

پ.ن 1 : این کد هایی ک گفتم رو ide :code::blocks و کامپایلر GCC تست شده است .. 

 > دانلود کد هایی که گفتم : دانلود 

پنجشنبه دهم خرداد ۱۳۹۷ , 15:36
Ar

اولین مطلب

حرف خاصی نیست .. 

اگه میخاین مهارت بالایی کسب کنین تو زمینه کد نویسی 

باید تلاش کنین :) ..  میدونم نمیدونستین ...... استفاده کنین .... 

مرسی .. آریا_پ

پنجشنبه دهم خرداد ۱۳۹۷ , 14:16
Ar