تبدیل نوع
int count = (int) 40.0; عدد صحیح 40 را نگه میدارد و Console.WriteLine(count) مقدار 40 را مینویسد. صفحه یک خط است. نقطه روی آن خط نیست و 0 بعد از نقطه هم روی آن خط نیست. نام کلاس عمومی را Pine نگه دارید.
کلمهٔ نوع با رقمها یکی نیست
فایل Pine را باز کنید. نام کلاس Pine میماند. این صفحه نوع را عوض نام نمیکند. اگر خط bool ripe هنوز هست پاکش کنید، از جمله true و false. اگر string plant هنوز هست پاکش کنید. plant.Length و هر خطی که بعد از نقطه پرسش میپرسد را پاک کنید. هر خط ReadLine را هم پاک کنید. اگر خط int count = 40; نقطه ندارد و پرانتز ندارد، پاکش کنید. فایلی که نگه میدارید انتظار، plant، ripe و کلمهٔ true ندارد. عدد فقط با خط نوشتنی نوشته میشود که از نام استفاده میکند.
صفحهٔ عددها این ناسازگاری را از قبل نشان داده است. int count = 40.0; از یک نام int میخواهد عددی را نگه دارد که با نقطه نوشته شده. build خطا مینویسد. ساکت نمیماند. نقطه را خودش کنار نمیگذارد. تا وقتی آن خطا نوشته میشود صفحهای برای خواندن نیست. این صفحه خط را به آن شکل رها نمیکند. کلمهٔ نوع int با 40.0 یکی نیست. همان کلمهٔ نوع را یکبار دیگر مینویسید، داخل پرانتز، میان علامت = و رقمها.
درون Main خط نگهداری int count = (int) 40.0; است. int اول کلمهٔ نوع نام است. میگوید count عدد صحیح نگه میدارد. count نام است و با c کوچک شروع میشود. علامت = نگه میدارد. بعد (int) همان کلمهٔ نوع است، تنها داخل یک جفت پرانتز. داخل آن پرانتز رقمی نیست. مقدار بیرون است، بعد از پرانتز بسته: 40.0. رقم 4 و رقم 0 پیش از نقطه همان عدد صحیحاند. نقطه میگوید رقم دیگری هم هست. آن رقم دیگر 0 است. سمیکالن خط را تمام میکند. این خط 40 را نگه میدارد. صفحه را نمینویسد. نگهداری، نوشتن نیست. تا پایان این خط صفحه خالی میماند. پرانتزها عدد دوم نیستند. گیومه نیستند. پرسشی بعد از یک نام نیستند. روی این صفحه plant نیست، پس نقطهٔ داخل 40.0 نقطهای نیست که Length بپرسد.
خط نوشتن نام لخت است: Console.WriteLine(count);. بدون گیومه و بدون پرانتز دور count. C# نام count را میخواند، عدد صحیحی را که آن نام نگه داشته مینویسد، و خط را تمام میکند. برای فایلی که نگه میدارید آن عدد 40 است. حرفهای خود نام روی صفحه نیستند. int روی صفحه نیست. پرانتزها روی صفحه نیستند. نقطه روی صفحه نیست. آن 0 که بعد از نقطه بود روی صفحه نیست. صفحه 40 است، یک خط. فایل را ذخیره کنید.
فایلی که نگه میدارید
این شکل آموزشی را نگه دارید. یک نام، count. یک کلمهٔ نوع برای آن نام، int. یک جفت پرانتز، و درونشان فقط int. یک مقدار، 40.0، بیرون پرانتز. یک خط نوشتن، و آن خط از نام لخت استفاده میکند.
using System;
public class Pine
{
public static void Main()
{
int count = (int) 40.0;
Console.WriteLine(count);
}
}
از بالا بخوانید. using System; نامهای کوتاه را آماده میکند. public class Pine نوع را نام میگذارد. public static void Main() جایی است که runtime شروع میکند. خط string plant نیست و خط bool نیست. int count = (int) 40.0; عدد 40 را نگه میدارد. چیزی نمینویسد. Console.WriteLine(count); مقدار 40 را مینویسد و خط را تمام میکند. یک خط روی صفحه. بدون نقطه. بدون خط دوم.
با dotnet run اجرا کنید. برنامه 40 مینویسد. منتظر تایپ شما نمیماند. رقمها از قبل داخل فایل بودند. اگر dotnet run منتظر بماند، هنوز ReadLine در فایل است. آن خط را پاک کنید و int count = (int) 40.0; و یک خط نوشتن را نگه دارید. برنامه بعد از خط نوشتن تمام میشود. صفحه 40 نشان میدهد. یک خط. بدون نقطه. اگر صفحه 40.0 نشان دهد، خط نوشتن عددی را مینویسد که هنوز نقطه دارد، یا پرانتزها روی خط نگهداریای که اجرا کردهاید نیستند. فایلی که نگه میدارید count را مینویسد و count عدد صحیح نگه میدارد. اگر صفحه 40.9 نشان دهد، دارید عدد نقطهدار را مینویسید، نه عدد صحیح بعد از پرانتز. اگر صفحه 41 نشان دهد، فایل 41 را نگه داشته است. این پرانتزها 40.9 را به بالا تا 41 گرد نمیکنند. اگر صفحه true یا false نشان دهد، فایل درستونادرست هنوز جاست. ripe را پاک کنید. اگر صفحه leaf نشان دهد، plant هنوز داخل فایل است. اگر صفحه count نشان دهد، خط نوشتن دور نام گیومه دارد. برای صفحهای که خط غلط نشان میدهد دوباره .NET SDK را نصب نمیکنید.
صفحهای که 40 را نشان میدهد، بهتنهایی پرانتزها را ثابت نمیکند. int count = 40; بدون نقطه و بدون پرانتز هم 40 را مینویسد. صفحه میتواند یکسان به نظر برسد. فایل یکسان نیست. فایلی که نگه میدارید (int) دارد و 40.0 دارد. وقتی این صفحه را قضاوت میکنید، در فایل دنبال پرانتز بگردید و دنبال نقطه. پرانتز را فقط از روی صفحه قضاوت نکنید.
بدون پرانتز، ناسازگاری هنوز خطا است. int count = 40.0; باعث میشود build خطا بنویسد. 40 را نمینویسد. ساکت نمیماند. تا وقتی build خطا مینویسد برنامه را اجرا نمیکنید. لازم نیست متن دقیق آن خطا را بدانید. (int) را میان = و 40.0 بگذارید تا خط دوباره int count = (int) 40.0; شود. مقدار داخل پرانتز نمیرود. int count = (int 40.0); باعث میشود build خطا بنویسد. کلمهٔ نوع تنها داخل پرانتز است. رقمها بیروناند، بعد از پرانتز بسته.
گیومه و کلمهٔ true داخل این جفت پرانتز جا نمیشوند. int count = (int) "40"; از پرانتز میخواهد حرف را عدد صحیح کند. build خطا مینویسد. int count = (int) true; از پرانتز میخواهد کلمهٔ true را عدد صحیح کند. build خطا مینویسد. 1 را نمینویسد. bool ripe = (bool) 1; از نوع دیگر میخواهد یک رقم را true کند. build خطا مینویسد. true را نمینویسد. برای هیچکدام صفحهای برای خواندن نیست، چون تا وقتی build خطا مینویسد اجرا نمیکنید. وقتی فایلی که نگه میدارید را درست میکنید، گیومهها را پاک کنید، true را پاک کنید، و خط bool را پاک کنید.
نام باید پیش از خطی که از آن استفاده میکند وجود داشته باشد. اگر Console.WriteLine(count); بالای int count = (int) 40.0; نوشته شود، build خطا مینویسد. خط نگهداری را بالای خط نوشتن بگذارید. برای همان نام، int را بار دوم ننویسید. یک int count دوم زیر خطی که count را از قبل ساخته، خطای دیگری است. فایل دوم این صفحه خط نگهداری را عوض میکند. یک int count دیگر زیر خط اول اضافه نمیکند. int count = (int); که بعد از پرانتز هیچ چیز نباشد، باعث میشود build خطا بنویسد. مقدار باید آنجا باشد. فاصله داخل پرانتز، int count = ( int ) 40.0;، هنوز 40 را نگه میدارد و بهتنهایی برای build خطا نمیسازد. فایلی که نگه میدارید داخل پرانتز فاصله ندارد. نبود فاصله بعد از پرانتز بسته، int count = (int)40.0;، هم 40 را نگه میدارد. فایلی که نگه میدارید آنجا یک فاصله دارد. نه فاصلهٔ اضافه عدد دوم است و نه نبود فاصله.
رقم بعد از نقطه در عدد نمیماند
وقتی پرانتز int را نگه میدارد، 40.9 به شکل 41 نگه داشته نمیشود و به شکل 40.9 هم نگه داشته نمیشود. int count = (int) 40.9; عدد 40 را نگه میدارد. رقم 9 در عدد نمیماند. به بالا گرد نمیشود. روی خط عدد دوم نیست. روی صفحه خط دوم نیست. خط نوشتن هنوز Console.WriteLine(count); است. صفحه 40 را نشان میدهد. یک خط. بدون نقطه. نام count روی صفحه نیست.
این فایل دوم است. فایلی که نگه میدارید نیست. فایلی که نگه میدارید 40.0 را به کار میبرد و رقم بعد از نقطه 0 است. برای دیدن اینکه رقم 9 در عدد نمیماند این شکل دوم را بهعنوان برنامه ذخیره کنید، بعد int count = (int) 40.0; را برگردانید.
using System;
public class Pine
{
public static void Main()
{
int count = (int) 40.9;
Console.WriteLine(count);
}
}
با dotnet run اجرا کنید. صفحه 40 نشان میدهد. یک خط. رقم 9 باعث نمیشود build خطا بدهد. اگر صفحه 41 نشان دهد، این فایلی نیست که اجرا کردهاید. اگر صفحه 40.9 نشان دهد، پرانتز نیست یا خط نوشتن خود عدد نقطهدار را مینویسد. اگر صفحه 40.0 نشان دهد، هنوز روی فایلی هستید که نگه میدارید؛ همان فایل درست برای برگرداندن است، ولی این بررسی نیست. بعد از آنکه 40 را از 40.9 دیدید، فایل نگهداشته را برگردانید: int count = (int) 40.0; و یک Console.WriteLine(count);.
پرانتز میتواند جلوی یک نام قرار گیرد
یک نام میتواند اول عدد نقطهدار را نگه دارد. double کلمهٔ نوعی است که با نقطه جور است. double weight = 40.9; عدد 40.9 را در weight نگه میدارد. آن خط پرانتز ندارد، چون کلمهٔ نوع double از قبل با مقداری که با نقطه نوشته شده یکی است. خط بعدی همان خطی است که یکی نیست: int count = (int) weight;. پرانتز int را نگه میدارد، همان نوعی که count میتواند نگه دارد. پرانتز جلوی نام weight است، نه جلوی رقمهای تازه. weight از قبل 40.9 را نگه داشته است. پرانتز رقم 9 را در عدد نگه نمیدارد و count عدد 40 را نگه میدارد. خط نوشتن هنوز Console.WriteLine(count); است. صفحه 40 نشان میدهد. weight روی صفحه نیست. double روی صفحه نیست. 40.9 روی صفحه نیست.
این فایل سوم است. فایلی که نگه میدارید نیست. فایلی که نگه میدارید double ندارد و weight ندارد. رقمهای 40.0 را روی خط نگهداری مینویسد. کلمهای که داخل پرانتز است باید نوعی باشد که نام بتواند نگه دارد. int count = (double) 40.0; کلمهٔ double را داخل پرانتز میگذارد و int را روی نام. آن دو کلمهٔ نوع یکی نیستند. build خطا مینویسد. 40.0 را نمینویسد. ساکت نمیماند.
using System;
public class Pine
{
public static void Main()
{
double weight = 40.9;
int count = (int) weight;
Console.WriteLine(count);
}
}
با dotnet run اجرا کنید. صفحه 40 نشان میدهد. یک خط. double weight = 40.9; پرانتز لازم ندارد و باعث خطای build نمیشود. اگر صفحه 40.9 نشان دهد، خط نوشتن Console.WriteLine(weight); است. دوباره به Console.WriteLine(count); برگردانید. اگر صفحه weight نشان دهد، خط نوشتن دور آن نام گیومه دارد. بعد از دیدن 40، فایل نگهداشته را برگردانید. double را در فایلی که نگه میدارید جا نگذارید.
حالا میتوانید از مقداری که با نقطه نوشته شده یک عدد صحیح نگه دارید. int count = (int) 40.0; عدد 40 را نگه میدارد. Console.WriteLine(count); مقدار 40 را مینویسد و خط را تمام میکند. نقطه روی صفحه نیست. int count = (int) 40.9; هم 40 مینویسد. رقم 9 کنار میرود، گرد نمیشود. همان پرانتز میتواند جلوی نامی بنشیند که از قبل 40.9 را نگه داشته و صفحه باز هم 40 است. بدون پرانتز، int count = 40.0; باعث خطای build میشود. (int) true هم باعث خطای build میشود. صفحهٔ بعد این پرانتزها را کنار میگذارد. به نامی نگاه میکند که نه عددی که نوشتهاید نگه میدارد و نه کلمهای که نوشتهاید.
صفحه همان عدد صحیحی است که جا میشود
فایلی که نگه میدارید 40 مینویسد. نام روی خط نوشتن count است و count روی صفحه نیست. پرانتزها در فایلاند و روی صفحه نیستند. یک WriteLine یک خط است. رقم 9 بعد از نقطه کنار میرود. نامی که 40.9 نگه داشته میتواند داخل همان پرانتز بایستد و صفحه باز هم عدد صحیح است.
🧠 دانش خود را بیازمایید
دانش خود را بیازمایید
خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کردهاید
📝 دستورالعملها
- هر سوال را با دقت بخوانید
- بهترین پاسخ را برای هر سوال انتخاب کنید
- میتوانید آزمون را هر چند بار که میخواهید تکرار کنید
- پیشرفت شما در بالا نمایش داده میشود