паскаль абц
входные данные
входная строка содержит символы латинского алфавита, как строчные, так и заглавные.
выходные данные
программа должна вывести в первой строке получившуюся в результате обработки символьную строку, а во второй – количество выполненных замен.
var
s: string;
i,k,l: integer;
begin
readln(s);
l: =length(s);
k: =0;
for i: =1 to l do
case s[i] of
'a': begin s[i]: ='b'; inc(k); end;
'a': begin s[i]: ='b'; inc(k); end;
'b': begin s[i]: ='a'; inc(k); end;
'b': begin s[i]: ='a'; inc(k); end;
end;
s.println;
k.print
end.
выдает ошибку по времени, как можно сократить?
ответ:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var s: string;
n,i,k: byte;
begin
readln(s);
n: =length(s);
k: =0;
for i: =1 to n do
if upcase(s[i])='a' then
begin
inc(k);
if s[i]='a' then s[i]: ='b'
else s[i]: ='b';
end;
writeln(s);
write(k)
end.
объяснение: