Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 03.03.2009, 14:25
FaRiK FaRiK вне форума
Прохожий
 
Регистрация: 12.01.2009
Сообщения: 12
Репутация: 10
По умолчанию Помогите разобраться с работой со строками

Есть задание: вводится строка, слова в которой разделены запятыми. Напечатать слова с наибольшим и наименьшим количеством символов! Пожалуйста, если не трудно напишите программку!
Ответить с цитированием
  #2  
Старый 03.03.2009, 14:36
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,020
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Так тебе разобраться или за тебя написать?
В принципе, тебе нужны 2 функции: Copy и Pos. Первая копирует часть строки начиная с указанного символа и указанной длинны. Вторая - возвращает позицию указанной подстроки в переданной строке.
По сути, тебе надо разбить строку на слова по разделителю "запятая", а далее просто с помощью функции Length посмотреть длинну полученного слова.

Код:
procedure GetMaxMinWords(AStr : String; var MinLen, MaxLen : String);
var
  APos : Integer;
  Buf : String;
begin
  AMinLen := '';
  AMaxLen := '';
  APos := Pos(',',AStr);
  While Pos > 0 Do
    Begin
      Buf := Trim(Copy(AStr,1,APos-1);
      AStr := Copy(AStr,APos+1,Length(AStr)-APos+1);
      If Length(Buf) > Length(AMaxLen) Then AMaxLen := Buf;
      If Length(Buf) < Length(AMinLen) Then AMinLen := Buf;
    End;
  If AStr <> '' Then
    Begin
      If Length(AStr) > Length(AMaxLen) Then AMaxLen := AStr;
      If Length(AStr) < Length(AMinLen) Then AMinLen := AStr;
    End;
end;

Где-то так. Объяснять не буду - лень.
Ответить с цитированием
  #3  
Старый 03.03.2009, 14:47
FaRiK FaRiK вне форума
Прохожий
 
Регистрация: 12.01.2009
Сообщения: 12
Репутация: 10
По умолчанию

Понимаешь, я заочник...И самому догнать очень сложно...А вот когда я вижу программу, я понимаю как она работает, алгоритм действий, а сам до этого дойти не могу...Тем более я не знаю операторов!
Ответить с цитированием
  #4  
Старый 03.03.2009, 14:50
FaRiK FaRiK вне форума
Прохожий
 
Регистрация: 12.01.2009
Сообщения: 12
Репутация: 10
По умолчанию

А еще я не понимаю смысла и значения первой строки...Procedure ....можешь объяснить...В школе я изучал бейсик, там такого не было...
Ответить с цитированием
  #5  
Старый 03.03.2009, 14:56
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,020
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Это имя подпрограммы. могут быть 2 видов
procedure - не возвращает значения;
function - возвращает значение.
Конечно, можно возвращать значения через var-параметры.
возьми любую книжку по паскалю и прочитай о синтаксисе языка.
Ответить с цитированием
  #6  
Старый 03.03.2009, 15:31
Аватар для Karsh
Karsh Karsh вне форума
Активный
 
Регистрация: 22.09.2007
Адрес: SPb
Сообщения: 228
Версия Delphi: 7, 2009, XE2
Репутация: 70
По умолчанию

Кстати из книг могу посоветовать А. Жуков "Изучаем Delphi". Я "самоучка" и эта книга мне сильно помогла в изучении Dephi.

А в Бейсике аналогом Procedure является Sub (если я ничего не путаю...).
__________________
Начинающий программист уверен, что в 1 килобайте 1000 байт.
Законченный программист уверен, что в 1 километре 1024 метра.
Ответить с цитированием
  #7  
Старый 06.03.2009, 05:57
FaRiK FaRiK вне форума
Прохожий
 
Регистрация: 12.01.2009
Сообщения: 12
Репутация: 10
По умолчанию

Спасибо за совет! Обязательно воспользуюсь....
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 20:01.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter