В такому вигляді, цикл завершиться не тоді, коли a, b, c отримають потрібні значення, а тоді, коли умова не буде виконуватись (тобто, коли a+b не ділитиметься на c). Тобто, програма або виведе початкові значення (якщо вони відповідають умові) і в наступному циклі, ймовірно, завершиться, або, якщо початкові значення не відповідають умові, завершиться в першому ж циклі й не виведе нічого.
Якщо ж цю умову замінити на зворотню (a + b) % c != 0, а вивід результату зробити не в циклі, а після нього, можливі два варіанти: або програма дійде до потрібного набору чисел a,b,c й виведе результат, або зациклиться.
Що мені ще не подобається: всі три числа змінюються одночасно (тобто, при першому проході a,b,c матимуть значення 1,1,2, потім 2,2,3, потім 3,3,4 і т.д.), тоді як варто було б їх змінювати незалежно в деякому діапазоні (напр., від 2 до 10 кожне), зробивши вкладені цикли. У внутрішньому циклі зробити перевірку умови з допомогою if — якщо умова виконується, вивести результат і завершити роботу.