نحوه راه اندازی گوشی های هوشمند و رایانه های شخصی. پرتال اطلاعاتی
  • خانه
  • اهن
  • نظریه برنامه نویسی - متغیرها. مفهوم "متغیر"، "میدان" و "ثابت"

نظریه برنامه نویسی - متغیرها. مفهوم "متغیر"، "میدان" و "ثابت"

برای روشن شدن رابطه بین تمامی عوامل موجود در آزمایش، مفهوم «متغیر» معرفی شد. سه نوع متغیر وجود دارد: مستقل، وابسته و اضافی.

متغیرهای مستقل.عاملی که توسط خود آزمایشگر قابل تغییر است نامیده می شود متغیر مستقل(NP).

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

موقعیتی NP ها اغلب در ساختار کار آزمایشی انجام شده توسط آزمودنی گنجانده نمی شوند. با این حال، آنها تأثیر مستقیمی بر فعالیت او دارند و می توانند توسط آزمایشگر متفاوت باشند. NPهای موقعیتی شامل پارامترهای فیزیکی مختلفی مانند روشنایی، دما، سطح نویز، و همچنین اندازه اتاق، اثاثیه، قرار دادن تجهیزات و غیره هستند. در حضور یک آزمایشگر، یک ناظر خارجی یا گروهی از افراد. V.N. دروژینین به ویژگی های ارتباط و تعامل بین آزمودنی و آزمایشگر اشاره می کند تنوع خاص NP های موقعیتی توجه زیادی به این جنبه می شود. در روانشناسی تجربی جهت جداگانه ای به نام «روانشناسی آزمایش روانشناختی» وجود دارد.

آموزشی NP به طور مستقیم با کار آزمایشی، ویژگی های کیفی و کمی آن و همچنین روش های اجرای آن مرتبط است. آزمایشگر می تواند NP آموزنده را کم و بیش آزادانه دستکاری کند. او می تواند مواد تکلیف را تغییر دهد (به عنوان مثال عددی، شفاهی یا مجازی)، نوع پاسخ آزمودنی (مثلاً کلامی یا غیرکلامی)، مقیاس رتبه بندی و غیره. فرصت های عالیشامل روش آموزش آزمودنی ها، آگاه کردن آنها در مورد هدف تکلیف آزمایشی است. آزمایشگر می تواند وسایلی را که برای تکمیل کار به آزمودنی ارائه می شود تغییر دهد، موانعی را در مقابل او قرار دهد، از سیستم پاداش و تنبیه در حین انجام کار و غیره استفاده کند.

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

هر یک از آزمودنی‌های شرکت‌کننده در آزمایش دارای ویژگی‌های منحصربه‌فرد فیزیکی، بیولوژیکی، روان‌شناختی، اجتماعی-روانی و اجتماعی هستند که آزمایش‌گر نمی‌تواند آنها را کنترل کند. در برخی موارد باید این ویژگی های غیرقابل کنترل را متغیرهای اضافی در نظر گرفت و روش های کنترلی را برای آنها اعمال کرد که در ادامه به آن پرداخته می شود. با این حال، در تحقیقات روان‌شناختی افتراقی، هنگام استفاده از طرح‌های فاکتوریل، متغیرهای شخصی کنترل‌نشده می‌توانند به عنوان یکی از متغیرهای مستقل عمل کنند (برای جزئیات در مورد طرح‌های عاملی، به 4.7 مراجعه کنید).

محققان همچنین بین موارد مختلف تمایز قائل می شوند انواعمتغیرهای مستقل. بسته به مقیاس های ارائه NP های کمی و کیفی قابل تشخیص هستند. کیفیت بالا NP ها با درجه بندی های مختلف مقیاس های نام گذاری مطابقت دارند. برای مثال، حالات عاطفی سوژه را می توان با حالت های شادی، خشم، ترس، تعجب و غیره نشان داد. کمی NP ها با مقیاس های رتبه ای، متناسب یا فاصله ای مطابقت دارند. به عنوان مثال، زمان اختصاص داده شده برای تکمیل یک کار، تعداد وظایف، میزان پاداش بر اساس نتایج حل مشکلات می تواند به عنوان NP کمی استفاده شود.

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

متغیرهای وابسته.عاملی که تغییر آن نتیجه تغییر در متغیر مستقل باشد نامیده می شود متغیر وابسته(ZP). متغیر وابسته جزء پاسخ آزمودنی است که مستقیماً مورد توجه محقق است. واکنش‌های فیزیولوژیکی، عاطفی، رفتاری و سایر ویژگی‌های روان‌شناختی که می‌توان در طول آزمایش‌های روان‌شناختی ثبت کرد، می‌تواند به عنوان PP عمل کند.

بسته به روشی که با آن می توان تغییرات را ثبت کرد،تخصیص حقوق:

اسقابل مشاهده مستقیم؛

اسنیاز به تجهیزات فیزیکی برای اندازه گیری؛

اسنیاز به بعد روانی دارد.

به حقوق، قابل مشاهده مستقیمشامل تظاهرات رفتاری کلامی و غیرکلامی است که می تواند به وضوح و بدون ابهام توسط یک ناظر خارجی ارزیابی شود، به عنوان مثال، امتناع از فعالیت، گریه، اظهارات خاص توسط آزمودنی و غیره. تجهیزات فیزیکی برای ثبت نام،شامل فیزیولوژیک (نبض، ارزش فشار خونو غیره) و واکنش های روانی (زمان واکنش، زمان نهفته، مدت زمان، سرعت عمل و غیره). برای PO های مورد نیاز بعد روانی،شامل ویژگی هایی مانند سطح آرزوها، سطح توسعه یا شکل گیری کیفیت های خاص، اشکال رفتار، و غیره است. یعنی فقط توسط ناظران یا کارشناسان آموزش دیده به طور منحصر به فرد شناسایی و تفسیر می شوند.

بسته به تعداد پارامترهادر متغیر وابسته، PPهای تک بعدی، چند بعدی و اساسی وجود دارد. یک بعدی ZP با یک پارامتر واحد نشان داده می شود که تغییرات آن در آزمایش مورد مطالعه قرار می گیرد. نمونه ای از PP یک بعدی سرعت یک واکنش حسی حرکتی است. چند بعدیدستمزد با مجموعه ای از پارامترها نشان داده می شود. به عنوان مثال، توجه را می توان با حجم مطالب مشاهده شده، تعداد موارد حواس پرتی، تعداد پاسخ های صحیح و نادرست و غیره ارزیابی کرد. هر پارامتر می تواند به طور مستقل ثبت شود. اساسی ZP یک متغیر پیچیده است که پارامترهای آن روابط شناخته شده خاصی با یکدیگر دارند. در این حالت، برخی از پارامترها به عنوان آرگومان عمل می کنند و خود متغیر وابسته به عنوان یک تابع عمل می کند. به عنوان مثال، بعد بنیادی میزان پرخاشگری را می توان تابعی از تظاهرات فردی آن (چهره، کلامی، فیزیکی و...) دانست.

متغیر وابسته باید دارای موارد زیر باشد ویژگی اساسیمثل حساسیت حساسیت FP حساسیت آن به تغییرات در سطح متغیر مستقل است. اگر زمانی که متغیر مستقل تغییر می‌کند، متغیر وابسته تغییر نمی‌کند، دومی غیرمثبت است و انجام آزمایش در این مورد معنی ندارد. دو نوع شناخته شده از تظاهر غیر مثبت بودن PP وجود دارد: "اثر سقف" و "اثر کف". "اثر سقف" مشاهده می شود، به عنوان مثال، در موردی که کار ارائه شده آنقدر ساده است که همه افراد، صرف نظر از سن، آن را انجام می دهند. از سوی دیگر، «اثر کف» زمانی اتفاق می‌افتد که یک کار آنقدر دشوار باشد که هیچ یک از افراد نتوانند با آن کنار بیایند.

دو راه اصلی برای ثبت تغییرات PO وجود دارد آزمایش روانشناختی: فوری و با تاخیر مستقیماین روش، به عنوان مثال، در آزمایش های حافظه کوتاه مدت استفاده می شود. بلافاصله پس از تکرار تعدادی از محرک ها، آزمایشگر تعداد آنها را که توسط آزمودنی بازتولید شده است، ثبت می کند. روش معوق زمانی استفاده می شود که بین نفوذو تأثیر آن برای مدت معینی باقی می ماند (مثلاً هنگام تعیین تأثیر تعداد کلمات خارجی حفظ شده بر موفقیت ترجمه یک متن).

متغیرهای اضافی(DP) یک تحریک همزمان سوژه است که بر پاسخ او تأثیر می گذارد. کلیت DP معمولاً از دو گروه تشکیل شده است: شرایط خارجیتجربه و عوامل درونی بر این اساس معمولاً به آنها DP خارجی و داخلی می گویند. به خارجی DP به محیط فیزیکی آزمایش اشاره دارد (روشنایی، رژیم دما، پس زمینه صدا، ویژگی های فضایی اتاق، پارامترهای تجهیزات و تجهیزات (طراحی ابزار اندازه گیری، نویز عملیاتی و غیره)، پارامترهای زمانی آزمایش (زمان شروع، مدت زمان و غیره)، شخصیت آزمایشگر. به درونی؛ داخلی DP شامل خلق و خو و انگیزه آزمودنی ها، نگرش آنها نسبت به آزمایشگر و آزمایشات، نگرش های روانی، تمایلات، دانش، توانایی ها، مهارت ها و تجربه در این نوع فعالیت، میزان خستگی، رفاه و غیره است.

مفهوم "متغیر"، "فیلد" و "ثابت"

مفهوم "متغیر"

سینتکس اعلان متغیرها در سی شارپ به صورت زیر است:

<тип данных> <имя идентификатора>

مثلا:

می توانید اعلام کنید متغیرهر نوع واقعی. تاکید بر این نکته ضروری است که قابلیت های یک متغیر بر اساس نوع آن تعیین می شود. مثلا، متغیر نوع بوولنمی توان برای ذخیره مقادیر عددی ممیز شناور استفاده کرد. علاوه بر این، نوع یک متغیر در طول عمر آن قابل تغییر نیست. به طور خاص، یک متغیر مانند بین المللینمی توان به یک متغیر از نوع تبدیل کرد کاراکتر.

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

مقداردهی اولیه یک متغیر

شما می توانید مقدار یک متغیر را به ویژه با استفاده از اپراتور واگذاری. علاوه بر این، می توانید مقدار اولیه یک متغیر را هنگام اعلام آن تنظیم کنید. برای انجام این کار، پس از نام متغیر، علامت مساوی "=" و مقدار اختصاص داده شده نشان داده شده است. اگر دو یا چند متغیر از یک نوع به عنوان یک لیست جدا شده با کاما اعلام شوند، می توان به این متغیرها، برای مثال، یک مقدار اولیه داد. در زیر آمده است شکل کلیمقداردهی اولیه متغیر:

int i = 10; // متغیر عدد صحیح i را روی 10 قرار دهید

نماد کاراکتر = "Z"; // متغیر نماد را مقداردهی اولیه کنید معنی تحت اللفظیز

float f = 15.7F; // متغیر f مقدار دهی اولیه می شود مقدار عددی 15.7

int x = 5، y = 10، z = 12; // چندین متغیر از یک نوع را مقدار دهی اولیه کنید

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

سی شارپ از دو روش برای اطمینان از مقداردهی اولیه متغیرها قبل از استفاده استفاده می کند:

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

به عنوان مثال، در سی شارپ نمی توانید کارهای زیر را انجام دهید:

عمومی static int Main()

Console.WriteLine(d); // شما نمی توانید این کار را انجام دهید!

// قبل از استفاده باید مقدار دهی اولیه شود

مقداردهی اولیه پویا

در مثال‌های بالا، فقط از ثابت‌ها به‌عنوان مقداردهی اولیه متغیر استفاده می‌شد، اما در سی شارپ نیز این امکان وجود دارد مقداردهی اولیه پویامتغیرها با استفاده از هر عبارت معتبر در زمان اعلام متغیر:

int i1 = 3، i2 = 4;

// متغیر نتیجه را به صورت پویا راه اندازی کنید

نتیجه دو برابر = Math.Sqrt(i1*i1 + i2*i2);

که در در این مثالسه متغیر محلی اعلام شده است i1, i2, نتیجه، که دو مورد اول به صورت ثابت اولیه و متغیر هستند نتیجهبا استفاده از روش به صورت پویا مقدار دهی اولیه می شود Math.Sqrt، عودت ریشه دوماصطلاحات. به ویژه باید تاکید کرد که در عبارت مقداردهی اولیه می توانید از هر عنصری که در زمان مقداردهی اولیه متغیر معتبر است استفاده کنید، از جمله فراخوانی متد، متغیرهای دیگر یا به معنای واقعی کلمه.

متغیرهای تایپ شده ضمنی

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

یک متغیر به طور ضمنی تایپ شده با استفاده از آن اعلام می شود کلمه کلیدی varو باید مقداردهی اولیه شود. برای تعیین نوع این متغیر، کامپایلر از نوع اولیه ساز آن استفاده می کند. مقادیری که با آنها مقداردهی اولیه می شود:

var i = 12; // متغیر i به یک عدد صحیح واقعی مقدار دهی اولیه می شود

var d = 12.3; // متغیر d با یک حرف ممیز شناور مقداردهی اولیه می شود،

// دارای نوع double

var f = 0.34F; // متغیر f اکنون دارد نوع شناور

تنها تفاوت بین متغیر تایپ شده ضمنی و متغیر معمولی و صریح در نحوه تعیین نوع آن است. هنگامی که این نوع تعریف شد، تا پایان عمر به متغیر اختصاص داده می شود.

متغیرهایی که به طور ضمنی تایپ شده اند برای جایگزینی به سی شارپ وارد نمی شوند تبلیغات معمولیمتغیرها در مقابل، متغیرهایی که به طور ضمنی تایپ می شوند در نظر گرفته شده اند مناسبت های خاص، و قابل توجه ترین آنها مربوط به زبان پرس و جو یکپارچه (LINQ). بنابراین، اکثر اعلان‌های متغیر باید به صراحت تایپ شوند، زیرا خواندن و درک آن‌ها را آسان‌تر می‌کنند. متن منبعبرنامه ها.

بیایید به مثالی نگاه کنیم که در آن انواع متغیرهای تایپ شده ضمنی را در کنسول نمایش خواهیم داد:

با استفاده از System.Collections.Generic.

با استفاده از System.Linq؛

با استفاده از System.Text.

فضای نام LC_Console

فضای خالی استاتیک اصلی (آرگس های رشته ای)

var name = "John A.";

var isProgrammer = true;

// نوع متغیرها را تعیین کنید

nameType = name.GetType();

type ageType = age.GetType();

isProgrammerType = isProgrammer.GetType();

// نتایج را در کنسول چاپ کنید

Console.WriteLine("Type name: (0)", nameType);

Console.WriteLine("نوع سن: (0)"، ageType);

Console.WriteLine("isProgrammer Type: (0)", isProgrammerType);

Console.WriteLine("برای ادامه، هر کلیدی را فشار دهید...");

Console.ReadKey();

/* خروجی ها:

* نام تایپ: System.String

* نوع سن: System.Int32

* نوع isProgrammer: System.Boolean

* برای ادامه، هر کلیدی را فشار دهید. . .

مفهوم "میدان"

رشتهدارای هر نوع مستقیماً در یک کلاس یا ساختار است. زمینه ها هستند اعضاانواع آنها

یک کلاس یا ساختار ممکن است داشته باشد فیلدهای نمونهیا زمینه های استاتیک، یا فیلدهای هر دو نوع. فیلدهای یک نمونه با نمونه از نوع تعیین می شوند. اگر کلاس وجود دارد تیو زمینه نمونه اف، می توانید دو بسازید هدف - شینوع تیو مقدار فیلد را تغییر دهید افدر هر شیء بدون تغییر مقدار در شیء دیگر. در مقابل، یک فیلد ایستا متعلق به خود کلاس است و توسط تمام نمونه‌های آن کلاس مشترک است. تغییرات ایجاد شده از یک نمونه آ، بلافاصله برای نمونه ها قابل مشاهده خواهد بود که درو با، اگر به این زمینه دسترسی داشته باشند.

به عنوان یک قاعده، فیلدها فقط برای متغیرهایی استفاده می شوند که دارای اصلاح کننده های دسترسی: خصوصییا حفاظت شده. داده هایی که یک کلاس به کد مشتری ارائه می دهد باید ارائه شود مواد و روش ها, خواصو نمایه سازها. با استفاده از این ساختارها برای دسترسی غیر مستقیم به فیلدهای داخلی، می توانید در برابر مقادیر ورودی نامعتبر محافظت کنید. یک فیلد خصوصی که داده های ارائه شده را ذخیره می کند اموال عمومی، تماس گرفت ذخیره سازی پشتیبان یا میدان ذخیره.

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

فیلدها در یک بلوک کلاس با تعیین سطح دسترسی فیلد و به دنبال آن اعلام می شوند نوع میدانو نام زمینه. مثال:

کلاس عمومی CalendarEntry

// فیلد خصوصی

خصوصی تاریخ DateTime;

روز رشته عمومی؛

// دارایی عمومی، با خیال راحت یک متغیر تاریخ را ارائه می دهد

عمومی DateTime تاریخ

اگر (مقدار. سال > 1900 && ارزش. سال<= DateTime.Today.Year)

// روش عمومی، همچنین با خیال راحت یک متغیر تاریخ را ارائه می دهد

// تماس: birthday.SetDate("2012, 12, 21");

عمومی void SetDate (رشته dateString)

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

اگر (dt.Year > 1900 && dt.Year<= DateTime.Today.Year)

پرتاب جدید ArgumentOutOfRangeException();

عمومی TimeSpan GetTimeSpan (رشته dateString)

DateTime dt = Convert.ToDateTime(dateString);

اگر (dt != null && dt.Ticks< date.Ticks)

تاریخ بازگشت - dt؛

پرتاب جدید ArgumentOutOfRangeException();

برای دسترسی به عضوی از یک شی، باید یک نقطه بعد از نام شی اضافه کنید و نام فیلد را مشخص کنید : objectname.fieldname. مثال:

CalendarEntry birthday = new CalendarEntry();

birthday.day = "جمعه";

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

کلاس عمومی CalendarDateWithInitialization

public string day = "دوشنبه";

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

فیلدها را می توان با اصلاح کننده ها علامت گذاری کرد عمومی, خصوصی, حفاظت شده, درونی؛ داخلییا داخلی محافظت شده. این اصلاح کننده های دسترسی تعیین می کنند که چگونه کاربران کلاس می توانند به فیلد دسترسی داشته باشند.

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

همچنین در صورت لزوم می توان فیلد را با یک اصلاح کننده اعلام کرد فقط خواندنی. فیلدی با این اصلاح‌کننده (یعنی یک فیلد فقط خواندنی) فقط می‌تواند در حین مقداردهی اولیه یا در سازنده به آن مقادیر اختصاص دهد. فیلد اصلاح کننده به صورت استاتیکی(استاتیک، فقط خواندنی) بسیار شبیه است ثابت، با این تفاوت که کامپایلر C# در زمان کامپایل به مقدار چنین فیلدی دسترسی ندارد: دسترسی فقط در زمان اجرا امکان پذیر است.

مفهوم "ثابت"

ثابت ها مقادیر تغییرناپذیری هستند که در زمان کامپایل شناخته می شوند و در طول عمر برنامه بدون تغییر باقی می مانند. ثابت ها با یک اصلاح کننده اعلام می شوند پایان. فقط انواع C# داخلی (به جز System.Object) را می توان به عنوان اعلام کرد پایان. انواع تعریف شده توسط کاربر، از جمله کلاس ها، ساختارها و آرایه ها، نمی توانند باشند پایان. برای ایجاد یک کلاس، ساختار یا آرایه ای که یک بار در زمان اجرا مقداردهی اولیه می شود (مثلاً در یک سازنده) و پس از آن نمی توان آن را تغییر داد، از اصلاح کننده استفاده کنید. فقط خواندنی.

زبان سی شارپ از روش‌ها، ویژگی‌ها یا رویدادهای کلیدواژه پشتیبانی نمی‌کند پایان.

تایپ کنید نقل و انتقالاتبه شما امکان می دهد تا ثابت های نامگذاری شده را برای انواع داخلی اعداد صحیح تعریف کنید (به عنوان مثال، بین المللی, unint, طولانیو غیره.).

ثابت ها باید بلافاصله پس از اعلان مقداردهی اولیه شوند. مثال:

هزینه عمومی بین ماه = 12;

در این مثال ثابت ماه هاهمیشه مقدار 12 دارد و مقدار آن حتی توسط خود کلاس نیز قابل تغییر نیست. هنگامی که کامپایلر با یک شناسه ثابت در کد منبع C# مواجه می شود (به عنوان مثال، ماه ها، مقدار تحت اللفظی را مستقیماً با کدی که آن را ایجاد می کند جایگزین می کند IL(زبان متوسط). از آنجایی که هیچ آدرس متغیری با یک ثابت در زمان اجرا وجود ندارد، فیلدها پایاننمی توان از طریق مرجع عبور کرد و به عنوان یک مقدار در یک عبارت نمایش داد.

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

چندین ثابت از یک نوع را می توان به طور همزمان اعلام کرد، به عنوان مثال:

مدت زمان بین ماه = 12، هفته = 52، روز = 365.

عبارتی که برای مقداردهی اولیه یک ثابت استفاده می شود، تا زمانی که مرجع دایره ای ایجاد نکند، می تواند به ثابت دیگری اشاره کند. مثال:

مدت زمان بین ماه = 12;

Const int هفته = 52;

تعداد روز = 365;

const double daysPerWeek = (دو) روز / (دو) هفته;

const double daysPerMonth = (دو) روز / (دو) ماه;

ثابت ها را می توان با اصلاح کننده ها مشخص کرد عمومی, خصوصی, حفاظت شده, درونی؛ داخلییا داخلی محافظت شده. این اصلاح کننده های دسترسی تعیین می کنند که چگونه کاربران کلاس می توانند به ثابت دسترسی داشته باشند.

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

سنگ های تولد int = Calendar.months;

درس 11

مفهوم متغیر

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

یک متغیر را می توان به عنوان ساده ترین شی برنامه نشان داد زیرا:

· نام متغیر یک متغیر را با یک ناحیه حافظه خاص مرتبط می کند،

· نام متغیرها به شما امکان می دهد آنها را در برنامه تشخیص دهید، به مناطق مختلف حافظه برای نوشتن داده ها و بازیابی آنها دسترسی داشته باشید.

متغیرها در یک برنامه باید قبل از استفاده اعلان شوند (اعلان شوند).

· هنگام اعلان یک متغیر، باید مشخص کنید که یک متغیر در حال اعلان است، نام متغیر را مشخص کرده و نوع آن را مشخص کنید.

· نوع نحوه نمایش یک متغیر را مشخص می کند.

برای استفاده موثر از حافظه، باید نوع متغیر صحیح را انتخاب کنید.

یک متغیر می تواند مقادیر یک نوع معین را ذخیره کند. مجاز به استفاده

- هفت نوع ساده (عدد، ارز، رشته، دردناک، تاریخ، زمان و تاریخ-زمان)،

- شش نوع محدوده (محدوده اعداد، محدوده ارز، محدوده رشته، محدوده تاریخ، محدوده زمانی، محدوده تاریخ و زمان) و

- متغیرهایی که می توانند انواع مشخص را ذخیره کنند.

در مجموع، متغیر می تواند مقادیر 26 نوع مختلف را ذخیره کند.

برای استفاده از یک متغیر، باید سه مرحله را انجام دهید:

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

2. یک مقدار به متغیر اختصاص دهید. یک مقدار را به یک متغیر برای ذخیره کردن ارسال کنید.

3. به طور مستقیم از متغیر استفاده کنید. مقدار موجود در یک متغیر را بازیابی کنید و از آن در یک برنامه استفاده کنید.

اعلان متغیرها

اعلام متغیرها کامپایل برنامه را سریعتر و کارآمدتر می کند و همچنین از غلط املایی نام متغیرها در کد برنامه جلوگیری می کند. شما می توانید هر تعداد متغیر را اعلام کنید.

اعلان متغیرها می تواند صریح یا ضمنی باشد. اعلان صریح به معنای تعیین نام و نوع متغیر قبل از استفاده از آن است. توسط عملگرهای Dim، Private، Static، Public انجام می شود که دارای نحو زیر هستند:

نام متغیر Dim

Private VariableName DimVariableName1[ As Type1]

که در آن Dim یک کلمه کلیدی است که به ویژوال بیسیک می گوید که یک متغیر در حال اعلان است و یک ناحیه از حافظه برای ذخیره آن رزرو شده است.

VariableName - نام متغیر (شناسه ای که در لیست کلمات کلیدی ویژوال بیسیک قرار ندارد)؛

همانطور که یک کلمه کلیدی است که به ویژوال بیسیک می گوید که نوع داده برای یک متغیر در حال تعیین است.

نوع - نوع داده برای متغیر اعلام شده؛

خصوصی، عمومی - کلمات کلیدی که محدوده متغیر را تعریف می کنند.

Static یک کلمه کلیدی است که تعیین می کند آیا متغیر هنگام پایان و خروج یک بلوک برنامه (رویه، تابع) مقدار خود را حفظ می کند یا خیر.

توجه داشته باشید:

هنگام تهیه کد برنامه، محیط برنامه نویسی به کاربر کمک می کند: پس از تایپ کلمه کلیدی As، لیستی باز می شود که در آن به همراه انواع دیگر اشیاء، انواع اصلی متغیرها نشان داده شده است. نوع متغیر را می توان با دوبار کلیک کردن روی نام نوع در این لیست یا با فشار دادن کلید تنظیم کرد.

متغیری که با استفاده از دستور Dim اعلام شده است از هر نقطه برنامه (یا بلوک برنامه) در محدوده حاوی دستور Dim قابل دسترسی است. به عنوان مثال، اگر در داخل یک ماژول خارج از هر رویه ای اعلام شود، چنین متغیری از هر نقطه ای در این ماژول قابل دسترسی است. اگر متغیری در داخل یک رویه اعلان شود، آنگاه فقط در آن رویه قابل دسترسی است. چنین متغیری محلی نامیده می شود. برای تعیین در دسترس بودن یک متغیر با جزئیات بیشتر، از اپراتورهای خصوصی و عمومی استفاده می شود.

استفاده از عملگر Public به این معنی است که متغیر دارای دسترسی عمومی است، یعنی دسترسی بدون محدودیت. یک متغیر عمومی را نمی توان در داخل یک رویه اعلام کرد.

متغیری که با کلمه کلیدی Private اعلان شده است فقط در زمینه ای که در آن اعلان شده است، از جمله رویه ها، قابل دسترسی است. یک متغیر خصوصی را می توان در داخل یک ماژول، کلاس یا ساختار اعلان کرد، اما نه در داخل یک رویه.

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

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

خصوصی bSuccess به عنوان Boolean

تیره نام خانوادگی، firstName به عنوان رشته، dblSum به عنوان Double

· راه دوم برای اعلام صریح متغیرها، نشان دادن نوع با استفاده از پسوند است.

بخش اعلان متغیر اختیاری است، اما اگر نوع داده ای مشخص نشده باشد، ویژوال بیسیک به متغیر، نوع مقداری را که هنگام اعلان به آن اختصاص داده می شود، اختصاص می دهد. اگر هیچ نوع داده ای مشخص نشده باشد و متغیر با هیچ مقدار اولیه مقداردهی اولیه نشده باشد، ویژوال بیسیک به آن شی نوع داده اختصاص می دهد. این باعث می شود برنامه شما کندتر اجرا شود زیرا حافظه بیشتری نسبت به مقدار مورد نیاز به متغیر Object اختصاص می یابد. علاوه بر این، برنامه باید زمان بیشتری را برای تعیین نوع داده ای که مقدار متغیر در یک زمان معین است صرف کند.

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

ترجیح داده می شود که متغیرها را به طور صریح با یک نوع داده اعلام کنید، زیرا این امر احتمال غلط املایی یا تضاد نام را کاهش می دهد. به طور پیش فرض، کامپایلر ویژوال بیسیک حالت اعلان متغیر را به صورت واضح تنظیم می کند.

هنگام اعلان یک متغیر، باید نام آن را مشخص کنید. نام متغیرها با شناسه ها نشان داده می شود.

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

· نام متغیر نباید بیش از 255 کاراکتر داشته باشد.

· نام متغیر می تواند شامل هر حرف، اعداد و زیرخط باشد.

· اولین کاراکتر در نام متغیر باید نماد یا زیرخط باشد.

· نام متغیر نباید دارای فاصله یا علائم نگارشی باشد.

· نام باید در محدوده منحصر به فرد باشد.

· نام نباید یک کلمه کلیدی باشد.

معمولاً یک متغیر با استفاده از کلمات کلیدی Dim و As اعلام می شود:

کم نور یک عدد به عنوان عدد صحیح

این خط کد به برنامه می گوید که باید از متغیری به نام aNumber استفاده کند و اعداد صحیح (نوع داده Integer) را ذخیره کند.

از آنجایی که aNumber یک متغیر Integer است، فقط می تواند اعداد صحیح را ذخیره کند. اگر لازم بود مثلاً عدد 42.5 ذخیره شود، از نوع داده Double استفاده می شد. و برای ذخیره کلمات از نوع داده ای به نام String استفاده می شود. نوع داده دیگری که در اینجا قابل ذکر است نوع Boolean است که می تواند مقادیر True یا False را ذخیره کند.

در زیر نمونه های اضافی از اعلان متغیرها آمده است.

کم نور aDouble As Double

کم رنگ کردن نام به عنوان رشته

کم نور YesOrNo به عنوان Boolean

نام متغیر نمی تواند با نام هر تابع، عملگر یا کلمه کلیدی رزرو شده در نحو Basic یکی باشد. به عنوان مثال، یک متغیر را نمی توان Sin، Mod یا If نامید زیرا Sin نام یک تابع داخلی است، Mod یک عملگر داخلی و If یک کلمه کلیدی داخلی است. هنگامی که فرمول ها را در ویرایشگر فرمول وارد می کنید، نام توابع داخلی، عملگرها و سایر کلمات کلیدی با رنگ دیگری برجسته می شوند. این به شما امکان می دهد به صورت بصری تعیین کنید که نام متغیر باعث تضاد نامگذاری می شود.

پس از اعلام، متغیر می تواند در یک فرمول استفاده شود.

دامنه متغیر

دامنه یک متغیر برای تعیین اینکه آیا می توان از متغیرها استفاده کرد یا خیر استفاده می شود. سه سطح دامنه وجود دارد:

· محلی (محلی)،

· جهانی (جهانی)،

· به اشتراک گذاشته شده است.

هر متغیر دارای یک محدوده است که زمانی مشخص می شود که متغیر تعریف شود.

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

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

متغیرهای سراسری از هر بخشی از برنامه قابل دسترسی هستند. برای ایجاد متغیری که می خواهید آن را به عنوان جهانی تعریف کنید، یک عبارت Public را در ابتدای ماژول برنامه اصلی قرار دهید. مثلا:

عمومی gdtmFinish As Date

مقادیر متغیرهای سراسری تا زمانی که برنامه یا بلوکی که در آن اعلام شده است در حال اجرا است حفظ می شود. مقادیر آنها را می توان با تمام دستورات برنامه یا هر بلوک (کنترل کننده رویداد) برنامه خواند یا تغییر داد.

برای اعلام یک متغیر به عنوان محلی در یک ماژول، فرم یا رویداد، از عملگرهای Private، Local یا Dim استفاده کنید. در این حالت، متغیر اعلام شده برای همه رویه‌های موجود در فرم، ماژول یا مدیریت رویداد در دسترس خواهد بود، اما در عین حال در رویه‌های سایر ماژول‌ها، فرم‌ها یا کنترل‌کننده‌های رویداد در دسترس نخواهد بود. مقدار یک متغیر محلی فقط تا زمانی که فرم، ماژول یا رویدادی که در آن اعلان شده فعال باشد حفظ می شود. پس از اجرای آنها، مقادیر متغیرهای محلی از بین می روند. عبارات زیر معادل هستند:

محلی x به عنوان شماره

رایج ترین استفاده از متغیرهای محلی در کنترل کننده رویداد است. می‌توانید متغیرهای محلی را با همان نام در کنترل‌کننده‌های رویداد، فرم‌ها یا ماژول‌های مختلف بدون تداخل ایجاد کنید.

اگر شرایط خاصی وجود ندارد،

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

تخصیص مقادیر به متغیرها

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

این خط کد مقدار 42 را می گیرد و آن را در یک متغیر از قبل اعلام شده به نام aNumber ذخیره می کند.

در صورت لزوم می توانید کلمه کلیدی Let را نیز اضافه کنید.

اعلام و تخصیص مقادیر به متغیرهایی با مقادیر پیش فرض

همانطور که در بالا نشان داده شده است، می توانید یک متغیر را در یک خط کد اعلام کنید و بعداً در یک خط دیگر مقداری را به آن اختصاص دهید. اگر بخواهید از متغیری قبل از اختصاص مقداری به آن استفاده کنید، ممکن است باعث خطا شود.

به همین دلیل توصیه می شود متغیرها را اعلام کرده و در همان خط به آنها مقادیری اختصاص دهید. حتی اگر مقدار آینده یک متغیر هنوز مشخص نباشد، می توان یک مقدار پیش فرض به آن اختصاص داد. در این حالت، کد اعلام و تخصیص مقادیر به همان متغیرها به شکل زیر خواهد بود.

Dim aDouble As Double = 0

Dim aName As String = "رشته پیش فرض"

کم نور YesOrNo به عنوان Boolean = True

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

متغیرهای رشته ای

رشته های با طول متغیر و ثابت وجود دارد. رشته های با طول متغیر می توانند تا دو میلیارد کاراکتر داشته باشند. هنگامی که به چنین متغیری مقداری اختصاص داده می شود، اندازه متغیر برای مطابقت با طول مقدار رشته اختصاص داده شده تغییر می کند.

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

Dim VarName به عنوان رشته*طول رشته

که در آن StringLength یک متغیر عدد صحیح یا ثابت است که شامل یک عدد است که طول متغیر رشته را مشخص می کند.

مثلا:

Dim strMyName As String*20 ′ یک متغیر رشته با طول ثابت 20 کاراکتری را اعلام می کند.

استفاده از متغیرهای رشته برای سازماندهی کلمات

رشته هر مجموعه ای از کاراکترهای متنی مانند حروف، اعداد، کاراکترهای خاص و فاصله است. رشته‌ها می‌توانند عبارات یا جملاتی به‌راحتی قابل خواندن برای کاربر باشند، مانند «چای بیشتری بنوشید و آن رول‌های نرم فرانسوی را بخورید» یا ترکیب‌های کاملاً ناخوانا، مانند «@#fTWRE^3 35Gert».

متغیرهای رشته ای مانند سایر متغیرها ایجاد می شوند: ابتدا یک متغیر را اعلام کرده و مقداری به آن اختصاص می دهیم، همانطور که در زیر نشان داده شده است.

هنگام تخصیص متن واقعی (که اصطلاحاً رشته‌ای نیز نامیده می‌شود) به یک متغیر String، متن باید در علامت نقل قول ("") قرار گیرد. همانطور که در این مثال نشان داده شده است می توانید هنگام اختصاص یک متغیر String به متغیر String دیگر از نماد = استفاده کنید.

Dim aString As String = "این یک رشته است"

کم نور bString به عنوان رشته = ""

bString = aString

همانطور که در زیر نشان داده شده است، می توانید از کاراکتر آمپرسند (& یا علامت "+") برای الحاق دو یا چند خط به یک خط جدید استفاده کنید. به این روش ادغام نیز می گویند.

کم نور cString به عنوان رشته = ""

cString = aString & bString

مثال قبلی سه متغیر String را اعلام می‌کند، به دو متغیر اول به ترتیب مقادیر "using string" و "variables" را اختصاص می‌دهد و سپس مقادیر ترکیبی دو متغیر اول را به متغیر سوم اختصاص می‌دهد. مقدار متغیر cString چقدر خواهد بود؟ شاید با کمال تعجب، مقدار این متغیر به دلیل نبود فاصله در انتهای aString یا ابتدای bString، رشته ای باشد که از متغیرهای string استفاده می کند. این دو خط به سادگی به هم متصل می شوند. اگر نیاز به اضافه کردن فاصله یا هر چیز دیگری بین دو رشته دارید، باید این کار را با استفاده از یک رشته واقعی مانند " "، مانند شکل زیر انجام دهید.

Dim aString As String = "استفاده از رشته"

کم نور bString به عنوان رشته = "متغیرها"

کم نور cString به عنوان رشته = ""

cString = aString & " " & bString

تبدیل از یک نوع متغیر به نوع دیگر

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

وقتی می‌خواهید داده‌های Integer را در یک کنترل TextBox که به نوع داده String نیاز دارد، نمایش دهید چه اتفاقی می‌افتد؟ در این حالت داده ها باید از یک نوع به نوع دیگر تبدیل شوند. این بخش نحوه تبدیل داده ها از یک نوع به نوع دیگر، برخی از روش های مورد استفاده برای تبدیل داده ها و برخی از چالش های موجود را به شما نشان می دهد.

برخی از توابع تبدیلدیداریپایه ای

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

نمایش رشته ای از یک عدد را برمی گرداند. آرگومان (آنچه در داخل پرانتز قرار دارد) از نوع Long است و می تواند هر عبارت عددی معتبری باشد.

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

یک عبارت (هر عبارت عددی یا رشته ای که عددی بین -32768 و 32767 را نشان می دهد) را به یک عدد صحیح با گرد کردن تبدیل می کند.

یک عبارت (هر عبارت عددی یا رشته ای که یک عدد از - به را نشان می دهد) با گرد کردن به Long تبدیل می کند.

یک عبارت (هر عبارت عددی یا رشته ای که یک عدد را نشان می دهد) را به نوع Single (عددی بین -3.402823E8 و -1.401298E-45 برای مقادیر منفی و بین 1.401298E-45 و 3.402823E8 برای مقادیر مثبت) تبدیل می کند.

یک عبارت (هر عبارت عددی یا رشته ای که یک عدد را نشان می دهد) را به یک Double (عددی در محدوده -1.E308 تا -4.E-324 برای مقادیر منفی و 4.E-324 به 1.E308 برای مقادیر مثبت تبدیل می کند. .)

یک عبارت (هر عبارت یا عدد معتبر) را به نوع String تبدیل می کند:

· رشته های با طول متغیر که می توانند تا حدود 2 میلیارد (2^31) کاراکتر داشته باشند.

· رشته هایی با طول ثابت که می توانند از 1 تا تقریباً 64K (2^16) کاراکتر داشته باشند.

تبدیل متغیرها به متن

هر متغیر در ویژوال بیسیک را می توان با استفاده از تابع ویژه CStr (مخفف Convert to String) به متن تبدیل کرد. این تابع، همانطور که از نامش پیداست، داده های نمایش داده شده در متغیر را به عنوان داده رشته ای برمی گرداند (یعنی هر عددی را به مجموعه ای از کاراکترها تبدیل می کند). روش زیر یک مثال ساده از تبدیل داده های عدد صحیح به متن را نشان می دهد.

علاوه بر تبدیل متغیرهای عدد صحیح به متن، تابع CStr می تواند برای تبدیل هر نوع داده عددی مانند Double یا Long استفاده شود. همچنین می توان از آن برای تبدیل انواع داده های Date و Boolean به متن استفاده کرد.

تبدیل بین انواع داده های عددی

گاهی اوقات نتیجه یک عملیات حسابی را نمی توان به عنوان یک عدد صحیح نشان داد. ویژوال بیسیک علاوه بر تابع تبدیل اعداد به متن، توابعی را نیز برای تبدیل متغیرها از یک نوع داده عددی به نوع دیگر ارائه می کند. به عنوان مثال، می توانید از تابع CDbl (تبدیل به دو برابر) در یک عملیات حسابی برای برگرداندن اعداد کسری هنگام کار با متغیرهای عدد صحیح استفاده کنید. روش زیر نحوه استفاده از تابع CDbl را هنگام تقسیم دو عدد صحیح نشان می دهد.

متغیرهای ...

هر برنامه ای در حین اجرای اقدامات بر روی داده های مختلف عمل می کند. این داده ها می تواند توسط خود برنامه نویس (هنگام نوشتن کد) مشخص شود یا از منبع خارجی (حسگر یا حافظه خارجی) خوانده شود. برای اینکه داده های دریافتی در آینده ثبت و مورد استفاده قرار گیرند، باید به نحوی آن را تعیین و در جایی ذخیره کرد. به هر حال، مقادیر زیادی می تواند وجود داشته باشد، و برنامه نویس تعیین می کند که دقیقاً کدام یک مورد نیاز است. به همین دلیل است که آنها از چنین جانور وحشی به عنوان "متغیر" استفاده می کنند. هنگامی که نام متغیری را می‌دهیم، به طور همزمان نام ناحیه حافظه را که داده‌های مشخص شده توسط متغیر ما در آن ذخیره می‌شود، مشخص می‌کنیم.

یک نکته از تجربه شخصی این است که به متغیرهای خود اسامی معنادار بدهید. می تواند از 1 تا 32 کاراکتر تشکیل شده باشد. متغیرهای A، b یا xffgdf را نام ببرید. پس از یک روز، دیگر به یاد نمی آورید که چه داده هایی در آن ذخیره شده است. هنگام تعیین نام متغیر می توانید از حروف کوچک و بزرگ، اعداد و کاراکتر زیرخط استفاده کنید که در Sishka یک حرف در نظر گرفته می شود. کاراکتر اول باید یک حرف باشد. نام متغیر نباید با دستورات سرویس منطبق باشد.

بعد از اینکه نام متغیر "مورد علاقه" خود را پیدا کردید، باید آن را اعلام کنید. در ابتدای یک برنامه (متغیرهای جهانی) یا تابع (متغیرهای محلی)، لیستی از متغیرهای مورد استفاده در آن را ارائه می دهیم که نوع هر "جانور" را نشان می دهد.

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

دو نوع داده استاندارد کاراکتر(نوع کاراکتر) و بین المللی(نوع عدد صحیح).

انواع متغیر

نوع داده کاراکتر:

  • نمادین - امضاء شده کاراکتر، می تواند مقادیر را در محدوده -128 تا +127 ذخیره کند.
  • بدون امضا - بدون امضا کاراکتر, می تواند مقادیر را در محدوده 0 تا 255 ذخیره کند.

1 بایت حافظه (8 بیت) برای متغیری از نوع char اختصاص داده شده است.

نوع عدد صحیح بین المللیشاید کوتاه(کوتاه) یا طولانی(طولانی).

اس هورتیا طولانیبعدش می آید امضاء شدهیا بدون امضا:

  • امضاء شده کوتاه بین المللی(هنگام اعلام، می توانید به سادگی بنویسید بین المللییا کوتاه، از -32768 تا +32767.
  • بدون امضا کوتاه(همان بدون امضا بین المللییا کوتاه بدون امضا، از 0 تا 65535.
  • امضای طولانی مدت،از -2147483648 تا 2147483647;
  • طولانی بدون امضا،از 0 تا 4294967295.

برای هر متغیر از این نوع کوتاهدقیقا دو بایت حافظه اختصاص داده شده است (16 بیت). برای هر متغیر نوع طولانی 4 بایت حافظه اختصاص داده شده است (32 بیت).

متغیرها را تایپ کنید طولانی طولانی int، 8 بایت حافظه (64 بیت) اختصاص داده شده است. آنها می توانند امضا یا بدون امضا باشند. برای نوع علامت دار محدوده از -9223372036854775808 تا 9223372036854775807 است، برای نوع بدون علامت محدوده از 0 تا 18446744073709551615 است. نوع علامت دار را می توان به صورت اعلام کرد طولانی طولانی.

اعلان متغیرها

یک متغیر با استفاده از عملگر توصیف (اپراتور در SI - فرمان) به صورت زیر اعلام می شود.

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

مقدار اولیه یک متغیر

متغیر بعد از اعلان را می توان مقداردهی اولیه کرد (به مقدار اولیه اختصاص داد).

یعنی به یک متغیر ایکسدر صورت اعلام، عدد 100 نوشته می شود.

نکته - از مقداردهی اولیه متغیرها در یک عبارت اعلان اجتناب کنید. بهتر است این کار را در یک تابع جداگانه انجام دهید (اگر از متغیرهای سراسری استفاده می کنید).

ثابت ها

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

وظیفه

برای اختصاص یک مقدار به یک متغیر در C، از "=" استفاده کنید.

به عنوان مثال A = 5;

به متغیر A مقدار 5 نسبت داده می شود، اگر مقدار دیگری به A نوشته شده باشد، بازنویسی می شود.

عملیات حسابی

پس از تمام محاسبات، به متغیر Z مقدار 49 اختصاص داده می شود.

روشهای تخصیص اضافی

علاوه بر عملگر انتساب "="، چندین عملگر تخصیص "ترکیبی" دیگر در C وجود دارد.

افزایش و کاهش

اگر بخواهیم مقدار یک متغیر را به 1 تغییر دهیم، از آن استفاده می کنیم افزایشیا کاهش.

افزایش- افزایش مقدار متغیر کاهش- کاهش مقدار متغیر

با تشکر از توجه شما) ادامه دارد...

اهداف درس:

  • معرفی مفهوم "متغیر"؛
  • دستیابی به جذب آگاهانه از مواد؛
  • توسعه منطق تفکر؛
  • کسب مهارت در کار با متغیرها

نوع درس: توضیح مطالب جدید.

فرم سازمانی درس: مینی سخنرانی.

حداقل مطالب نظری مورد نیاز آورده شده است (متغیرهای عددی و نمادین، فرمت دستور انتساب مقدار).

در طول کلاس ها

با درود. بررسی آمادگی دانش آموزان برای درس، سازماندهی توجه. موضوع روی تابلو نوشته شده است.

آماده سازی دانش آموزان برای یادگیری مطالب جدید:

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

یادگیری مطالب جدید:

زبان الگوریتمی شبیه زبان ریاضی است که از مفهوم کمیت نیز استفاده می کند. مقادیر دو نوع عمدتا استفاده می شود - عددی و نمادین، اگرچه انواع دیگر مستثنی نیستند. کمیت های عددی اعداد هستند: طبیعی، عدد صحیح، واقعی. نمادین - حروف، اعداد، کلمات، جملات. در علوم کامپیوتر از مفهوم "متغیر" نیز استفاده می شود. بیایید تعریف متغیر را بنویسیم.

متغیر شیئی است که نامی به آن داده می شود و می تواند مقادیر مختلفی به خود بگیرد.

نمایش متغیرها به شکل "صندوق پستی" (سلول های حافظه رایانه) که برچسب هایی با نام آنها روی آنها آویزان است راحت است.

اطلاعات ذخیره شده در یک متغیر را آن می نامند معنی.

نام متغیر می تواند هر حرفی از الفبای لاتین باشد.

متغیرهای طراحی شده برای ثبت اعداد نامیده می شوند عددی. متغیرهایی که کلمات را می توان در آنها نوشت نامیده می شود نمادین.

در این حالت، یک کلمه به عنوان هر مجموعه ای از کاراکترهایی که می توان از صفحه کلید وارد کرد فهمیده می شود. کلمه ای که در "جعبه" در نظر گرفته شده برای ذخیره متغیر کاراکتر قرار می گیرد، داخل علامت نقل قول قرار می گیرد.

"صندوق پستی" ما دارای برخی ویژگی های غیر معمول است. وقتی مقدار دیگری در آن قرار می گیرد، مقدار اصلی پاک می شود و ناپدید می شود. دیگر قابل بازیابی نیست. شما می توانید مقدار یک متغیر را با استفاده از دستورات انتساب، که با علامت "=" نشان داده می شود.

مثلا:

تمرین 1:

عملیات زیر را انجام دهید

  1. A=13 B=3
  2. A=A+B
  3. X=A+B
  4. Y=A*B
  5. چاپ X,Y
آ ب ایکس Y
13 3
A+B 16
A+B 19
A*B 48
مهر 19 48

مشق شب:

  • کار از طریق مواد؛
  • کار کامل 1.

وظیفه 2:

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

در کلاس های بعدی، پس از آزمایش دانش نظری و الگوریتمی که در خانه برای حل مسئله 1 ایجاد شده است، از دانش آموزان خواسته می شود تا کار مشابهی را انجام دهند.

وظیفه 3:

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

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

وظیفه 4:

دو عدد را در متغیرهای A و B بنویسید. محتویات A و B را عوض کنید:

الف) با استفاده از متغیر کمکی C؛

ب) بدون استفاده از متغیر اضافی.

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

بهترین مقالات در این زمینه