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

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

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

 
 Ответить  Открыть новую тему 
> Составить таблицу слов данного предложения, начинающихся на букву, проверте пожалуйста
artem66rus
сообщение 25.04.2011 11:18
Сообщение #1





Группа: Пользователи
Сообщений: 9
Пол: Мужской
Реальное имя: Артем)))

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


Составить таблицу слов данного предложения, начинающихся на букву "Ж" // "ж", с указанием числа повторений каждого такого слова. (прогамма считает как большую букву Ж так и маленькую ж) - паскаль АБС

Не могу разобратся с регистром (считает либо Ж или ж )
Может Вы поможете в дополнении программы

program slova;
Uses Crt;
var
stroka, slovo : string;
i,k : integer;
begin
ClrScr;
WriteLn('Введите строку ');
TextColor(Cyan);
ReadLn(stroka);
stroka:=stroka + '.';
i:= 1; TextColor(LightGreen);
while Length(stroka) <> 0 do
begin
if pos(copy(stroka,i,1),' ,.?!-:;') <> 0
then begin
slovo := copy(stroka,1,i-1);
if slovo[1]='ж' then
writeln(slovo);
delete(stroka,1,i);
i := 1;

end
else i := i+1;
end;
end.



 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 25.04.2011 11:44
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(artem66rus @ 25.04.2011 12:18) *

Составить таблицу слов данного предложения, начинающихся на букву "Ж" // "ж", с указанием числа повторений каждого такого слова. (прогамма считает как большую букву Ж так и маленькую ж) - паскаль АБС

Не могу разобратся с регистром (считает либо Ж или ж )
Может Вы поможете в дополнении программы

program slova;
Uses Crt;
var
stroka, slovo : string;
i,k : integer;
begin
ClrScr;
WriteLn('Введите строку ');
TextColor(Cyan);
ReadLn(stroka);
stroka:=stroka + '.';
i:= 1; TextColor(LightGreen);
while Length(stroka) <> 0 do
begin
if pos(copy(stroka,i,1),' ,.?!-:;') <> 0
then begin
slovo := copy(stroka,1,i-1);
if slovo[1]='ж' then
writeln(slovo);
delete(stroka,1,i);
i := 1;

end
else i := i+1;
end;
end.



Ты работай с множествами. Оно же тут напрашивается..
 if slovo[1] in ['Ж','ж'] then .. 

А применять Pos для определения является ли символ разделителем - это вообще крайне нецелесообразно.. И copy зачем?? Странно, дальше ты вроде не стесняешься непосредственно брать символ из слова..
    if stroka[i] in [' ', ',', '.', '?', '!', '-', ':', ';'] then ...


Но все равно неплохо )).
А до частотной таблицы пока дело не дошло?


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
artem66rus
сообщение 25.04.2011 11:49
Сообщение #3





Группа: Пользователи
Сообщений: 9
Пол: Мужской
Реальное имя: Артем)))

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


Цитата(Lapp @ 25.04.2011 14:44) *


А применять Pos для определения является ли символ разделителем - это вообще крайне нецелесообразно.. И copy зачем?? Странно, дальше ты вроде не стесняешься непосредственно брать символ из слова..
    if stroka[i] in [' ', ',', '.', '?', '!', '-', ':', ';'] then ...


Но все равно неплохо )).
А до частотной таблицы пока дело не дошло?


частотная таблица - что это?? объясни дураку ))

Цитата(Lapp @ 25.04.2011 14:44) *


Pos для определения является ли символ разделителем - это вообще крайне нецелесообразно


А как лучше???
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 25.04.2011 12:19
Сообщение #4


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(artem66rus @ 25.04.2011 12:49) *
частотная таблица - что это?? объясни дураку ))
Это то, что спрашивается в задании ))
вывод слов с количеством повторений

Цитата
А как лучше???
Ну я же написал, как.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
artem66rus
сообщение 25.04.2011 12:26
Сообщение #5





Группа: Пользователи
Сообщений: 9
Пол: Мужской
Реальное имя: Артем)))

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


Цитата(Lapp @ 25.04.2011 15:19) *

Это то, что спрашивается в задании ))
вывод слов с количеством повторений



вот это я и не знаю как сделать! Помогите пожалуйста

про POS до меня дошло, исправил, спасибо!

Сообщение отредактировано: artem66rus - 25.04.2011 12:28
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 25.04.2011 12:53
Сообщение #6


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(artem66rus @ 25.04.2011 13:26) *
вот это я и не знаю как сделать! Помогите пожалуйста

Заведи массив строк для слов. Все слова на ж склоадывай в него. Новые слова проверяй на совпадение со старыми.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
artem66rus
сообщение 25.04.2011 13:00
Сообщение #7





Группа: Пользователи
Сообщений: 9
Пол: Мужской
Реальное имя: Артем)))

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


Цитата(Lapp @ 25.04.2011 15:53) *

Заведи массив строк для слов. Все слова на ж склоадывай в него. Новые слова проверяй на совпадение со старыми.


Так как это когдом написать?????
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 25.04.2011 13:33
Сообщение #8


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(artem66rus @ 25.04.2011 14:00) *
Так как это когдом написать?????

Примерно так же, как ты сделал в параллельной теме ))

Сделай Split
пройдись по полученному массиву и выброси слова, начинающиеся не с Ж
потом упорядочи массив
потом пройдись по нему и считай повторения


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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