Не могу получить сумму кратных 2 числам
Я пытаюсь получить сумму кратных 2 числам, заданным пользователем, но полученное число неверно,вот пример того, что я пытаюсь сделать:
Попытка найти сумму кратных 19 или 17 под 747
Например, если мы перечислим все натуральные числа ниже 10, кратные 3 или 5, мы получим 3, 5, 6 и 9. Сумма этих кратных равна 23.
Может быть,что-то не так с моей логикой, но я думаю, что 2 цикла while запускаются еще раз, прежде чем сломаться.Итак, как я могу заставить циклы while выйти до того, как сумма первых кратных будет больше максимального числа, заданного пользователем?
Что я уже пробовал:
#include <stdio.h> void main() { int n1,n2,n3, inc1,inc2,sumt,sum1,sum2,t1,t2; inc1 = 1; inc2 = 1; sum1 = 0; sum2 = 0; sumt = 0; t1 = 0; t2 = 0; printf("type first number: "); scanf("%d", &n1); printf("\ntype second number: "); scanf("%d",&n2); printf("\ntype max number: "); scanf("%d", &n3); while (sum1 < n3) { t1 = n1*inc1; sum1 = sum1 + t1; inc1++; } while (sum2 < n3) { t2 = n2*inc2; sum2 = sum2 + t2; inc2++; } sumt = sum1 + sum2; printf("\n the sum of the multiples %d", sumt); getchar(); getchar(); }
Richard MacCutchan
Я пробовал ваш код с выбором значений, и он всегда дает правильный ответ. Пожалуйста, покажите значения, которые вы вводите, и результат, который вы видите.