解决了。非常感谢所有提供意见的人。这里很棒的社区。
我有一项任务,其中一部分程序需要计算客户的停车费。
费用以小时和 1/2 小时为增量。
确定小时数和分钟数。第 1 至 30 分钟按小时费率的 1/2 收费。从 31 到 59 的分钟按一小时计费。
每小时收费 2.00 美元。停车没有最长时间限制。
我被困在如何正确编码这个问题上。我想它使用 if 语句,这不是问题。但是由于没有最大时间限制,我不知道如何正确编码,或者至少如何开始它。
到目前为止,这是我整个项目的代码,我只是不知道如何开始处理程序的这一部分。
public Waterpark()
{
InitializeComponent();
}
private void individualButton_Click(object sender, EventArgs e)
{
if (groupNameTextBox.Text.Trim() != string.Empty)
{
try
{
groupAmount = int.Parse(groupNameTextBox.Text);
try
{
parkingMinutes = int.Parse(parkedTextBox.Text);
IndividualTotals();
}
catch
{
MessageBox.Show("Must be an integer.", "INPUT ERROR");
parkedTextBox.Focus();
parkedTextBox.SelectAll();
}
}
catch
{
MessageBox.Show("Must be an integer.", "INPUT ERROR");
peopleTextBox.Focus();
peopleTextBox.SelectAll();
}
}
else
{
MessageBox.Show("Must be a valid group name.", "INPUT ERROR");
groupNameTextBox.Focus();
groupNameTextBox.SelectAll();
}
}
private void eventOneCheckBox_CheckedChanged(object sender, EventArgs e)
{
eventInt += 1;
eventInt -= 1;
}
private void eventTwoCheckBox_CheckedChanged(object sender, EventArgs e)
{
eventInt += 1;
eventInt -= 1;
}
private void eventThreeCheckBox_CheckedChanged(object sender, EventArgs e)
{
eventInt += 1;
eventInt -= 1;
}
private void eventFourCheckBox_CheckedChanged(object sender, EventArgs e)
{
eventInt += 1;
eventInt -= 1;
}
private void eventFiveCheckBox_CheckedChanged(object sender, EventArgs e)
{
eventInt += 1;
eventInt -= 1;
}
private void IndividualTotals()
{
extraInt = eventInt - 1;
switch(extraInt)
{
case 1:
extraFee = 3.00;
break;
case 2:
extraFee = 5.00;
break;
case 3:
extraFee = 6.00;
break;
case 4:
extraFee = 7.00;
break;
default:
extraFee = 00.00;
break;
int hoursParked = minutesParked / 60;
int minutesRemainder = hoursParked % 60;
double hoursCost = hoursParked * 2;
if (minutesRemainder <= 30)
{
minutesCost = 1;
}
else
{
minutesCost = 2;
}
parkingFee = hoursCost + minutesCost;
}
}