Информатика

Как посчитать стоимость телефонного разговора в C++, учитывая время начала и время завершения разговора, а также цену

Как посчитать стоимость телефонного разговора в C++, учитывая время начала и время завершения разговора, а также цену минуты разговора?
Верные ответы (1):
  • Ящик
    Ящик
    9
    Показать ответ
    Название: Расчет стоимости телефонного разговора в C++

    Описание: Для расчета стоимости телефонного разговора в C++ необходимо вычислить разницу между временем начала и временем завершения разговора, а затем умножить это значение на цену минуты разговора. Для работы с временем можно использовать структуру `struct` из стандартной библиотеки C++.

    Вот подробный код, который демонстрирует, как это можно сделать:

    cpp
    #include
    using namespace std;

    struct Time {
    int hours;
    int minutes;
    int seconds;
    };

    // Функция для вычисления разницы между временем
    Time calculateTimeDifference(Time startTime, Time endTime) {
    int startSeconds = startTime.hours * 3600 + startTime.minutes * 60 + startTime.seconds;
    int endSeconds = endTime.hours * 3600 + endTime.minutes * 60 + endTime.seconds;
    int diffSeconds = endSeconds - startSeconds;

    Time diffTime;
    diffTime.hours = diffSeconds / 3600;
    diffTime.minutes = (diffSeconds % 3600) / 60;
    diffTime.seconds = diffSeconds % 60;

    return diffTime;
    }

    int main() {
    Time startTime, endTime;
    double costPerMinute;

    cout << "Введите время начала разговора (часы минуты секунды): ";
    cin >> startTime.hours >> startTime.minutes >> startTime.seconds;

    cout << "Введите время завершения разговора (часы минуты секунды): ";
    cin >> endTime.hours >> endTime.minutes >> endTime.seconds;

    cout << "Введите стоимость минуты разговора: ";
    cin >> costPerMinute;

    Time callDuration = calculateTimeDifference(startTime, endTime);
    int durationInSeconds = callDuration.hours * 3600 + callDuration.minutes * 60 + callDuration.seconds;

    double callCost = (durationInSeconds / 60.0) * costPerMinute;

    cout << "Стоимость телефонного разговора: " << callCost << " рублей";

    return 0;
    }


    Совет: Убедитесь, что вводимое время начала и завершения разговора корректно представлено в 24-часовом формате. Проверьте, что цена минуты разговора указана в правильной валюте.

    Закрепляющее упражнение: Напишите программу на C++, которая вычисляет стоимость телефонного разговора с помощью данного времени начала (12:30:45), времени завершения (15:45:20) и цены минуты разговора (2.5 рубля). Выведите стоимость разговора на экран.
Написать свой ответ: