Python
| Проверка
|
Напишите программу, которая заполняет матрицу размером 7x7 случайными числами, а затем записывает в элементы, отмеченные на рисунках фоном, число 0.
import random
N=int(input("кол-вострок: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
for i in range(N):
for j in range(M):
A[i][j]=random.randint(20,80)
for x in range(N):
for y in range(M):
if x!=6 and y!=6 and (x+y==6 or x+y==7 or x+y==8 or x+y==9 or x+y==10):
A[x][y]=0
print("{:4d}".format(A[x][y]),end="")
print()
|
|
Напишите программу, которая заполняет матрицу из N строк и N столбцов нулями и единицами так, что все элементы выше главной диагонали равны нулю, а остальные — единице.
N=int(input("кол-во строк: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
for i in range(N):
for j in range(M):
if i<=j:
A[i][j]=0
else:
A[i][j]=1
print("{:4d}".format(A[i][j]),end="")
print()
|
|
Заполните матрицу, содержащую N строк и М столбцов, натуральными числами, как на рисунках.
N=int(input("кол-во строк: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
s=1
for i in range(N):
for j in range(M):
s=i+j
A[i][j]=s+1
print("{:4d}".format(A[i][j]),end="")
print()
|
|
Заполните матрицу, содержащую N строк и М столбцов, натуральными числами по спирали и змейкой, как на рисунках. N=int(input("кол-во строк: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
s=1
for i in range(N):
for j in range(M):
if i==0:
A[i][j]=s
s=s+1
elifi==1 and j!=3:
A[i][j]=s+5
s=s+1
elifi==2:
A[i][j]=s+1
s=s-1
else:
A[i][j]=5
print("{:4d}".format(A[i][j]),end="")
print()
|
|
Напишите программу, которая вычисляет сумму элементов матрицы.
import random
N=int(input("кол-вострок: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
s=0
for i in range(N):
for j in range(M):
A[i][j]=random.randint(1,100)
s+=A[i][j]
print("{:4d}".format(A[i][j]),end="")
print()
print(s)
|
|
Перемножить матрицы 5x3 и 3x2.
importrandom
N=5
M=3
A=[[0]*M for i in range(N) ]
for i in range(N):
for j in range(M):
A[i][j]=random.randint(1,10)
print("{:4d}".format(A[i][j]),end="")
print()
print(" ")
X=3
Y=2
B=[[0]*M for i in range(X) ]
for x in range(X):
for y in range(Y):
B[x][y]=random.randint(1,10)
print("{:4d}".format(B[x][y]),end="")
print()
print(" ")
Z=5
W=2
M=[[0]*W for i in range(Z) ]
a=0
b=0
c=0
d=0
for z in range(Z):
for w in range(W):
if w==0:
a=z
M[z][w]=(A[a][b]*B[c][d]+A[a][b+1]*B[c+1][d]+A[a][b+2]*B[c+2][d])
elif w==1:
a=z
M[z][w]=(A[a][b]*B[c][d+1]+A[a][b+1]*B[c+1][d+1]+A[a][b+2]*B[c+2][d+1])
print("{:4d}".format(M[z][w]),end="")
print()
|
|
Напишите программу, которая вычисляет среднее арифметическое элементов квадратной матрицы, находящихся на главной диагонали и под ней.
import random
N=int(input("кол-вострок: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
s=0
d=0
for i in range(N):
for j in range(M):
A[i][j]=random.randint(1,100)
if i==j or i>j:
s+=A[i][j]
d+=1
print("{:4d}".format(A[i][j]),end="")
print()
print("среднее арифметическое =",s/d)
|
|
Дан двумерный массив и два числа: i и j. Поменяйте в массиве столбцы с номерами i и j и выведите результат. Программа получает на вход размеры массив n и m, затем элементы массива, затем числа i и j. Решение оформите в виде функции swap_columns(a, i, j)
import random
N=int(input("кол-вострок: "))
M=int(input("кол-во столбцов: "))
A=[[0]*M for i in range(N) ]
for a in range(N):
for b in range(M):
A[a][b]=random.randint(1,100)
print("{:4d}".format(A[a][b]),end="")
print()
i=(int(input("номерпервогостолбца: ")))
j=(int(input("номервторогостолбца: ")))
c=[]
a=0
v=0
for x in range(N):
for y in range(M):
if a<N:
c.append(A[a][i])
a=a+1
A[x][i]=A[x][j]
if y==j:
A[x][y]=c[v]
v=v+1
print("{:4d}".format(A[x][y]),end="")
print()
|
|