СРОЧНО В Pascal!!!! ДАЮ 98 БАЛЛОВ!!!! Дано натуральное число. Определить: а) количество...

0 голосов
23 просмотров

СРОЧНО В Pascal!!!! ДАЮ 98 БАЛЛОВ!!!! Дано натуральное число. Определить: а) количество цифр 9 в нем; б) сколько раз в нем встречается первая цифра; в) количество нечетных цифр в нем. Составное условие и более одного неполного условного оператора не использовать; г) сумму его цифр, меньших 3; д) произведение его четных цифр, больших четырех; е) сколько раз в нем встречаются цифры 2 и 3 (всего).


Информатика (31 баллов) | 23 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

PascalABC.NET 3.4.2, сборка 1864 от 11.11.2018

Внимание! Если программа не работает, обновите версию!

begin

 var c := ReadlnString;

 if c.Any(t -> not (t in ['0'..'9'])) then

 begin

   Print('Ошибка ввода');

   exit

 end;

 var a := c.Select(t -> t.ToDigit).ToArray;

 Writeln('a) ', c.Where(t -> t = '9').Count);

 Writeln('б) ', a.Where(t -> t = a[0]).Count);

 Writeln('в) ', a.Where(t -> t.IsOdd).Count);

 Writeln('г) ', a.Where(t -> t < 3).Sum);

 Writeln('д) ', a.Where(t -> t.IsEven and (t > 4))

     .Aggregate(1, (p, q)-> p * q));

 Writeln('е) ', a.Where(t -> (t = 2) or (t = 3)).Count);

end.

Пример

1764963253120

a) 1

б) 2

в) 7

г) 6

д) 36

е) 4

Примечание: количество цифр в числе практически не ограничено, контроль на ввод "не-цифр" имеется.

(654k баллов)