Все делители кратные целым числам - C#
Формулировка задачи:
Добрый день, помогите с задачей. Заранее всем спасибо!
Для заданного натурального числа N вывести на экран все делители кратные целым числам С и D одновременно;
Программа работает через алгоритм Евклида. Не знаю как ее переделать через перебор.
И кто может подсказать по условию, верно ли я выдаст:
N: 8
C: 2
D: 4
Выдать должно было быть 1,2 ?
using System; namespace JDD { class Program { static long EuclidGCD(long arg1, long arg2) { if (arg1 == 0 || arg2 == 0) { return 0; } long tmp = 0; while (arg2 != 0) { tmp = arg1 % arg2; arg1 = arg2; arg2 = tmp; } return arg1; } static void Main(string[] args) { Console.WriteLine("Введите (N):"); long N = Convert.ToInt64(Console.ReadLine()); Console.WriteLine("Введите второе делимое (C):"); long C = Convert.ToInt64(Console.ReadLine()); Console.WriteLine("Введите третье делимое (D):"); long D = Convert.ToInt64(Console.ReadLine()); Console.WriteLine("Общие делители данного набора чисел:"); long CommonDivisor = EuclidGCD(EuclidGCD(N, C), D); for (long i = 1; i < CommonDivisor; i++) { if(CommonDivisor % i == 0) { Console.WriteLine("{0}", i); } } Console.WriteLine("{0}", CommonDivisor); Console.ReadKey(); } } }
Решение задачи: «Все делители кратные целым числам»
textual
Листинг программы
Дано: N:1000 C:100 D:10 Ищем: nod = 100; N/2 = 500; N%(nod*1)==0 N%(nod*2)==0 N%(nod*3)!=0 N%(nod*4)!=0 N%(nod*5)==0
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д