Составить программу REBUS, которая определяет все 4-значные числа на интервале [M, N], удовлетворяющие условиям: a) abcd - 4-цифровое число; b) a, b, c, d - разные цифры; c) ad - cd = a + b + c + d; и подсчитывает общее количество этих чисел.

mani09091 mani09091    3   17.10.2021 08:14    2

Ответы
polina1355 polina1355  30.11.2021 01:39

На Паскале например такая программа это сделает:

program REBUS;

var

M,N,S,a,b,c,d,i: integer;

begin

Write('M= ');

Read(M);

Write('N= ');

Read(N);

S:=0;

for i:=M to N do

if (i>999) and (i<10000) then

begin

a := i div 1000;

b := (i  div 100) mod 10;

c := (i  div 10) mod 10;

d := i mod 10;

if (a<>b) and (a<>c) and (a<>d) and (b<>c) and (b<>d) and (c<>d) then

if a*d - c*d = a + b + c + d then

S:=S+1;

end;

Write('S= ',S);

end.

Кстати, во всём диапазоне 4-значных чисел под эти критерии подходят всего 58 штук. И, вот они все:

2103;  2305;  2406;  2507;  2608;  2709;  3014;  3102;  3216;  3418;  3504;  3519;  3705;  3906;  4026;  4127;  4329;  4503;  4716;  4917;  5012;  5038;  5124;  5139;  5302;  5614;  5703;  5928;  6123;  6135;  6402;  6513;  6537;  6725;  6738;  6903;  6914;  7146;  7234;  7502;  7548;  7836;  8157;  8312;  8345;  8523;  8534;  8602;  8913;  8935;  8947;  9168;  9412;  9456;  9702;  9723;  9745;  9834

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика