/
nixywes
/
study
Обзор
Документация
Войти
/
nixywes
/
study
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
algorithm/KR2/5wb2.cpp
42 строки
2 KB
SadCat1233
create repo
27 ноя 2025, 11:28
27 ноя 2025, 11:28
082031e
Код
Авторство
О чём код?
#include <iostream> #include <string> #include <cstdint> typedef unsigned long long int ull; using namespace std; int main() { ull number; cin >> number; for (int i = 0; i < 10; ++i) { ull squared = number * number; string squared_string = to_string(squared); // Дополнение строки ведущими нулями, чтобы длина была нечетной //--------------------------------------------------------- if (squared_string.size() % 2 == 0) { squared_string = "0" + squared_string; } //--------------------------------------------------------- // Дополнение до строки длиной 5 //--------------------------------------------------------- if (squared_string.size() < 5) { while (squared_string.size() != 5) { squared_string = "0" + squared_string; } } //--------------------------------------------------------- // Получение нового числа //--------------------------------------------------------- size_t start = (squared_string.size() - 5) / 2; string mid5 = squared_string.substr(start, 5); ull new_number = 0; for (char c : mid5) { new_number = new_number * 10 + (c - '0'); } cout << "Squared number: " << squared << " Pseudorandom number: " << new_number << endl; number = new_number; //--------------------------------------------------------- } return 0; }