Задача 6 Урок 17
Primary tabs
Пользователь вводит строку произвольных символов, выделите из неё массив
первых 8 строковых литералов, которые являются числами.
И выведите эти числа на экран.
Например, из строки:
rew2@#$$#435tr353453t4er4
должны быть выделены подстроки:
2
435
353453
4
4
type ar = array[1..8] of string; var s0: string; arr: ar; procedure p1(var arr1: ar);//вносим в ячейки '' var i1: integer; begin for i1 := 1 to length(arr1) do arr1[i1] := ''; end; procedure p2(arr1: ar);// печать массива var i1: integer; begin for i1 := 1 to length(arr1) do if (arr1[i1] <> '') then writeln(arr1[i1]); end; function f1(s: string; arr1: array of string): ar;//сохранаяем числа в ячейки var i, t{счетчик для записи в массив строк}: integer; b{флаг первой строки}: boolean; begin b := false; t := 0; for i := 1 to length(s) do begin if (s[i] >= '0') and (s[i] <= '9') then begin if (not b) then begin inc(t); b := true; arr1[t] := arr1[t] + s[i]; end else if b then begin arr1[t] := arr1[t] + s[i]; end; end else b := false; end; result := arr1; end; begin writeln('Введите строку'); readln(s0); // s0 := 'rew2@#$$#435tr353453t4er4'; p1(arr);//очищаем значения массива arr := f1(s0, arr);//получили массив из строки p2(arr);//печать массива readln(); end.
КОНСОЛЬ
Введите строку hgb63hbh5b4jb456kjhb5b4jh6bbhjbl 63 5 4 456 5 4 6
- Log in to post comments
- 576 reads