Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Delphi]Мин и макс элементы в Массиве 
:(
    Опции темы
Crater3112
Дата 23.9.2007, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.9.2007

Репутация: нет
Всего: нет



Здравствуйте. Помогите кто знает сделать программу на Делфи которая будет находить мин и макс элемент в массиве, а также сортировать все элементы по порядку. Спасибо! 
PM MAIL   Вверх
Alexeis
Дата 23.9.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 23
Всего: 459



Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Ripper
Дата 23.9.2007, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lonely soul...
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 30.6.2004
Где: г. Москва

Репутация: 6
Всего: 23



Ой, да вроде это самая распространенная прогамма. в drkb.ru поищи, там куча способов сортировок. а минимальный и максимальный итого проще, в цикле сравнивать. 


--------------------
"Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом
PM MAIL ICQ   Вверх
comtat
Дата 23.9.2007, 14:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 8
Всего: 71



Код

unit lookmin_;

 

interface

 

uses

Windows, Messages, SysUtils, Classes, Graphics,

Controls, Forms, Dialogs, StdCtrls, Grids;

 

type

TForm1 = class(TForm)

   Label1: TLabel;

   Button1: TButton;

   Label2: TLabel;

   StringGridl: TStringGrid;

   procedure ButtonlClick(Sender: TObject);

private

   { Private declarations }

public

   { Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

{$R *.DFM}

 

 

procedure TForm1.ButtonlClick(Sender: TObject);

const

SIZE = 5;

var

a: array[l..SIZE] of integer; // массив целых

min: integer; // номер минимального элемента массива

i: integer; // номер элемента, сравниваемого с минимальным

begin

// ввод массива for i:=1 to SIZE do

a[i] := StrToInt(StringGridl.Cells[i - 1, 0]);

// поиск минимального элемента

min := 1; // пусть первый элемент минимальный

for i := 2 to SIZE do

   if a[i] < a[min] then

     min := i;

// вывод результата

label2.caption := 'Минимальный элемент массива:'

   + IntToStr(a[min] + #13 + 'Номер элемента:' + IntToStr(min);

end;

 

end.

Взато из DRKB3


--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
Crater3112
Дата 23.9.2007, 14:51 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.9.2007

Репутация: нет
Всего: нет



В том то и дело, если в паскале я ещё немного соображал, то в делфи ниче не пойму практически ))) 

Komtat, если это возможно сделай весь код программы от начала и до конца, буду о4 благодарен!
PM MAIL   Вверх
Guedda
Дата 23.9.2007, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Подрывник
****


Профиль
Группа: Завсегдатай
Сообщений: 3137
Регистрация: 27.12.2005
Где: Ростов-на-Дону

Репутация: 6
Всего: 78



Цитата(Crater3112 @  23.9.2007,  15:51 Найти цитируемый пост)
весь код программы от начала и до конца, буду о4 благодарен!

Это и есть весь код программы.


--------------------
Ll 2
PM MAIL WWW ICQ Skype GTalk   Вверх
Crater3112
Дата 23.9.2007, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.9.2007

Репутация: нет
Всего: нет



Как я понял это мин элемент, а мне ещё нужен макс .. + сортировка smile
PM MAIL   Вверх
Ripper
Дата 23.9.2007, 20:58 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lonely soul...
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 30.6.2004
Где: г. Москва

Репутация: 6
Всего: 23



Ну то же самое, чем дельфи от паскаля в данном случае отличается? Тогда вопрос нужно задавать о том, что такое TButton и т.п.
Код приведенный выше наверняка работает в паскале. Delphi вообще среда, а язык то тот же.
У меня щас дельфи не стоит, боюсь накосячить, Ну например, скопировал код комтата:
Код

var

a: array[l..SIZE] of integer; // массив целых

max: integer; // номер МАКСИМЛЬНОГО элемента массива

i: integer; // номер элемента, сравниваемого с МАКСИМЛЬНЫМ

begin

// ввод массива for i:=1 to SIZE do

a[i] := StrToInt(StringGridl.Cells[i - 1, 0]);

// поиск МАКСИМЛЬНОГО элемента

max := 1; // пусть первый элемент МАКСИМЛЬНЫЙ

for i := 2 to SIZE do

   if a[i] > a[max] then //Вот тут принципиальное отличие

     max := i;

// вывод результата

label2.caption := 'Максимальный элемент массива:'

   + IntToStr(a[max] + #13 + 'Номер элемента:' + IntToStr(max);

end;


Т.е. если очередной элемент больше максимального, то сделать его максимальным. 
Вот сортировка обычным пузырьком (только что скачал DRKB и скопировал оттуда!):
Код

Program BubbleSort;

Var A    : array[1..1000] of integer;

   N,i,j,p : integer;       

Begin

{Определение размера массива A (N) и его заполнение}

…

{сортировка данных}

for i:=1 to n do

for j:=1 to n-i do

if A[j]>A[j+1] then

  begin {Обмен элементов}

   p:=A[j];

   A[j]:=A[j+1];

   A[j+1]:=P;

  end;

{Вывод отсортированного массива A}

…

End.


Это правда для паскаля, в дельфи все тоже самое, только приспосаблеваешь этот код в ф-ию. Выше написана ф-ия нажатия на кнопку. ну и вводишь массив и цикл. Абсолютно тоже самое. Если ты в паскале это соображаешь, тогда вопрос нужно ставить как это отобразить в дельфи. - тогда другое дело)


--------------------
"Он знает: надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума" - Над кукушкиным гнездом
PM MAIL ICQ   Вверх
Crater3112
Дата 23.9.2007, 23:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.9.2007

Репутация: нет
Всего: нет



Пасиб вам огромное, но мне надо сделать всё это в 1-ой программе ... найти МИН и МАКС элемент + сортирова, и всё в 1-ой проге ...
PM MAIL   Вверх
volvo877
Дата 24.9.2007, 01:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 34
Всего: 116



Crater3112, в чем проблема, я никак понять не могу? Ну, отсортируй ты массив... После сортировки первый элемент будет минимальным, в последний - максимальным... Или тебе обязательно в три раза больше делать (сначала найти мин/макс, а потом сортировать)?
PM MAIL   Вверх
Crater3112
  Дата 28.9.2007, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 23.9.2007

Репутация: нет
Всего: нет



Пасиба, всё понял smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0697 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.