Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Технологии > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 22.11.2011, 18:17   #1
griignat
Новичок
 
Регистрация: 22.11.2011
Сообщений: 2
Репутация: 10
По умолчанию Как обнулить элементы строки двумерного массива, содержащей наибольшее количество элементов одномерного массива

Здравствуйте.

Сначала полный текст задачи, с которой у меня возникли трудности:

Дан двухмерный массив A[N,M] и одномерный массив B[K]. Обнулить элементы строки массива A, содержащей наибольшее количество элементов массива В.

Работаем в Паскале.
Собственно, затруднение с самим обнулением (добавлю, что орудую относительно простыми командами, тк в Паскаль глубоко не заходим, будучи лингвистами)

Представлял это так: при помощи счетчика кол-ва элементов считаем элементы B в первой строке А. Далее: считаем в следующих. Сравниваем счетчики, выбираем максимальный. Обнуляем строку. Но написать не смог. Например, откуда мы знаем сколько строк, чтобы сделать столько счетчиков.. итд

вот, что я написал уже, сама база, ее менять не надо, а вот уже в самом конце последняя команда - как раз начатый счетчик (для первой строки), там как раз есть, над чем подумать. возможно, и не через счетчик ( а какую-нибудь логическую переменную - флаг того, что в строке массива А встречается итд.. - там f : boolean, к примеру). не знаю.

Код:

Program Lab3var8;
type
array1 = array[1..20] of integer;
array2 = array[1..20, 1..20] of integer;
var
a : array2;
b : array1;
n : integer;
m : integer;
k : integer;
i,j,q : integer;
cnt1: integer;

begin

writeln;
writeln('Лабораторная работа № 3. Вариант 8');

writeln;
writeln('Двумерный массив (матрица) A:');

repeat
write('Введите количество строк матрицы А, n = ');
read(n)
until (n<20) and (n>0);

repeat
write('Введите количество столбцов А, m = ');
read(m)
until (m<20) and (m>0);

writeln('Веедите элементы массива А:');
for i:=1 to n do
for j:=1 to m do
begin
Write('a[',i,',',j,']=');
read(a[i,j])
end;

repeat
write('Введите количество элементов матрицы B, k = ');
read(k)
until (k<20) and (k>0);

writeln('Веедите элементы массива B:');
for i:=1 to k do
begin
Write('b[',i,']=');
read(b[i])
end;

cnt1 := 0;
for j := 1 to m do
begin
if a[1,j] = b[q] then
inc(cnt1);

Надеюсь, для Вас это несложное задание.
Спасибо.
пс - а сдавать завтра

Последний раз редактировалось griignat; 22.11.2011 в 19:25. Причина: заключение программы в теги
griignat вне форума   Ответить с цитированием
Старый 22.11.2011, 20:04   #2
griignat
Новичок
 
Регистрация: 22.11.2011
Сообщений: 2
Репутация: 10
По умолчанию

к сожалению, уже не могу в название темы вписать, что язык - Паскаль, чтобы всё соответствовало правилам. функция редактирования заголовка отсутствует.
griignat вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск строки, содержащей наибольшее количество пробелов Студент1000 Microsoft Office Word 3 28.05.2011 00:27
суммирование вещ-х элементов одномерного массива... uses_non Паскаль 1 29.04.2011 08:39
Ввести элементы динамического двумерного массива Alexeytur Помощь студентам 1 28.01.2011 11:01
заданиT на обработку элементов одномерного массива Васильева Зинаида Помощь студентам 4 19.11.2010 19:55
Максимальные элементы двумерного массива Jasper92 Общие вопросы C/C++ 0 17.12.2009 16:23


01:25.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru