#include<iostream>
using namespace std;
int c;
int fun_div();
int fun_div(int a,int b){
if(a%b==0){
c=1;
cout<<"Solution Available :\t"<<c;
} else
{
c=0;
}
return c;
}
int main(){
int c;
int e,d;
cout<<"enter two values : \n";
cin>>e>>d;
cout<<endl;
}
ошибка при поиске мода из двух чисел и не компиляции программы:
ошибка при поиске мода из двух чисел и не компиляции программы
Это компилирует для меня
#include<iostream>
using namespace std;
int c;
int fun_div();
int fun_div(int a,int b)
{
if(a%b==0){
c=1;
cout<<"Solution Available :\t"<<c;
} else {
c=0;
}
return c;
}
int main(){
int c;
int e,d;
cout<<"enter two values : \n";
cin>>e>>d;
fun_div(e,d);
cout<<endl;
}
Вы должны поместить сообщение об ошибке при запросе об ошибках компиляции. Однако я скопировал ваш код точно, и он компилируется.
Другое дело, что вы не вызываете свою функцию, поэтому я также добавил это.
И, как примечание, вы могли бы просто сделать
int fun_div(int a, int b)
{
return (a%b == 0);
}
так как (a%b == 0)
будет оцениваться до 1, если a
кратно b и 0 в противном случае.
#include<iostream>
using namespace std;
int c;
int fun_div();
int fun_div(int a,int b)
{
if(a%b==0){
c=1;
cout<<"Solution Available :\t"<<c;
}
else
{ c=0; }
return c;
}
int main()
{
int e,d;
cout<<"enter two values : \n";
cin>>e>>d;
c=fun_div(e,d);
cout<<endl;
}
Попробуй это. Я думаю, это то, что вы ожидали.
Пожалуйста, объясните свой вопрос, чтобы получить более конкретный ответ.
Я добавил вызов функции к функции fun_div.
вам, вероятно, следует добавить еще одну проверку, для которой больше. Чем больше проверка, тем больше будет доступного остатка
Ну, главная проблема в вашем коде состоит в том, что вы не вызываете функцию, которую вы определили, поэтому вы не получаете желаемый результат, и есть несколько лучших практик для написания кода, которым вы должны следовать, чтобы избежать ошибок в будущем.
Не используйте глобальную переменную, и если вы возвращаете результат из функции, то выводите ее на экран из основной функции.
Рекомендованный код приведен ниже, я изменил функцию, поэтому он будет только проверять, делится ли «a» на «b» или нет, и возвращает значение main, чтобы отобразить результат на экране.
#include<iostream>
using namespace std;
int fun_div(int a, int b)
{
return (a%b == 0);
}
int main() {
int e, d;
cout << "enter two values : ";
cin >> e >> d;
if (fun_div(e, d))
{
cout << "Solution Exists.";
}
else
{
cout << "No Solution Exists.";
}
cout << endl;
return 0;
}