Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 12.12.2011
Сообщений: 19

Процедура: удалить элементы тех строк матрицы A, номера которых отсутствуют в массиве B, и вычислить произведение элементов оставшихся строк

15.01.2012, 19:12. Показов 600. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1.Даны целочисленные матрица A[1:N,1:M] и массив B[1:K]. Написать программу, которая удаляет элементы тех строк A, номера которых отсутствуют в массиве B, и вычисляет произведение элементов оставшихся строк. Вычисления оформить в виде процедуры.


Начал решать,но никак не могу её до конца доделать, нужна помощь...
Вот как начинал:
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
program n_1;
const lmax=10;
type matr=array [1..lmax,1..lmax] of integer;
type mass=array [1..lmax] of integer;
A:matr;
B:mass;
var i,j,m,n,k;
begin
writeln('Введите размер матрицы')
repeat
read(n,m)
until (n>0) and (m>0) and (n<=lmax) and (m<=lmax);
writeln('Введите матрицу');
for i:=1 to n do
 for j:=1 to m do
read (A[i,j]);
repeat
read (k);
until (k>0) and (k<=lmax);
writeln ('Введите массив')
for i:=1 to k do
read (b[i]);
Procedure vvod (var A:matr; var B:mass);
var i,j,m,c,p,d,l,g:integer;
flag:boolean;
begin 
d:=1;
g:=0;
for i:=1 to n do
begin flag:=false;
for l:=1 to k do
 if i=b[k] then flag:=true;
 if flag=true then 
 for p:=1 to m do begin
 A[d,p]:=A[i,p];
d:=d+1;
end;
else g:=g+1;
end;
d:=1;
for i:=1 to g-1 do
 for j:=1 to m do
  c:=c-A[i,j];
writeln(d);
end;
procedure proizvedenie (var A(i:matr,l,c:integer,var p:integer);
vari,j:integer;
begin
p:=1;
for i:=1 to c
  for j:=1 to l
   p:=p*A[i,j];
 end;
begin
vvod_matr(A,n,m);
vvod_mass(B,k);
{тут я как понимаю нужно вызывать процедуру вывода?}
end.
Добавлено через 3 часа 34 минуты
+++++
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.01.2012, 19:12
Ответы с готовыми решениями:

Ввести номер месяца и номер дня, вывести число дней, оставшихся до Нового Года
Помогите решить задачи в паскале, а то совсем труба=( _______sin2x, при x&gt;0 ...

Ввести номер месяца и номер дня, вывести число дней, оставшихся до Нового года
Задание: Ввести номер месяца и номер дня, вывести число дней, оставшихся до Нового года. Работаю в...

Ввести номер месяца и номер дня, вывести число дней, оставшихся до 1 мая
ввести номер месяца и номер дня, вывести число дней, оставшихся до 1 мая. Пример: Введите номер...

1
31 / 31 / 16
Регистрация: 02.11.2011
Сообщений: 216
16.01.2012, 14:51
я не очень понял для чего эта программа. но процедуры поставил нормально.
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
program n_1;
uses crt;
const lmax=10;
type matr=array [1..lmax,1..lmax] of integer;
type mass=array [1..lmax] of integer;
var    i,j,m,n,k,c,p,d,l,g:integer;A:matr; B:mass;
procedure vvod(var i,j,m,n,k:integer;A:matr; B:mass );
begin
writeln('Ââåäèòå ðàçìåð ìàòðèöû') ;
readln(n);
writeln('Ââåäèòå ðàçìåð ìàòðèöû')  ;
readln(m);
writeln('Ââåäèòå ìàòðèöó');
for i:=1 to n do
 for j:=1 to m do
read (A[i,j]);
writeln ('Ââåäèòå ìàññèâ') ;
read (k);
for i:=1 to k do
read (b[i]);
end;
Procedure vvod_1 (var A:matr; var B:mass);
var i,j,m,n,c,p,d,l,g,k:integer;
flag:boolean;
begin
d:=1;
g:=0;
for i:=1 to n do
begin flag:=false;
for l:=1 to k do
 if i=b[k] then flag:=true;
 if flag=true then
 for p:=1 to m do begin
 A[d,p]:=A[i,p];
d:=d+1;
end
else g:=g+1;
end;
d:=1;
for i:=1 to g-1 do
 for j:=1 to m do
  c:=c-A[i,j];
writeln(d);
end;
procedure proizvedenie (var A:matr; l,c:integer; var p:integer);
var i,j:integer;
begin
p:=1;
for i:=1 to c do
  for j:=1 to l do
   p:=p*A[i,j];
 end;
begin
vvod(i,j,m,n,k,a,b);
vvod_1(a,b);
proizvedenie(a,l,c,p);
{òóò ÿ êàê ïîíèìàþ íóæíî âûçûâàòü ïðîöåäóðó âûâîäà?}
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.01.2012, 14:51
Помогаю со студенческими работами здесь

Найти произведение первых 4 элементов массива A (n) и сумму оставшихся
1.Найти произведение первых 4 элементов массива A(n) и сумму оставшихся. 2.Составить программу...

Сформировать массив Z, в который включить из X элементы, отсутствующие в Y, а из Y - элементы, отсутствующие в X
В каждом из целочисленных массивов X и Y нет повторяющихся элементов. Сформировать массив Z, в...

Сформировать массив Z, в который включить из X элементы, отсутствующие в Y, а из Y - элементы, отсутствующие в X
В каждом из целочисленных массивов X(n) и Y(m) нет повторяющихся элементов. Сформировать массив...

Удалить из последовательности числа, начинающиеся цифрой 2, а среди оставшихся продублировать числа, сумма цифр которых равна 25
Дана последовательность натуральных чисел {Aj}j=1...n (n&lt;=10000). Удалить из последовательности...

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


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru