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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2010, 18:07   #1
giga_person
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 26
По умолчанию Поиск наименьшего и самого редкоповторяющегося числа в Memo (Delphi)

Уважаемые программисты!

Дан такст в Memo: например:

----

20 10 15
10 30 40
20 17 11

----
1. Как найти наименьшее(-ие) из данных чисел? Они разделены пробелами, и записаны в несколько строк.
2. Как найти самое редкоповторяющееся из введённых значений?

Заранее спасибо!
giga_person вне форума Ответить с цитированием
Старый 21.03.2010, 18:10   #2
Google2010
Форумчанин
 
Регистрация: 16.02.2010
Сообщений: 316
По умолчанию

1) парсим текст вытаскиваем числа
2) заводим 2 мерный массив 1 число значение второе - сколько раз
3) ищем минимум во 2 строке запоминаем позицию - выводим число [индекс,1]- это и есть искомое
Google2010 вне форума Ответить с цитированием
Старый 21.03.2010, 18:24   #3
giga_person
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 26
По умолчанию

..... А то я не догадался. 2) и 3) сам знаю как, ... как перегнать в массив "текст"?
giga_person вне форума Ответить с цитированием
Старый 21.03.2010, 18:26   #4
Google2010
Форумчанин
 
Регистрация: 16.02.2010
Сообщений: 316
По умолчанию

Цитата:
как перегнать в массив "текст"?
в поиск по форуму 100500 раз было, догадливый))
Google2010 вне форума Ответить с цитированием
Старый 21.03.2010, 18:27   #5
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Что-то типа:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 i,m,t:integer;
 s:string;
begin
 if pos(' ',memo1.Text)=0 then
 exit;
 s:=memo1.Text;
 s:=StringReplace(s,chr(13)+chr(10),' ', [rfReplaceAll]);
 m:=strtoint(copy(s,1,pos(' ',s)-1));
 delete(s,1,pos(' ',s));
 while length(s)<>0 do
 begin
  if pos(' ',s)<>0 then
  begin
     t:=strtoint(copy(s,1,pos(' ',s)-1));
     delete(s,1,pos(' ',s));
  end else
  begin
     t:=strtoint(copy(s,1,length(s)));
     delete(s,1,length(s));
  end;
     if t<m then
       m:=t;
 end;
  memo1.Text:=inttostr(m);
end;
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума Ответить с цитированием
Старый 21.03.2010, 19:20   #6
giga_person
Пользователь
 
Регистрация: 02.12.2009
Сообщений: 26
По умолчанию

russian-stalker, снова спасибо, Google2010 - если бы всё обходилось поиском и безграничным временем, таких форумов не было бы
giga_person вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в Memo уникальной строки (Delphi) giga_person Помощь студентам 9 21.03.2010 18:17
Поиск самого часто встречаемого текста в столбце таблицы Marsel737 Общие вопросы Delphi 2 18.03.2010 23:48
поиск наименьшего файла в каталоге. Shell Kastet14 Помощь студентам 3 15.03.2010 14:46
access+delphi поиск по словам в поле memo gvozdkoff БД в Delphi 2 25.02.2009 07:13
Pascal//определить длину самого короткого и самого длинного слова в строке ShnurOK Помощь студентам 2 16.12.2007 10:43