// PascalABC.NET 3.1, сборка 1213 от 04.04.2016 begin var s:=ReadlnString('>'); var x:=RegEx.Match(s,'([+-]?\d+\.?\d*([Ee][+-]?\d+)?)').ToString; if x.Length=0 then Writeln('Недопустимая запись числа') else if s=x then Writeln('Допустимая запись числа') else Writeln('Частично допустимая запись: ',x) end.
Тестовые примеры > .3464 Частично допустимая запись: 3464
> -345.534634E-12 Допустимая запись числа
> +34525352552 Допустимая запись числа
> +066464.33435e+34.4325 Частично допустимая запись: +066464.33435e+34
> 45434534,363 Частично допустимая запись: 45434534
> e342 Частично допустимая запись: 342
> ТутСпрятаноЧисло345.54МыЕгоНайдем! Частично допустимая запись: 345.54
Алгоритм такой:
1 шаг: определяем сколько мы получим денег за первые 75 газет.
Пусть n - всего газет, тогда (n-(n-75))*F = A, - рублей за первые 75 газет.
2 шаг: определяем кол.во копеек, которые мы получим за остальные газеты: (n-75)*X = B, - копеек.
Программа на естественном языке:
Переменные:
A, B : целые;
Начало
Введение n (число газет);
Введение F(цена за первые 75 газет);
Введение X(цена за последующие газеты);
A присвоить (n-(n-75))*F;
B присвоить (n-75)*X;
Вывод (Мальчик заработает A рублей B копеек).
Конец.