СРОЧНО ПОМОГИТЕ ПО ИНФОРМАТИКЕ ! В диапазонк от а до в ( а и в задаются с клавиатуры )...

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

СРОЧНО ПОМОГИТЕ ПО ИНФОРМАТИКЕ ! В диапазонк от а до в ( а и в задаются с клавиатуры ) найти количество чисед , у которых заданное колличеСтво делителей. Паскаль


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

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

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

function ЧислоДелителей(Self: integer): integer;

   extensionmethod;

begin

 Result := 2; // на себя и на 1 число всегда делится

 for var i := 2 to Self div 2 do

   if Self mod i = 0 then Inc(Result)

end;


begin

 var (НижняяГрапница, ВерхняяГраница) :=

 ReadInteger2('Укажите границы диапазона:');

 var ТребуетсяДелителей :=

 ReadInteger('Укажите количество делителей:');

 Range(НижняяГрапница, ВерхняяГраница)

   .Where(t -> t.ЧислоДелителей = ТребуетсяДелителей).Count.Print

end.

Пример

Укажите границы диапазона: 35 210

Укажите количество делителей: 10

6

(654k баллов)
0

Могли бы вы полегче написать? в виде var program integer , без принтов и т.д.