Start on: 07 mar 2020
End on:
Зачем учить С++?
На нем разрабатывают поиск, браузеры, backend социальных сетей и других сервисов компании по всему миру. На С++ написаны популярные библиотеки машинного обучения, он занимает важное место в области разработки компьютерных игр; в Яндексе C++ можно встретить в поиске, рекламе, браузере, картах и многих, многих других продуктах.
Операции с контейнерами, count, sort
string word = "babax";
sort(begin(word), end(word));
cout << word << " " << count(begin(word), end(word), 'a');
Вывод: aabbx 2
И векторы и строки и мапы можно сравнивать через ==.
Задание по программированию: Минимальная строка
В стандартном потоке даны три строки, разделённые пробелом. Каждая строка состоит из строчных латинских букв и имеет длину не более 30 символов. Выведите в стандартный вывод лексикографически минимальную из них.
#include <string>
#include <algorithm>
#include <array>
#include <iostream>
int main()
{
std::array<std::string, 3> mas;
for (auto& str : mas) {
std::cin >> str;
}
std::cout << *std::min_element(mas.begin(), mas.end()) << std::endl;
return 0;
}
Задание по программированию: Второе вхождение
Дана строка. Найдите в этой строке второе вхождение буквы f и выведите индекс этого вхождения. Если буква f в данной строке встречается только один раз, выведите число -1, а если не встречается ни разу, выведите число -2. Индексы нумеруются с нуля.
#include <string>
#include <iostream>
using namespace std;
int main()
{
string str;
cin >> str;
std::size_t found_first = str.find("f");
std::size_t found_second = str.find("f", found_first + 1);
if (found_second != std::string::npos) {
cout << found_second << endl;
} else if (found_first != std::string::npos) {
cout << -1 << endl;
} else {
cout << -2 << endl;
}
return 0;
}