Итоги: операции с векторами
Часть раздела Логика и управление потоком путешествия по C++ на Coddy — урок 17 из 56.
Задание
ЛегкоСоздайте программу, которая формирует коллекцию целых чисел на основе пользовательского ввода и вычисляет их сумму, используя операции с векторами и итерацию на основе диапазона (range-based iteration).
Будут предоставлены следующие входные данные:
- Целое число
n, представляющее количество чисел, которые будут введены - Затем
nцелых чисел для добавления в коллекцию - Одно дополнительное целое число для добавления в коллекцию
Ваша программа должна:
- Создать пустой
std::vector<int>с именемnumbers - Использовать
push_back()для добавления каждого из первыхnцелых чисел в вектор - Использовать
push_back()для добавления дополнительного целого числа в вектор - Использовать цикл for на основе диапазона (range-based for loop) для итерации по всем элементам вектора
- Вычислить сумму всех чисел в векторе во время итерации
- Вывести общую сумму всех элементов
Используйте следующий точный формат вывода:
Sum: [total sum]Цикл for на основе диапазона должен использовать синтаксис for (int num : numbers) для доступа к каждому элементу. Инициализируйте переменную суммы значением 0 перед циклом, а затем добавляйте каждое число к сумме во время итерации.
Попробуйте сами
#include <iostream>
#include <vector>
using namespace std;
int main() {
// Считать количество целых чисел
int n;
cin >> n;
// Считать n целых чисел
vector<int> numbers;
for (int i = 0; i < n; i++) {
int num;
cin >> num;
// TODO: Добавить num в вектор, используя push_back()
}
// Считать дополнительное целое число
int additional;
cin >> additional;
// TODO: Добавить дополнительное целое число в вектор
// TODO: Вычислить сумму, используя цикл for на основе диапазона (range-based for loop)
int sum = 0;
// Напишите ваш цикл for на основе диапазона здесь
// Вывести результат
cout << "Sum: " << sum << endl;
return 0;
}Все уроки раздела Логика и управление потоком
1Указатели и память
Что такое указатель?Оператор взятия адресаОператор разыменованияНулевые указателиУказатели и массивыДинамическая память и 'new'Освобождение памяти и 'delete'Итоги: Практика с указателями2Векторы (динамические массивы)
Знакомство с std::vectorСоздание вектораДобавление элементовДоступ к элементамРазмер вектораИтерация с помощью цикла ForRange-based цикл ForУдаление элементовИтоги: операции с векторами5Проект: Инструмент инвентаризации
Настройка проектаДобавление и обновление товаров