Другие языки программирования и технологии
как решить через abc pascal задачу "Дано натуральное число n. Получить все простые делители этого числа"
как решить через abc pascal задачу "Дано натуральное число n. Получить все простые делители этого числа"
Считаете цикл от 2 до n/2. На каждом шаге делите, пока остаток равен нулю и выводите на экран. Простые числа так и пойдут.
Александр: Остаток деления на 1 любого числа - нуль, так что ваша программа не сработает :)
Плюс к примеру у числа 8 - простые множители - 2*2*2, а у вас 2*4.
Зло: На самом деле, если брать и делить тоже самое 24 (2*2*2*3) (к примеру) на 2, пока остаток нуль, то дальше на числа кратные 2-м мы уже не поделим (поделили на первой итерации) , то есть 4, 8 и прочие просто пройдут мимо.
Александр: Остаток деления на 1 любого числа - нуль, так что ваша программа не сработает :)
Плюс к примеру у числа 8 - простые множители - 2*2*2, а у вас 2*4.
Зло: На самом деле, если брать и делить тоже самое 24 (2*2*2*3) (к примеру) на 2, пока остаток нуль, то дальше на числа кратные 2-м мы уже не поделим (поделили на первой итерации) , то есть 4, 8 и прочие просто пройдут мимо.
Есть простой метод и сложный метод. Простой метод: проходим все числа от 2 до n/2 -1 и делим n на это число. Если делится, то результат деления в n, а делитель запоминаем. Пока n не поделится до 1.
Проще простого… Главное знать с чего начать:
Введите N = 123456
Число 123456 можно разложить на простые множители: 2x3 + 3 + 643
Введите N = 123457
Число 123457 простое.

Введите N = 123456
Число 123456 можно разложить на простые множители: 2x3 + 3 + 643
Введите N = 123457
Число 123457 простое.

мне одному кажется, что перечисленными методами вы найдете делители, но не убедитесь в том, что они простые?
т. е. найдя делитель, не надо сразу его выводить. делаешь еще 1 цикл от 2 до x/2 и проверяешь, что у х нет делителей. тогда - простое.
т. е. найдя делитель, не надо сразу его выводить. делаешь еще 1 цикл от 2 до x/2 и проверяешь, что у х нет делителей. тогда - простое.
for i : = 1 to n do if n mod i = 0 tnen inc ( count )
Похожие вопросы
- Дано натуральное число m.Переставьте местами первую и вторую цифры этого числа Pascal ABC.NET
- Дано натуральное число n и вещественная матрица размера n X 9 . Плиз помогите(
- Помогите пожалуйста!Паскаль. Дано натуральное число N. Получить наименьшее число вида 2(m в степени), превосходящее N.
- Дано натуральное число N. Напечатать все его делители.
- Дано натуральное число п. Найти знакочередующуюся сумму цифр числа n:
- Решите задачу! Дано целое число n найдите сумму 1^n +2^n-1 + 3^n-2 ...+n^1
- Дано натуральное число n. Найти и вывести все числа в интервале от 1 до n -1, у которых произведение всех цифр совпадает
- Помогите плз решение задачи по Паскулю!!! Дано натуральное число и определить яв-ся ли оно простым.
- Помогите с Pascal. Дано натуральное число. Определите сумму m его последних цифр отличных от 0
- Помогите написать программу Дано натуральное число n. Вычислить сумму всех k(k+1), k меняется от 1 до n.