Показать сообщение отдельно
  #1  
Старый 12.11.2010, 22:28
ardon ardon вне форума
Прохожий
 
Регистрация: 12.11.2010
Сообщения: 5
Репутация: 10
По умолчанию Работа со строчками

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

Моя версия алгоритма:
Код:
begin
n:=0;
probel:=0;
label1.text:="vvedite stroku!";
stroka:=messagebox1.text;
kol_nulei_v_gruppe:=0;
kol_edinic_v_gruppe:=0;
kol_nulevix_grup:=0;
kol_edini4nix_grup:=0;

//самый большой общий цикл-
while length(stroka)>0 do
begin

// здесь считаю группы из нулей- 
repeat
if (pos(' ',stroka))<>1 then begin
while (pos('0',stroka)=1) and (length(stroka)>0) do
kol_nulei_v_gruppe:=kol_nulei_v_gruppe+1;
until kol_nulei_v_gruppe=5; kol_nulevix_grup:=kol_nulevix_grup+1; end;

//здесь считаю группы из единиц-
repeat
if (pos(' ',stroka))<>1 then begin
while (pos('1',stroka)=1) and (length(stroka)>0) do
kol_edinic_v_gruppe:=kol_edinic_v_gruppe+1;
until kol_nulei_v_gruppe=5; kol_edini4nix_grup:=kol_edini4nix_grup+1; end;
end;
//в конце пытаюсь подсчитать сколько всего групп получилось ->
obwee_kol_grup:=kol_nulevix_grup+kol_edini4nix_grup;
Admin: Пользуемся тегами!

//ну далее делаю вывод требуемого количества. можно ли как нибудь "упростить" алгоритм, господа? Спасибо за внимание.
Ответить с цитированием