0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 43
1

Даны натуральное число n, символы s1,...,sn. Выяснить,верно ли,что в последовательности s1,...,sn имеются пять идущих подряд букв е

05.03.2014, 21:37. Показов 4151. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
даны натуральное число n, символы s1,...,sn. Выяснить,верно ли,что в последовательности s1,...,sn имеются пять идущих подряд букв е. (в графическом виде)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2014, 21:37
Ответы с готовыми решениями:

Верно ли ,что в последовательности s[1],...,s[n] имеются пять идущих подряд букв e
Помогите решить в Паскале... Даны натуральное число n, символы s,...,s. Выяснить, верно ли ,что в...

Выяснить, верно ли, что в последовательности имеются пять идущих подряд букв е
Условия: Даны натуральное число n, символы s1, …, sn. Выяснить, верно ли, что в последовательности...

Выяснить, верно ли, что в последовательности имеются пять идущих подряд заданных букв
Здравствуйте. Помогите пожалуйста с программой. Даны натуральное число n , символы s1,...,sn. б)...

Выяснить верно ли, что в последовательности имеется пять идущих подряд букв "Е"
№1 дана последовательность символов S1...Sn.выяснить верно ли,что в последовательности S1...Sn...

9
13 / 13 / 3
Регистрация: 26.02.2014
Сообщений: 78
05.03.2014, 22:19 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
Var
  S: array[1..1000] of Char;
  Ts, N, Ko: integer;
  Z: string;
Begin
  Z:='Нет';
  Ko:=0;
  Read(n);
  For Ts:=1 to n+1 do 
  Begin
    readln(S[Ts]);
  End;
  For Ts:=1 to n do 
  Begin
    If (S[Ts] = S[Ts+1]) And (S[Ts]='e') Then Ko:=Ko+1
    Else Ko:=0;
    If Ko=4 Then 
    Begin
      Z:='Да';
    End;
  End; 
  Write(Z);
  Readln;
End.
Не умею, чтобы у массива была длина, которую мы потом введем, по-этому сделал 1000)

Добавлено через 3 минуты
А если N не нужно вводить и она постоянная, то тогда сверху надо написать:
Pascal
1
2
Const
  N=5;
А длина массива будет:
Pascal
1
2
Var
  S: array[1..n] of Char;
1
0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 43
05.03.2014, 22:23  [ТС] 3
спасибо большое
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
4190 / 1291 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
05.03.2014, 22:52 4
Цитата Сообщение от -AliK- Посмотреть сообщение
Не умею, чтобы у массива была длина, которую мы потом введем, по-этому сделал 1000)
а зачем вообще массив использовать?
в задаче же ничего про массив не написано.
Без массива:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
 n: byte;
 s: string;
 c: char;
begin
 write('n (max 255)= ');
 readln(n);
 while n>0 do
  begin
   write('s',length(s)+1,': ');
   readln(c);
   s:=s+c;
   dec(n);
  end;
 if pos('eeeee',s)>0 then writeln('Пять подряд идущих букв "е" есть.')
 else writeln('Пяти подряд идущих букв "е" нет.');
 readln;
end.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7769 / 4598 / 2823
Регистрация: 22.11.2013
Сообщений: 13,076
Записей в блоге: 1
06.03.2014, 21:04 5
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var
  c: char;
  n, k: integer;
begin
  Write('Длина последовательности: '); ReadLn(n);
  Write('Последовательность: ');
  k:=0;
  for n:=n downto 1 do begin
    Read(c);
    if c='e' then begin
      inc(k);
      if k=5 then begin
        WriteLn('Есть.');
        Exit;
      end;
    end else k:=0;
  end;
  WriteLn('Нет.');
end.
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
4190 / 1291 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
06.03.2014, 21:36 6
bormant, не вариант...
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7769 / 4598 / 2823
Регистрация: 22.11.2013
Сообщений: 13,076
Записей в блоге: 1
06.03.2014, 22:01 7
TAVulator, отчего же?
0
1646 / 1075 / 1081
Регистрация: 03.07.2013
Сообщений: 4,507
07.03.2014, 11:09 8
Цитата Сообщение от Молдир Посмотреть сообщение
даны натуральное число n, символы s1,...,sn. Выяснить,верно ли,что в последовательности s1,...,sn имеются пять идущих подряд букв е. (в графическом виде)
Я не понял, зачем нам "n" ?
Последовательность вводим в виде строки, а n тогда будет - длина строки...
Pascal
1
2
3
4
5
Var S : String;
Begin
  Readln(S);
  Writeln(Pos('eeeee',S)<>0);
End.
Добавлено через 1 минуту
А еще не понятно зачем это:
Цитата Сообщение от Молдир Посмотреть сообщение
(в графическом виде)
Может условие задачи приведено не полностью?
0
Эксперт по компьютерным сетямЭксперт Pascal/Delphi
4190 / 1291 / 237
Регистрация: 27.07.2009
Сообщений: 3,962
09.03.2014, 10:51 9
Цитата Сообщение от bormant Посмотреть сообщение
TAVulator, отчего же?
вывод результата происходит во время ввода последовательности и если мы ввели 5 букв "е", то тут же прекращается ввод.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7769 / 4598 / 2823
Регистрация: 22.11.2013
Сообщений: 13,076
Записей в блоге: 1
09.03.2014, 21:13 10
TAVulator, так а противоречие в чем? Если 5 букв обнаружены, анализ остальной части последовательности не требуется.

Добавлено через 2 часа 15 минут
Если же требовать вычитки всех n символов, код легко немного изменить:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
var
  c: char;
  n, k: integer;
  found: boolean;
begin
  Write('Длина последовательности: '); ReadLn(n);
  Write('Последовательность: ');
  k:=0; found:=false;
  for n:=n downto 1 do begin
    Read(c);
    if not found then
      if c='e' then begin
        inc(k);
        if k=5 then found:=true;
      end else k:=0;
  end;
  if found the WriteLn('Есть.') else WriteLn('Нет.');
end.
0
09.03.2014, 21:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.03.2014, 21:13
Помогаю со студенческими работами здесь

Выяснить, верно, ли, что в тексте имеется, пять идущих подряд букв е
Дан текст. Выяснить, верно, ли, что в тексте имеется, пять идущих подряд букв е.

Строки. Верно ли, что в последовательности s ,…, s имеется пять идущих подряд букв ‘e’
Выяснить, верно ли, что в последовательности s ,…, s имеется пять идущих подряд букв ‘e’.

Выяснить, имеются ли в строке пять идущих подряд букв "е"
Выяснить, верно ли, что в строке имеются пять идущих подряд букв е.

Дана строка текста. Выяснить, верно ли, что в нем есть пять идущих подряд одинаковых чисел
Дана строка текста. Выяснить, верно ли, что в нем есть пять идущих подряд одинаковых чисел. Найти...


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

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

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