Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Богдан2009
1 / 1 / 0
Регистрация: 05.09.2018
Сообщений: 67
1

Описать работу данного кода

11.12.2018, 11:51. Просмотров 166. Ответов 1

Нашёл я код, который мне нужен, но не понимаю как тут что работает - в библиотеках algorithm, iterator, не сильно шарю.
Вот код;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
 #include <fstream> 
 #include <vector> 
 #include <iterator> 
 #include <algorithm> * 
 using namespace std; 
 int main() { * 
 * ifstream stream{"input"}; * 
 * string word1, word2; * 
 * stream >> word1 >> word2; * *
  stream.close(); * * 
  cout << word1 << " -> " << word2 << "\n\n"; * * * stream.open("dictionary"); 
  const vector<string> dictionary
  {
   istream_iterator<string>{stream}, * * * * * *  * *istream_iterator<string>{}}; * * stream.close(); * * * 
copy
(dictionary.cbegin(), dictionary.cend(), * * * * * * ostream_iterator<string>
{cout, "\n"}
); * * 
cout << '\n';
cout << word1 << '\n';
for (size_t i = 0; i < word2.length(); ++i) * * {
word1 = *find_if
(dictionary.cbegin(), dictionary.cend(),
[i, &word1, &word2](const string& str) * * *
  {
size_t count = word2.length(); 
for (size_t j = 0; j < str.length(); ++j) * * * * *{
if (str[j] == word2[j]) * * * * * * * * * * --count; 
* * } * * * * * * *
 return count == word2.length() - i - 1; * * * 
   }
 ); * * * * 
 cout << word1 << '\n'; * * 
 } * * *
  return 0; 
  }
Пример:
Начальное слово: КОТ
Конечное слово: ТОН
Словарь:
КОТ
ТОН
НОТА
КОТЫ
РОТ
РОТА
ТОТ

Решение
КОТ
ТОТ
ТОН
За ранее спс
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2018, 11:51
Ответы с готовыми решениями:

Описать работу ателье
Уважаемые господа програмисты, просто зачыпаюсь, хоть и год учил с++ всёравно ноль. Мне нужен код...

Недостатки данного кода С++
Здравствуйте, Уважаемые Форумчане! Подскажите, пожалуйста. Что не так в этом коде? Перечислите...

Описать функцию, формирующую словарь данного текста в виде массива слов
Дан текст (2-3 строки) в файле F1. Текст состоит из слов, отделённых друг от друга пробелами или...

Пояснить значение данного кода
int dRow = (row != 0 &amp;&amp; arr == (value - 1)) ? -1 : \ (row != (n - 1) &amp;&amp; arr == (value - 1)) ? 1...

Объясните смысл данного кода
Такой пример: int array; for_each(array, array + 5, (int &amp;p){p = 0;}); cout &lt;&lt; array; ...

1
Nishen
664 / 430 / 220
Регистрация: 26.02.2015
Сообщений: 1,987
Завершенные тесты: 3
11.12.2018, 12:30 2
Всё, что отделяет тебя от успеха - изучение страницы std::iterator и std::algorithm. Возможно ты не знаешь английского, но не бойся, объяснение материала там интуитивно понятные.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.12.2018, 12:30

Прошу пояснить тонкости данного кода
#include &lt;math.h&gt; &lt;...&gt; class CAccumulator { private: float value; static int lastId; int...

Описать класс, реализующий стек и работу с ним
Вот вроде понял и что такое стек, и что такое классы и как их реализовать в отдельности. Но как их...

Описать класс, реализующий стек и работу с ним
Добрый день. Написал программу, суть которой в том, что нужно описать класс, реализующий стек. ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru