Написать программу на Си

  • Автор темы 999
  • Дата начала
Статус
Закрыто для дальнейших ответов.
9

999

Гость
#1
__________.png

Умножение 2х бинарных матриц с результатом в виде срезов
Есть блок-схема алгоритма по который надо реализовать на Си.
Входящие бинарные матрицы размером 32х32 вводятся рандомно.
Также, для наглядности их надо вывести на экран.
Результат умножения выводится посрезово. Исходя из формулы (log2(N+1)), должно быть 6 срезов.

Также прилагаю, написанную уже программку, но она не совсем рабочая

program example2;
begin
N=32;
read(A[N;N]; B[N;N]);
for i=0; i<(N-1);i++ do
for j=0; j<(N-1); j++ do
begin
C[j]=0;
Z[j]=A[j]xB[j];
end;
for k=0; k<(N-1);k++ do
for i=0; i<(N-1);i++ do
for j=0; j<(N-1); j++ do
C[k][j]=C[k][j]+Z[j];
for i=0; i<(N-1);i++ do
begin
for j=0; j<(N-1); j++ do
begin
A[j]=A[j+1] B[j]=B[i+1][j];
A[i,N-1]=A[i,0] B[N-1,j]=B[0,j];
end;
A[j+1]=0 B[i+1][j]=0;
end;
t=t+1;
if t<=N then
else
writeln(C[k][j]);
end.
 
9

999

Гость
#3
Она не на Си, но хоть что-то (может как-то поможет) А так то надо на Си сделать...
 
9

999

Гость
#5
Ну тут программка не сильно сложная. Сколько хочешь за неё?
 

lazybiz

Well-Known Member
03.11.2010
1 339
0
#6
За 500р возьмусь, если ты мне объяснишь:

1. Почему массив C в одном месте адресуется как двумерный, а в другом как трехмерный.
2. Что означает:
Результат умножения выводится посрезово.
Мне это надо знать или просто делать по блок-схеме?
3. Что означает предпоследний блок < C[k][j] ) схемы.
 
9

999

Гость
#7
Спасибо, уже не надо)) Уже сам написал прогу...
 
Статус
Закрыто для дальнейших ответов.