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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.11.2009, 23:18   #1
Roll1n
Пользователь
 
Регистрация: 04.01.2009
Сообщений: 30
По умолчанию Паскаль

Даны целочисленные матрица F[1:n,1:m] и целочисленный массив Q[1:r].
Нужно упорядочить по возрастанию те столбцы матрицы F,произведение элементов которых совпадает с одним элементом из массива Q.


Я думаю,что нужно ввести массив,ввести матрицу потом найти произведение каждого столбца,если какое-то произведение совпадает с элементом массива,то этот столбец упорядочить по возрастанию.

Код:
     program 2012;
     
uses crt;
type matr=array[1..30,1..30] of integer;
type mass=array[1..30] of integer;
     var F:matr;
         Q:mass;
         n,m,i,j,r,c,k,nmax,a,b:integer;
         max:real;
begin
writeln('длинна массива');
         read(r);
writeln('эл-ты массива');
        for i:=1 to r do
         read(Q[i]);
           for i:=1 to r do
   write(Q[i]:2);
writeln();
  writeln('ввести n >1');
      read(n);
  writeln('ввести m>1');
      read(m);
    writeln('эл-ты матрицы');
for i:=1 to n do
    for j:=1 to m do
        read(F[i,j]);
for i:=1 to n do begin
    for j:=1 to m do
        write(F[i,j]:4);
writeln;
end;
write('pampam');
end.
Ну самое легкое ввести массив и матрицу у меня получилось,а вот дальше я не знаю как.
Помогите пожалуйста!
Roll1n вне форума Ответить с цитированием
Старый 23.11.2009, 23:39   #2
dr.Chas
***
Участник клуба
 
Аватар для dr.Chas
 
Регистрация: 30.07.2007
Сообщений: 1,162
По умолчанию

Код:
program Project1;

{$APPTYPE CONSOLE}

type matr=array[1..30,1..30] of integer;
type mass=array[1..30] of integer;


var F:matr;
    Q:mass;
    n, m, i, j, prz, r, l :integer;
    //max:real;

begin
  writeln('dlina');
  read(r);
  randomize;
  writeln('element');
  for i:=1 to r do
    Q[i]:=random(100)+1;

  for i:=1 to r do
   write(Q[i]:5);

  writeln;
  writeln(' n >1');
  read(n);
  writeln(' m>1');
  read(m);
  writeln('element matrici');
  for i:=1 to n do
    for j:=1 to m do
      F[i,j]:=random(10)+1;

  for i:=1 to n do
  begin
    for j:=1 to m do
      write(F[i,j]:4);
    writeln;
  end;

  for i:=1 to n do
  begin
    prz:=1;
    for j:=1 to m do
      prz:=prz*F[j,i];

    for l:=1 to r do
      if Q[l]=prz then
      {тут раставляете по возрастанию столбцы матрицы F,
      если незнаете как это делать смотрите на форуме таких примеров море}
  end;
end.
dr.Chas вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль, Борланд Паскаль-в чем разница??? Vremya-Dengy Паскаль, Turbo Pascal, PascalABC.NET 13 31.05.2011 18:23
паскаль PR0Z0N Помощь студентам 3 04.06.2009 23:19
паскаль TheVenny Помощь студентам 3 21.11.2008 22:56
паскаль фамил Паскаль, Turbo Pascal, PascalABC.NET 3 17.05.2008 23:23