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

Вывод последовательности стоящих подряд цифр

31.03.2012, 09:35. Показов 1525. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разработать программу, которая в заданной строке находит и выводит на экран все самую длинную последовательность стоящих подряд цифр.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2012, 09:35
Ответы с готовыми решениями:

Найти в записи числа наибольшее количество подряд стоящих одинаковых цифр
Дано число n. Найти в записи числа наибольшее количество подряд стоящих одинаковых цифр. ...

Вывести на экран длину наибольшей последовательности цифр, идущих подряд.
Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей...

Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей последовательности цифр, идущих подряд.
Помогите пожалуйста решить задачку Имеется строка, содержащая буквы латинского алфавита и...

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

1
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
31.03.2012, 10:22 2
Лучший ответ Сообщение было отмечено spbkiu как решение

Решение

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
uses crt;
const cf=['0'..'9'];
var s:string;
    i,k,n,mx,nmx,kmx:byte;
begin
clrscr;
write('Строка:  ');
readln(s);
s:=s+' ';
mx:=0;nmx:=1;
i:=1;
while i<=length(s)do
if s[i] in cf then
 begin
  n:=i;k:=1;
  while s[n+k] in cf do
  k:=k+1;
  if k>mx then
    begin
     mx:=k;
     nmx:=n;
    end;
  i:=i+k+1;
 end
else i:=i+1;
if mx=0 then write('В строке нет цифр')
else write('Самая длинная цепочка цифр  ',copy(s,nmx,mx));
readln
end.
Добавлено через 11 минут
Если нужно все самые длинные, то так.
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 cf=['0'..'9'];
var s,s1:string;
    i,j,k,n,mx:byte;
    f:boolean;
begin
clrscr;
write('Строка:  ');
readln(s);
s:=s+' ';
//ищем максимальную длину
mx:=0;
i:=1;
while i<=length(s)do
if s[i] in cf then
 begin
  n:=i;k:=1;
  while s[n+k] in cf do
  k:=k+1;
  if k>mx then mx:=k;
  i:=i+k+1;
 end
else i:=i+1;
if mx=0 then write('В строке нет цифр')
else
 begin
  //ищем все максимальной длины
  writeln('Самые длинные последовательности цифр:');
  for i:=1 to length(s)-mx do
   begin
    s1:=copy(s,i,mx);
    f:=true;
    j:=1;
    while(j<=length(s1))and f do
    if not(s1[j] in cf) then f:=false
    else j:=j+1;
    if f then writeln(s1);
   end;
  end;
readln
end.
1
31.03.2012, 10:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.03.2012, 10:22
Помогаю со студенческими работами здесь

Вывести на экран длину наибольшей последовательности цифр, идуших подряд
Имеется строка содержащая буквы и цифры латинского алфавита. Вывести на экран длину наибольшей...

Вывести на экран длину наибольшей последовательности цифр, идущих подряд
Имеется строка, содержащая буквы латинского алфавита и цифры. Вывести на экран длину наибольшей...

В исходной строке b$ определить сумму цифр самой длинной последовательности подряд идущих цифр
В исходной строке b$ определить сумму цифр самой длинной последовательности подряд идущих цифр.

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


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

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

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