1. Написать программу для проведения операций над матрицами (сложение, умножение на число, умножение матриц, транспонирование, возведение матрицы в степень). 2. Ввод матрицы можно осуществлять как с клавиатуры, так и случайные числа (выбирается пользователем)
3. Размерность матрицы вводится пользователем в начале
4. Выбор операции также производится пользователем
5. Каждая строка кода должна быть прокомментирована (коротко) #comment
6. Вывод должен быть форматированным и аккуратно оформлен
7. Программы должны быть у всех разные.
8. Проверка всех возможных исключений (ввод букв вместо цифр, неверные размерности матриц и т.д.)
Этапы программы:
выбор операции (выбирает пользователь)
ввод размерности (строка приглашения)
выбор генерации матрицы (случайными числами или пользователем)
заполнение
вывод результата операции (в аккуратном виде)
Без использования любых библиотек
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int n, m;
cin >> n >> m;
vector<vector<int> > t(m, vector<int> (n));
for (int i = 0; i < m; ++i){
for (int j = 0; j < n; ++j){
t[i][j] = i * n + j;
}
}
for (int i = 0; i < n; ++i){
for (int j = 0; j < m; ++j){
cout << t[j][i] << " ";
}
cout << endl;
}
return 0;
}
Объяснение:
просто нужно заполнить массив . _.
1:
s = 'Это некоторое предложение'
a = ord('а')
chars = [rrchr(i) for i in range(a,a+34) if not rrchr(i) in s and i != a+32]
print(chars)
2:
parallel = [('имя1','имя2','имя3','имя4'),('имя1','имя2','имя5'),('имя2','имя4')]
names = ['имя1','имя2','имя3','имя4','имя5','имя6']
presence = []
for name in names:
counter = 0
for klass in parallel:
for person in klass:
if person == name:
counter += 1
break
presence.append((name,counter))
for name in presence:
print(name[0],'-',
'встречаются во всех классах данной параллели' if name[1] == len(parallel)
else 'есть только в некоторых классах' if name[1] != 0
else 'не встречаются ни в одном классе')