Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/726: Рейтинг темы: голосов - 726, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 07.10.2009
Сообщений: 29

Вывод содержимого вектора на экран

01.11.2009, 17:02. Показов 148538. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день ! Есть задача :

Объявите вектор a_vec с элементами целого типа и заполните его произвольными значениями.Предположим,что размер вектора неизвестен,однако,несмотря на это,необходимо выполнить вывод вектора на экран,объявите итератор для vector<int>.Выполните вывод содержимого вектора a_vec на экран,использую при этом операцию разыменования итератора ,а так же значение итератора начального элемента a_vec.begin() и элемента следующего за конечным a_vec.end().

Оформите полученную программу в виде самостоятельной функции show_vector().Эта функция должна принимать ссылку навектор и выводить этот вектор на экран. посмотрите правильно ли я сделал первую часть задания ?

C++
1
2
3
4
5
6
7
8
9
10
# include <vector>
# include <algorithm>
 
int main() {
   std::vector<int> a_vec(4,8);
   std::cout << "Сoдержимое вектора : " ;
   std::copy(a_vec.begin(), a_vec.end(), std::ostream_iterator<int>(std::cout, " "));
 
   return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.11.2009, 17:02
Ответы с готовыми решениями:

Вывод содержимого вектора с наибольшим количеством строк
Ребят помогите с заданием: Считать все строки заданного входного файла в указанную структуру данных , сортируя строки при загрузке...

Вывод содержимого файла на экран
С помощью подсказок и своего немного труда создал программу. Но последние условие выполняется не правильно. Выводится не содержимое файла,...

Вывод на экран содержимого файла
Напишите программу, которая выводит на экран содержимое файла A:\numbers.txt. За ранние спасибо!

12
 Аватар для Даемоник
42 / 42 / 8
Регистрация: 22.05.2009
Сообщений: 97
01.11.2009, 17:37
А что должно появиться на экране? У меня вылезло 8 8 8 8.
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
01.11.2009, 18:21
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#include <vector>
using namespace std;
void show_vector( vector<int>&a)
{
    for (vector<int>::iterator it = a.begin() ; it!=a.end() ; ++it)
        cout<<*it;
}
int main()
{
    int x;
    vector<int>a;
    while (cin>>x)
        a.push_back(x);
    show_vector(a);
    return 0;
}
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
01.11.2009, 19:47
Андрейка, а для чего еще одна функция? std::copy() не достаточно?

Добавлено через 1 минуту
Цитата Сообщение от Даемоник Посмотреть сообщение
А что должно появиться на экране?
а как ты думаешь?
Цитата Сообщение от lelik759 Посмотреть сообщение
a_vec(4,8);
Добавлено через 33 секунды
Цитата Сообщение от lelik759 Посмотреть сообщение
Оформите полученную программу в виде самостоятельной функции show_vector()
бред сивой кобылы
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
01.11.2009, 20:07
достаточно конечно ) но эт у неё ( думаю что лёлик - она))) по заданию функцию show_vector создать я вот так и подумал что с помощью итератора последовательно выводить а то смысл какой вобще делать функцию передавать объект туда и использовать функцию std::copy ) наверно в универе такие задания дают )
0
0 / 0 / 0
Регистрация: 07.10.2009
Сообщений: 29
01.11.2009, 22:17  [ТС]
Если следовать условию моего задания ,листинг должен выглядеть вот так ?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <vector>
using namespace std;
void show_vector( vector<int>&a_vec)
{
        for (vector<int>::iterator it = a_vec.begin() ; it!=a_vec.end() ; ++it)
                cout<<*it;
}
int main()
{
 
        vector<int>a_vec(3,777);       
        show_vector(a_vec);
        return 0;
}
Друзья,если не сложно поставьте комментарии возле каждой строки кода ,чтобы я мог разобраться что к чему.

И как получить исполняемый файл данной программы ?
Спасибо.
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
01.11.2009, 22:39
lelik759, с объектно - ориентированным программированием знакомы?
0
0 / 0 / 0
Регистрация: 07.10.2009
Сообщений: 29
01.11.2009, 22:45  [ТС]
Очень слабо,пытаюсь самостоятельно изучать С++
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
01.11.2009, 22:58
ну так я бы предложил сначала чтобы основы stl изучить почитать про шаблоны функций и классов чтобы была понятна конструкция почему всё таки пишут vector<int> скорее всего ты понимаешь это как массив целых значений это конечно всё примерно так но почитай чтобы было не примерно а точно
скачай книгу Лена Аммераля stl для программистов там не предполагается углубленное знание ООП и вначале даются основные понятия про шаблоны чтобы вникнуть как оно всё это работает.
1
0 / 0 / 0
Регистрация: 07.10.2009
Сообщений: 29
02.11.2009, 01:21  [ТС]
Мне хотелось бы увидеть комментарий по 6 строке ,с остальным вроде понятно.
Как раз читаю Лена Аммераля stl для программистов и Джесс_Либерти-Освой_Cpp_самостоятельно_за_21_день.
Просто конрольная на носу по шаблонам ,поэтому паралелльно пытаюсь разобраться с заданиями.К каждой сущуственной строке необходим комментарий ,поэтому и спросил.
niXman,

Добавлено через 1 час 27 минут
И все таки как должно выглядеть окончательное решение этого задания подскажите пожалуйста ?
0
425 / 229 / 87
Регистрация: 25.03.2009
Сообщений: 744
02.11.2009, 13:07
lelik759, итератор это объект служащий для перебора элементов контейнера работа похожа на работу указателя чтобы получить значение на которое указывает итератор его нужно разименовать чтобы перейти к следующему элементу контейнера его нужно инкрементировать.
1
0 / 0 / 0
Регистрация: 07.10.2009
Сообщений: 29
03.11.2009, 00:38  [ТС]
Андрейка,У меня в задании указано,что вектор необходимо заполнить произвольными значениями и вывести их на экран с помощью разыменовывания итератора ,подскажите как это сделать?

Есть вопрос насчет программы - с циклом FOR мне понятно , с помощью его идет переборка контейнера от начала до конца и выводятся его значения .

А что делает цикл WHILE (условие выполнения цикла CIN>>)Как я понял с помощью этого цикла ,введенное значение х должно добавлятся в конец контейнера ? но при компиляции данной программы пишется "No errors or program output. " То есть ошибок в программе нет ,но она и ничего не делает .
Еще раз напомню основной вопрос : заполнить произвольными значениями и вывести их на экран с помощью разыменовывания итератора ,подскажите как это сделать? Спасибо.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <vector>
using namespace std;
void show_vector( vector<int>&a)
{
        for (vector<int>::iterator it = a.begin() ; it!=a.end() ; ++it)
                cout<<*it;
}
int main()
{
        int x;
    
        vector<int>a;
        while (cin>>x)
                a.push_back(x);
        show_vector(a);
        return 0;
}
0
 Аватар для vvm28
771 / 538 / 67
Регистрация: 22.12.2013
Сообщений: 2,497
Записей в блоге: 26
15.02.2016, 17:14
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <vector>
#include <cstdlib> // содержит srand() и rand() для GNU компилятора поставить опцию -std=gnu++11
/*
vvm28
*/
 
using namespace std;
void show_vector( vector<int>&a)
{
        for (vector<int>::iterator it = a.begin() ; it!=a.end() ; ++it)
                cout<<*it<<" ";
}
 
// заполнить n ячеек вектора псевдиками
void random_push_back_vector( vector<int>&a, int n)
    {
      for (int i=0; i<n; ++i)
          {
              a.push_back(rand()); // здесь можете заполнять не псевдослучайными а случайными например в некотором диапазоне
          }
 
    }
 
int main()
{
       // int x;
 
        vector<int> a;
        /*
        while (cin>>x)
                a.push_back(x);
                */
 
 
         random_push_back_vector(a,12); // заполним 12 элементов вектора псевдослучайными, произвольными
 
        show_vector(a);
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.02.2016, 17:14
Помогаю со студенческими работами здесь

буфер (вывод содержимого на экран)
нужно вывести содержимое буфера на экран (для проверки). в сети нашла только пример записи в буфер. подскажите пожалуйста,как написать...

Вывод содержимого текстового файла на экран
Нужно написать программу чтоб выводила содержимое текстового файла на экран, желательно по строчно после каждого нажатия ентер, ну или хотя...

Ввод и вывод содержимого файла на экран
#include&lt;iostream&gt; #include&lt;fstream&gt; using namespace std; int main() { ofstream file; file.open(&quot;file1.dat&quot;);//создал...

Функция: вывод содержимого текстового файла на экран
Привет всем!На уроке проходили тему &quot;ИСПОЛЬЗОВАНИЕ ФАЙЛОВОЙ СИСТЕМЫ&quot;,я чото неразобрал что идет к чему . 1.Написать функцию вывода...

Чтение файла и вывод его содержимого на экран
помогите разобраться с чтением файла и выводом его содержимого на экран... а то что ни как не получается... запутался... :wall:


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru