سلام استاد امیدوارم حالتون خوب باشه
من یک هفته ای میشه که دوره رو شروع کردم و به همین دلیل هنوز خیلی عقبم. واسه همین نگرانم در آینده مشکل ساز میشه یا نه؟
و در ادامه تمرین مربوط به جلسه 14 - آرایه های دو بعدی:
string[,] cars_info = //ذخیره اسم راننده، نام ماشین و شماره پلاک ماشین
{
{"Hossein" , "Tiba" , "78A123"} ,
{"Ali" , "Pride" , "23F563"} ,
{"Mobin" , "Lexus" , "12L345" }
};
Console.WriteLine(cars_info[2, 2]);البته اولش نمی تونستم آرایه های دو بعدی رو درک کنم ولی بعدش یاد جدول های اکسل افتادم که اونجا به صورت A1 و B3 و ... آدرس میدادیم ولی اینجا به صورت [0,1] و ... آدرس میدیم و فهمیدم یه جورایی داریم یه جدول رو تعریف می کنیم اگه درست فکر کرده باشم.
و یه مشکل اینه که نمیشه عدد و متن رو با هم تو یه آرایه جا داد و مجبوریم عدد رو هم به صورت استرینگ ذخیره کنیم.
و یدونه هم پروژه کوچولو درست کردم که اطالاعات 4 تا دانش آموز رو ذخیره کرده و شاخص توده بدنی اونها رو خساب میکنه:
string[,] student_info = //ذخیره نام دانش آموز، قد و جرم او
{
{"Hamed" , "1.79" , "75"},
{"Ali" , "1.85" , "78"},
{"Ahmad" , "1.73" , "91"},
{"Tohid" , "1.82" , "57"},
};
Console.WriteLine("Please enter student name :");
string input = Console.ReadLine();
switch(input)
{
case "Hamed" :
{
double height = Convert.ToDouble(student_info[0, 1]);
double weight = Convert.ToDouble(student_info[0, 2]);
double BMI = weight / (height * height);
Console.WriteLine("Student's BMI is : " + BMI);
break;
}
case "Ali":
{
double height = Convert.ToDouble(student_info[1, 1]);
double weight = Convert.ToDouble(student_info[1, 2]);
double BMI = weight / (height * height);
Console.WriteLine("Student's BMI is : " + BMI);
break;
}
case "Ahmad":
{
double height = Convert.ToDouble(student_info[2, 1]);
double weight = Convert.ToDouble(student_info[2, 2]);
double BMI = weight / (height * height);
Console.WriteLine("Student's BMI is : " + BMI);
break;
}
case "Tohid":
{
double height = Convert.ToDouble(student_info[3, 1]);
double weight = Convert.ToDouble(student_info[3, 2]);
double BMI = weight / (height * height);
Console.WriteLine("Student's BMI is : " + BMI);
break;
}
default:
{
Console.WriteLine("Student not found ...");
break;
}
}البته این پروژه رو صرفا واسه تمرین نوشتم وگرنه خیلی اضافه کاری داره. اگه تعداد دانش آموزا زیاد بود عملا switch دیگه به کارمون نمیومد. و اینکه مجبور شدم بار ها و بار ها متغیر قد و وزن رو تعریف کنم. بهتر بود خودش تشخیص بده و بره پیدا کنه مثل Lookup در اکسل ولی خب هنوز بلد نیستم.
و یه مشکلی که داشت این بود که اعداد اعشاری رو تا 15 رقم ادامه میداد که لازم نبود.
و یه سوال دیگه هم دارم. وقتی داشتین switch رو آموزش میدادی یه شرط تعریف کردید که جلوی ورودی خالی رو میگیره:
if(input == "")من اینم امتحان کردم اگه کاربر یبار دکمه اسپیس رو تو کیبورد بزنه و بعد اینتر رو بزنه کد دوباره اجره میشه و یه جورایی این شرط رو دور میزنه. میشه جلوی این رو گرفت؟
ببخشید که زیاد سوال پرسیدم همینجوری فقط سواله که پشت سر هم میاد 😅
سلام ، وقت بخیر
دوره را ادامه بدید جواب همه سوالاتتون رو میگیرید
نگران هیچ موردی هم نباشید