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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2012, 18:17   #1
mxra1n
Новичок
Джуниор
 
Регистрация: 23.06.2012
Сообщений: 18
По умолчанию матрицы (delphi)

помогите пожалуйста,оочень надо

Найти минимальный положительный элемент в главной диагонали матрицы. Сформировать вектор из элементов столбца, содержащего этот элемент, упорядочить вектор по возрастанию. Поменять места-ми элементы 2-й и 4-й строк.
mxra1n вне форума Ответить с цитированием
Старый 23.06.2012, 18:27   #2
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Цитата:
Сообщение от mxra1n Посмотреть сообщение
помогите пожалуйста,оочень надо

Найти минимальный положительный элемент в главной диагонали матрицы. Сформировать вектор из элементов столбца, содержащего этот элемент, упорядочить вектор по возрастанию. Поменять места-ми элементы 2-й и 4-й строк.
И чего здесь сложного? Сами что-нибудь пытались делать?
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 23.06.2012, 18:38   #3
mxra1n
Новичок
Джуниор
 
Регистрация: 23.06.2012
Сообщений: 18
По умолчанию

я даже с чего начать не знаю
это знающему человеку легко,а я тут вообще сообразить ничего не могу
это,конечно,наглость,но я надеялся на вас,тк сказать чтобы с нуля мне помогали
если несложно конечно
mxra1n вне форума Ответить с цитированием
Старый 23.06.2012, 19:26   #4
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Цитата:
Сообщение от mxra1n Посмотреть сообщение
я даже с чего начать не знаю
это знающему человеку легко,а я тут вообще сообразить ничего не могу
это,конечно,наглость,но я надеялся на вас,тк сказать чтобы с нуля мне помогали
если несложно конечно
Держи, здесь все подробно - каждый цикл выполняет отдельную задачу. Можно было и компактнее сделать, но будет сложнее для понимания!
Код:
program Project1;
uses
  SysUtils;
const
  n=6;
  m=6;
var
  A:array[1..n,1..m] of Real;
  B:array[1..n] of Real;
  i, j, posMin:Integer;
  t, min:Real;
begin
  writeln('Massive is - ');
  for i:=1 to n do
  begin
    for j:=1 to m do
    begin
      if (i+j)>6 then
        A[i,j]:=2.56*(i+j)-21.75/sqrt(j+sqr(i))
      else A[i,j]:=3.9*sqr(j)-7.2*ln(14.9*i+sqr(j));
      write(A[i,j]:4:2,'   ');
    end;
    writeln;
  end;

  min:=A[1,1];
  posMin:=1;
  for i:=2 to n do
    if min>A[i,i] then
    begin
      min:=A[i,i];
      posMin:=i;
    end;
  Writeln(#13#10'Min = ', min:4:2);

  for i:=1 to n do
    B[i]:=A[i,posMin];

  for i:=1 to n do
    for j:=1 to m-1 do
      if B[j]>B[j+1] then
      begin
        t:=B[j];
        B[j]:=B[j+1];
        B[j+1]:=t;
      end;
  Writeln(#13#10'Sorted vector B = ');
  for i:=1 to n do
    writeln(B[i]:4:2, ' ');

  for i:=1 to n do
  begin
    t:=A[i,2];
    A[i,2]:=A[i,4];
    A[i,4]:=t;
  end;

  Writeln(#13#10'Result matrix - ');
  for i:=1 to n do
  begin
    for j:=1 to m do
      write(A[i,j]:4:2,'   ');
    Writeln;
  end;
  readln;
end.
Помог - жми на весы!
ByAlex89@mail.ru

Последний раз редактировалось ByAlex; 23.06.2012 в 20:10.
ByAlex вне форума Ответить с цитированием
Старый 23.06.2012, 19:48   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
даже с чего начать не знаю
Заполнение массива и поиск минимума
Код:
var a:array[1..6,1..6] of double;i,j:byte;min:double;
begin min:=-MaxInt;
 for i:=1 to 6 do
  for j:=1 to 6 do begin
    if (i+j)>6 then a[i,j]:=2.56*(i+j)-(21.75/sqrt(j+i*i))
    else a[i,j]:=3.9*j*j-7.2*log(14.9*j+i*i);
    if (i=j) and (min>a[i,j]) then min:=a[i,j];
  end;
end.
Теперь ты знаешь с чего начинать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.06.2012, 21:07   #6
ByAlex
Форумчанин
 
Аватар для ByAlex
 
Регистрация: 15.03.2011
Сообщений: 465
По умолчанию

Stilet, здесь ошибка будет, Delphi такого не знает! Надо Ln.
Код:
if (i+j)>6 then a[i,j]:=2.56*(i+j)-(21.75/sqrt(j+i*i))
    else a[i,j]:=3.9*j*j-7.2*log(14.9*j+i*i);
Помог - жми на весы!
ByAlex89@mail.ru
ByAlex вне форума Ответить с цитированием
Старый 23.06.2012, 22:09   #7
mxra1n
Новичок
Джуниор
 
Регистрация: 23.06.2012
Сообщений: 18
По умолчанию

спасибо огромное)))
mxra1n вне форума Ответить с цитированием
Старый 24.06.2012, 12:21   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
здесь ошибка будет
Перепутал. Бывает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi.Матрицы specnazkin Помощь студентам 2 27.11.2010 16:43
матрицы Delphi Mr_Frost Помощь студентам 10 09.04.2009 00:57
Матрицы Delphi Skarabei Помощь студентам 3 07.04.2009 17:14
Матрицы (Delphi) Darkstar Помощь студентам 6 23.11.2008 19:29
[Delphi]Матрицы $TuDenT Помощь студентам 2 27.10.2008 08:28