Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var
- s, t, d, m, y, res: string;
- i, a, code, cnt, tmp, dd, mm, yy: integer;
- begin
- ReadLN(s);
- s:= s + ' ';
- writeln();
- res:= '';
- while Pos(' ', s) > 0 do//делим строку по пробелам
- begin
- t:=Copy(s, 1, Pos(' ', S) - 1); {Выделяем слово из строки}
- Delete(s, 1, Length(t) + 1); {Удаляем слово из основной строки}
- if (length(t) = 10) AND (t[3] = '.' ) AND (t[6] = '.') then// если текущее слово - это что то похожее на дату
- begin
- { выделяем день, месяц, год }
- d:= copy(t, 1, 2);
- m:= copy(t, 4, 2);
- y:= copy(t, 7, 4);
- { переводим их в числа }
- val(d, dd, tmp);
- val(m, mm, tmp);
- val(y, yy, tmp);
- { проверяем, а дата ли это }
- if (dd > 0) AND (dd < 32) AND (mm > 0) AND (mm < 13) AND (yy < 2021) then
- begin
- { добавляем единицу к дате}
- dd:= dd + 1;
- if (dd = 32)then
- begin
- dd:= 1;
- mm:= mm + 1;
- end;
- if (mm = 13) then
- begin
- mm:= 1;
- yy:= yy + 1;
- end;
- { переводим обратно в строки }
- Str(dd, d);
- if (length(d) = 1) then
- d:= '0' + d;
- Str(mm, m);
- if (length(m) = 1) then
- m:= '0' + m;
- Str(yy, y);
- t:= d + '.' + m + '.' + y;
- end;
- end;
- res:= res + t + ' ';//добавляем текущую строку в ответ.
- end;
- writeln(res);//если после даты стоит какой то знак, например точка или запятая,
- // то програма отработает не корректно, тут нужно утрочнаять содержание текста
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement