Задачи на типы в C++. Часть 8
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto sum = 0;
for (auto num : aaa) {
sum += num;
}
return sum;
// }
// auto list = std::vector<int>{1, 2, 3, 4, 5}; → укажите тип
// auto total = test(list); → укажите тип
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa, auto bbb) { → укажите типы
auto result = std::vector<int>{};
for (auto item : aaa) {
if (std::find(bbb.begin(), bbb.end(), item) != bbb.end()) {
result.push_back(item);
}
}
return result;
// }
// auto list1 = std::vector<int>{1, 2, 3, 4, 5}; → укажите тип
// auto list2 = std::vector<int>{3, 4, 5, 6, 7}; → укажите тип
// auto intersection = test(list1, list2); → укажите тип
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto sum = 0;
auto num = aaa;
while (num > 0) {
sum += num % 10;
num /= 10;
}
return sum;
// }
auto number = 12345;
auto digitSum = test(number);
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto result = std::vector<std::string>{};
for (auto str : aaa) {
if (str.size() > 3) {
result.push_back(str);
}
}
return result;
// }
auto words = std::vector<std::string>{"cat", "dog", "elephant", "fox"};
auto longWords = test(words);
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto max = aaa[0];
for (auto num : aaa) {
if (num > max) {
max = num;
}
}
return max;
// }
auto numbers = std::vector<int>{10, 5, 8, 15, 3};
auto maximum = test(numbers);
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto result = std::map<char, int>{};
for (auto ch : aaa) {
result[ch] = result[ch] + 1;
}
return result;
// }
auto text = "hello world";
auto charCount = test(text);
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa, auto bbb) { → укажите типы
auto result = std::vector<int>{};
for (std::size_t i = 0; i < aaa.size(); ++i) {
result.push_back(aaa[i] + bbb[i]);
}
return result;
// }
auto array1 = std::array{1, 2, 3, 4, 5};
auto array2 = std::array{5, 4, 3, 2, 1};
auto sumArray = test(array1, array2);
Явно укажите тип переменных, параметров и возвращаемого значения.
Дан следующий код:
// auto test(auto aaa) { → укажите типы
auto result = std::set<int>{};
for (auto num : aaa) {
if (num % 2 == 0) {
result.insert(num);
}
}
return result;
// }
auto numbers = std::set<int>{1, 2, 3, 4, 5, 6, 7, 8};
auto evenNumbers = test(numbers);
Явно укажите тип переменных, параметров и возвращаемого значения.