million2003
?>

Вычислите для первых n элементов: a) 1+3+5+7+ и 1*3*5*7*; b)2+4+6+8+ и 2*4*6*8*; c)3+6+9+12+ и 3*6*9*12*; d)4+8+12+ и 4*8*12*16*; например: при n=3 имеем 1+3+5=9; 1*3*5=15.

Информатика

Ответы

elaginaelena70
// PascalABC.NET 3.2, сборка 1399 от 08.03.2017
// Внимание! Если программа не работает, обновите версию!

procedure L(s:sequence of integer);
begin
  s.Print(',');
  Writeln(': S=',s.Sum,', П=',s.Aggregate(BigInteger(1),(p,q)->p*q))
end;

begin
  var n:=ReadInteger('n=');
  L(Range(1,2*n-1,2));
  L(Range(2,2*n,2));
  L(Range(3,3*n,3));
  L(Range(4,4*n,4))
end.

Пример
n= 10
1,3,5,7,9,11,13,15,17,19: S=100, П=654729075
2,4,6,8,10,12,14,16,18,20: S=110, П=3715891200
3,6,9,12,15,18,21,24,27,30: S=165, П=214277011200
4,8,12,16,20,24,28,32,36,40: S=220, П=3805072588800
olarina6510
В 7-ричной системе счисления используются 7 разных цифр.
1) Найдём сначала количество всех возможных 5-значных чисел.
На первом месте в числе может стоять любая из 7 цифр, кроме 0, то есть 6 вариантов.
На втором, третьем, четвертом и пятом местах может стоять любая из 7 цифр, то есть по 7 вариантов на каждое место.
Всего возможных чисел: 6*7*7*7*7=14406
2) Найдём теперь количество чисел, у которых строго ВСЕ цифры разные.
На первом месте в числе может стоять любая цифра, кроме 0, то есть 6 вариантов.
На втором месте может стоять любая из 6 оставшихся, то есть тоже 6 вариантов.
На третьем месте может стоять любая из 5 оставшихся, то есть 5 вариантов.
На четвертом месте может стоять любая из 4 оставшихся, то есть 4 варианта.
И, наконец, на пятом месте может стоять любая из 3 оставшихся, то есть 3 варианта.
Всего возможных чисел: 6*6*5*4*3=2160
3) Теперь найдём искомое количество чисел, у которых НЕ ВСЕ цифры разные:
14406 - 2160 = 12246
ответ: 12246
vanvangog199826
Более изящное решение :)

Проблема в строке c:= (b*b*b);
Ты ищешь сумму кубов, а для 4-значных чисел нужно искать сумму 4-х степеней. Нужно проверять число а: если от 100 до 999, то выполняем c:= (b*b*b); а если от 1000 до 9999, то выполняем c:= (b*b*b*b); 

Код ниже работает и выдаёт результат:
число Армстронга ==> 153
число Армстронга ==> 370
число Армстронга ==> 371
число Армстронга ==> 407
число Армстронга ==> 1634
число Армстронга ==> 8208
число Армстронга ==> 9474


var a,b,c,d,a2:integer;
begin
for a:=100 to 9999 do begin
d:=0;
a2:=a;
while (a2 <> 0) do begin
b:= a2 mod 10;
a2:= a2 div 10;
if a<1000 then c:= (b*b*b)
      else c:= (b*b*b*b);
d:= d+c;
end;
if (a = d) then writeln('число Армстронга ==> ', a);
end;
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Вычислите для первых n элементов: a) 1+3+5+7+ и 1*3*5*7*; b)2+4+6+8+ и 2*4*6*8*; c)3+6+9+12+ и 3*6*9*12*; d)4+8+12+ и 4*8*12*16*; например: при n=3 имеем 1+3+5=9; 1*3*5=15.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

svo1961
kagurkina
gri-7410
Альберт Луиза1595
Chervonnaya-Aleksei
Жукова_Петрович1281
araqsyabadalyan1988
bufetkonfet53
vlsvergun59
Анатольевич447
antrotip
Georgievna
Алена
VASILEVNA
ogofman