Условие задачи:
Ниже записана программа, которая вводит натуральное число x, выполняет преобразования, а затем выводит результат. Укажите наименьшее значение x, при вводе которого программа выведет число 64.
Код программы на Питоне:
x = int(input())
a = 3*x + 67
b = 3*x - 61
while a != b:
if a > b:
a -= b
else:
b -= a
print(a)
Код программы на плюсах:
#include<iostream>
using namespace std;
int main()
{
int x, a, b;
cin >> x;
a = 3*x + 67;
b = 3*x – 61;
while (a != b) {
if (a > b)
a -= b;
else
b -= a;
}
cout << a << endl;
}
Я пишу на Си, поэтому переписал программу на него:
int func(int x)
{
int a, b;
a=3*x+67;
b=3*x-61;
while(a!=b)
{
if(a>b) a-=b;
else b-=a;
}
return a;
}
Далее я написал следующее:
int main()
{
int num;
num=0;
while(func(num)!=64) num++;
printf("%d", num);
}
При запуске программы ничего не происходит. Что я делаю не так? Всегда эти задачи решал таким образом.
Ссылка на задачу:
https://kpolyakov.spb.ru/school/ege/gen.php?action...