co za kaskada "akademickich, nieużytecznych, bezcelowych, bezsensownych, zbytecznych yfów"
#include <iostream>
#include <vector>
#include <random>
#include <iomanip>
using namespace std;
void InBox(int boxStartRow, int boxStartCol, vector<vector<int>> &vec)
{
for (int row = 0; row < 3; row++) {
for (int col = 0; col < 3; col++) {
cout << vec[row+boxStartRow][col+boxStartCol]<< ' ';
}
cout << '\n';
}
}
int main()
{
constexpr int first=1, last=9, N=9;
std::random_device rd;
std::default_random_engine engine(rd());
std::uniform_int_distribution<int> dist(first,last);
vector<vector<int>>vec;
vec.reserve(N);
for(uint16_t m{0}; m<N; ++m) {
vector<int> tmp;
for(uint16_t n{0}; n<N; ++n) {
int value = dist(engine);
tmp.push_back(value);
}
vec.push_back(tmp);
tmp.clear();
}
cout << '\n';
for (uint16_t m{0}; m<vec.size(); ++m) {
for (uint16_t n{0}; n<vec[m].size(); ++n)
{
cout<<setw(4)<<std::setfill(' ')<<right<<vec[m][n]<<" ";
}
cout<<"\n\n";
}
cout << '\n';
for (uint16_t m = 0; m < vec.size(); m+=3) {
for (uint16_t n = 0; n < vec.size(); n+=3) {
InBox(m,n,vec);cout<<"\n";
}
cout<<"\n";
}
return 0;
}