Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 20.01.2014
Сообщений: 10
1

Процедура определения самого длинного слова в строке

20.01.2014, 11:29. Показов 1715. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
процедура определения самого длинного слова в строке
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.01.2014, 11:29
Ответы с готовыми решениями:

Поиск самого длинного слова в строке
Задача на поиск самого длинного слова в строке. Без использования каких либо функций кроме while,...

Найти длину самого длинного слова в строке. Знаки препинания не учитывать
Эта программа считает максимальное количество правильно, но знаки препинанию считает частью слова....

Дана строка, содержащая текст. Найти длину самого короткого слова и самого длинного слова
Добрый день! Помогите пожалуйста, не сильно разбираюсь в строках:( Дана строка, содержащая...

Дана строка, содержащая текст. Найти длину самого короткого слова и самого длинного слова
Дана строка, содержащая текст. Найти длину самого короткого слова и самого длинного слова.

1
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
20.01.2014, 11:55 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
uses crt;
const rz=[' ','.',',',';',':','?','!'];{разделители слов, можно изменить}
procedure slovo(s:string;var sd:string);
var s1:string;
    len,i,max:byte;
begin
for i:=1 to length(s) do{заменим разделители на запятые}
if s[i] in rz then s[i]:=',';
s:=s+',';{добавим к ней запятую}
while pos(',,',s)>0 do{удалим лишние запятые}
delete(s,pos(',,',s),1);
if s[1]=','then delete(s,1,1);{если первая запятая, удаляем}
sd:=''; {искомое длинное слово}
max:=0;
while pos(',',s)>0 do{пока есть запятые}
 begin
  len:=pos(',',s)-1;{длина очередного слова}
  s1:=copy(s,1,len);{само слово}
  if len>max then{если больше предыдущих}
   begin
    sd:=s1; {запомним}
    max:=len; {его длина}
   end;
  delete(s,1,pos(',',s));{удаляем проверенное слово, следующее первое}
 end;
writeln('Самое длинное слово:  ',sd);
end;
 
var s,sd:string;
begin
clrscr;
writeln('Введите строку из слов, отделенных разделителями:');
readln(s);
slovo(s,sd);
readln
end.
0
20.01.2014, 11:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.01.2014, 11:55
Помогаю со студенческими работами здесь

Дана строка, содержащая текст. Найти длину самого короткого слова и самого длинного слова
Задача 10 класса, так что решение должно быть уровня школьника) Дана строка, содержащая текст....

Найти длинну самого короткого слова и самого длинного слова
люди помогите решить! дана строка,содержащая текст. Найти длинну самого короткого слова и самого...

Поменять местами названия самого длинного и самого короткого слова
Помогите, наведите хоть на мысль! Задание: Задан список из десяти городов. Поменять местами...

Дана строка, содержащая текст. Найти длину самого короткого и самого длинного слова
Дана строка, содержащая текст. Найти длину самого короткого и самого длинного слова


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru