Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2007, 19:42   #1
The_deviLs
 
Регистрация: 03.11.2007
Сообщений: 8
По умолчанию Pascal. Задача с двухмерным массивом

Помогите решить задачу
Я только начал изучать паскаль и еще не разбираюсь

Задача :
Дано два двухмерный массива ,создать третий массив, элементы которого равны произведению минимальных элементов по строкам
The_deviLs вне форума Ответить с цитированием
Старый 06.11.2007, 10:05   #2
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Даны два двумерных массива размерностью n*m. Создать линейный массив, элементы которого равны произведению минимальных элементов по соответствующим строкам заданных массивов.
Т.к. ты только начинаешь программировать, то я изложу решение максимально подробно, чтобы ты далее мог фрагменты этого решения использовать для решения других задач.
Итак: Пишем начало программы
Код:
program new_mas;
uses crt;
const
     n=5;
     m=7;
var
     a,b:array[1..n,1..m] of integer;
     c,d,f:array[1..n] of integer;
     i,j,mina,minb:integer;
begin
clrscr;
Далее создаем эти массивы, заполняя их случайными числами от 1 до 9.
Код:
randomize;
for i:=1 to n do             {создаем массивы А и В}
    begin
      for j:=1 to m do
      begin
        a[i,j]:=random(9)+1;
        b[i,j]:=random(9)+1;
      end;
    end;
Выводим эти массивы на экран.
Код:
writeln('массив А:');
for i:=1 to n do             {выводим на экран массив А}
    begin
      writeln;
      for j:=1 to m do
        write(a[i,j],' ');
    end;
    readln;
    writeln;
writeln('массив B:');
for i:=1 to n do             {выводим на экран массив B}
    begin
      writeln;
      for j:=1 to m do
        write(b[i,j],' ');
     end;
     readln;
     writeln;
Создаем линейные массивы из минимальных элементов строк отдельно дла массивов А и В.
Код:
for i:=1 to n do             {создаем массив мин.элементов*массива a[i,j]}
    begin
      mina:=a[i,1];
      for j:=1 to m do
         begin
           if a[i,j]<mina then mina:=a[i,j];
         end;
    c[i]:=mina;
    end;
writeln('минимальные элементы массива* A:');
for i:=1 to n do             {выводим его на экран}
   write(c[i],' ');
   readln;
   writeln;
for i:=1 to n do             {создаем массив мин.элементов*массива b[i,j]}
    begin
      minb:=b[i,1];
      for j:=1 to m do
         begin
           if b[i,j]<minb then minb:=b[i,j];
         end;
      d[i]:=minb;
    end;
writeln('минимальные элементы в строках массива В:');
for i:=1 to n do             {выводим его на экран}
   write(d[i],' ');
   readln;
   writeln;
Вычисляем произведения минимальных построковых элементов массива А на анологичные элементы массива В, создаем из них массив и выводим его на экран.
Код:
for i:=1 to n do    {вычисляем произведения минимальных элементов}
    begin
      f[i]:=c[i]*d[i];
    end;
writeln('новый массив F:');
for i:=1 to n do         {выводим новый массив на экран}
    write(f[i],' ');
    readln;
end.
Если что то не получится или непонятно, спрашивай, можно в личных сообщениях.

Есть кнопка "Правка". SupVis

Последний раз редактировалось SuperVisor; 07.11.2007 в 08:31.
puporev вне форума Ответить с цитированием
Старый 06.11.2007, 22:24   #3
The_deviLs
 
Регистрация: 03.11.2007
Сообщений: 8
По умолчанию

вот я постановку задачи сделал:
Входные данные
n - кол-во столбцов где N>=10 (целое)
m- кол-во строк где M>=10 (целое)
A[n,m] - массив целых чисел
B[n,m] - массив целых чисел
Выходные данные
С[n]-массив мин. элементов по строкам
The_deviLs вне форума Ответить с цитированием
Старый 06.11.2007, 22:28   #4
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Так я же тебе привел решение в предыдущем своем посте. Ты его читал? Если что непонятно конкретное, то пиши.
puporev вне форума Ответить с цитированием
Старый 07.11.2007, 21:51   #5
The_deviLs
 
Регистрация: 03.11.2007
Сообщений: 8
По умолчанию

ясно!
Спасибо за помощь!
The_deviLs вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача по работе с массивом... ЕвгенийОлегович Помощь студентам 1 20.05.2008 22:36
Задача [Pascal] [Smarik] Помощь студентам 4 04.02.2008 15:50
задача с двумерным массивом Ras Помощь студентам 1 22.12.2007 19:58