Задумана проверка на равенство введеного числа с плавающей точкой и 36.6
Но делается это, на самом деле, не совсем верно, дробные числа не совсем также как и целые хранятся в памяти, поэтому, число 1.0 может быть записано как условное 1.00000000000002 и все, уже равенства с 1.0 не будет, поэтому при сравнении дробных число нужно вводить, какую-то очень маленькую величину, например, eps = 1e-6 и сравнивать таким образом: if( fabs(first_number - second_number) <= eps) => ok; else => not ok
// PascalABC.NET 3.1, сборка 1211 от 31.03.2016
begin
var s:=ReadlnString('Исходная строка:');
Writeln('Результат: ',s.MatchValues('[a-zA-ZА-Яа-яёЁ]').JoinIntoString(''));
end.
Тестовое решение:
Исходная строка: // PascalABC.NET 3.1, сборка 1211 от 31.03.2016
Результат: PascalABCNETсборкаот
2. Программа в "школьной версии"
// PascalABC.NET 3.1, сборка 1211 от 31.03.2016
const
legal=['A'..'Z','a'..'z','А'..'Я','а'..'я','Ё','ё'];
var
s:string;
i:integer;
begin
Write('Исходная строка: '); Readln(s);
for i:=Length(s) downto 1 do
if not(s[i] in legal) then Delete(s,i,1);
Writeln('Результат: ',s);
end.