#include <iostream>
using namespace std;
int main(){
setlocale(LC_ALL, "Russian");
int a;
cout<<"Введи размерность"<<endl;
cin>>a;
int arr[a+1][a+1];
for (int i=1; i<a+1; ++i)
for(int j=1; j<a+1; ++j)
arr[i][j]=i*j;
for (int i=1; i<a+1; ++i) {arr[i][0]=i;arr[0][i]=i;}
cout<<" ";
for (int i=1; i<a+1; ++i){cout<<arr[i][0]<<" ";}
cout<<endl;
for (int i=1; i<a+1; ++i){
for(int j=0; j<a+1; ++j)
cout<<arr[i][j]<<" ";
cout<<endl;
}
return 0;
}
Т.к. в условии про оформление ничего не сказано, то сделал самое обычное
#arr = [*map(int, input().split(' 0')[0].split())] если числа вводятся в строчку , то раскомментируйте и используйте эту строку, а инициализацию массива arr и цикл while закомментируйте
arr = []
while 1:
tmp = int(input())
if tmp != 0: # Читаем сколько угодно чисел пока не будет ноль
arr.append(tmp)
else:
break
s = 0 # сумма двузначных чисел
k = 0 # количество двузначных чисел
for i in arr:
if 10 <= i <= 99: # итерируемся по циклу и если число двузначное
s += i # то прибавляем его к сумме
k += 1 # счетчик двузначный чисел увеличиваем на один
print(s/k) if k > 0 else print('NO') #если количество двузначных > 0 то выводим среднее арифметическое s/k, если нет то выводим NO