Модераторы: volvo877, Snowy, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите пожалуйста решить одну задачку, Задача на Паскале 
:(
    Опции темы
yraloz
Дата 8.3.2006, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Товарищи программисты, помогите пожалуйста
решить одну задачку.
Дан текст, между словами либо пробел, либо запятая, выделить из него:
1.Слова в которых нет цифр
2.Слова в которых одни цифры
3.Смешанные слова.

Спасибо большое за помощь.
PM MAIL   Вверх
Guedda
Дата 8.3.2006, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Здесь Вам помогут с кодом, но не напишут за Вас полностью код. Напишите, что у Вас именно не получается, либо направляйтесь в раздел Центр Помощи. Там Вам обязательно помогут.


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


Бывалый
*


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

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



Алгоритм:
Ставишь условие читать до запятой или пробела лучше сразу заносить в массив проверяешь условие нет ли в массиве цифр, потом проверяешь на условие что слово из только одно типа данных Integer. И есть ли в массиве тот и другой тип char и Integer. smile
--------------------
В жизни, я люблю делать, то что я люблю. А не то что модно, престижно и выгодноЛюблю когда начинает работать, то что без меня не работало!
PM MAIL ICQ   Вверх
NewDima
Дата 9.3.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

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



Во первых, откуда читаешь слова? Например здесь с файла лучше всего.
Файл типа стринг. Читаешь по подстроке, проверяешь наличие цифр, если есть то в процедуру <есть ли буквы>, если есть, то это слово- смешанное, иначе оно полностью из цифр, иначе слово настоящее
PM ICQ   Вверх
Ozzя
Дата 9.3.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Выделяем из текста слова с помощью ф-ции getwords:
http://forum.pascal.net.ru/index.php?s=&am...ost&p=28157
Далее:
1.
Код

Function IsInSrtringDigitsNo (s:string):boolean;
var
  i:Integer;
begin
  IsInSrtringDigitsNo:=True;
  for i:=1 to length(s) do
    if s[i] in ['0'..'9'] then
      begin
        IsInSrtringDigitsNo:=False;
        Break;
      end;
end;

begin
 if IsInSrtringDigitsNo('absbchskasd1') then
   write('yes!')
 else
    write('no!');
 ReadLn;
end.
2.
Код

Function IsInSrtringDigitsOnly (s:string):boolean;
var
  i:Integer;
begin
  IsInSrtringDigitsOnly:=True;
  for i:=1 to length(s) do
    if not (s[i] in ['0'..'9']) then
      begin
        IsInSrtringDigitsOnly:=False;
        Break;
      end;
end;

begin
 if IsInSrtringDigitsOnly('12q34567890') then
   write('yes!')
 else
    write('no!');
 ReadLn;
end.

3. Смешанные с чем? Цифры + латинские буквы? Цифры + латинские/русские буквы?
PM MAIL   Вверх
NewDima
Дата 9.3.2006, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

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



Простите, если чей написаный алгоритм переписал, времени нет читать
PM ICQ   Вверх
yraloz
Дата 9.3.2006, 13:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Да, смешанные в смысле и цифры и буквы(русские и англ)
Добавлено @ 13:28
В результате эти слова должны быть выведены на экран
PM MAIL   Вверх
Snowy
Дата 9.3.2006, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

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



Модератор: Название темы должно отражать ее суть!
PM MAIL   Вверх
armageddon
Дата 9.3.2006, 18:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



по-поводу вывода на экран, то какие проблемы?
алгоритм проверки написан выше(не проверял, но надеюсь работает)
ну а если подходит, то пусть и вывод на экран это слово
PM MAIL   Вверх
yraloz
Дата 10.3.2006, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



А как задавать условия поиска если слова занесены в массив типа string?
PM MAIL   Вверх
Ozzя
Дата 11.3.2006, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Функция GetWords возвращает количество найденных слов и сами слова в переменную типа TWords = Array[1 .. 100] Of String[100];
Твой код:
Код

var
  SourceString:string;
  OutputArray:TWords;
...
CountOfWords:=GetWords(SourceString, OutputArray);
for i:=1 to CountOfWords do
  begin
     { Поиск по условию № 2 }
      if IsInSrtringDigitsOnly(OutputArray[i]) then
        {условие удовлетворено, что-то с этой строкой делаешь } 

     { Поиск по условию № 1 }
      if IsInSrtringDigitsNo(OutputArray[i]) then
        {условие удовлетворено, что-то с этой строкой делаешь } 
     и т.д.
  end;


Это сообщение отредактировал(а) Ozzя - 11.3.2006, 10:30
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi"
THandle
Rrader
volvo877

Запрещается!

1. Обсуждать и делится взломанными компонентами или программным обеспечением

2. Публиковать ссылки на варез

3. Оффтопить

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877.

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


 




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


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

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