Найти все совершенные числа до 10000 питон

Получить все совершенные числа

Натуральное число называется совершенным, если оно равно сумме всех своих делителей, за исключением себя самого. Число 6-совершенное, так как 6 = 1 + 2 + 3. Число 8-не совершенное, так как 8 ≠ 1 + 2 + 4. Дано натуральное число n. Получить все совершенные числа, меньшие n.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
#include #include void main() { int n; printf("n: "); scanf("%d",&n); for(int i=6;in;i++) { int sum=1; for(int j=2;ji/2;j++) if(i%j==0)sum+=j; if(sum==i) printf("%d\n",i); } getch(); }

Добавлено через 1 минуту
Правильно?

y = int(input('Укажите верхнюю границу: ')) x = int(input('Укажите нижнюю границу: ')) for i in range(x,y): s = 1 for j in range(2, i // 2 + 1): if i % j == 0: s += j if s == i: print(i)

Найти все совершенные числа, меньшие данного натурального числа n
Натуральное число называется совершенным, если оно равно сумме всех своих делителей, не равных.

Вывести все простые и совершенные числа из диапазона
Помогите пожалуйста! 1) Вводятся натуральные числа A и B. (A<B). Функция печатает через пробел.

Найти и напечатать все совершенные числа в интервале
Число, равное сумме всех своих делителей, включая единицу, называ- ется совершенным. Найти и.

Найти все совершенные числа, меньшие n (n – натуральное число)
Найти все совершенные числа, меньшие n (n – натуральное число). Число – совершенное, если оно.

Эксперт функциональных языков программированияЭксперт Python

ЦитатаСообщение от KaraSandberg Посмотреть сообщение

Эксперт функциональных языков программированияЭксперт Python

Лучший ответ

Сообщение было отмечено KaraSandberg как решение

Решение

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
y = int(input('Укажите верхнюю границу: ')) x = int(input('Укажите нижнюю границу: ')) for i in range(x,y): s = 1 j=2 while(j*ji): if i % j == 0: s += j k=i//j if j !=k: s+=k j+=1 if s == i: print(i)

ЦитатаСообщение от Catstail Посмотреть сообщение

y = int(input(‘Укажите верхнюю границу: ‘))
x = int(input(‘Укажите нижнюю границу: ‘))
for i in range(x,y):
s = 1
j=2
while(j*j <=i):
if i % j == 0:
s += j
k=i//j
if j !=k:
s+=k
j+=1
if s == i:
print(i)

Эксперт функциональных языков программированияЭксперт Python

Даны натуральные числа p и q. Получить все делители числа q, взаимнопростые с p
как исправить, чтобы выводились только те делители, которые взаимнопросты с p? x=int(input(‘x=’)).

Даны натуральные числа m и n, получить все натуральные числа меньшие n, квадрат суммы которых равен m
помогите плиз Даны натуральные числа m и n, получить все натуральные числа меньшие n, квадрат.

Получить все простые числа р
Даны натуральные числа a, b (a ≤ b). Получить все простые числа р, удовлетворяющие неравенствам a ≤.

Получить все простые делители числа
Дано натуральное число n. Получить все простые делители этого числа Перевести на Python CLS.

Получить все меньшие n натуральные числа
Даны натуральные числа n, m. Получить все меньшие n натуральные числа, квадрат суммы цифр которых.

Получить все делители числа q, взаимно простые с p
Даны целые числа p и q. Получить все делители числа q, взаимно простые с p.

Источник

Совершенные числа

Совершенные числа
Написал программу, но выводит не совсем то, чо нужно. Выводит новую строку с цифрой 1 за каждое.

Совершённые числа
Вводится последовательность целых чисел, 0 — конец последовательности. Определить, содержит ли.

Получить все совершенные числа, меньшие n
Натуральное число называется совершенным, если оно равно сумме всех своих делителей, за исключением.

Проверить, есть ли совершенные числа из промежутка [2, n], которые являются полными квадратами
Число называется совершенным, если равно сумме всех своих делителей, кроме самого этого числа.

Пользователь вводит натуральное число N, найти все совершенные числа меньше N
Пользователь вводит натуральное число N, найти все совершенные числа меньше N. примечание.

x, y = [int(i) for i in (input('Укажите границы через пробел: ').split())] def evklid(n): return 2 ** (n - 1) * (2 ** n - 1) for i in range(x, y + 1): if i % 2: if evklid(i) in range(x, y + 1): print(evklid(i))

Если честно, то здесь немного не точный код

Fanago, у вас в 8й строчке ошибка: if i/j == 0. Должно быть if i % j == 0

y = int(input('Укажите верхнюю границу: ')) x = int(input('Укажите нижнюю границу: ')) for i in range(x,y): s = 1 for j in range(2, i // 2 + 1): if i % j == 0: s += j if s == i: print(i)

Источник

Задача — Найти совершенные числа — программирование на разных языках

Задача - Найти совершенные числа - программирование на разных языках

Задача — Найти совершенные числа
— программирование на Pascal, Си, Кумир, Basic-256, Python

Найти все совершенные числа до 10000. Совершенное число — это такое число, которое равно сумме всех своих делителей, кроме себя самого. Например, число 6 является совершенным, т.к. кроме себя самого делится на числа 1, 2 и 3, которые в сумме дают 6.

В цикле, перебирая натуральные числа до 10000,

  1. присвоить переменной, в которой будет накапливаться сумма делителей, 0.
  2. В цикле от 1 до половины текущего натурального числа
    1. пытаться разделить исследуемое число нацело на счетчик внутреннего цикла.
    2. Если делитель делит число нацело, то добавить его к переменной суммы делителей.

    Pascal var
    i,j,s: word;
    begin
    for i := 1 to 10000 do begin
    s := 0;
    for j:=1 to i div 2 do
    if i mod j = 0 then
    s := s+j;
    if s = i then
    write(i,’ ‘);
    end;
    writeln;
    end. 6 28 496 8128 Язык Си #include
    main() {
    int i,j,s,l;
    for (i=2; i s = 0;
    for (j=1; j < i; j++)
    if (i%j == 0)
    s += j;
    if (s == i)
    printf(«%dn», i);
    }
    }

    Если i поделить на 2, то программа работает неправильно. В Питоне такая же проблема.

    Python for i in range(2,10000):
    s = 0
    for j in range(1,i):
    if i%j == 0:
    s += j
    if s == i:
    print(i)

    КуМир алг совершенные числа
    нач
    цел i,j,s
    нц для i от 1 до 1000
    s := 0
    нц для j от 1 до div(i,2)
    если mod(i,j) = 0 то
    s := s + j
    все
    кц
    если s = i то
    вывод i, » »
    все
    кц
    кон

    Невероятно долгий поиск даже до 1000.

    Basic-256 for i=2 to 10000
    s = 0
    for j=1 to i2
    if i%j = 0 then s = s + j
    next j
    if s = i then print i
    next i 6
    28
    496
    8128

    Источник

    Задача — Найти совершенные числа — программирование на разных языках

    Задача - Найти совершенные числа - программирование на разных языках

    Задача — Найти совершенные числа
    — программирование на Pascal, Си, Кумир, Basic-256, Python

    Найти все совершенные числа до 10000. Совершенное число — это такое число, которое равно сумме всех своих делителей, кроме себя самого. Например, число 6 является совершенным, т.к. кроме себя самого делится на числа 1, 2 и 3, которые в сумме дают 6.

    В цикле, перебирая натуральные числа до 10000,

    1. присвоить переменной, в которой будет накапливаться сумма делителей, 0.
    2. В цикле от 1 до половины текущего натурального числа
      1. пытаться разделить исследуемое число нацело на счетчик внутреннего цикла.
      2. Если делитель делит число нацело, то добавить его к переменной суммы делителей.

      Pascal

      var
      i,j,s: word;
      begin
      for i := 1 to 10000 do begin
      s := 0;
      for j:=1 to i div 2 do
      if i mod j = 0 then
      s := s+j;
      if s = i then
      write(i,’ ‘);
      end;
      writeln;
      end. 6 28 496 8128

      Язык Си

      Если i поделить на 2, то программа работает неправильно. В Питоне такая же проблема.

      Python

      for i in range(2,10000):
      s = 0
      for j in range(1,i):
      if i%j == 0:
      s += j
      if s == i:
      print(i)

      КуМир

      алг совершенные числа
      нач
      цел i,j,s
      нц для i от 1 до 1000
      s := 0
      нц для j от 1 до div(i,2)
      если mod(i,j) = 0 то
      s := s + j
      все
      кц
      если s = i то
      вывод i, » »
      все
      кц
      кон

      Невероятно долгий поиск даже до 1000.

      Basic-256

      for i=2 to 10000
      s = 0
      for j=1 to i2
      if i%j = 0 then s = s + j
      next j
      if s = i then print i
      next i 6
      28
      496
      8128

      Источник

      Читайте также:  Cpp long int to string
Оцените статью