Как создать псевдокод для известной задачи

Мне дали функцию для написания псевдокода. Проблема в том, что я даже не понимаю, как должна работать эта функция. Кто-то должен помочь мне объяснить работу этой функции, пожалуйста.

Получить заряд у источника питания. Источник питания отдает все возможное количество заряда

\param[in] delta - запрашиваемое количество заряда

\param[in|out] amountОfСharge - реальное количество заряда у источника питания

\return - отданное количество заряда

int reduceCharge(int delta, int *amountОfСharge)


Ответы (1 шт):

Автор решения: EOF

По идее так:

int reduceCharge(int delta, int *amountОfСharge)
{
    // result - это отданное количество заряда
    // Если запрашиваемое количество заряда меньше, чем есть у источника питания,
    // то result = delta, иначе отдаем весь заряд источника питания
    int result = (delta < *amountOfCharge) ? delta : *amountOfCharge;

    // Отнимаем у источника питания заряд, который запросили
    *amountOfCharge -= result;

    // Возвращаем результат
    return result;
}
→ Ссылка