Найти тему
ДЮН-Дмитрий Юрьевич

Простая программа на основах языка программирования C++. Кофе с сахаром

В предыдущей статье, я показал вам программу, которая высчитывает общую стоимость чашек кофе, которые хочет купить пользователь. В этой статье я покажу вам усложненную версию данной программы. Теперь пользователь может выбрать из двух вариантов: кофе без сахара или кофе с сахаром.

Я написал эту программу, используя изученные мной основы языка программирования C++, например, условные операторы if и else if.

Я написал эту программу, опираясь на условие следующей задачи: "Объявите несколько переменных, с помощью которых можно будет подсчитать общую стоимость нескольких товаров".

Я решил пока не смотреть в ответ этой задачи, и попробовать написать несколько своих версий программы, решающей данную задачу. Сама эта задача достаточно абстрактна, и дает возможности для творческого подхода к решению.

Я работаю в Linux MX21, который основан на Debian, и в IDE - редактор кода или среда разработки программ под названием Geany.

Исходный код программы

------------------------------------------------------------------------------------

#include <iostream>

#include <string>

/*Примитивные программы на c++.*/

// Кофейная программа с сахаром или без.

using namespace std;

int main(){

double a_cup_of_coffee = 20; // одна чашка кофе 20 рублей

int number_of_cups; // пользовательское количество чашек кофе

double a_bag_of_sugar = 5; // один маленький пакетик сахара 5 рублей

int number_of_bags; // пользовательское количество пакетиков сахара

string Str; // переменная для выбора пользователя

cout << "Выберете (Кофе) или (Кофе+сахар).\n";

cout << "Введите ваш выбор без пробелов: ";

cin >> Str; // Пользовательский выбор кофе с сахаром или без него

if(Str == "Кофе"){

cout << "Вы выбрали кофе без сахара\n";

cout << "Один стакан кофе стоит " << a_cup_of_coffee << " рублей\n";

cout << "Сколько чашек вы хотите купить? " << "Введите значение: ";

cin >> number_of_cups;

// Далее вложенный оператор if

if(number_of_cups == 0){

cout << "Вы не купили ни одной чашки кофе!\n";

} else if(number_of_cups > 0){

cout << "Ваш заказ стоит " << number_of_cups * a_cup_of_coffee << " рублей\n";

}

} else if(Str == "Кофе+сахар"){

cout << "Вы выбрали кофе с сахаром.\n";

cout << "Один стакан кофе стоит " << a_cup_of_coffee << " рублей\n";

cout << "Один пакетик сахара стоит " << a_bag_of_sugar << " рублей\n";

cout << "Сколько чашек кофе вы хотите купить? " << "Введите значение: ";

cin >> number_of_cups;

cout << "Сколько пакетиков сахара вы хотите купить? " << "Введите значение: ";

cin >> number_of_bags;

// Далее вложенные операторы if и else if

if(number_of_cups == 0 && number_of_bags == 0){

cout << "Вы ничего не купили!\n";

} else if(number_of_cups > 0 && number_of_bags == 0){

cout << "Вы решили пить кофе без сахара!\n";

cout << "Ваш заказ стоит " << number_of_cups * a_cup_of_coffee << " рублей\n";

} else if(number_of_cups == 0 && number_of_bags > 0){

cout << "Вы решили купить сахар!\n";

cout << "Ваш заказ стоит " << number_of_bags * a_bag_of_sugar << " рублей\n";

} else if(number_of_cups > 0 && number_of_bags > 0){

cout << "Ваш выбор - кофе с сахаром!\n";

cout << "Ваш заказ стоит " << number_of_cups * a_cup_of_coffee + number_of_bags * a_bag_of_sugar << " рублей\n";

}

}

return 0;

}

--------------------------------------------------------------------------------------------------------

Выше представлен исходный код данной программы. В прошлой статье я просто размещал скриншоты исходного кода из моей IDE, теперь я решил скопировать сам код, и оформить его на столько, на сколько позволяют возможности форматирования текста в Дзен-студии. Вы можете протестировать его сами в вашей IDE в вашей операционной системе. Программа запускается только в терминале или через IDE.

Скриншоты результатов программы в терминале

У данной программы есть несколько исходов:

  • Если пользователь напишет "Кофе", то он выберет кофе без сахара, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет 0, то программа выдаст следующее.
  • Если пользователь напишет "Кофе", то он выберет кофе без сахара, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет, например, 2, то программа выдаст следующее.
-2
  • Если пользователь напишет "Кофе+сахар" без пробелов, то он выберет кофе с сахаром, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет 0, и при выборе количества пакетиков сахара он тоже напишет 0, то программа выдаст следующее.
-3
  • Если пользователь напишет "Кофе+сахар" без пробелов, то он выберет кофе с сахаром, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет 1, и при выборе количества пакетиков сахара он напишет 0, то программа выдаст следующее.
-4
  • Если пользователь напишет "Кофе+сахар" без пробелов, то он выберет кофе с сахаром, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет 0, и при выборе количества пакетиков сахара он напишет 1, то программа выдаст следующее.
-5
  • Если пользователь напишет "Кофе+сахар" без пробелов, то он выберет кофе с сахаром, и если программа просит его, сколько чашек кофе ему налить, и пользователь напишет 1, и при выборе количества пакетиков сахара он напишет 2, то программа выдаст следующее.
-6

Заключение к статье

Как видите, если вы дочитали статью до этого места, по сравнению с прошлой версией этой программы, мне удалось усложнить ее, используя только изученные основы языка программирования C++. Теперь у программы стало больше разных исходов, зависящих от выбора пользователя.

Как бы вы упростили код данной программы, используя только основы C++, не заходя в темы функций и классов?

Предыдущие статьи:

  • Кофейная программа. Примитив на C++. Открытый исходный код
  • Простая программа на C++. Вывод или изменение элементов массива
  • Hello World в Geany. C++ в Linux
  • Мой путь к C++. Hello world без IDE