gpt4 book ai didi

c# - 我无法在 Deitel Visual C# 2010 中解决这个简单的练习

转载 作者:行者123 更新时间:2023-11-30 19:26:15 25 4
gpt4 key购买 nike

<分区>

我一直在学习 Deitel 的 Visual C# 2010。我卡在了有关数组的章节中的练习中。这几天一直困扰着我,我已经多次编写代码,但每次都出现问题。

该练习要求为一家小型航空公司开发新的预订系统。一架飞机的容量是10个座位。因此,您要求客户为头等舱输入 1,为经济舱输入 2。 1 到 5 的座位是头等舱。 6 到 10 的座位是经济舱。

我必须使用 bool 类型的一维数组来表示飞机的座位字符。将数组的所有元素初始化为 false 以表示空位(幸运的是 bool 初始化为 false,因为我不知道如何初始化数组)。在分配每个座位时,将平面中的相应元素设置为 true。

该应用绝不应分配已经就座的座位。当经济舱客满时,应用程序应询问客户是否想乘坐头等舱(反之亦然)。如果客户回答是,则将他分配到经济舱(如果那里有空位)。如果经济舱没有空位或者客户拒绝坐头等舱,那么就显示给他“下一类是三个小时后!”。

我正在自学这本书。这不是作业或家庭作业。我真的不想发布我编写的代码,因为我想要一种全新的方法来解决问题,但我很确定我会被问及代码,所以在这里

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Craps_Game
{
class AirlineReservation
{
private static bool[] seats = new bool[10];


private static void FirstClass(ref bool[] seats)
{
for(int i = 0; i < 5; i++)
{
if (seats[i] == false)
{
seats[i] = true;
Console.WriteLine("Your seat number is " + i);
break;
}
else
{
Console.WriteLine("First Class is full. Would you like to fly Economy?");
if (Console.ReadLine().ToLower() == "y")
Economy(ref seats);
else
Console.WriteLine("The next flight is in three hours!. Good bye");
}
}
}


private static void Economy(ref bool[] seats)
{
for (int i = 5; i < 10; i++)
if (seats[i] == false)
seats[i] = true;
else
{
Console.WriteLine("Economy class is full. Would you like to fly First Class");
if (Console.ReadLine().ToLower() == "y")
FirstClass(ref seats);
else
Console.WriteLine("The next flight is in three hours!. Good Bye");
}

}


public static void Reservation()
{
do
{
Console.WriteLine("Enter 1 to fly First Class");
Console.WriteLine("Enter 2 to fly Economy Class");
if (Convert.ToInt32(Console.ReadLine()) == 1)
FirstClass(ref seats);
else
Economy(ref seats);
} while (true);
}
}

请记住,我更喜欢用一种完全不同的方式来解决问题,而不是解决这个问题 :)

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com