Предмет: Информатика,
автор: yuliyakadetova
С клавиатуры вводится текст из прописных и строчных латинских букв и цифр. Ввод прекращается при нажатии клавиши Enter. Произвести следующие операции:
1) напечатать только цифры, входящие в этот текст;
2) найти процентное содержание цифр в исходном тексте.(Паскаль)
Ответы
Автор ответа:
0
//Pascal ABC.NET 3.1 сборка 1219
//Школьный вариант
Var
s:string;
p:real;
se:set of char;
i:integer;
begin
readln(s);
se:=['0','1','2','3','4','5','6','7','8','9'];
for i:=1 to length(s) do
if s[i] in se then
begin
p:=p+1;
write(s[i]);
end;
p:=p/(length(s)/100);
writeln;
writeln('Percent=',p);
end.
//Альтернативный вариант
Var
s:string;
se:set of char;
begin
readln(s);
se:=['0','1','2','3','4','5','6','7','8','9'];
s.Where(x -> x in se).Println;
writeln('Percent=',s.where(x -> x in se).Count/(length(s)/100));
end.
Пример ввода:
I3artle, Caster, 1 of 7 summoned characters.
Пример вывода:
317
Percent=6.81818181818182
//Школьный вариант
Var
s:string;
p:real;
se:set of char;
i:integer;
begin
readln(s);
se:=['0','1','2','3','4','5','6','7','8','9'];
for i:=1 to length(s) do
if s[i] in se then
begin
p:=p+1;
write(s[i]);
end;
p:=p/(length(s)/100);
writeln;
writeln('Percent=',p);
end.
//Альтернативный вариант
Var
s:string;
se:set of char;
begin
readln(s);
se:=['0','1','2','3','4','5','6','7','8','9'];
s.Where(x -> x in se).Println;
writeln('Percent=',s.where(x -> x in se).Count/(length(s)/100));
end.
Пример ввода:
I3artle, Caster, 1 of 7 summoned characters.
Пример вывода:
317
Percent=6.81818181818182
Похожие вопросы
Предмет: Русский язык,
автор: nurtaikamchybekov
Предмет: География,
автор: serebryanskaya2144
Предмет: Математика,
автор: diana117150
Предмет: География,
автор: elena5402q
Предмет: Математика,
автор: rusik888