آموزش زبان برنامه نویسی c به زبان ساده

جمع کردن
X
 
  • زمان
  • نمایش
پاک کردن همه
پست‌های جدید
  • Reza.Black
    H4ck3r

    • Dec 2022
    • 169

    #1

    آموزش زبان برنامه نویسی c به زبان ساده

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

    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot.png مشاهده: 0 حجم: 466.8 کیلو بایت

    مخاطب این آموزش همگان هستند و به هیچ پیش نیاز دیگری هم برای یادگیری احتیاج نیست.
    همین که علاقه مند باشید به نظر من کافی هستش.

    چه خوب هست که مفاهیم برنامه نویسی رو با زبان C یاد بگیرید.
    این زبان انتخاب اول خودم هم برای یادگیری برنامه نویسی بود.
    و با تسلط بر اون می تونید پایه های برنامه نویسی رو در ذهنتون تقویت کنید.

    برای این آموزش من از ویندوز ۱۱ و همین طور ویرایشگر Code::Blocks استفاده می کنم.
    که در واقع یک IDE هست و هم برای ویرایش کدها و هم کامپایل و اجرای اون ها استفاده میشه.
    با یک جست و جوی کوچیک تو اینترنت می تونید اون رو پیدا کنید.
    البته شما از هر سیستم عامل و ویرایشگری که دوست دارید می تونید استفاده کنید.
    ولی خودم شخصا با Code::Blocks راحت تر هستم.
    این تاپیک به مرور زمان کامل میشه.
    فعلا یا علی
    آخرین ویرایش توسط Reza.Black؛ 12-21-2022, 02:16 PM.
  • Reza.Black
    H4ck3r

    • Dec 2022
    • 169

    #2
    (آشنایی با ساختار زبان C)

    با سلام

    زبان C توسط Dennis Ritchie در سال 1972 در آزمایشگاههای بل ایجاد شد.
    و ارتباط تنگاتنگی بین این زبان و سیستم عامل یونیکس وجود داره چون هر دو به صورت همزمان تکامل پیدا کردند.

    بریم سراغ آموزش
    من یک برنامه ی ساده به زبان C آماده کردم که در واقع ساده ترین برنامه به زبان C هستش.
    و یک عبارت ساده !Hello World رو در خروجی برای ما چاپ می کنه.

    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 12.6 کیلو بایت


    خط به خط توضیح میدم.

    خط اول از برنامه ما یک باینری فایل هدر هستش که یک دستور پیش پردازنده هست.
    قبل از اینکه برنامه کامپایل بشه این دستور فایل هدر خودش رو به برنامه اضافه می کنه.
    stdio.h این فایل هدر ورودی و خروجی استاندارد هست I/O
    برای مثال تابع ()printf که برای چاپ پیام هست داخل همین فایل هدر تعریف شده.

    خط دوم یک خط خالی هست که برای خوانایی بهتر استفاده میشه و میتونست نباشه.

    خط سوم تابع main هست که تابع اصلی ما هست و نقطه ی ورود ما به برنامه محسوب میشه.
    و نام اون همیشه باید main باشه که از نوع int هست که نوع خروجی تابع هستش. به معنای همون عدد صحیح هست.

    خط چهارم که کروشه هست و به صورت جفتی به کار میره.
    که در واقع یک بلاک کد هست و دستورات داخل اون اجرا خواهند شد.

    خط پنجم هم تابع ()printf هست که برای چاپ پیام به کار میره.
    فعلا بدونید که تابع مجموعه ای از چند خط کد و دستور هست.
    در واقع printf مخفف prints formatted هستش.
    اگر به آخر این عبارت دقت کنید کاراکتر n\ رو مشاهده می کنید.
    که به معنای خط جدید هست که اصطلاحا به اون کاراکتر گریز هم میگن.
    و رفتار عادی دستور رو تغییر میده یعنی برو به خط جدید.

    و در پایان ;return 0 رو داریم که به معنای موفقیت در اجرای برنامه هستش.
    البته تعریف ما از موفقیت می تونه عددی به غیر از صفر باشه ولی استاندارد اون در زبان C صفر هست.
    این نکته رو در نظر داشته باشید که انتهای هر دستور زبان C به ; ختم میشه.

    حالا برنامه رو کامپایل و اجرا می کنیم.

    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 9.9 کیلو بایت

    خب برای امروز دیگه کافیه.
    آخرین ویرایش توسط Reza.Black؛ 12-25-2022, 07:25 PM.

    نظر

    • SH0CK
      🦴💀

      • Jul 2018
      • 6188

      #3
      ممنون از شما

      نظر

      • Reza.Black
        H4ck3r

        • Dec 2022
        • 169

        #4
        با سلام

        (کامنت ها در زبان c)

        کامنتها اساسا برای نمایش توضیحات نه تنها در زبان c بلکه در سایر زبان ها به کار میره.
        و اهمیت زیادی برای برنامه نویس داره چرا که بوسیله ی اون می تونه از نحوه ی کار برنامه مطلع بشه.
        و همین طور خطاهای احتمالی رو برطرف کنه.
        در زبان c به صورت معمول دو نوع کامنت داریم. یکی کامنت تک خطی که با // فقط شروع میشه.
        و دیگری کامنت چند خطی که با */ شروع و با /* تمام میشه.
        این هم یک مثال ساده.

        برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 7 حجم: 20.2 کیلو بایت
        آخرین ویرایش توسط Reza.Black؛ 12-22-2022, 06:33 PM.

        نظر

        • Reza.Black
          H4ck3r

          • Dec 2022
          • 169

          #5
          با سلام

          (متغیرها)

          نه تنها در زبان C بلکه در اکثر زبان های برنامه نویسی کار با متغیرها از اهمیت زیادی برخوردار هست.
          اگه قصد داشته باشم که یه تعریف ساده از متغیرها رو بیان کنم.
          این طور بیان می کنم که متغیرها نامی هستند که به داده های مورد نیاز خود در برنامه اختصاص می دهیم.
          که قابل تغییر می باشند. و یک متغیر در زبان C با نوع و نام و همین طور مقدار در رابطه هست.
          در واقع این سه چیز ماهیت یک متغیر در زبان C رو توصیف می کنند.
          ما انواع داده ی زیادی در C داریم که مهم هاش رو توضیح میدم.

          نوع int که همون عدد صحیح هست.
          نوع float که عدد با ممیز شناور هست.
          نوع char که برای کاراکتر هست.

          بر فرض مثال برای ذخیره ی یک متغیر از نوع int و نام a و همینطور مقدار 20 به این شیوه عمل می کنیم.
          ;int a = 20
          که عملگر مساوی اینجا برای مقدار دهی استفاده میشه یعنی مقدار 20 رو داخل a که از نوع int هست قرار بده.
          قوانین نام گذاری متغیرها هم شامل حروف از a-z حالا چه کوچک و چه بزرگ.
          اعداد از 9-0 به شرطی که اول نام متغیر با عدد شروع نشه.
          و خط زیر ـ هستش.

          برای نمایش مقدار یک متغیر ما از format specifiers استفاده می کنیم که فرمت خاصی رو نمایش میدن.
          که با علامت % شروع و به دنبال آن کاراکتر مربوطه که برای اعداد صحیح d و برای اعداد با ممیز شناور f و کاراکترها c می باشد.
          در انتها هم نام متغیر ذکر میشه چون باید اعلام کنیم که منظور ما کدام متغیر هستش.
          این هم یک مثال ساده.

          برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 31.2 کیلو بایت

          برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 9.5 کیلو بایت

          نظر

          • Reza.Black
            H4ck3r

            • Dec 2022
            • 169

            #6
            با سلام

            (ثابت ها)

            برخلاف متغیرها که مقدار اون ها قابل تغییر بودند ثابت ها مقادیری ثابت و غیر قابل تغییر هستند.
            بعضی وقت ها باید مقادیری رو در نظر بگیریم که غیر قابل تغییر باشند. این موضوع مهمی هست.
            و اگر مقدارشون رو تغییر بدیم کامپایلر به ما خطا میده و برنامه دچار مشکل میشه.
            دو روش برای این کار وجود داره که یکی دستور پیش پردازنده ی define# هست.
            و دومی کلمه ی کلیدی const هستش که من دومی رو توضیح میدم.
            دستور const با نوع و نام و مقدار یک داده در رابطه هست و قبل از نوع داده قرار می گیره و یک ثابت رو تعریف می کنه.
            به این مثال ساده دقت کنید.

            برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 17.8 کیلو بایت
            آخرین ویرایش توسط Reza.Black؛ 12-24-2022, 02:54 PM.

            نظر

            • Reza.Black
              H4ck3r

              • Dec 2022
              • 169

              #7
              با سلام

              (عملگرها)

              چند دسته عملگر در زبان C وجود داره که من مهم هاش رو توضیح میدم.

              عملگرهای محاسباتی
              که برای انجام محاسبات ریاضی به کار میرن مثل چهار عمل اصلی / * - + و غیره...
              در جدول زیر می تونید اون ها رو مشاهده کنید.

              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot1.png
بازدیدها:	476
حجم:	17.6 کیلوبایت
شناسه:	29659

              عملگرهای واگذاری
              همانطور که از اسمش مشخص هست برای واگذاری و یا انتساب داده ها به کار میرن.
              ما قبلا با عملگر = در تعریف متغیرها آشنا شدیم.
              حالا ما می تونیم از ترکیب عملگرهای محاسباتی و همین طور واگذاری استفاده کنیم.
              که چند نمونه از اون رو در جدول زیر مشاهده می کنید.


              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot2.png
بازدیدها:	454
حجم:	5.3 کیلوبایت
شناسه:	29660



              عملگرهای مقایسه ای
              که برای مقایسه ی داده ها استفاده میشوند.
              که مقداری رو که بر می گردونند یا 0 false و یا 1 true هست که این مقادیر به boolean value معروف هستند.
              جلوتر در ساختار های شرطی و یا حلقه ها بیشتر توضیح خواهم داد.
              این هم لیست اون ها

              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot3.png
بازدیدها:	444
حجم:	7.9 کیلوبایت
شناسه:	29661


              عملگرهای منطقی
              که برای عبارت های منطقی استفاده میشن.
              مثل :
              && که دو طرف عبارت رو چک می کنه و اگر هر دو درست باشند اجرا خواهد شد.

              این هم جدول اون ها همراه با مثال :

              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot4.png
بازدیدها:	447
حجم:	12.6 کیلوبایت
شناسه:	29662


              یک عملگر دیگه به نام ()sizeof وجود داره که برای چک کردن طول داده در حافظه به کار میره.
              همین که بدونید فعلا کافی هستش.

              نظر

              • Reza.Black
                H4ck3r

                • Dec 2022
                • 169

                #8
                با سلام

                (دستورات شرطی)

                ساده ترین دستور شرطی دستور if هست و ما از طریق این دستور تصمیم گیری و انشعاب رو می تونیم به برنامه اضافه کنیم.
                این دستور با یک شرط همراه هست و اگر شرط درست باشد یکسری دستور یا دستورات اجرا خواهند شد.
                و اگر هم شرط غلط باشد برنامه به کار خودش ادامه میده.
                این هم سینتکس اون

                برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot1.png
بازدیدها:	435
حجم:	6.9 کیلوبایت
شناسه:	29775

                این هم یک مثال ساده

                برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot2.png
بازدیدها:	446
حجم:	15.9 کیلوبایت
شناسه:	29776


                برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot3.png
بازدیدها:	437
حجم:	10.0 کیلوبایت
شناسه:	29777


                ما دو متغیر به نام های y و x داریم که به ترتیب مقدار های اون ها 10 و 20 هستش.
                ما می دونیم که مقدار 20 از 10 بزرگتر هست و شرط رو بر اساس این معیار قرار می دیم.
                و اگر درست باشه که در اینجا حتما همین طور هست عبارت مورد نظر چاپ خواهد شد.
                و اگر هم غلط باشه چبزی برای چاپ وجود نداره.

                در ادامه من در مورد سایر دستورات شرطی صحبت خواهم کرد.

                نظر

                • Reza.Black
                  H4ck3r

                  • Dec 2022
                  • 169

                  #9
                  با سلام

                  (دستورات else if و else)

                  در مثال قبلی وقتی که شرط ما غلط بود برنامه عکس العمل خاصی نداشت.
                  و این شاید خیلی جالب نباشه. با دستور else میتونیم رفتار برنامه رو بهتر مدیریت کنیم.
                  و اگر در غیر این صورت شرط ما غلط بود برنامه رفتار دیگه ای انجام بده.
                  این هم یک مثال ساده :

                  برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 19.4 کیلو بایت


                  برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 9.7 کیلو بایت


                  تو این مثال مقدار متغیر time ما که 20 هست و 20 از 18 بزرگتر هست.
                  پس شرط ما در اینجا غلط هست و انتظار داریم که دستور else اجرا بشه.
                  و عبارت .Good evening برای ما چاپ بشه.
                  ولی اگر time ما کمتر از 18 بود شرایط تغییر می کرد.

                  اگر باز هم قصد داریم که شرط جدیدی به برنامه اضافه کنیم.
                  می تونیم از دستور else if استفاده کنیم و اگر در غیر این صورت شرط اول ما غلط بود شرط دوم ما اجرا خواهد شد.
                  این هم یک مثال ساده در مورد مثبت و یا منفی و یا صفر بودن یک عدد.
                  که در این مورد عدد ما مثبت هست پس شرط اول ما اجرا خواهد شد.
                  دقت کنید که یک else تنها در آخر قرار خواهد گرفت.
                  چون عدد یا مثبته و یا منفی و اگر هیچکدام نبود حتما صفر هست.

                  برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot3.png مشاهده: 0 حجم: 25.7 کیلو بایت


                  برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot4.png مشاهده: 0 حجم: 9.9 کیلو بایت
                  آخرین ویرایش توسط Reza.Black؛ 12-28-2022, 01:39 PM.

                  نظر

                  • Reza.Black
                    H4ck3r

                    • Dec 2022
                    • 169

                    #10
                    با سلام

                    دستور (switch)

                    اگه قرار باشه که در برنامه انشعاب های چند گانه داشته باشیم می تونیم از دستور switch استفاده کنیم.
                    البته که از دستور if و یا else if هم می تونیم استفاده کنیم ولی دستور switch برای این منظور بیشتر توصیه میشه.
                    این طوری خطوط برنامه کمتر میشه و تمرکز بیشتری بر روی اون داریم.
                    که سینتکس این دستور به این شکل هست.

                    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 10.6 کیلو بایت


                    در دستور switch ما با یک عبارت سروکار داریم و همین طور کیس های گوناگون.
                    که اگر هر کدام از این کیس ها با عبارت مورد نظر ما مطابقت داشته باشه یکسری کارها انجام میشه.
                    منتها باید در آخر هر کیس از کلمه ی کلیدی break استفاده کنیم تا در صورت مطابقت یک کیس
                    کیس های دیگر اجرا نشن.
                    یک کیس به نام default هم داریم که اختیاری هستش.
                    و می تونیم رفتار برنامه رو در شرایط خاصی که اگر هیچکدام از کیس ها مطابقت نداشت کنترل کنیم.
                    این هم یک مثال ساده برای روزهای هفته با استفاده از دستور switch

                    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 18.1 کیلو بایت


                    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot3.png مشاهده: 0 حجم: 18.7 کیلو بایت


                    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot4.png مشاهده: 0 حجم: 9.3 کیلو بایت
                    آخرین ویرایش توسط Reza.Black؛ 12-28-2022, 07:10 PM.

                    نظر

                    • Reza.Black
                      H4ck3r

                      • Dec 2022
                      • 169

                      #11
                      با سلام

                      (حلقه ها)

                      موضوع حلقه ها و تکرار جز مباحث پر اهمیت برنامه نویسی محسوب میشن.
                      برخی مواقع باید یک چیزی مدام تکرار بشه تا نتیجه ی مطلوب به دست بیاد.
                      به هر حال ساده ترین دستور در این رابطه دستور while هست که با یک شرط در رابطه هست.
                      و اگر شرط ما درست بود یکسری کارها تکرار میشن.
                      این رو به طور کلی میگم که اگه از شرط خاتمه آگاه نیستیم بهتر هست که از حلقه ی while استفاده کنیم.
                      حالا بعدا در مورد حلقه ی for صحبت خواهم کرد.
                      این هم یک مثال ساده برای نشان دادن اعداد 4 تا 0 که در این مورد ما از حلقه ی while استفاده کردیم.
                      و با استفاده از حلقه ها به جای نوشتن چند دستور می تونیم از یک دستور استفاده کنیم و این کار رو به مراتب ساده تر می کنه.
                      در این مثال ساده ما یک متغیر به نام i تعریف کردیم که از نوع عدد هست و شرط حلقه ی while ما این هست که این i کمتر از 5 باشه.
                      و در ادامه این اعداد توسط printf برای ما چاپ بشن و در آخر هم موضوع آپدیت رو داریم (++i)
                      که بتونیم شرط حلقه رو به نوعی کنترل کنیم و وارد یک لوپ بی نهایت نشویم.

                      برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 13.7 کیلو بایت


                      برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot3.png مشاهده: 0 حجم: 9.5 کیلو بایت

                      آخرین ویرایش توسط Reza.Black؛ 12-29-2022, 05:44 PM.

                      نظر

                      • Reza.Black
                        H4ck3r

                        • Dec 2022
                        • 169

                        #12
                        (حلقه ی for)

                        حلقه های while و for شباهت های زیادی با هم دارند و به خوبی با یکدیگر قابل جایگزینی هستند.
                        ولی همانطور که قبلا هم گفتم وقتی که از شرط خاتمه آگاه نیستیم بهتر هست که از حلقه ی while استفاده کنیم.
                        در دستور for سه جز اصلی یعنی مقدار دهی اولیه و شرط و همین طور آپدیت همگی در یکجا قرار دارند و با ; از هم جدا میشوند.
                        البته که این طوری کنترل بیشتری بر روی حلقه داریم.

                        این هم یک مثال ساده :

                        برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 13.5 کیلو بایت


                        برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 10.8 کیلو بایت


                        و می تونیم شرایط حلقه رو همینجا به راحتی دستکاری کنیم.


                        برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot3.png مشاهده: 0 حجم: 14.1 کیلو بایت


                        برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot4.png مشاهده: 0 حجم: 9.5 کیلو بایت

                        نظر

                        • Reza.Black
                          H4ck3r

                          • Dec 2022
                          • 169

                          #13
                          (دستورات continue و break)

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

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

                          این هم دو مثال ساده :

                          برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot1.png
بازدیدها:	431
حجم:	15.9 کیلوبایت
شناسه:	29926


                          برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot2.png
بازدیدها:	422
حجم:	9.2 کیلوبایت
شناسه:	29927


                          برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot3.png
بازدیدها:	432
حجم:	16.0 کیلوبایت
شناسه:	29928


                          برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot4.png
بازدیدها:	423
حجم:	10.8 کیلوبایت
شناسه:	29929


                          نظر

                          • Reza.Black
                            H4ck3r

                            • Dec 2022
                            • 169

                            #14
                            (توابع)

                            اگه بخوام خیلی ساده در مورد توابع توضیح بدم.
                            توابع قطعه کدهایی هستند که یکبار نوشته میشن و میشه چند بار از اون ها استفاده کرد.
                            که این کار باعث کم کردن خطوط برنامه بهینه کردن عملکرد و مدیریت بهتر سورس برنامه میشه.
                            البته که به صرفه جویی در زمان هم کمک می کنه.

                            من برای این کار یک مثال خیلی ساده ایجاد کردم.
                            در واقع یک تابع ساده که فقط مجموع دو عدد رو محاسبه کنه.

                            من در ابتدا دو متغیر به نام های b و a تعریف کردم برای دو عددمون.
                            از دستور printf برای چاپ پیام ورودی اعداد از کاربر استفاده می کنم.
                            و همین طور از دستور scanf برای ورودی گرفتن عدد از کاربر که فرم این دستور به این شکل هست.

                            برای عدد صحیح d%
                            برای عدد با ممیز f%
                            برای کاراکترها c%
                            برای رشته ها s%

                            در انتهای این دستور از علامت & همراه با نام متغیر استفاده می کنیم که اشاره به آدرس متغیر داره.


                            برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot1.png مشاهده: 0 حجم: 24.9 کیلو بایت

                            حالا تابع رو می نویسیم.
                            خروجی این تابع از جنس عدد صحیح هستش و یک نام برای اون انتخاب می کنیم مثلا sum
                            و حاوی دو پارامتر هست به نام های b و a و از نوع int البته الزامی به استفاده از این نام ها برای پارامترها نیست.
                            من برای سادگی بیشتر این کار رو کردم.
                            و در داخل بلوک تابع یک متغیر به نام c برای تخصیص مجموع دو عدد و یک عبارت ریاضی ساده
                            جمع دو عدد و تخصیص اون ها در متغیر c و در نهایت c رو return می کنیم.


                            برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot2.png مشاهده: 0 حجم: 14.0 کیلو بایت

                            الگوی تابع رو هم ذکر می کنیم خط ۳
                            در پایان هم با دستور printf مقادیر ورودی و مجموع رو چاپ می کنیم. (فراخوانی تابع)

                            برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot3.png مشاهده: 0 حجم: 28.2 کیلو بایت

                            برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Screenshot4.png مشاهده: 0 حجم: 11.1 کیلو بایت​ ​

                            البته مباحث کار با توابع خیلی گسترده تر از این حرف ها هست.
                            قصد من فقط یک مثال ساده بود.
                            خیلی کارها میشه در همین برنامه با استفاده از توابع انجام داد.
                            مثل محاسبه ی میانگین و محاسبه ی اعداد اول و استفاده از حلقه ها و خیلی چیزهای دیگه.


                            نظر

                            • Reza.Black
                              H4ck3r

                              • Dec 2022
                              • 169

                              #15
                              (آرایه ها)

                              با سلام

                              آرایه ها یک نوع از ساختمان داده هستند که در واقع مجموعه ای از اطلاعات هستن که در قالب یک اسم ذخیره میشن.
                              و خصیصه ی مشترک آرایه ها این هست که نام و نوع یکی هست برخلاف ساختارها.
                              برای دسترسی به آرایه ها می تونیم از اندیس ها استفاده کنیم که در زبان C اندیس آرایه ها از صفر شروع میشه.
                              حالا چطور یک آرایه رو تعریف کنیم :
                              ما قبلا برای تعریف یک متغیر از نوع int به این شکل عمل می کردیم. ;int c
                              این دستور یک بخش از حافظه رو به نام c جدا می کنه.
                              حالا اگه قصد داشته باشیم که این c با همون نام ولی چند تا بخش داشته باشه می تونیم از آرایه ها استفاده کنیم.
                              مثل ;[4]int c
                              که چهار بخش از حافظه رو جدا می کنه با احتساب اندیس صفر
                              و برای دسترسی به مقادیر که فعلا صفر هستند از اندیس ها استفاده می کنیم.
                              مثل بخش اول [0]c و یا بخش دوم [1]c
                              و برای مقدار دهی بخش ها و یا عضوهای آرایه می تونیم به این روش عمل کنیم. ;int c[4] = {1,2,3,10}
                              البته به صورت پویا هم میشه با طول آرایه ها برخورد کرد.

                              خب دیگه توضیح کافیه از یک مثال ساده استفاده می کنم تا موضوع بهتر منتقل بشه.
                              یکی از بهترین مثال ها مثالی از سری فیبوناچی هست که هر جمله مجموع دو جمله ی قبل هست.
                              8 5 3 2 1 1 0

                              ابتدا آرایه خودمون رو مشخص می کنیم مثلا 7 جمله و شرط اولیه 1 و 0 رو هم ست می کنیم.
                              حالا باید از جمله ی دوم تا ششم حرکت کنیم و مجموع رو محاسبه کنیم.
                              این کار رو با یک حلقه ی for انجام میدیم.

                              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot1.png
بازدیدها:	339
حجم:	14.6 کیلوبایت
شناسه:	49432

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

                              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot2.png
بازدیدها:	339
حجم:	17.6 کیلوبایت
شناسه:	49433

                              حالا برنامه رو تستش می کنیم.

                              برای مشاهده تصویر بزرگتر کلیک کنید

نام:	Screenshot3.png
بازدیدها:	331
حجم:	10.3 کیلوبایت
شناسه:	49434

                              خوبه داره کار می کنه.
                              باز هم قصد من فقط یک مثال ساده بود و گرنه مباحث مربوط به برنامه نویسی واقعا خیلی زیاده.

                              نظر

                              در حال کار...