Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

алгоритм


ДЯМАК ©   (2006-05-20 17:24:00) 

Здравствуйте Мастера! Наконец-то я перевожусь со своей специальности ( программное обеспечение) ну не моё ето!!! На экономику, но чтоб перевестись нужно ещё доучиться на ПО, а посему прошу помочь мне, если не затруднит вот в каком задании: дана матрица A(N,N), в каждой строке поменять местами наибольший и наименьший элементы , текст самой проги у меня есть вот он

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Menus, Buttons;

type
TForm1 = class(TForm)
  Panel1: TPanel;
  Button1: TButton;
  Button2: TButton;
  Edit1: TEdit;
   Memo1: TMemo;
   Label1: TLabel;
   Memo2: TMemo;
   Label2: TLabel;
   BitBtn1: TBitBtn;
  procedure Button1Click(Sender: TObject);
  procedure Button2Click(Sender: TObject);
   procedure N2Click(Sender: TObject);
   procedure BitBtn1Click(Sender: TObject);
private
  { Private declarations }
public
  { Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}
type
TMatrix=array of array of integer;

var
  Arr : TMatrix;
  rowcol : integer=10;

procedure RandomMatrix(var M:TMatrix; r:integer);
var
  i,j :integer;
  g: Integer;
begin
  Randomize;
  SetLength(M,r,r);
  g := r*r;
  for i:=0 to r-1 do
      for j:=0 to r-1 do
              M[i,j]:=random(g);
end;

procedure ArrayToMemo(A : TMatrix; Mem:TMemo);
var
  i, j :integer;
  s:string;
begin
 for i:=Low(A) to High(A) do
 begin
     s:='';
     for j:=Low(A) to High(A) do
         s := s + Format('%4.2d',[A[i,j]]);
     Mem.Lines.Add(s);
  end;
end;
procedure ArraySort(var A : TMatrix);
var
  i, j, Temp, Min, Max :integer;
begin
  for i := Low(A) to High(A) do
  begin
      Min := Low(A);
      Max := Min;
      for j := Succ(Low(A)) to High(A) do
          if A[i, Min] > A[i, j] then
              Min := j
          else
              if A[i, Max] < A[i, j] then
                  Max := j;
      if Min <> Max then
      begin
          Temp := A[i, Min];
          A[i, Min] := A[i, Max];
          A[i, Max] := Temp
      end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 Memo1.Clear;
 TryStrToInt(Edit1.Text,RowCol);
// Здесь если RowCol=0 можно вывести предупреждение
// и выйти
 RandomMatrix(Arr,rowcol);
 ArrayToMemo(Arr,Memo1);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo2.Lines.Add('==Результат==');
  ArraySort(Arr);
  Memo2.Clear;
  ArrayToMemo(Arr, Memo2);
end;

procedure TForm1.N2Click(Sender: TObject);
begin
Application.Terminate
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Application.Terminate;
end;

end.

но мне к нему нужно составить алгоритм


Просто зашел   (2006-06-03 11:09:00) [1]

А-ха-ха-га! Всех уел! :))))


ДЯМАК   (2006-06-02 23:45:00) [2]

Короче всё кул! Спасибки, что не помогли, я сам всё разгрёб, попыхтел денёк над алгоритмом, разобрался, оказалось, что проще простого эти лажёвые проги составлять, просто до этого я ваще не в чё вникать не хотел, решил остаться программистом, это ж КРУТО, тока летом всё нужно кардинально поменять в жизни, буду теперь учиться!


Anatoly Podgoretsky   (2006-05-29 00:24:00) [3]

Тем кто не справился с программированием, лучше в экономисты не идти.


TUser   (2006-05-28 17:28:00) [4]

Вот из-за экономистов, которые выбрали себе профессию не по интересу, а по крутости и баблоносности (ну, так как ты на программера пошел, наверное) - вот у нас с экономикой странные штуки творятся не первое десятиление уже. Зачем нам еще один такой экономист? Не буду я тебе помогать. Оставайся лучше программером. Так безопаснее. Буду летать на закодированных тобой самолетах.


Ega23   (2006-05-28 14:01:00) [5]


> Ну не соображаю я в ютом программировании, ну помогите,
> очень надо!
> Ну это же недолго, просто я полный ламер, и вообще случайно
> блин на это по попал, меня при поступлении не туда записали,
>  ну пожалуйста, ну нарисуйте эту блок-схему, а то нужно
> до зачёта допуститься, а без этого практического задания
> ну никак!
>


сколько?


ДЯМАК   (2006-05-28 13:33:00) [6]

>Ну так возьми и нарисуй, делов-то. Нужно всего лишь чуть-чуть мозга.

Ну не соображаю я в ютом программировании, ну помогите, очень надо!
Ну это же недолго, просто я полный ламер, и вообще случайно блин на это по попал, меня при поступлении не туда записали, ну пожалуйста, ну нарисуйте эту блок-схему, а то нужно до зачёта допуститься, а без этого практического задания ну никак!


Ega23   (2006-05-28 12:40:00) [7]


> Экономисту? Это новость.


вообще-то мозг не помешает даже ассенизатору. А то он (ассенизатор)  будет кидаться в прохожих, мнэ-э-э... "продуктом".


Юрий Зотов   (2006-05-28 12:28:00) [8]

> Ega23 ©   (28.05.06 12:05) [11]
> Нужно всего лишь чуть-чуть мозга.

Экономисту? Это новость.
:о)


Ega23   (2006-05-28 12:05:00) [9]


> Алгоритм нужен в виде блок- схемы


Ну так возьми и нарисуй, делов-то. Нужно всего лишь чуть-чуть мозга.


ДЯМАК   (2006-05-28 11:24:00) [10]

Алгоритм нужен в виде блок- схемы


Virgo_Style   (2006-05-21 23:00:00) [11]

ДЯМАК ©   (20.05.06 17:24)
дана матрица A(N,N), в каждой строке поменять местами наибольший и наименьший элементы


Алгоритм:

Для каждой строки
 Найти наибольший элемент
 Найти наименьший элемент
 Поменять


Если это не алгоритм этой (этой ли? требуемой, скажем точнее) программы, киньте в меня камень


palva   (2006-05-21 22:43:00) [12]

А чего он просит, не пойму никак.
Чем алгоритм отличается от программы? Программа у него уже есть. И чего дальше?


jb   (2006-05-21 19:16:00) [13]

Знаете я когда-то я так настрадался от таких (которые как заладят: "Ну не шарю я в этом." или "Ну сделай мне лабу..."), достали вы блин, вы что думаете програмист престижная профессия с красивым названием и все, не пройдет тут думать надо!!! За чем ты вообще на ПО пошел?


десятиклассник   (2006-05-21 19:12:00) [14]

const
 n= {допустим} 50;

type
 diap=1..n;

var
 A:array[diap,diap] of integer {или что-нибудь ещё};
 x,y,min,max:diap;

begin
 ... //заполняешь A

for y:=1 to n do begin
 min:=1;
 max:=2;
 for x:=1 to n do begin
   if A[x,y]<A[min,y] then
     min:=x;
   if A[x,y]>A[max,y] then
     max:=x;
 end;
 buf:=A[min,y];
 A[min,y]:=A[max,y];
 A[max,y]:=buf;
end;

end;


десятиклассник   (2006-05-21 19:05:00) [15]

ДЯМАК, а где ты учишься? у нас это в 10-ом классе делают. я его сейчас заканчиваю


Leonid Troyanovsky   (2006-05-21 18:12:00) [16]


> ДЯМАК ©   (20.05.06 19:20) [3]

> Ну что же не кто не поможет, чтоли!


А что будет, если никто не поможет?
Т.е., ты останешься программером?
Дык, оставйся, ты не одинок.

--
Regards, LVT.


ДЯМАК   (2006-05-20 19:20:00) [17]

Ну что же не кто не поможет, чтоли!


Virgo_Style   (2006-05-20 18:03:00) [18]


> TryStrToInt(Edit1.Text,RowCol);


Бомба непредсказуемого действия с замедленным управлением (с)


ДЯМАК   (2006-05-20 17:51:00) [19]

Ну помогите плиз!


Наверх

Титульная страница Поиск, карта сайта Написать письмо