如图:编写一个自定义函数:intf(i艘绒庳焰ntM,intN),f()的功能是:对给定的正整数M和N,找出满足方程“7x+4y=M”的正整数解中x是偶数且y是奇数的解,其中:x,y属于[1,N]的范围。?要求:若M和N不都是正整数,则结束函数并返回-1;只有M和N都是正整数时,才继续求解操作,用二重循环进行求解:(1)在函数中输出满足条件的正整数解x和y,(2)并且使函数值返回满足条件的正整数解的组数。
工具/原料
C++编译器
一、答案:
1、程序如下:#include<iostream.h>int f(int M,i艘绒庳焰nt N){ int x,y,i=0稆糨孝汶; for(x=2;x<=N;x+=2) for(y=1;y<=N;y+=2) {if(7*x+4*y==M) { cout<<"x="<<x<<" y="<<y<<endl;i++;}}if(i!=0)return i;else return -1;}int main(){ int M,N; cin>>M>>N; cout<<f(M,N)<<endl; return 0;}
2、运行结果:
二、说明:
1、此题仍然用穷举法,
2、判断等式成立,并输出:if(7*x+4*y==M){ cout<<x<<" "<<y<<endl;i++;}}
3、判断情况是否存在,并给出返回值:if(i!=0)return i;else return -1