#visual-c
#visual-c
Вопрос:
- Напишите программу, которая отображает счета за воду. Ваша программа должна предложить пользователю ввести целочисленный номер счета, символьный код использования и действительное число, представляющее использованные галлоны воды. Выходные данные вашей программы должны включать номер счета, сообщение, указывающее тип использования, и сумму денег, причитающуюся от пользователя. Нарисуйте блок-схему для вашей программы.
Расход воды варьируется в зависимости от типа использования. Код H означает домашнее использование, код C означает коммерческое использование, а код I означает промышленное использование. Любое другое значение кода следует рассматривать как ошибку. Расходы воды вычисляются следующим образом:
Код H: 5,00 долларов плюс 0,005 доллара за галлон
Код C: 1000,00 долларов за первые 4 миллиона использованных галлонов плюс 0,025 доллара за каждый дополнительный использованный галлон
Код I: 1000,00 долларов США, если объем использования не превышает 4 миллионов галлонов 200,00 долларов США — это объем использования от 4 до 10 миллионов галлонов 300,00 долларов США — это 10 миллионов галлонов или более
cout << " Enter your account number" << endl;
cin >> account;
cout << " Enter your code (h, c or i): h means home, c means commercial use and i means industrial use" << endl;
cin >> code;
cout << " Enter the number of gallons of water used" << endl;
cin >> gallon;
return 0;
}
void company() {
switch (code) {
case 'H': case 'h':
total = (0.0005*gallon) 5;
cout, , " your total gallons of water is" << endl;
break;
case 'C': case 'c':
case 'I': case 'i':
Комментарии:
1. Итак, где вы застряли? В чем ваша конкретная проблема?
2. Я запутался в коде c, я действительно не знаю, как его написать, так же хорошо, как код i
3. Отредактируйте свой код в вопросе, а не в комментариях.
4. хорошо, я исправлю это сейчас, это в основном то, что у меня есть на данный момент
5. Спасибо, что исправили это для меня, я новичок на этом сайте, да, я как бы застрял в случае C, и я знаю, что должен написать оператор if в случае I, но я не знаю, как это сделать, но для случая c я действительно не знаю, что делать
Ответ №1:
Это простой перевод текста, читаемого человеком.
для кода c, :
total = 1000; // 1000 dollars in any case
int remaining_gallons_to_pay = gallon - 4000000; // the first 4 million are already paid for
if(remaining_gallons_to_pay > 0) { // maybe they used less than 4 million, if so, their problem
total = total (remaining_gallons_to_pay * 0.025);
}
break;
для кода i:
if (gallon <= 4000000) { // 'does not exceed' means less or equal
total = 1000;
}
else if (gallon <= 10000000) { // cannot be 4 million or less, already checked, but "between 4 million and 10 million", is this inclusive 10 million? I assumed so for this statement...
total = 2000;
}
else { // so, it must be over 10 million
total = 3000;
}
break;
Поскольку вы используете инструкцию switch … case, в вашем распоряжении есть другой вариант: default
. Все дела, с которыми вы не разобрались — и которыми закончили break
, — заканчиваются здесь. Итак, вам остается добавить
default : cout << "Code error"
в вашем блоке переключения.