Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program String65;
- var
- S: String;
- i, i2, K: integer;
- C: char;
- f: text;
- begin
- if (not FileExists('input.txt')) then
- begin
- writeln('input.txt не найден!');
- Exit;
- end;
- Assign(f, 'input.txt');
- Reset(f);
- Readln(f, S);
- Readln(f, C);
- writeln('S: ', S);
- writeln('C: ', C);
- case OrdAnsi(C) of
- 128..159: K := OrdAnsi(S[1]) - OrdAnsi(C);
- 160..175:
- if OrdAnsi(S[1]) in [160..175] then K := OrdAnsi(S[1]) - OrdAnsi(C)
- else K := OrdAnsi(S[1]) - 48 - OrdAnsi(C);
- 224..239:
- if OrdAnsi(S[1]) in [224..239] then K := OrdAnsi(S[1]) - OrdAnsi(C)
- else K := OrdAnsi(S[1]) + 48 - OrdAnsi(C);
- end;
- if k < 0 then K := 32 + k;
- writeln('K: ', K);
- for i2 := 1 to K do
- begin
- i := 1;
- while (i <= Length(S)) do
- begin
- case OrdAnsi(S[i]) of
- 129..159, 161..173, 225..239: S[i] := ChrAnsi(OrdAnsi(S[i]) - 1);
- 128: S[i] := ChrAnsi(159);
- 224: S[i] := ChrAnsi(175);
- 160: S[i] := ChrAnsi(239);
- end;
- inc(i);
- end;
- end;
- Writeln(S);
- Close(f);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement