Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Паскаль
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 12.12.2015, 18:55   #1
максич
 
Регистрация: 11.12.2015
Сообщений: 5
Репутация: 10
По умолчанию Помогите с кодом. Pascal

7. В заданной строке текста определите число групп символов и число групп цифр.
максич вне форума   Ответить с цитированием
Старый 12.12.2015, 20:54   #2
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,815
Репутация: 6850
По умолчанию

Код:
s:='7. В заданной строке текста определите число групп символов и число групп цифр.';
i:=1; Bukv:=0; cyfr:=0;
while i<=length(s) do begin
 if s[i] in ['0'..'9'] then begin  while (i<=length(s)) and (s[i] in ['0'..'9']) do inc(i); inc(cyfr); end else
  if s[i] in ['a'..'z'] then begin  while (i<=length(s)) and (s[i] in ['a'..'z']) do inc(i); inc(bukv); end else
 inc(i);
end;
writeln('Цифрогрупп: ',cyfr:10,'Буквогрупп: ',Bikv:10);readln;
Годится идея?
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Старый 12.12.2015, 21:22   #3
максич
 
Регистрация: 11.12.2015
Сообщений: 5
Репутация: 10
По умолчанию

спасибо, суть уловил
максич вне форума   Ответить с цитированием
Старый 12.12.2015, 22:09   #4
Arigato
СуперПрограммист
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Адрес: Россия РФ Регистрация: 27.07.2008
Сообщений: 13,756
Репутация: 3618
По умолчанию

Вариант с конечным автоматом:
Код:
var
  s: string;
  state, nums_count, chars_count, i: integer;
begin
  readln(s);
  nums_count:=0; chars_count:=0;
  state:=0;
  for i:=1 to length(s) do begin
    case s[i] of
      '0'..'9': begin
        if state<>1 then inc(nums_count);
        state:=1;
      end;
      'a'..'z','A'..'Z': begin
        if state<>2 then inc(chars_count);
        state:=2;
      end;
      else state:=0;
    end;
  end;
  writeln('Групп цифр: ',nums_count,'; групп букв: ',chars_count);
end.
__________________
E-Mail: arigato.freelance@gmail.com
Arigato на форуме   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с кодом. nover Помощь студентам 2 27.06.2014 13:26
Проблема с кодом в Pascal (delphi7) Некитос Помощь студентам 6 14.01.2014 22:46
Проблема с кодом в Pascal: ошибка преобразования типа byte к string THE LOGOS Помощь студентам 16 14.01.2014 21:38
Работа с кодом (Delphi-Pascal) Kleopatra Помощь студентам 1 19.01.2012 07:26
Нужно разобраться с кодом написанным на Object Pascal в среде Delphi 7.0 anchuta Помощь студентам 10 15.05.2011 21:17


23:33.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru