lescha-77766
?>

Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6 и оканчивающихся на 2. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6 и оканчивающееся на 2. Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: сумму чисел, кратных 6 и оканчивающихся на 2. Нужно написать на языке питон

Информатика

Ответы

Вершинина1161

# total, всего чисел в последовательности. Зачем? :/

# sequence, последовательность натуральных чисел.

# Для теста sequence можете взять range(30000)

def IsDivisible(digit, n=6): return (digit % n == 0)

def IsLast(digit, n=2): return str(digit).endswith(str(n))

def IsSuitable(digit): return IsDivisible(digit) and IsLast(digit)

required=[digit for digit in sequence if IsSuitable(digit)]

result=sum(required)

print(result)

nsmirnova
Команда 1:
Из числа 1 можно выполнить 2 команды, получится:
1) 1+2=3
2) 1*3=3
Команда 2:
C каждым полученным числом выполняем еще по 2 команды:
Первое число: 1) 3+2=5
2) 6*3=18 
Второе число: 1) 3+2=5
2) 6*3=18
Команда 3:
У нас получилось 4 числа, проделаем то же самое
Первое число: 
1) 5+2=7
2) 5*3=15
Второе число:
1)18+2=20
2)18*3=54
Третье число: 
1) 5+2=7
2) 5*3=15
Четвертое число :
1)18+2=20
2)18*3=54
В итоге, у нас получилось 4 различных числа (так как при выполнении со второй командой, числа получались те же самые)
iburejko7
// PascalABC.NET 3.0, сборка 1076
const
  n=20; { количество дат }
type
  TDate=record
    d:1..31;
    m:1..12;
    y:word
  end;
var
  dates:array[1..n] of TDate;
  i:byte;
  s,st:string;
 
begin
  Randomize;
  for i:=1 to n do begin
    s:='';
    With dates[i] do begin
      d:=Random(27)+1;
      Str(d,st);
      if Length(st)=1 then st:='0'+st;
      s:=s+st+'.';
      m:=Random(12)+1;
      Str(m,st);
      if Length(st)=1 then st:='0'+st;
      s:=s+st+'.';
      y:=Random(51)+1960;
      Str(y,st);
      s:=s+st;
      if m in [3..5] then s:=s+' - весенняя';
      Writeln(s)
    end
  end
end.

Тестовое решение:
22.12.1979
21.10.1975
25.03.1980 - весенняя
23.04.1967 - весенняя
09.10.1967
16.05.1965 - весенняя
09.08.1996
05.10.2001
10.11.1985
18.08.1970
08.10.1983
01.12.2005
01.01.1994
09.11.1962
14.09.1979
24.03.2008 - весенняя
14.01.2003
22.04.1990 - весенняя
18.08.1969
16.05.2009 - весенняя

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

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

Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 6 и оканчивающихся на 2. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 6 и оканчивающееся на 2. Количество чисел не превышает 1000. Введённые числа по модулю не превышают 30 000. Программа должна вывести одно число: сумму чисел, кратных 6 и оканчивающихся на 2. Нужно написать на языке питон
Ваше имя (никнейм)*
Email*
Комментарий*

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

VladimirovnaSimonov
Алена
nikv568734
Lesya
ekaterinapetrenko877529
oalexandrova75
ulyana-d
Руслан Руденко1262
sohrokova809
smartschoolfili6
Olegmgu11986
AnzhelikaSlabii1705
cleopatra1959
titov-es3095
Angelina1139