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

Поиск самого длинного слова в строке

04.03.2011, 21:34. Показов 1142. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача на поиск самого длинного слова в строке.
Без использования каких либо функций кроме while, repeat,if и цикла for!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.03.2011, 21:34
Ответы с готовыми решениями:

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

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

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

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

1
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
05.03.2011, 08:32 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
37
38
39
40
41
uses crt;
const rz=['_',':',';',',',' ','.','?','!'];
var s,s1,smx:array[1..1000] of char;
    n,i,k,m,mx:integer;
    c:char;
begin
clrscr;
writeln('Введите строку, окончание ввода точка:');
n:=0;
repeat
c:=readkey;
write(c);
n:=n+1;
s[n]:=c;
if c='.' then writeln;
until c='.';
mx:=0;
i:=1;
while i<=n do
if not(s[i] in rz)and ((i=1)or(s[i-1] in rz)) then{если буква, а перед ней разделитель, или она первая}
 begin
  k:=i;m:=0;
  while not(s[k] in rz)and(k<=n)do {пока не разделитель и не конец строки}
   begin
    m:=m+1;
    s1[m]:=s[k];{составляем слово}
    k:=k+1;{идем вперед}
   end;
  if m>mx then {если длина больше макс.}
   begin
    mx:=m;
    smx:=s1;
   end ;
 i:=i+m;{перепрыгиваем}
 end
else i:=i+1;
writeln('Самое длинное слово:');
for i:=1 to mx do
write(smx[i]);
readln
end.
1
05.03.2011, 08:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.03.2011, 08:32
Помогаю со студенческими работами здесь

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

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

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

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


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

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