Предмет: Информатика, автор: DavidDaviduch

C++ (Срочно)
Завдання 1: Напиши функцію max, яка приймає два аргументи типу int і повертає більше з них

Завдання 2: Напиши функцію concatenate, яка приймає два аргументи типу std::string і повертає результат їх об'єднання.

Завдання 3: Напиши функцію sum, яка може бути викликана з різною кількістю аргументів типу double і повертає їх суму.

Ответы

Автор ответа: karimoldaevaayazhan0
2

Ответ:

1. Функция `max`:

```cpp

int max(int a, int b) {

return (a > b) ? a : b;

}

```

2. Функция `concatenate`:

```cpp

std::string concatenate(std::string str1, std::string str2) {

return str1 + str2;

}

```

3. Функция `sum` с использованием `std::initializer_list`:

```cpp

double sum(std::initializer_list<double> args) {

double result = 0;

for (auto arg : args) {

result += arg;

}

return result;

}

```

Пример использования:

```cpp

double s1 = sum({1.0, 2.0, 3.0}); // s1 = 6.0

double s2 = sum({4.0, 5.0}); // s2 = 9.0

```

___________________________________

Примеры решений задач на C++:

1. Функция max:

```cpp

int max(int a, int b) {

return (a > b) ? a : b;

}

```

2. Функция concatenate:

```cpp

#include <string>

std::string concatenate(std::string str1, std::string str2) {

return str1 + str2;

}

```

3. Функция sum:

```cpp

#include <cstdarg>

double sum(int count, ...) {

double result = 0;

va_list args;

va_start(args, count);

for (int i = 0; i < count; i++) {

result += va_arg(args, double);

}

va_end(args);

return result;

}

```

Эта функция использует переменное число аргументов (variadic arguments) и библиотеку `<cstdarg>`. Она принимает первым аргументом количество аргументов, а затем с помощью макроса `va_arg` получает каждый следующий аргумент из списка. Функция `va_start` и `va_end` используются для инициализации и завершения списка аргументов.


DavidDaviduch: Это cpp, нет ли случайно c++?
DavidDaviduch: Спасибо
Похожие вопросы
Предмет: Українська мова, автор: dashaharabara
Предмет: Алгебра, автор: vseznaika0595