<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://mit.spbau.ru/sewiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alexander.Opeykin</id>
		<title>SEWiki - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://mit.spbau.ru/sewiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Alexander.Opeykin"/>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Alexander.Opeykin"/>
		<updated>2026-05-01T10:37:58Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Template_multimethods.pdf&amp;diff=7757</id>
		<title>Файл:Template multimethods.pdf</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Template_multimethods.pdf&amp;diff=7757"/>
				<updated>2016-04-15T00:29:31Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Alexander.Opeykin загрузил новую версию Файл:Template multimethods.pdf&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7630</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7630"/>
				<updated>2016-03-25T07:58:59Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
== 11.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;br /&gt;
&lt;br /&gt;
== 18.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Стандартные алгоритмы и функторы. На протяжении всего занятия запрещается использовать for, do, while и goto.&lt;br /&gt;
&lt;br /&gt;
# Посчитать сколько раз во входном файле встречается каждое из слов и вывести статистику в выходной файл (выполнить без лямбд)&lt;br /&gt;
# Обрезать пробелы у строки слева и справа&lt;br /&gt;
# quick sort&lt;br /&gt;
# gather. Собрать все элементы по заданному предикату подряд в какой то точке контейнера&lt;br /&gt;
[[File:Gather.png|400px|thumb|center||Gather example]]&lt;br /&gt;
&lt;br /&gt;
'''hints''': for_each, transform, distance, next, find_if, nth_element, istream_iterator, ostream_iterator, stable_partition,rotate&lt;br /&gt;
&lt;br /&gt;
== 25.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать утилиту, которая по заданому пути рекурсивно выведет структуру каталогов/файлов.&lt;br /&gt;
Дополнение: раскрасить директории в синий, исполняемые файлы - в зеленый.&lt;br /&gt;
&lt;br /&gt;
Будем использовать boost-filesystem&lt;br /&gt;
&lt;br /&gt;
Установка&lt;br /&gt;
 sudo apt-get install libboost-filesystem-dev&lt;br /&gt;
&lt;br /&gt;
Компиляция примеров&lt;br /&gt;
 g++ main.cpp -lboost_system -lboost_filesystem&lt;br /&gt;
&lt;br /&gt;
референсы&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/tutorial.html&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/reference.html&lt;br /&gt;
&lt;br /&gt;
ключевые слова&lt;br /&gt;
 path&lt;br /&gt;
 directory_iterator&lt;br /&gt;
 is_directory&lt;br /&gt;
 is_regular_file&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7629</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7629"/>
				<updated>2016-03-24T22:24:41Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
== 11.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;br /&gt;
&lt;br /&gt;
== 18.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Стандартные алгоритмы и функторы. На протяжении всего занятия запрещается использовать for, do, while и goto.&lt;br /&gt;
&lt;br /&gt;
# Посчитать сколько раз во входном файле встречается каждое из слов и вывести статистику в выходной файл (выполнить без лямбд)&lt;br /&gt;
# Обрезать пробелы у строки слева и справа&lt;br /&gt;
# quick sort&lt;br /&gt;
# gather. Собрать все элементы по заданному предикату подряд в какой то точке контейнера&lt;br /&gt;
[[File:Gather.png|400px|thumb|center||Gather example]]&lt;br /&gt;
&lt;br /&gt;
'''hints''': for_each, transform, distance, next, find_if, nth_element, istream_iterator, ostream_iterator, stable_partition,rotate&lt;br /&gt;
&lt;br /&gt;
== 25.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать утилиту, которая по заданому пути рекурсивно выведет структуру каталогов/файлов.&lt;br /&gt;
Дополнение: раскрасить директории в синий, исполняемые файлы - в зеленый.&lt;br /&gt;
&lt;br /&gt;
Будем использовать boost-filesystem&lt;br /&gt;
&lt;br /&gt;
Установка&lt;br /&gt;
 sudo apt-get install boost-filesystem-dev&lt;br /&gt;
&lt;br /&gt;
Компиляция примеров&lt;br /&gt;
 g++ main.cpp -lboost_system -lboost_filesystem&lt;br /&gt;
&lt;br /&gt;
референсы&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/tutorial.html&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/reference.html&lt;br /&gt;
&lt;br /&gt;
ключевые слова&lt;br /&gt;
 path&lt;br /&gt;
 directory_iterator&lt;br /&gt;
 is_directory&lt;br /&gt;
 is_regular_file&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7628</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7628"/>
				<updated>2016-03-24T22:22:36Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
== 11.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;br /&gt;
&lt;br /&gt;
== 18.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Стандартные алгоритмы и функторы. На протяжении всего занятия запрещается использовать for, do, while и goto.&lt;br /&gt;
&lt;br /&gt;
# Посчитать сколько раз во входном файле встречается каждое из слов и вывести статистику в выходной файл (выполнить без лямбд)&lt;br /&gt;
# Обрезать пробелы у строки слева и справа&lt;br /&gt;
# quick sort&lt;br /&gt;
# gather. Собрать все элементы по заданному предикату подряд в какой то точке контейнера&lt;br /&gt;
[[File:Gather.png|400px|thumb|center||Gather example]]&lt;br /&gt;
&lt;br /&gt;
'''hints''': for_each, transform, distance, next, find_if, nth_element, istream_iterator, ostream_iterator, stable_partition,rotate&lt;br /&gt;
&lt;br /&gt;
== 25.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать утилиту, которая по заданому пути рекурсивно выведет структуру каталогов/файлов.&lt;br /&gt;
&lt;br /&gt;
Будем использовать boost-filesystem&lt;br /&gt;
&lt;br /&gt;
Установка&lt;br /&gt;
 sudo apt-get install boost-filesystem-dev&lt;br /&gt;
&lt;br /&gt;
Компиляция примеров&lt;br /&gt;
 g++ main.cpp -lboost_system -lboost_filesystem&lt;br /&gt;
&lt;br /&gt;
референсы&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/tutorial.html&lt;br /&gt;
 http://www.boost.org/doc/libs/1_60_0/libs/filesystem/doc/reference.html&lt;br /&gt;
&lt;br /&gt;
ключевые слова&lt;br /&gt;
 path&lt;br /&gt;
 directory_iterator&lt;br /&gt;
 is_directory&lt;br /&gt;
 is_regular_file&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7606</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7606"/>
				<updated>2016-03-18T08:05:11Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
== 11.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;br /&gt;
&lt;br /&gt;
== 18.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
Стандартные алгоритмы и функторы. На протяжении всего занятия запрещается использовать for, do, while и goto.&lt;br /&gt;
&lt;br /&gt;
# Посчитать сколько раз во входном файле встречается каждое из слов и вывести статистику в выходной файл (выполнить без лямбд)&lt;br /&gt;
# Обрезать пробелы у строки слева и справа&lt;br /&gt;
# quick sort&lt;br /&gt;
# gather. Собрать все элементы по заданному предикату подряд в какой то точке контейнера&lt;br /&gt;
[[File:Gather.png|400px|thumb|center||Gather example]]&lt;br /&gt;
&lt;br /&gt;
'''hints''': for_each, transform, distance, next, find_if, nth_element, istream_iterator, ostream_iterator, stable_partition,rotate&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Gather.png&amp;diff=7605</id>
		<title>Файл:Gather.png</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Gather.png&amp;diff=7605"/>
				<updated>2016-03-18T07:52:18Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7571</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7571"/>
				<updated>2016-03-10T21:58:10Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
== 11.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7536</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7536"/>
				<updated>2016-03-03T22:32:37Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;br /&gt;
&lt;br /&gt;
== 04.03.2016 ==&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class deque&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   push_front()&lt;br /&gt;
   pop_fron()&lt;br /&gt;
   size()&lt;br /&gt;
   begin()&lt;br /&gt;
   end()&lt;br /&gt;
   rbegin()&lt;br /&gt;
   rend()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
push_back и push_front инвалидируют итераторы, но никогда не вызывают конструкторов копирования для '''T'''&lt;br /&gt;
&lt;br /&gt;
Итераторы должны работать со стандартными алгоритмами. Для проверки вызвать std::sort.&lt;br /&gt;
&lt;br /&gt;
'''hint''': std::iterator, std::iterator_traits.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7483</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7483"/>
				<updated>2016-02-26T09:12:11Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 26.02.2016 ==&lt;br /&gt;
[[File:Template_multimethods.pdf]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Template_multimethods.pdf&amp;diff=7482</id>
		<title>Файл:Template multimethods.pdf</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Template_multimethods.pdf&amp;diff=7482"/>
				<updated>2016-02-26T09:10:46Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7425</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7425"/>
				<updated>2016-02-19T00:03:04Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
== 19.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать вектор со строгой гарантией исключений для push_back&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;class T&amp;gt;&lt;br /&gt;
 class Vector&lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   operator[]()&lt;br /&gt;
   push_back()&lt;br /&gt;
   pop_back()&lt;br /&gt;
   size()&lt;br /&gt;
   reserve()&lt;br /&gt;
   resize()&lt;br /&gt;
 };&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=7321</id>
		<title>SE Wiki</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=7321"/>
				<updated>2016-02-11T23:43:54Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* 1 курс */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Учебная информация ==&lt;br /&gt;
&lt;br /&gt;
=== 1 курс ===&lt;br /&gt;
&lt;br /&gt;
[[Алгебра_phys_1_весна_2016 | Алгебра (для студентов-физиков)]]&lt;br /&gt;
&lt;br /&gt;
[[Алгоритмы_1_2015/16_весна | Алгоритмы]]&lt;br /&gt;
&lt;br /&gt;
[[Архитектура_КС_весна | Архитектура КС]]&lt;br /&gt;
&lt;br /&gt;
С++&lt;br /&gt;
# Группа 1&lt;br /&gt;
# [[C++_группа_2 | Группа 2]]&lt;br /&gt;
&lt;br /&gt;
=== 2 курс ===&lt;br /&gt;
[[Расписание_2_курса,_весна_2016|Расписание]]&lt;br /&gt;
&lt;br /&gt;
[[Конспекты_2_курса,_весна_2016|Конспекты]]&lt;br /&gt;
&lt;br /&gt;
# [[Микроэкономика,_весна_2016|Экономика]]&lt;br /&gt;
# [[Java_2MIT_весна_2016|Java]]&lt;br /&gt;
# [[OS_2MIT_spring|ОС]]&lt;br /&gt;
# [[Computational_complexity|Complexity]]&lt;br /&gt;
&lt;br /&gt;
=== 5 курс ===&lt;br /&gt;
# [[Linux_kernel_2016|Программирование в ядре Linux]]&lt;br /&gt;
# [[Алгоритмы_и_структуры_данных_5_2015|Алгоритмы и структуры данных]]&lt;br /&gt;
&lt;br /&gt;
=== 6 курс ===&lt;br /&gt;
==== Обязательные: ====&lt;br /&gt;
&lt;br /&gt;
==== По выбору: ====&lt;br /&gt;
[[Компьютерное зрение (весна 2016)]]&lt;br /&gt;
&lt;br /&gt;
== Всякая информация ==&lt;br /&gt;
&lt;br /&gt;
На четвёртом этаже в комнате отдыха в шкафах у входа (снизу) лежит куча пилотов.&lt;br /&gt;
&lt;br /&gt;
Открытые исходящие порты в WirelessForAll: 22, 25, 80, 110, 443, 465, 993, 4244, 5190, 5222, 5242&lt;br /&gt;
&lt;br /&gt;
== Дни разработчика ==&lt;br /&gt;
* [[Devdays2h2012| Дни разработчика (Осень 2012)]]&lt;br /&gt;
* [[Devdays1h2013| Дни разработчика (Весна 2013)]]&lt;br /&gt;
* [[devdays_fall_2013| Дни разработчика (Осень 2013)]]&lt;br /&gt;
* [[devdays_spring_2014| Дни разработчика (Весна 2014)]]&lt;br /&gt;
* [[ prpojects_fall_2013|Странички проектов (Осень 2013)]]&lt;br /&gt;
* [[ prpojects_spring_2014|Страничка проектов (Весна 2014)]]&lt;br /&gt;
* [[devdays_fall_2014|Дни разработчика (Осень 2014)]]&lt;br /&gt;
* [[projects_fall_2014|Страничка проектов (Осень 2014)]]&lt;br /&gt;
* [[devdays_spring_2015|Дни разработчика (Весна 2015)]]&lt;br /&gt;
&lt;br /&gt;
== Архив за прошлые семестры ==&lt;br /&gt;
* [[Осень_2015|Осенний семестр 2015]]&lt;br /&gt;
* [[Весна_2015|Весенний семестр 2015]]&lt;br /&gt;
* [[Осень_2014|Осенний семестр 2014]]&lt;br /&gt;
* [[Весна_2014|Весенний семестр 2014]]&lt;br /&gt;
* [[Осень_2013|Осенний семестр 2013]]&lt;br /&gt;
* [[Весна_2013|Весенний семестр 2013]]&lt;br /&gt;
* [[Осень_2012|Осенний семестр 2012]]&lt;br /&gt;
* [[Весна_2012|Весенний семестр 2012]]&lt;br /&gt;
* [[Осень_2011|Осенний семестр 2011]]&lt;br /&gt;
&lt;br /&gt;
== Практики ==&lt;br /&gt;
* [[НИР_5SE_осень_2014|Темы практик, осень 2014-го года]]&lt;br /&gt;
* [[НИР_5SE_весна_2014|Темы практик, весна 2014-го года]]&lt;br /&gt;
* [[НИР_5SE_осень_2013|Темы практик, осень 2013-го года]]&lt;br /&gt;
* [[НИР_5SE_весна_2013|Темы практик, весна 2013-го года]]&lt;br /&gt;
* [[НИР 5SE осень 2012|Темы практик, осень 2012-го года]]&lt;br /&gt;
* [https://docs.google.com/spreadsheet/pub?key=0Aif17q2hwUt4dG9CRFdGa2tLeV9ab1l1QWlkOFp3bFE&amp;amp;output=html Темы практик, лето 2012-го года]&lt;br /&gt;
* [[Темы практик, 5SE, осень 2011-го года | Темы практик, осень 2011-го года]]&lt;br /&gt;
* [[Темы практик |Темы практик, весна 2011-го года]]&lt;br /&gt;
&lt;br /&gt;
== Студенты ==&lt;br /&gt;
* [[2010|Набор 2010-го года]]&lt;br /&gt;
* [[2011|Набор 2011-го года]]&lt;br /&gt;
* [[2012|Набор 2012-го года]]&lt;br /&gt;
* [[2013|Набор 2013-го года]]&lt;br /&gt;
* [[2014|Набор 2014-го года]]&lt;br /&gt;
* [[2015|Набор 2015-го года]]&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
&lt;br /&gt;
== Дополнительно == &lt;br /&gt;
* [[Q&amp;amp;A]]&lt;br /&gt;
* [[Мероприятия]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7320</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7320"/>
				<updated>2016-02-11T23:41:17Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7319</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7319"/>
				<updated>2016-02-11T23:37:01Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: занятие 12.02.2016&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
+7-931-278-21-60&lt;br /&gt;
&lt;br /&gt;
[mailto:alexander.opeykin@gmail.com alexander.opeykin@gmail.com]&lt;br /&gt;
&lt;br /&gt;
[https://groups.google.com/d/forum/au2015-cpp-practitice-group2 Группа]&lt;br /&gt;
&lt;br /&gt;
== 5.12.2015 == &lt;br /&gt;
Данные [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;br /&gt;
&lt;br /&gt;
== 12.02.2016 ==&lt;br /&gt;
&lt;br /&gt;
Реализовать 3 класса&lt;br /&gt;
&lt;br /&gt;
1. Массив фиксированного(на этапе компиляции) размера&lt;br /&gt;
&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Array &lt;br /&gt;
 {&lt;br /&gt;
 public:&lt;br /&gt;
   Array() {}&lt;br /&gt;
   T &amp;amp;      operator[]( size_t i );&lt;br /&gt;
   T const&amp;amp; operator[]( size_t i ) const;&lt;br /&gt;
   size_t  size() const;&lt;br /&gt;
   void resize( size_t size ) { size_ = size; }&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
2. Специализацию массива Array для bool. Один bool должен занимать один бит.&lt;br /&gt;
&lt;br /&gt;
3. Стек. Должен уметь работать поверх вашего Array&lt;br /&gt;
 template &amp;lt;...&amp;gt;&lt;br /&gt;
 class Stack &lt;br /&gt;
 {&lt;br /&gt;
 public: &lt;br /&gt;
    T const&amp;amp; top() const;&lt;br /&gt;
    T &amp;amp;      top();&lt;br /&gt;
    void push(T const&amp;amp; t);&lt;br /&gt;
    void pop();    &lt;br /&gt;
    bool empty();&lt;br /&gt;
    size_t size();&lt;br /&gt;
 };&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7314</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7314"/>
				<updated>2016-02-11T23:24:02Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Опейкин Александр&lt;br /&gt;
Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2.&lt;br /&gt;
Общие объявления будут там. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Файл с данными для занятия 5.12.2015 [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7027</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7027"/>
				<updated>2015-12-04T10:22:35Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2.&lt;br /&gt;
Общие объявления будут там. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Файл с данными для занятия 5.12.2015 [[File:Schemed_read_data.gz]]  [[File:New_data.tgz]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:New_data.tgz&amp;diff=7026</id>
		<title>Файл:New data.tgz</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:New_data.tgz&amp;diff=7026"/>
				<updated>2015-12-04T10:21:50Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: новый данные&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;новый данные&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7025</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7025"/>
				<updated>2015-12-03T23:50:20Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2.&lt;br /&gt;
Общие объявления будут там. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Файл с данными для занятия 5.12.2015 [[File:Schemed_read_data.gz]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7024</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=7024"/>
				<updated>2015-12-03T23:49:08Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2.&lt;br /&gt;
Общие объявления будут там. &amp;lt;br&amp;gt;&lt;br /&gt;
Файл с данными для занятия 5.12.2015 [[File:Schemed_read_data.gz]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Schemed_read_data.gz&amp;diff=7023</id>
		<title>Файл:Schemed read data.gz</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Schemed_read_data.gz&amp;diff=7023"/>
				<updated>2015-12-03T23:42:20Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Тестовые данный для плюсовой практики&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Тестовые данный для плюсовой практики&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=CPP_1_2015&amp;diff=6982</id>
		<title>CPP 1 2015</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=CPP_1_2015&amp;diff=6982"/>
				<updated>2015-11-25T13:25:10Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* Группы */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Лектор — Евгений Михайлович Линский (&amp;lt;b&amp;gt;?&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
Практика — Алексей Игоревич Кудинкин (&amp;lt;b&amp;gt;alexey.kudinkin@gmail.com&amp;lt;/b&amp;gt;), Александр Сергеевич Опейкин (&amp;lt;b&amp;gt;alexander.opeykin@gmail.com&amp;lt;/b&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
== Группы ==&lt;br /&gt;
&lt;br /&gt;
[[C++ Практические задания Группа №1 | Группа #1 ]]&lt;br /&gt;
[[C++ группа 2 | Группа #2 ]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=6981</id>
		<title>C++ группа 2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0_2&amp;diff=6981"/>
				<updated>2015-11-25T13:24:35Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Новая страница: «Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2. Общие объявления будут там.»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Все вступаем в https://groups.google.com/d/forum/au2015-cpp-practitice-group2.&lt;br /&gt;
Общие объявления будут там.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4587</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4587"/>
				<updated>2014-10-31T08:33:14Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* Практики */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
= Прочитать =&lt;br /&gt;
[http://mit.spbau.ru/sewiki/images/c/ce/Cpp_Standard_mistakes_shad.pdf Cтандартные ошибки] (своровано в ШАДе)&lt;br /&gt;
&lt;br /&gt;
[http://google-styleguide.googlecode.com/svn/trunk/cppguide.html Style guide] (Google)&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;br /&gt;
&lt;br /&gt;
[[Практика 5|Практика 5]]&lt;br /&gt;
&lt;br /&gt;
[[C%2B%2B_Практика_Наследование|Практика 8]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_%D0%9D%D0%B0%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5&amp;diff=4586</id>
		<title>C++ Практика Наследование</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_%D0%9D%D0%B0%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5&amp;diff=4586"/>
				<updated>2014-10-31T08:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Новая страница: «Реализовать класс FileOutputStream   class FileOutputStream  {      FileOutputStream( char* filename )           : file_(fopen(filename, &amp;quot;w&amp;quot;))      {…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Реализовать класс FileOutputStream&lt;br /&gt;
&lt;br /&gt;
 class FileOutputStream&lt;br /&gt;
 {&lt;br /&gt;
     FileOutputStream( char* filename ) &lt;br /&gt;
         : file_(fopen(filename, &amp;quot;w&amp;quot;))&lt;br /&gt;
     {}&lt;br /&gt;
 &lt;br /&gt;
    void print( int t ) &lt;br /&gt;
    void print( double t ) &lt;br /&gt;
    void print(char* name)&lt;br /&gt;
    void flush()&lt;br /&gt;
      ~FileOutputStream(  ) { fclose(file_); }&lt;br /&gt;
 protected:&lt;br /&gt;
     FileOutputStream( FILE * file )&lt;br /&gt;
         : file_(file)&lt;br /&gt;
     {}&lt;br /&gt;
 private:&lt;br /&gt;
     FileOutputStream&amp;amp; operator=(FileOutputStream const&amp;amp;);&lt;br /&gt;
     FileOutputStream(FileOutputStream const&amp;amp;);&lt;br /&gt;
 private:&lt;br /&gt;
     FILE * file_;       &lt;br /&gt;
 };&lt;br /&gt;
	&lt;br /&gt;
На основе FileOutputStream реализовать класс ConsoleOutputStream c дополнительным методом setColor(XXX)&lt;br /&gt;
&lt;br /&gt;
class ConsoleOutputStream : FileOutputStream&lt;br /&gt;
{&lt;br /&gt;
    ConsoleOutputStream() : FileOutputStream( stdout ) {}&lt;br /&gt;
    XXX setColor(XXX) 	&lt;br /&gt;
    ~ConsoleOutputStream() { }&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
Как работать с цветами &lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#define ANSI_COLOR_RED     &amp;quot;\x1b[31m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_GREEN   &amp;quot;\x1b[32m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_YELLOW  &amp;quot;\x1b[33m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_BLUE    &amp;quot;\x1b[34m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_MAGENTA &amp;quot;\x1b[35m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_CYAN    &amp;quot;\x1b[36m&amp;quot;&lt;br /&gt;
#define ANSI_COLOR_RESET   &amp;quot;\x1b[0m&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 int main (int argc, char const *argv[]) {&lt;br /&gt;
   printf(ANSI_COLOR_RED     &amp;quot;This text is RED!&amp;quot;     ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_GREEN   &amp;quot;This text is GREEN!&amp;quot;   ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_YELLOW  &amp;quot;This text is YELLOW!&amp;quot;  ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_BLUE    &amp;quot;This text is BLUE!&amp;quot;    ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_MAGENTA &amp;quot;This text is MAGENTA!&amp;quot; ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_CYAN    &amp;quot;This text is CYAN!&amp;quot;    ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_RED);&lt;br /&gt;
   printf(&amp;quot;This text is RED!&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_GREEN);&lt;br /&gt;
   printf(&amp;quot;This text is RED!&amp;quot;);&lt;br /&gt;
   printf(ANSI_COLOR_RESET &amp;quot;\n&amp;quot;);&lt;br /&gt;
   return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
На основе FileOutputStream реализовать класс ErrorOutputStream, в котором методы используются для вывода сообщений об ошибках (дополнительно печатают, откуда был вызван метод)&lt;br /&gt;
&lt;br /&gt;
Нужно использовать макросы: __FUNCTION__, __FILE__, __LINE__&lt;br /&gt;
&lt;br /&gt;
 сlass ErrorOutputStream : FileOutputStream&lt;br /&gt;
 {&lt;br /&gt;
     ErrorOutputStream() : FileOutputStream( stderr ) {}&lt;br /&gt;
     void print(char* name, char* file, char* func, int line)&lt;br /&gt;
     ~ErrorOutputStream() { }&lt;br /&gt;
 };&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4356</id>
		<title>Практика 5</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4356"/>
				<updated>2014-10-15T10:13:25Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Задание выполняется на базе предыдущего&lt;br /&gt;
&lt;br /&gt;
Написать программу, которая работает с командной строкой (ввод всегда без ошибок)&lt;br /&gt;
&lt;br /&gt;
=== Входные параметры === &lt;br /&gt;
 ./main {loadtxt | loadbin} infile {savetxt | savebin} outfile&lt;br /&gt;
 ./main {loadtxt | loadbin} infile print “fmt”&lt;br /&gt;
 ./main {loadtxt | loadbin} infile count&lt;br /&gt;
&lt;br /&gt;
#'''loadtxt''' загрузить из текстового файла&lt;br /&gt;
#'''loadbin''' загрузить из двоичного файла&lt;br /&gt;
#'''savetxt''' записать в текстовый файл&lt;br /&gt;
#'''savebin''' записать в двоичный файл&lt;br /&gt;
#'''print''' “fmt” вывести список на экран в формате fmt (пример fmt: “(%d %d)”, “[%#x %#x]\n”)&lt;br /&gt;
#'''count''' вывести размер списка&lt;br /&gt;
&lt;br /&gt;
=== Замечания === &lt;br /&gt;
Файлы всегда правильного формата&lt;br /&gt;
&lt;br /&gt;
Текстовый файл: каждый элемент списка на новой строке; числа x и y разделены пробелом&lt;br /&gt;
&lt;br /&gt;
=== Бонус === &lt;br /&gt;
Бинарный файл: каждое число занимает не больше 3 байт&lt;br /&gt;
&lt;br /&gt;
Hint: в структуре тип int x; при чтение/записи надо работать с битами с помощью &amp;amp;, |, &amp;lt;&amp;lt;, &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Требование по реализации count и print === &lt;br /&gt;
Использовать указатель на функцию. Для этого реализуем вспомогательную функцию:&lt;br /&gt;
&lt;br /&gt;
 void applyFunctionToEachNode( intrusive_list_t* l, void (*f)(...), ...)&lt;br /&gt;
&lt;br /&gt;
Которая проходит по всему листу и вызывает f для каждого узла. Соответственно для печати всего листа:&lt;br /&gt;
&lt;br /&gt;
 applyFunctionToEachNode(list, &amp;amp;functionThatPrintsSingleNode)&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Глобальные переменные использовать '''запрещено'''.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4345</id>
		<title>Практика 5</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4345"/>
				<updated>2014-10-14T21:54:15Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Задание выполняется на базе предыдущего&lt;br /&gt;
&lt;br /&gt;
Написать программу, которая работает с командной строкой (ввод всегда без ошибок)&lt;br /&gt;
&lt;br /&gt;
=== Входные параметры === &lt;br /&gt;
 ./main {loadtxt | loadbin} infile {savetxt | savebin} outfile&lt;br /&gt;
 ./main {loadtxt | loadbin} infile print “fmt”&lt;br /&gt;
 ./main {loadtxt | loadbin} infile count&lt;br /&gt;
&lt;br /&gt;
#'''loadtxt''' загрузить из текстового файла&lt;br /&gt;
#'''loadbin''' загрузить из двоичного файла&lt;br /&gt;
#'''savetxt''' записать в текстовый файл&lt;br /&gt;
#'''savebin''' записать в двоичный файл&lt;br /&gt;
#'''print''' “fmt” вывести список на экран в формате fmt (пример fmt: “(%d %d)”, “[%#x %#x]\n”)&lt;br /&gt;
#'''count''' вывести размер списка&lt;br /&gt;
&lt;br /&gt;
=== Замечания === &lt;br /&gt;
Файлы всегда правильного формата&lt;br /&gt;
&lt;br /&gt;
Текстовый файл: каждый элемент списка на новой строке; числа x и y разделены пробелом&lt;br /&gt;
&lt;br /&gt;
Бинарный файл: каждое число занимает не больше 3 байт&lt;br /&gt;
&lt;br /&gt;
Hint: в структуре тип int x; при чтение/записи надо работать с битами с помощью &amp;amp;, |, &amp;lt;&amp;lt;, &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Требование по реализации count и print === &lt;br /&gt;
Использовать указатель на функцию. Для этого реализуем вспомогательную функцию:&lt;br /&gt;
&lt;br /&gt;
 void applyFunctionToEachNode( intrusive_list_t* l, void (*f)(...), ...)&lt;br /&gt;
&lt;br /&gt;
Которая проходит по всему листу и вызывает f для каждого узла. Соответственно для печати всего листа:&lt;br /&gt;
&lt;br /&gt;
 applyFunctionToEachNode(list, &amp;amp;functionThatPrintsSingleNode)&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Глобальные переменные использовать '''запрещено'''.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4344</id>
		<title>Практика 5</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4344"/>
				<updated>2014-10-14T21:42:49Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Задание выполняется на базе предыдущего&lt;br /&gt;
&lt;br /&gt;
Написать программу, которая работает с командной строкой (ввод всегда без ошибок)&lt;br /&gt;
&lt;br /&gt;
=== Входные параметры === &lt;br /&gt;
 ./main {loadtxt | loadbin} infile {savetxt | savebin} outfile&lt;br /&gt;
 ./main {loadtxt | loadbin} infile print “fmt”&lt;br /&gt;
 ./main {loadtxt | loadbin} infile count&lt;br /&gt;
&lt;br /&gt;
#'''loadtxt''' загрузить из текстового файла&lt;br /&gt;
#'''loadbin''' загрузить из двоичного файла&lt;br /&gt;
#'''savetxt''' записать в текстовый файл&lt;br /&gt;
#'''savebin''' записать в двоичный файл&lt;br /&gt;
#'''print''' “fmt” вывести список на экран в формате fmt (пример fmt: “(%d %d)”, “[%#x %#x]\n”)&lt;br /&gt;
#'''count''' вывести размер списка&lt;br /&gt;
&lt;br /&gt;
=== Замечания === &lt;br /&gt;
Файлы всегда правильного формата&lt;br /&gt;
&lt;br /&gt;
Текстовый файл: каждый элемент списка на новой строке; числа x и y разделены пробелом&lt;br /&gt;
&lt;br /&gt;
Бинарный файл: каждое число занимает не больше 3 байт&lt;br /&gt;
&lt;br /&gt;
Hint: в структуре тип int x; при чтение/записи надо работать с битами с помощью &amp;amp;, |, &amp;lt;&amp;lt;, &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Требование по реализации count и print === &lt;br /&gt;
Использовать указатель на функцию. Для этого реализуем вспомогательную функцию:&lt;br /&gt;
&lt;br /&gt;
 void applyFunctionToEachNode( intrusive_list_t* l, void (*f)(...), ...)&lt;br /&gt;
&lt;br /&gt;
Которая проходит по всему листу и вызывает f для каждого узла. Соответственно для печати всего листа:&lt;br /&gt;
&lt;br /&gt;
 applyFunctionToEachNode(list, &amp;amp;functionThatPrintSingleNode)&lt;br /&gt;
&lt;br /&gt;
'''NOTE:''' Глобальные переменные использовать '''запрещено'''.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4343</id>
		<title>Практика 5</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4343"/>
				<updated>2014-10-14T21:40:11Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Задание выполняется на базе предыдущего&lt;br /&gt;
&lt;br /&gt;
Написать программу, которая работает с командной строкой (ввод всегда без ошибок)&lt;br /&gt;
&lt;br /&gt;
=== Входные параметры === &lt;br /&gt;
 ./main {loadtxt | loadbin} infile {savetxt | savebin} outfile&lt;br /&gt;
 ./main {loadtxt | loadbin} infile print “fmt”&lt;br /&gt;
 ./main {loadtxt | loadbin} infile count&lt;br /&gt;
&lt;br /&gt;
#'''loadtxt''' загрузить из текстового файла&lt;br /&gt;
#'''loadbin''' загрузить из двоичного файла&lt;br /&gt;
#'''savetxt''' записать в текстовый файл&lt;br /&gt;
#'''savebin''' записать в двоичный файл&lt;br /&gt;
#'''print''' “fmt” вывести список на экран в формате fmt (пример fmt: “(%d %d)”, “[%#x %#x]\n”)&lt;br /&gt;
#'''count''' вывести размер списка&lt;br /&gt;
&lt;br /&gt;
=== Замечания === &lt;br /&gt;
Файлы всегда правильного формата&lt;br /&gt;
&lt;br /&gt;
Текстовый файл: каждый элемент списка на новой строке; числа x и y разделены пробелом&lt;br /&gt;
&lt;br /&gt;
Бинарный файл: каждое число занимает не больше 3 байт&lt;br /&gt;
&lt;br /&gt;
Hint: в структуре тип int x; при чтение/записи надо работать с битами с помощью &amp;amp;, |, &amp;lt;&amp;lt;, &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Требование по реализации count и print === &lt;br /&gt;
Использовать указатель на функцию.&lt;br /&gt;
&lt;br /&gt;
Для этого реализуем вспомогательную функцию:&lt;br /&gt;
&lt;br /&gt;
 void applyFunctionToEachNode( intrusive_list_t* l, void (*f)(...), ...)&lt;br /&gt;
&lt;br /&gt;
Которая проходит по всему листу и вызывает f для каждого узла.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4293</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4293"/>
				<updated>2014-10-13T07:28:29Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
= Прочитать =&lt;br /&gt;
[http://mit.spbau.ru/sewiki/images/c/ce/Cpp_Standard_mistakes_shad.pdf Cтандартные ошибки] (своровано в ШАДе)&lt;br /&gt;
&lt;br /&gt;
[http://google-styleguide.googlecode.com/svn/trunk/cppguide.html Style guide] (Google)&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;br /&gt;
&lt;br /&gt;
[[Практика 5|Практика 5]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4292</id>
		<title>Практика 5</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_5&amp;diff=4292"/>
				<updated>2014-10-13T07:27:22Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Новая страница: «Задание выполняется на базе предыдущего  Написать программу, которая работает с командно…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Задание выполняется на базе предыдущего&lt;br /&gt;
&lt;br /&gt;
Написать программу, которая работает с командной строкой (ввод всегда без ошибок)&lt;br /&gt;
&lt;br /&gt;
./main {loadtxt | loadbin} infile {savetxt | savebin} outfile&lt;br /&gt;
&lt;br /&gt;
./main {loadtxt | loadbin} infile print “fmt”&lt;br /&gt;
&lt;br /&gt;
./main {loadtxt | loadbin} infile count&lt;br /&gt;
&lt;br /&gt;
loadtxt загрузить из текстового файла&lt;br /&gt;
&lt;br /&gt;
loadbin загрузить из двоичного файла&lt;br /&gt;
&lt;br /&gt;
savetxt записать в текстовый файл&lt;br /&gt;
&lt;br /&gt;
savebin записать в двоичный файл&lt;br /&gt;
&lt;br /&gt;
print “fmt” вывести список на экран в формате fmt (пример fmt: “(%d %d)”, “[%#x %#x]\n”)&lt;br /&gt;
&lt;br /&gt;
count вывести размер списка&lt;br /&gt;
&lt;br /&gt;
Файлы всегда правильного формата&lt;br /&gt;
&lt;br /&gt;
Текстовый файл: каждый элемент списка на новой строке; числа x и y разделены пробелом&lt;br /&gt;
&lt;br /&gt;
Бинарный файл: каждое число занимает не больше 3 байт&lt;br /&gt;
&lt;br /&gt;
Hint: в структуре тип int x; при чтение/записи надо работать с битами с помощью &amp;amp;, |, &amp;lt;&amp;lt;, &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Требование по реализации count и print: использовать указатель на функцию&lt;br /&gt;
&lt;br /&gt;
void apply( intrusive_list_t* l, void (*f)(XXX))&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4291</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4291"/>
				<updated>2014-10-12T22:10:00Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
= Прочитать =&lt;br /&gt;
[http://mit.spbau.ru/sewiki/images/c/ce/Cpp_Standard_mistakes_shad.pdf Cтандартные ошибки] (своровано в ШАДе)&lt;br /&gt;
&lt;br /&gt;
[http://google-styleguide.googlecode.com/svn/trunk/cppguide.html Style guide] (Google)&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4290</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4290"/>
				<updated>2014-10-12T22:07:43Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
= Прочитать =&lt;br /&gt;
[http://mit.spbau.ru/sewiki/images/c/ce/Cpp_Standard_mistakes_shad.pdf Cтандартные ошибки] (своровано в ШАДе)&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4289</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4289"/>
				<updated>2014-10-12T22:07:00Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
= Прочитать =&lt;br /&gt;
[http://mit.spbau.ru/sewiki/images/c/ce/Cpp_Standard_mistakes_shad.pdf стандартные ошибки]&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Cpp_Standard_mistakes_shad.pdf&amp;diff=4288</id>
		<title>Файл:Cpp Standard mistakes shad.pdf</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%A4%D0%B0%D0%B9%D0%BB:Cpp_Standard_mistakes_shad.pdf&amp;diff=4288"/>
				<updated>2014-10-12T22:05:37Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4287</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4287"/>
				<updated>2014-10-12T21:47:26Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Группа =&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;br /&gt;
&lt;br /&gt;
= Примеры =&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2 github]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/opeykin/au2014-cpp-practitice-group2/archive/master.zip zip]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Практики =&lt;br /&gt;
[[Practice_4_intrusive_list|Практика 4]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Practice_4_intrusive_list&amp;diff=4256</id>
		<title>Practice 4 intrusive list</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Practice_4_intrusive_list&amp;diff=4256"/>
				<updated>2014-10-11T08:15:02Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* clist.cpp */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Дедлайн ==&lt;br /&gt;
Среда (8.10.2014) 23.59 UTC+4.&lt;br /&gt;
&lt;br /&gt;
== Как сдавать ==&lt;br /&gt;
Написать письмо на адрес alexander.opeykin@gmail.com c темой 'Практика 4'.&lt;br /&gt;
&lt;br /&gt;
К письму приложить архив директории. Назвать по аналогии с alexander.opeykin.tgz&lt;br /&gt;
&lt;br /&gt;
== Важно ==&lt;br /&gt;
Текст задачи немного изменен для унификации со второй группой!&lt;br /&gt;
&lt;br /&gt;
== Стуктура ==&lt;br /&gt;
Makefile, main.cpp (тесты для списка с position), clist.cpp, clist.h.&lt;br /&gt;
&lt;br /&gt;
== Постановка задачи ==&lt;br /&gt;
Реализовать переиспользуемые интрузивные списки в стиле C.&lt;br /&gt;
&lt;br /&gt;
=== Структуры === &lt;br /&gt;
 struct intrusive_node {&lt;br /&gt;
   struct intrusive_node *next;&lt;br /&gt;
   struct intrusice_node *prev;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
 struct intrusive_list {&lt;br /&gt;
   struct intrusive_node head;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
 struct position_node {&lt;br /&gt;
   int x;&lt;br /&gt;
   int y;&lt;br /&gt;
   struct intrusive_node node;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== Функции, которые нужно реализовать ===&lt;br /&gt;
Указатели надо расставить самостоятельно!&lt;br /&gt;
&lt;br /&gt;
==== clist.cpp ==== &lt;br /&gt;
 init_list(intrusive_list)&lt;br /&gt;
 add_node(intrusive_list, intrusive_node)&lt;br /&gt;
 remove_node(intrusive_list, intrusive_node)&lt;br /&gt;
 int get_length(intrusive_list)&lt;br /&gt;
&lt;br /&gt;
==== main.сpp ====&lt;br /&gt;
 remove_position(intrusive_list, x, y) // удаляет все вхождения x,y&lt;br /&gt;
 add_positon(intrusive_list, int x, int y) &lt;br /&gt;
 show_all_positions()&lt;br /&gt;
 remove_all()&lt;br /&gt;
&lt;br /&gt;
=== Базовый тест ===&lt;br /&gt;
Для короектной работы самостоятельно расставьте символы * и &amp;amp;&lt;br /&gt;
 int main() {&lt;br /&gt;
   intrusive_list_t l;&lt;br /&gt;
   init_list(l);&lt;br /&gt;
   add_positon(l, 10, 10);&lt;br /&gt;
   add_positon(l, 20, 20);    &lt;br /&gt;
   show_all_positions(l);&lt;br /&gt;
   return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
=== Подсказка ===&lt;br /&gt;
 #define container_of(ptr, type, member) (type*)((char*)(ptr) - offsetof(type, member))&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4219</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4219"/>
				<updated>2014-10-09T08:26:12Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Practice_4_intrusive_list|Практика 4]]&lt;br /&gt;
&lt;br /&gt;
Добавляйтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4218</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4218"/>
				<updated>2014-10-09T08:25:38Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Practice_4_intrusive_list|Практика 4]]&lt;br /&gt;
&lt;br /&gt;
Добавьтесь в эту [http://groups.google.com/d/forum/au2014-cpp-practitice-group2 группу]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4126</id>
		<title>C++ Практические задания Группа №2</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=C%2B%2B_%D0%9F%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D1%8F_%D0%93%D1%80%D1%83%D0%BF%D0%BF%D0%B0_%E2%84%962&amp;diff=4126"/>
				<updated>2014-10-04T20:00:34Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Practice_4_intrusive_list|Практика 4]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=Practice_4_intrusive_list&amp;diff=4125</id>
		<title>Practice 4 intrusive list</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=Practice_4_intrusive_list&amp;diff=4125"/>
				<updated>2014-10-04T19:58:47Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Новая страница: «== Дедлайн == Среда (8.10.2014) 23.59 UTC+4.  == Как сдавать == Написать письмо на адрес alexander.opeykin@gmail.com c т…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Дедлайн ==&lt;br /&gt;
Среда (8.10.2014) 23.59 UTC+4.&lt;br /&gt;
&lt;br /&gt;
== Как сдавать ==&lt;br /&gt;
Написать письмо на адрес alexander.opeykin@gmail.com c темой 'Практика 4'.&lt;br /&gt;
&lt;br /&gt;
К письму приложить архив директории. Назвать по аналогии с alexander.opeykin.tgz&lt;br /&gt;
&lt;br /&gt;
== Важно ==&lt;br /&gt;
Текст задачи немного изменен для унификации со второй группой!&lt;br /&gt;
&lt;br /&gt;
== Стуктура ==&lt;br /&gt;
Makefile, main.cpp (тесты для списка с position), clist.cpp, clist.h.&lt;br /&gt;
&lt;br /&gt;
== Постановка задачи ==&lt;br /&gt;
Реализовать переиспользуемые интрузивные списки в стиле C.&lt;br /&gt;
&lt;br /&gt;
=== Структуры === &lt;br /&gt;
 struct intrusive_node {&lt;br /&gt;
   struct intrusive_node *next;&lt;br /&gt;
   struct intrusice_node *prev;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
 struct intrusive_list {&lt;br /&gt;
   struct intrusive_node head;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
 struct position_node {&lt;br /&gt;
   int x;&lt;br /&gt;
   int y;&lt;br /&gt;
   struct intrusive_node node;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
=== Функции, которые нужно реализовать ===&lt;br /&gt;
Указатели надо расставить самостоятельно!&lt;br /&gt;
&lt;br /&gt;
==== clist.cpp ==== &lt;br /&gt;
 init_list(intrusive_list, intrusive_node)&lt;br /&gt;
 add_node(intrusive_list, intrusive_node)&lt;br /&gt;
 remove_node(intrusive_list, intrusive_node)&lt;br /&gt;
 int get_length(intrusive_list)&lt;br /&gt;
&lt;br /&gt;
==== main.сpp ====&lt;br /&gt;
 remove_position(intrusive_list, x, y) // удаляет все вхождения x,y&lt;br /&gt;
 add_positon(intrusive_list, int x, int y) &lt;br /&gt;
 show_all_positions()&lt;br /&gt;
 remove_all()&lt;br /&gt;
&lt;br /&gt;
=== Базовый тест ===&lt;br /&gt;
Для короектной работы самостоятельно расставьте символы * и &amp;amp;&lt;br /&gt;
 int main() {&lt;br /&gt;
   intrusive_list_t l;&lt;br /&gt;
   init_list(l);&lt;br /&gt;
   add_positon(l, 10, 10);&lt;br /&gt;
   add_positon(l, 20, 20);    &lt;br /&gt;
   show_all_positions(l);&lt;br /&gt;
   return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
=== Подсказка ===&lt;br /&gt;
 #define container_of(ptr, type, member) (type*)((char*)(ptr) - offsetof(type, member))&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1671</id>
		<title>ARSkyMap</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1671"/>
				<updated>2012-10-25T12:57:48Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Участники =&lt;br /&gt;
Опейкин Александр&lt;br /&gt;
&lt;br /&gt;
Коровин Алексей&lt;br /&gt;
&lt;br /&gt;
= Цели =&lt;br /&gt;
Для проекта [http://code.google.com/p/stardroid/ Stardroid] (ex. Google Sky Map) написать модуль позволяющий накладывать &lt;br /&gt;
карту звездного неба на изображение получаемое с камеры в реальном времени.&lt;br /&gt;
&lt;br /&gt;
= Задачи =&lt;br /&gt;
&lt;br /&gt;
= Ссылки =&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1652</id>
		<title>ARSkyMap</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1652"/>
				<updated>2012-10-25T12:35:14Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Участники =&lt;br /&gt;
= Цели =&lt;br /&gt;
= Задачи =&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1651</id>
		<title>ARSkyMap</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=ARSkyMap&amp;diff=1651"/>
				<updated>2012-10-25T12:34:48Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: Новая страница: «== Участники == == Цели == == Задачи ==»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Участники ==&lt;br /&gt;
== Цели ==&lt;br /&gt;
== Задачи ==&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1231</id>
		<title>SE Wiki</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=SE_Wiki&amp;diff=1231"/>
				<updated>2012-04-01T14:27:53Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== День дурака, ану прочь от учебы! ==&lt;br /&gt;
&lt;br /&gt;
* [[Java | Язык для кофеварок]]&lt;br /&gt;
* [[FunctionalProgramming | Наркопритон]]&lt;br /&gt;
* [[IntroductionToProgrammingLanguages | Пикап]]&lt;br /&gt;
* [[SoftwareDesign | Сад и огород]]&lt;br /&gt;
* [[SE | Псевдоработа]]&lt;br /&gt;
* [[MachineLearning | Бибики]]&lt;br /&gt;
* [[LinuxKernelProgramming | Красноглазики]]&lt;br /&gt;
* [[NIR | Имитация бурной деятельности]]&lt;br /&gt;
* [[Теорема_Пойа | Песни с пляски]]&lt;br /&gt;
* [[C++ | Хардкор]]&lt;br /&gt;
&lt;br /&gt;
== Кто прошлое помянит, тому глаз вон ==&lt;br /&gt;
[[Осень_2011|КМБ]]&lt;br /&gt;
&lt;br /&gt;
== Муточки давно минувших дней ==&lt;br /&gt;
* [[ Темы практик |что не делали старожилы]]&lt;br /&gt;
* [[Темы практик, 5SE, осень 2011-го года |что не делали нубы ]]&lt;br /&gt;
&lt;br /&gt;
== Личный состав ==&lt;br /&gt;
* [[2010|Дедушки(рота 604)]]&lt;br /&gt;
* [[2011|Духи]]&lt;br /&gt;
== Ненужная фигня ==&lt;br /&gt;
Для духов:&lt;br /&gt;
* [http://code.google.com/p/spbau-cpp-2011/ cpp] - отстойник.&lt;br /&gt;
Для дедушек:&lt;br /&gt;
* [http://code.google.com/p/hpcource/ hpcource] - Нитки, катушки, ткань.&lt;br /&gt;
* [http://code.google.com/p/mathvm/ mathvm] - репозиторий для лабораторных по виртуальным машинам.&lt;br /&gt;
* [http://code.google.com/p/spbau-network-2011/source/checkout spbau-network-2011] -  Шелкопрядство.&lt;br /&gt;
Всем полкам:&lt;br /&gt;
* [http://code.google.com/p/aptu-os/source/checkout aptu-os] - Пчелы.&lt;br /&gt;
&lt;br /&gt;
== АЛСО == &lt;br /&gt;
* [[Q&amp;amp;A | Тупые вопросы]]&lt;br /&gt;
* [[Мероприятия | Пьянки]]&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9D%D0%98%D0%A0&amp;diff=1113</id>
		<title>НИР</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9D%D0%98%D0%A0&amp;diff=1113"/>
				<updated>2012-03-09T13:04:02Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* MyFit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Карта дорог ==&lt;br /&gt;
Руководитель: Лесин&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Иванов Антон&lt;br /&gt;
* Сорокин Артем&lt;br /&gt;
* Кононенко Василий&lt;br /&gt;
Отчёт:&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== MyFit ==&lt;br /&gt;
Руководитель: EMC&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&lt;br /&gt;
* [http://osll.spb.ru/projects/myfit/ трекер]&lt;br /&gt;
* [http://code.google.com/p/myfit/ репозиторий]&lt;br /&gt;
Команда:&lt;br /&gt;
* Опейкин Александр&lt;br /&gt;
* Певзнер Алина&lt;br /&gt;
* Башоров Залим&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== 9.03.2012 ==== &lt;br /&gt;
Выполнено 2 тестовых задания на Java и на GWT.&amp;lt;BR&amp;gt;&lt;br /&gt;
Получены следующие задачи:&lt;br /&gt;
* [http://osll.spb.ru/issues/3155 Опейкин] (Готово)&lt;br /&gt;
* [http://osll.spb.ru/issues/3156 Певзнер]&lt;br /&gt;
* [http://osll.spb.ru/issues/3157 Башоров]&lt;br /&gt;
&lt;br /&gt;
== GPU ==&lt;br /&gt;
Руководитель: Рубен Артурович Гиргидов&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Коровин Алексей&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Кормишин Сергей&lt;br /&gt;
Отчёт:&amp;lt;br&amp;gt;&lt;br /&gt;
*1я встреча нам были выданы вводные задачи: &lt;br /&gt;
** Разобраться с CUDA, установить и настроить окружение. Написать простенький алгоритм. (Коровин А.)&lt;br /&gt;
** Вспомнить &amp;quot;всё&amp;quot; о регулярных выражениях: какие бывают, как пишутся (Лазарев С.)&lt;br /&gt;
** Найти обработчики регулярных выражений (Matcher'ы), разобраться в их строении и принципе работы. (Кормишин С.)&lt;br /&gt;
*2я встреча:&lt;br /&gt;
** Обсудили наши предыдущие задания, расписали план выполнения проекта, цели и др.&lt;br /&gt;
** Выданы следующие задачи:&lt;br /&gt;
**# Реализовать обработчик РВ на Cuda для одной и n строк (Коровин А.)&lt;br /&gt;
**# Найти обработчики РВ на CPU на C++ и адаптировать его для n строк (Кормишин С.)&lt;br /&gt;
**# Реализовать обработчик РВ нa cuBLAS (Лазарев С.)&lt;br /&gt;
&lt;br /&gt;
== Syrop ==&lt;br /&gt;
Руководитель: Смаль Александр Владимирович&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект: [https://github.com/avsmal/Syrop Syrop]&amp;lt;BR/&amp;gt;&lt;br /&gt;
Wiki проекта: [https://github.com/avsmal/Syrop/wiki Github] &amp;lt;BR/&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Кринкин Михаил&lt;br /&gt;
* Мартынов Семён&lt;br /&gt;
* Крашенинникова Ксения&lt;br /&gt;
* Великий Алексей&lt;br /&gt;
Отчёт:&lt;br /&gt;
* 27/feb/2011 - Первая встреча. Обсуждение цели проекта, способов реализации и внутри командного взаимодействия. Разделение задач. Создан репозиторий проекта на GitHub. Открытый вопрос - применение методологий разработки в проекте.&lt;br /&gt;
* 01/mar/2011 - Сode review.&lt;br /&gt;
* 05/mar/2011 - Введение договоренностей о code style, оформлении документации, спецификация на интерфейсы. Показ первого GUI, уточнение новых задач.&lt;br /&gt;
* 12/mar/2011 -&lt;br /&gt;
&lt;br /&gt;
== Дублирующий код ==&lt;br /&gt;
Руководитель: Иваницкий&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Фофанова Маша&lt;br /&gt;
* Бандурин Дима&lt;br /&gt;
* Лепенькин Ярослав&lt;br /&gt;
Отчёт:&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== Конфигуратор контейнеров AndroidVM ==&lt;br /&gt;
Руководитель: Кринкин К.В.&lt;br /&gt;
&lt;br /&gt;
Команда:&lt;br /&gt;
* Савельев Владислав&lt;br /&gt;
* Шеставин Дмитрий&lt;br /&gt;
* Казенюк Сергей&lt;br /&gt;
&lt;br /&gt;
Отчёт:&lt;br /&gt;
* Всё начнётся 5 марта.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9D%D0%98%D0%A0&amp;diff=1112</id>
		<title>НИР</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9D%D0%98%D0%A0&amp;diff=1112"/>
				<updated>2012-03-09T12:58:04Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: /* MyFit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Карта дорог ==&lt;br /&gt;
Руководитель: Лесин&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Иванов Антон&lt;br /&gt;
* Сорокин Артем&lt;br /&gt;
* Кононенко Василий&lt;br /&gt;
Отчёт:&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== MyFit ==&lt;br /&gt;
Руководитель: EMC&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Опейкин Александр&lt;br /&gt;
* Певзнер Алина&lt;br /&gt;
* Башоров Залим&lt;br /&gt;
Отчёт:&lt;br /&gt;
&lt;br /&gt;
=== 9.03.2012 === &lt;br /&gt;
Выполнено 2 тестовых задания на Java и на GWT.&amp;lt;BR&amp;gt;&lt;br /&gt;
Получены следующие задачи:&lt;br /&gt;
* [http://osll.spb.ru/issues/3155 Опейкин] (Готово)&lt;br /&gt;
* [http://osll.spb.ru/issues/3156 Певзнер]&lt;br /&gt;
* [http://osll.spb.ru/issues/3157 Башоров]&lt;br /&gt;
&lt;br /&gt;
== GPU ==&lt;br /&gt;
Руководитель: Рубен Артурович Гиргидов&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Коровин Алексей&lt;br /&gt;
* Лазарев Сергей&lt;br /&gt;
* Кормишин Сергей&lt;br /&gt;
Отчёт:&amp;lt;br&amp;gt;&lt;br /&gt;
*1я встреча нам были выданы вводные задачи: &lt;br /&gt;
** Разобраться с CUDA, установить и настроить окружение. Написать простенький алгоритм. (Коровин А.)&lt;br /&gt;
** Вспомнить &amp;quot;всё&amp;quot; о регулярных выражениях: какие бывают, как пишутся (Лазарев С.)&lt;br /&gt;
** Найти обработчики регулярных выражений (Matcher'ы), разобраться в их строении и принципе работы. (Кормишин С.)&lt;br /&gt;
*2я встреча:&lt;br /&gt;
** Обсудили наши предыдущие задания, расписали план выполнения проекта, цели и др.&lt;br /&gt;
** Выданы следующие задачи:&lt;br /&gt;
**# Реализовать обработчик РВ на Cuda для одной и n строк (Коровин А.)&lt;br /&gt;
**# Найти обработчики РВ на CPU на C++ и адаптировать его для n строк (Кормишин С.)&lt;br /&gt;
**# Реализовать обработчик РВ нa cuBLAS (Лазарев С.)&lt;br /&gt;
&lt;br /&gt;
== Syrop ==&lt;br /&gt;
Руководитель: Смаль Александр Владимирович&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект: [https://github.com/avsmal/Syrop Syrop]&amp;lt;BR/&amp;gt;&lt;br /&gt;
Wiki проекта: [https://github.com/avsmal/Syrop/wiki Github] &amp;lt;BR/&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Кринкин Михаил&lt;br /&gt;
* Мартынов Семён&lt;br /&gt;
* Крашенинникова Ксения&lt;br /&gt;
* Великий Алексей&lt;br /&gt;
Отчёт:&lt;br /&gt;
* 27/feb/2011 - Первая встреча. Обсуждение цели проекта, способов реализации и внутри командного взаимодействия. Разделение задач. Создан репозиторий проекта на GitHub. Открытый вопрос - применение методологий разработки в проекте.&lt;br /&gt;
* 01/mar/2011 - Сode review.&lt;br /&gt;
* 05/mar/2011 - Введение договоренностей о code style, оформлении документации, спецификация на интерфейсы. Показ первого GUI, уточнение новых задач.&lt;br /&gt;
* 12/mar/2011 -&lt;br /&gt;
&lt;br /&gt;
== Дублирующий код ==&lt;br /&gt;
Руководитель: Иваницкий&amp;lt;BR&amp;gt;&lt;br /&gt;
Ссылка на проект:&amp;lt;BR&amp;gt;&lt;br /&gt;
Команда:&lt;br /&gt;
* Фофанова Маша&lt;br /&gt;
* Бандурин Дима&lt;br /&gt;
* Лепенькин Ярослав&lt;br /&gt;
Отчёт:&lt;br /&gt;
*&lt;br /&gt;
&lt;br /&gt;
== Конфигуратор контейнеров AndroidVM ==&lt;br /&gt;
Руководитель: Кринкин К.В.&lt;br /&gt;
&lt;br /&gt;
Команда:&lt;br /&gt;
* Савельев Владислав&lt;br /&gt;
* Шеставин Дмитрий&lt;br /&gt;
* Казенюк Сергей&lt;br /&gt;
&lt;br /&gt;
Отчёт:&lt;br /&gt;
* Всё начнётся 5 марта.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=842</id>
		<title>Алгоритмы и структуры данных</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=842"/>
				<updated>2012-01-15T20:46:54Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://www.lektorium.tv/course/?id=22823&lt;br /&gt;
&lt;br /&gt;
==Экзамен==&lt;br /&gt;
'''17.01.2012'''&amp;lt;br/&amp;gt;&lt;br /&gt;
Начало в '''10.00''' &amp;lt;br/&amp;gt;&lt;br /&gt;
1.5 ч. на подготовку&amp;lt;br/&amp;gt;&lt;br /&gt;
15 минут на ответ.&amp;lt;br/&amp;gt;&lt;br /&gt;
Заходить получать билеты будете, действительно, с интервалом в минут 15, поэтому рекомендую заранее определиться с порядком&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Примерно в 14 прервёмся на час на обед, поэтому последний вопрос до обеда будет выдан в 12-15.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Порядок получения билетов:'''&amp;lt;br/&amp;gt;&lt;br /&gt;
10.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
10.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
10.30 Кудинкин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
10.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
11.00 Башоров З.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.15 Кринкин М.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.30 Кононенко В.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.45 Казенюк С.&amp;lt;br/&amp;gt;&lt;br /&gt;
12.00 Коровин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
12.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.15 Опейкин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
15.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.00 Мартынов С.&amp;lt;br/&amp;gt;&lt;br /&gt;
16.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.45 &amp;lt;br/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=841</id>
		<title>Алгоритмы и структуры данных</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B_%D0%B8_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85&amp;diff=841"/>
				<updated>2012-01-15T20:45:38Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;http://www.lektorium.tv/course/?id=22823&lt;br /&gt;
&lt;br /&gt;
==Экзамен==&lt;br /&gt;
'''17.01.2012'''&amp;lt;br/&amp;gt;&lt;br /&gt;
Начало в '''10.00''' &amp;lt;br/&amp;gt;&lt;br /&gt;
1.5 ч. на подготовку&amp;lt;br/&amp;gt;&lt;br /&gt;
15 минут на ответ.&amp;lt;br/&amp;gt;&lt;br /&gt;
Заходить получать билеты будете, действительно, с интервалом в минут 15, поэтому рекомендую заранее определиться с порядком&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Примерно в 14 прервёмся на час на обед, поэтому последний вопрос до обеда будет выдан в 12-15.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Порядок получения билетов:'''&amp;lt;br/&amp;gt;&lt;br /&gt;
10.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
10.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
10.30 Кудинкин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
10.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
11.00 Башоров З.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.15 Кринкин М.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.30 Кононенко В.&amp;lt;br/&amp;gt;&lt;br /&gt;
11.45 Казенюк С.&amp;lt;br/&amp;gt;&lt;br /&gt;
12.00 Коровин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
12.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.00 Опейкин А.&amp;lt;br/&amp;gt;&lt;br /&gt;
15.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
15.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.00 Мартынов С.&amp;lt;br/&amp;gt;&lt;br /&gt;
16.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
16.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
17.45 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.00 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.15 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.30 &amp;lt;br/&amp;gt;&lt;br /&gt;
18.45 &amp;lt;br/&amp;gt;&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%9E%D1%82%D1%87%D0%B5%D1%82_%D0%BE_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B5,_5SE,_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2011-%D0%B3%D0%BE_%D0%B3%D0%BE%D0%B4%D0%B0&amp;diff=772</id>
		<title>Отчет о практике, 5SE, осень 2011-го года</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%9E%D1%82%D1%87%D0%B5%D1%82_%D0%BE_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B5,_5SE,_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2011-%D0%B3%D0%BE_%D0%B3%D0%BE%D0%B4%D0%B0&amp;diff=772"/>
				<updated>2011-12-04T17:57:23Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;'''15 декабря'''&lt;br /&gt;
*Ждан Анна&lt;br /&gt;
*Коровин Алексей&lt;br /&gt;
&lt;br /&gt;
'''22 декабря'''&lt;br /&gt;
*Лазарев Сергей&lt;br /&gt;
*Сорокин Артём&lt;br /&gt;
*Савельев Владислав&lt;br /&gt;
*Певзнер Алина&lt;br /&gt;
*Фофанова Мария&lt;br /&gt;
*Бандурин Дмитрий&lt;br /&gt;
*Казенюк Сергей&lt;br /&gt;
*Кононенко Василий&lt;br /&gt;
*Лепенькин Ярослав&lt;br /&gt;
*Опейкин Александр&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	<entry>
		<id>http://mit.spbau.ru/sewiki/index.php?title=%D0%94%D0%BE%D0%BC%D0%B0%D1%88%D0%BD%D0%B5%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%22Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8%22&amp;diff=755</id>
		<title>Домашнее задание &quot;Unix и Скриптовые языки&quot;</title>
		<link rel="alternate" type="text/html" href="http://mit.spbau.ru/sewiki/index.php?title=%D0%94%D0%BE%D0%BC%D0%B0%D1%88%D0%BD%D0%B5%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%22Unix_%D0%B8_%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D0%BE%D0%B2%D1%8B%D0%B5_%D1%8F%D0%B7%D1%8B%D0%BA%D0%B8%22&amp;diff=755"/>
				<updated>2011-11-30T19:14:35Z</updated>
		
		<summary type="html">&lt;p&gt;Alexander.Opeykin: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Домашнее задание по модулям Python ==&lt;br /&gt;
# NamPy, SciPy, Matplotlib: Кринкин Михаил, Кузьмин Александр, Лазарев Сергей, Диевский Алексей, Кудинкин Алексей&lt;br /&gt;
# PIL: Великий Алексей, Кононенко Василий, Смирнов Владимир, Минкин Илья&lt;br /&gt;
# NetworkX: Коровин Алексей, Гуменюк Станислав, Кормишин Сергей, Дмитрий Шеставин, Владислав Савельев&lt;br /&gt;
# Socket: Евгений Краско, Опейкин Александр, Сорокин Артём, Ярослав Лепенькин, Фофанова Мария&lt;br /&gt;
# SMTPlib, POPlib:&lt;br /&gt;
# pyQwt: Мартынов Семён, Князев Сергей, Казенюк Сергей&lt;br /&gt;
# thread, threading: Иванов Антон, Бандурин Дмитрий, Крашенинникова Ксения, Певзнер Алина,  Башоров Залим, Ждан Анна&lt;br /&gt;
&lt;br /&gt;
[https://docs.google.com/document/pub?id=1XG-foph8j59qHWGuy9AZQLEsZRRFB-SA7h2kasdciSU Задания по Python]&lt;br /&gt;
&lt;br /&gt;
== Домашнее задание №6 (на ??.11.2011) ==&lt;br /&gt;
&lt;br /&gt;
# Вывести греческий алфавит&lt;br /&gt;
# Реализовать длинную арифметику &amp;lt;b&amp;gt;(ЧЕСТНО!)&amp;lt;/b&amp;gt;&lt;br /&gt;
# Используя модуль ElementTree, вывести в древовидном виде RSS ленту&lt;br /&gt;
# Подсчитать на странице с результатами поиска Google статистику по доменам первого уровня&lt;br /&gt;
&lt;br /&gt;
Необходимо выполнить (хотя бы) любые 3 задания!&lt;br /&gt;
&lt;br /&gt;
== Домашнее задание №5 (на 27.10.2011) ==&lt;br /&gt;
&lt;br /&gt;
# http://www.pythonchallenge.com/&lt;br /&gt;
# Посчитать количество существительных в романе «Война и мир». Смотреть на Pymorphy&lt;br /&gt;
# Найдите все составные числа меньшие N, которые представимы в виде произведения двух простых чисел.&lt;br /&gt;
# Написать функцию, вычисляющую произведение двух матриц (матрица – список списков). Также написать функцию для вывода такой матрицы в красивом виде.&lt;br /&gt;
# Посчитать все корни N-ой степени из -1&lt;br /&gt;
&lt;br /&gt;
Задания 3, 4, 5 - обязательны для выполнения!&lt;br /&gt;
&lt;br /&gt;
== Домашнее задание №4 (на 06.10.2011) ==&lt;br /&gt;
&lt;br /&gt;
# Изменить файлы таким образом, чтобы в промпте пользователя отображалась текущая дата и время&lt;br /&gt;
# Исправить пример, таким образом, чтобы при конвертировании изменялось только расширение файла&lt;br /&gt;
#: OPERATION=docToPdf&lt;br /&gt;
#: SUFFIX=pdf&lt;br /&gt;
#: directory=$PWD&lt;br /&gt;
#: for file in $directory/*&lt;br /&gt;
#: do&lt;br /&gt;
#:   filename=$file&lt;br /&gt;
#:   $OPERATION $file &amp;gt; &amp;quot;$filename.$SUFFIX&amp;quot;&lt;br /&gt;
#:   rm -f $file&lt;br /&gt;
#: done&lt;br /&gt;
# Написать Bash-скрипт, который дописывает к имени каждого файла в директории букву &amp;quot;z&amp;quot;, оставляя при этом расширение без изменений.&lt;br /&gt;
# Измените нужные файлы таким образом, чтобы при входе в систему каждый пользователь получал в терминале приветствие вроде &amp;quot;Hi, USER!&amp;quot; (с конкретным именем пользователя). Если это root, напишите ему что-то особенное. Если пользователь в качестве оболочки использует не bash, то напишите ему что-нибудь страшное.&lt;br /&gt;
# Напишите Bash-скрипт, который печатает список всех пользователей в системе. При запуске с ключом -b должны печататься только пользователи, использующие оболочку Bash.&lt;br /&gt;
#: Указание. Посмотрите в файл /etc/passwd&lt;br /&gt;
# Напишите Bash-скрипт, который выдает n штук случайных паролей, каждый длиной m. Числа m и n должны задаваться в параметрах. Если параметры не заданы, то должно выводиться сообщение об ошибке. Пароли могут содержать буквы латиницы в верхнем и нижнем регистре, а также цифры.&lt;br /&gt;
#: Указание. Случайную информацию можно брать из /dev/random и /dev/urandom (чем они отличаются?). Могут как-то помочь утилиты tr и fold.&lt;br /&gt;
# Напишите Bash-скрипт, который получает из Интернета страничку нашего курса с Вики и выводит список дат, в которые были лекции.&lt;br /&gt;
#: Указание. Может помочь утилита wget.&lt;/div&gt;</summary>
		<author><name>Alexander.Opeykin</name></author>	</entry>

	</feed>