Элементы матрицы NxM вычисляются по формуле A[i,j] = sin(N*i+M*j) при индексации с единицы или по формуле A[i,j] = sin(N*(i+1)+M*(j+1)) при индексации с нуля. Если полученный таким образом элемент матрицы отрицателен, то заменить его на 0. Вывести конечную матрицу на экран.
При заполнении матрицы каждый элемент вычисляется по заданной формуле. Если полученный таким образом элемент меньше нуля, то в соответствующую ему ячейку матрицы записывается 0.
В Python и Си требуется импортировать библиотеку с математическими функциями.
Pascal
const N = 3; M = 4;
var
mtx: array[1..N,1..M] of real;
i,j: byte;
begin
for i:=1 to N do begin
for j:=1 to M do begin
mtx[i,j] := sin(N*i+M*j);
if mtx[i,j] < 0 then begin
mtx[i,j] := 0;
write(mtx[i,j]:7:0);
end
else
write(mtx[i,j]:7:2);
end;
writeln;
end;
end.
0.66 0 0.65 0.15
0 0.99 0 0
0.42 0 0.84 0
Язык Си
#include < stdio.h>
#include < math.h>
#define N 3
#define M 4
main() {
float mtx[N][M];
short i, j;
srand(time(NULL));
for (i=0; i< N; i++) {
for (j=0; j< M; j++) {
mtx[i][j] = sin(N * (i+1) + M * (j+1));
if (mtx[i][j] < 0) {
mtx[i][j] = 0;
printf("%7.0f", mtx[i][j]);
} else printf("%7.2f", mtx[i][j]);
}
printf("\n");
}
}
При использовании gcc компилировать с опцией -lm.
Python
from math import sin
N = 3
M = 4
mtx = []
for i in range(N):
a = []
for j in range(M):
a.append(sin(N*(i+1) + M*(j+1)))
mtx.append(a)
for i in range(N):
for j in range(M):
if mtx[i][j] < 0:
mtx[i][j] = 0
print("%7.0f" % mtx[i][j], end='')
else:
print("%7.2f" % mtx[i][j], end='')
print()
КуМир
алг
нач
цел N = 3
цел M = 4
вещтаб mtx[1:N, 1:M]
цел i, j
нц для i от 1 до N
нц для j от 1 до M
mtx[i,j] := sin(N*i + M*j)
если mtx[i,j] < 0 то
mtx[i,j] := 0
вывод int(mtx[i,j]):7
иначе
вывод mtx[i,j]:7:2
все
кц
вывод нс
кц
кон
Basic-256
N = 3
M = 4
dim mtx(N,M)
decimal 2
for i=0 to N-1
for j=0 to M-1
mtx[i,j] = sin(N*(i+1) + M*(j+1))
if mtx[i,j] < 0 then
mtx[i,j] = 0
endif
print mtx[i,j] + " ";
next j
print
next i
Подписаться
1 Комментарий
Новые
СтарыеПопулярные
Межтекстовые Отзывы
Посмотреть все комментарии
Сара
1 год назад
как сделать формулу по инфоматике
Pascal
const N = 3; M = 4; var mtx: array[1..N,1..M] of real; i,j: byte; begin for i:=1 to N do begin for j:=1 to M do begin mtx[i,j] := sin(N*i+M*j); if mtx[i,j] < 0 then begin mtx[i,j] := 0; write(mtx[i,j]:7:0); end else write(mtx[i,j]:7:2); end; writeln; end; end.
0.66 0 0.65 0.15 0 0.99 0 0 0.42 0 0.84 0
Язык Си
#include < stdio.h> #include < math.h> #define N 3 #define M 4 main() { float mtx[N][M]; short i, j; srand(time(NULL));
for (i=0; i< N; i++) { for (j=0; j< M; j++) { mtx[i][j] = sin(N * (i+1) + M * (j+1)); if (mtx[i][j] < 0) { mtx[i][j] = 0; printf("%7.0f", mtx[i][j]); } else printf("%7.2f", mtx[i][j]); } printf("\n"); } }
При использовании gcc компилировать с опцией -lm.
Python
from math import sin N = 3 M = 4 mtx = [] for i in range(N): a = [] for j in range(M): a.append(sin(N*(i+1) + M*(j+1))) mtx.append(a)
for i in range(N): for j in range(M): if mtx[i][j] < 0: mtx[i][j] = 0 print("%7.0f" % mtx[i][j], end='') else: print("%7.2f" % mtx[i][j], end='') print()
КуМир
алг нач цел N = 3 цел M = 4 вещтаб mtx[1:N, 1:M] цел i, j нц для i от 1 до N нц для j от 1 до M mtx[i,j] := sin(N*i + M*j) если mtx[i,j] < 0 то mtx[i,j] := 0 вывод int(mtx[i,j]):7 иначе вывод mtx[i,j]:7:2 все кц вывод нс кц кон
Basic-256
N = 3 M = 4 dim mtx(N,M) decimal 2 for i=0 to N-1 for j=0 to M-1 mtx[i,j] = sin(N*(i+1) + M*(j+1)) if mtx[i,j] < 0 then mtx[i,j] = 0 endif print mtx[i,j] + " "; next j print next i
как сделать формулу по инфоматике