Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Nik.papa
0 / 0 / 1
Регистрация: 20.04.2012
Сообщений: 6
#1

Процедуры. Определить произведение элементов каждого столбца массивов - Turbo Pascal

09.05.2012, 17:49. Просмотров 553. Ответов 2
Метки нет (Все метки)

Ввести с клавиатуры три двухмерных массива, определить произведение элементов каждого столбца массивов, записать эти произведения в одномерные массивы и вывести на экран напротив каждого столбца. Определение произведения организовать с помощью подпрограммы Procedure с использованием параметров переменных.

Возникает проблема с записью в одномерный массив и вывод на экран напротив столбца.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
uses CRT;
const n=2;
var
m:integer;
i,k:byte;
C:Array[1..n] of integer;
procedure Pro;
var mas:Array[1..n,1..n] of integer;
i,j:byte;
p:longint;
begin
for i:=1 to n do
for j:=1 to n do
begin
write('mas[',i,',',j,'] =');
readln(mas[i,j]);
end;
Writeln('Исходная матрица mas',m,'...');
for i:=1 to n do
begin
for j:=1 to n do
Write(mas[i,j]:5);
Writeln;
end;
for j:=1 to n do
 begin
   p:=1;
   for i:=1 to n do
   p:=p*mas[i,j];
   writeln('Произведение в столбце ',j,'=',p);
   end;
   end;
begin
for m:=1 to 3 do
pro;
end.

Позже попытался еще раз
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
uses CRT;
const n=2;
var
v,m:integer;
i,k:byte;
C:Array[1..3*n] of integer;
procedure Pro;
var mas:Array[1..n,1..n] of integer;
i,j:byte;
p:longint;
begin
for i:=1 to n do
for j:=1 to n do
begin
write('mas[',i,',',j,'] =');
readln(mas[i,j]);
end;
v:=n;
Writeln('ÈñõîäГ*Г*Гї Г¬Г*òðèöГ* mas',m,'...');
for i:=1 to n do
begin
for j:=1 to n do
Write(mas[i,j]:5);
Writeln;
end;
if m=1 then
for j:=1 to n do
begin
for k:=1 to v do
begin
p:=1;
for i:=1 to n do
p:=p*mas[i,j];
C[k]:=p;
end;
writeln('ÏðîèçâåäåГ*ГЁГҐ ',j,' ñòîëáöГ* = ',p);
end;
if m=2 then
for j:=1 to n do
begin
for k:=1+2 to v+2 do
p:=1;
for i:=1 to n do
p:=p*mas[i,j];
C[k]:=p;
writeln('ÏðîèçâåäåГ*ГЁГҐ ',j,' ñòîëáöГ* = ',p);
end;
if m=3 then
for j:=1 to n do
begin
for k:=1+4 to v+4 do
p:=1;
for i:=1 to n do
p:=p*mas[i,j];
C[k]:=p;
writeln('ÏðîèçâåäåГ*ГЁГҐ ',j,' ñòîëáöГ* = ',p);
end;
end;
begin
for m:=1 to 3 do
begin
pro;
end;
for k:=1 to 3*n do
write(C[k]:3);
end.
Не получается.Помогите пожалуйста.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.05.2012, 17:49
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Процедуры. Определить произведение элементов каждого столбца массивов (Turbo Pascal):

Найти произведение ненулевых элементов каждого столбца массива, ответы вывести с указанием номера столбца
Заполнить двумерный числовой массив В целыми числами. Найти произведение...

Найти сумму элементов каждой строки и произведение элементов каждого столбца матрицы
Кто может в Паскале не силён, если можно коментарии что бы разобраться что к...

Найти произведение ненулевых элементов каждого столбца массива
3)Заполнить двумерный числовой массив В целыми числами. Найти произведение...

Найти произведение положительных элементов каждого столбца матрицы
Нужно найти произведение положительных элементов каждого столбца матрицы А, ее...

Двумерный массив. Найти произведение всех элементов каждого столбца массива
Дан двухмерный массив размером M x N. Найти произведение всех элементов каждого...

Найти произведение элементов каждого столбца матрицы и минимум среди произведений
Для каждого столба матрицы найти произведение элементов. Найти найменьшее...

2
КонецСвета
Почетный модератор
7928 / 3899 / 2464
Регистрация: 30.10.2011
Сообщений: 5,379
09.05.2012, 18:16 #2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
uses crt;
const nmax=20;
type matr=array [1..nmax,1..nmax] of integer;
     mas=array [1..nmax] of integer;
var a,b,c: matr;
    va,vb,vc: mas;
    na,nb,nc: byte;
 
procedure Vvod2M (c: char;var r: byte; var z: matr);
var i,j:byte;
begin
repeat
write('Размерность массива ',c,', не более ',nmax,'='); readln(r);
until r in [1..nmax];
writeln('Заполняем массив ',c);
for i:=1 to r do
    for j:=1 to r do
        begin
        write(c,'[',i,',',j,']=');  readln(z[i,j]);
        end;
end;
 
procedure Pro (ns,r: byte; z: matr; var pr: integer);
var i: byte;
begin
pr:=1;
for i:=1 to r do
    pr:=pr*z[i,ns];
end;
 
procedure To1M (r: byte; z: matr; var x: mas);
var j: byte;
begin
for j:=1 to r do
    Pro (j,r,z,x[j]);
end;
 
procedure Vyvod2M (c: char; r: byte; z: matr);
var i,j: byte;
begin
writeln('Матрица ',c);
for i:=1 to r do
    begin
    for j:=1 to r do
        write(z[i,j]:7);
    writeln;
    end;
end;
 
procedure Vyvod1M (r: byte; x: mas);
var i: byte;
begin
writeln('Произведение элементов столбца');
for i:=1 to r do
    write(x[i]:7);
writeln;
end;
 
begin
Vvod2M ('A',na,a);
Vvod2M ('B',nb,b);
Vvod2M ('C',nc,c);
To1M (na,a,va);
To1M (nb,b,vb);
To1M (nc,c,vc);
clrscr;
Vyvod2M ('A',na,a);
Vyvod1M (na,va);
Vyvod2M ('B',nb,b);
Vyvod1M (nb,vb);
Vyvod2M ('C',nc,c);
Vyvod1M (nc,vc);
end.
3
Nik.papa
0 / 0 / 1
Регистрация: 20.04.2012
Сообщений: 6
09.05.2012, 20:52  [ТС] #3
Все спасибо.Все работает.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2012, 20:52
Привет! Вот еще темы с решениями:

Вычислить произведение элементов каждого столбца и найти среди них наименьшее
Дан двумерный массив А который состоит из m и строк n столбцов. Составить...

Разработать алгоритм, определяющий произведение ненулевых элементов каждого столбца матрицы
Разработать алгоритм, определяющий произведение ненулевых элементов каждого...

Определить количество нечетных по значению элементов каждого столбца
Ввести двумерный массив произвольной размерности, определить количество...

Определить количество положительных элементов каждого столбца матрицы A
Дана матрица A(3x4). Определить количество положительных элементов каждого...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru