Ответы
#include <iostream>
#include <iomanip> // setw
#include <random> // rand srand
#include <ctime> // time
using namespace std;
int main() {
srand(time(0)); // сид для случайных чисел
int n;
cin >> n;
int arr[n][n];
for(int i = 0; i<n; ++i) {
bool f = 0;
for(int j = 0; j<n; ++j) {
if(i == j) {
f = 1;
}
if(!f || i == j) { // заполняем всё, что над диагональю единицами
arr[j][i] = 1;
} else {
arr[j][i] = rand() % 7 + 1;
}
}
}
for(int i = 0; i<n; ++i) { // вывод массива в консоль
for(int j = 0; j<n; ++j) {
cout << arr[i][j] << setw(5);
}
cout << " | " << 1;
cout << endl;
}
return 0;
}
Не особо понимаю задание "вывести минимальное значение по строкам", т. к. оно всегда равно 1.