Форум программистов, компьютерный форум CyberForum.ru

Список (разобрать код) - C++

Восстановить пароль Регистрация
 
Алена_Коваленко
Заблокирован
18.12.2013, 02:04     Список (разобрать код) #1
Помогите пожалуйста разобрать код.

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
#include <list>
#include <iterator>
#include <cstdlib>
#include <ctime>
#include <algorithm>
#include <conio.h>
using namespace std;
 
template <class T>
inline T rnd(T& x)
{
   return x = rand()%10;
}
template <class T>
inline bool is_even(T& x)
{
   return !(x%2);        
}
int main()
{
     setlocale(LC_ALL, "rus");
     srand(time(NULL));
     list<int> l(10);
     for_each(l.begin(), l.end(), rnd<int>);
     copy(l.begin(), l.end(),ostream_iterator<int> (cout," "));
     l.erase(remove_if(l.begin(), l.end(), is_even<int>), l.end());
     cout<<std::endl<<"Нечетные: "<<endl;
     copy(l.begin(), l.end(), ostream_iterator<int> (cout," "));
     getch ();
     return 0;
}
Добавлено через 10 минут
И еще вопрос, этот код из раздела "Списки"?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.12.2013, 02:04     Список (разобрать код)
Посмотрите здесь:

Разобрать код с++ C++
C++ Разобрать код на с++
необходимо разобрать код в с++ C++
Разобрать код по алгоритму C++
C++ Запись в ofstream - разобрать код
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alex566
 Аватар для Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
18.12.2013, 02:11     Список (разобрать код) #2
Первая функция возвращает случайное число от 0 до 9 заданного шаблоном типа.
Вторая функция возвращает true если число четное.
В главной функции создается list из 10 элементов, которым присваивается значение функцией rnd. Затем используя функцию проверки четности удаляются четные элементы и выводится на экран список оставшихся элементов.
Алена_Коваленко
Заблокирован
18.12.2013, 02:15  [ТС]     Список (разобрать код) #3
Alex566, все понятно объяснили. А можно еще объяснить дословно что каждая строчка в главной функции означает.
Alex566
 Аватар для Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
18.12.2013, 02:29     Список (разобрать код) #4
C++
1
2
3
4
5
6
list<int> l(10);//Обьявлен список l на 10 элементов.
     for_each(l.begin(), l.end(), rnd<int>);//От первого до последнего элемента присвоить значение, сгенерированные функцией rnd. 
     copy(l.begin(), l.end(),ostream_iterator<int> (cout," "));//Вывести на экран эти элементы.
     l.erase(remove_if(l.begin(), l.end(), is_even<int>), l.end());//Стереть четные элементы проверяя из функцией is_even.
     cout<<std::endl<<"Нечетные: "<<endl;
     copy(l.begin(), l.end(), ostream_iterator<int> (cout," "));//Вывести список оставшихся (нечетных) элементов.
И кстати не хватает #include <iostream>
Yandex
Объявления
18.12.2013, 02:29     Список (разобрать код)
Ответ Создать тему
Опции темы

Текущее время: 23:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru