Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Neznakom4eg
0 / 0 / 0
Регистрация: 01.07.2014
Сообщений: 20
#1

Дана строка из нескольких слов, заканчивающаяся точкой

17.12.2014, 17:17. Просмотров 929. Ответов 1
Метки нет (Все метки)

Помогите пожалуйста. Это все нужно сделать в одной программе.

Дана строка из нескольких слов, заканчивающаяся точкой.
1)Найти количество буквосочетаний(min)
2)Подсчитать количество слов в этой строке
3)Удалить лишние пробелы
4)Найти самое длинное и самое короткое слово
5)Отсортировать строку по убыванию длины слов

Добавлено через 4 часа 53 минуты
Пожалуйста!!!
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2014, 17:17
Ответы с готовыми решениями:

Дана строка, состоящая из нескольких слов, между словами
Дана строка, состоящая из нескольких слов, между словами один пробел, в конце...

Дана строка, заканчивающаяся точкой. Подсчитать, сколько слов в строке
Дана строка, заканчивающаяся точкой. Подсчитать, сколько слов в строке.

Дана строка, заканчивающаяся точкой Подсчитать сколько слов в строке
22. Дана строка, заканчивающаяся точкой. Подсчитать сколько слов в строке

Дана строка, заканчивающаяся точкой. Подсчитать в ней количество вхождений букв r, k, t
Дана строка, заканчивающаяся точкой. Подсчитать в ней количество вхождений букв...

Дана строка, заканчивающаяся точкой. Подсчитать, сколько букв и цифр вместе в строке
дана строка заканчивающаяся точкой подсчитать сколько букв и цифр вместе в...

1
ZX Spectrum-128
Модератор
Эксперт Pascal/Delphi
3861 / 2847 / 3632
Регистрация: 05.06.2014
Сообщений: 13,960
18.12.2014, 11:32 #2
Лучший ответ Сообщение было отмечено Neznakom4eg как решение

Решение

5-е не сделал.

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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
uses
  strutils;
var
  s:string;
  kmin,i,kpos:integer;
 
procedure DelAndFind(var st:string; var number:integer);
var
  j, i:integer;
begin
  number:=0;
  if st='' then
    exit;
  if (st[1]=' ') then
    delete(st, 1, 1)
  else
    inc(number);
  for i:=Length(st) downto 1 do
    begin
      if (st[i] in [' ']) then
        begin
          inc(number);
        repeat
          if (st[i+1]=' ') then
            begin
              delete(st, (i+1), 1);
            end;
        until ((st[i+1])<>'.');
      end;
  end;
end;
 
procedure LongAndShort(a:string);
{(C) кот Бегемот}
var
  x,b:array[1..100] of string;
  i,k,min,max:integer;
  z:string;
begin
  k:=0;
  z:=a;
  a:=' '+a;
  for i:=1 to length(a) do
    if a[i] in [' ',',',';',':'] then
      inc(k)
    else
      b[k]:=b[k]+a[i];
 
  max:=length(b[1]);
  for i:=1 to k do
    if length(b[i])>max then
      max:=length(b[i]);
  writeln('Cамые длинные слова: ');
  for i:=1 to k do
    if length(b[i])=max then
      writeln(b[i],': ',length(b[i]));
  for i:=1 to 100 do
    b[i]:='';
  k:=0;
  a:=z;
  a:=' '+a;
  for i:=1 to length(a) do
    if a[i] in [' ',',',';',':'] then
      inc(k)
    else
      b[k]:=b[k]+a[i];
 
  min:=length(b[1]);
  for i:=1 to k do
    if (length(b[i])<min) and (length(b[i])<>0)then
      min:=length(b[i]);
  writeln('Cамые короткие слова: ');
  for i:=1 to k do
    if length(b[i])=min then
      writeln(b[i],': ',length(b[i]));
end;
 
function CSubs(sub,s: string): byte;
begin
  if Pos(sub, s) = 0 then
    CSubs := 0
  else
    CSubs := 1 + CSubs(sub, Copy(s, Pos(sub, s) + Length(sub), Length(s)));
end;
 
begin
  s:='Помогите, пожалуйста, это все нужно сделать в одной программе:'+#10#13+
  'Найти количество буквосочетаний (min);'+#10#13+
  'Подсчитать количество слов    в этой строке;'+#10#13+
  'Удалить лишние пробелы;'+#10#13+
  'Найти самое длинное и    самое короткое (min) слово;'+#10#13+
  'Отсортировать строку    по убыванию (min) длины слов (min).';
  writeln('Исходная строка: ');
  writeln(s);
  writeln;
  writeln('Количество буквосочетаний (min): ',Csubs('min',s));
  writeln;
  DelAndFind(s,kmin);
  writeln('Лишние пробелы удалены: ');
  writeln(s);
  writeln;
  writeln('Количество слов в этой строке: ',kmin);
  longandshort(s);
  readln;
end.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2014, 11:32

Дана строка текста, оканчивающаяся точкой. Напечатать этот текст в обратном порядке
Дана строка текста, оканчивающаяся точкой. Напечатать этот текст в обратном...

Дана строка содержащая текст заканчивающийся точкой. Вывести на экран слова содержащие 3 буквы
Дана строка содержащая текст заканчивающийся точкой. Вывести на экран слова...

Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова, содержащие три буквы
Дана строка, содержащая текст, заканчивающийся точкой. Вывести на экран слова,...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru