IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Строковые переменные
Очередная
сообщение 30.01.2004 16:39
Сообщение #1


Гость






??? Привет! Чайник просит помощи у умных людей!!!
Помогите решить задачу на строковые переменные. Задача: Сколько одинаковых слов в предложении, введенном с клавиатуры? Вывести на экран слова и их количество. Заранее большое спасибо
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
trminator
сообщение 2.02.2004 13:49
Сообщение #2


Четыре квадратика
****

Группа: Пользователи
Сообщений: 579
Пол: Мужской

Репутация: -  4  +


Попробуй изменить такую программу, чтобы в массив А не вставлялись повторяющиеся слова
Код

program strngs;
const razdel: set of char = [' ',',','.']; {разделители слов - пробел, точка, запятая. Больше не придумал +)}
var a: array[1..10] of string[20];
   i, j, n : integer;
   s, part: string;
begin
   ReadLn(s);
   i:=1; j:=1; n:=length(s);
   while i<=n do
   begin
       while s[i] in razdel do inc(i); {пропускаем  разделители слов}
       while (i<=n) and not (s[i] in razdel) do
       begin
         part:=part+s[i]; inc(i); {накапливаем строку}
       end;
       a[j]:=part; {<== тут изменить +)}
       inc(j) {ищем следующее слово}
   end;
{Ну тут их вывести. В переменной j должно получиться количество слов}
end.

Слово накапливается в строке part, перед тем, как добавлять его в массив, нужно проверить, нет ли его уже там.

Все-таки такое уже было на форуме... что-то искать лень.

Можно сделать, как говорит P@sh@, будет короче, но можно запутаться (наверное... я как-то писАл так, долго глючил. С тех пор так вот делаю +) ). А эта программа, по-моему, проще для понимания.


--------------------
Закон добровольного труда Зимерги:
Люди всегда согласны сделать работу, когда необходимость в этом уже отпала
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 23.06.2025 20:39
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"