int evens(int x,int y);
int pdiv(int x,int y,int z);
void main(void)
{
clrscr();
cout<<"Enter the number x an y";
int x,y;
cin>>x>>y;
evens(x,y);
getch();
}
int evens(int x,int y)
{
cout<<"Even Numbers between x and y are"<<endl;
for (int z=x;z<y;z++)
{
if(z%2==0) cout<<z<<" "<<pdiv(z,x,y);
}
return 0;
}
int pdiv(int x,int y,int z)
{
cout<<"Positive divisors of the given number are"<<endl;
for(int a=y;a<=z;a++)
{
if(x%a==0)
cout<<a<<" ";
}
}
pdiv(z,x,y)
上記のプログラムでは、evens(x,y)
関数で使用するたびにxとyの値が変化しevens(x,y)
始めます。私が呼ばないときは起こりませpdiv()
んevens()
。関数は独立しており、他の関数の値を変更してはならないことを教えられました。このプログラムに何時間も費やしましたが、何が悪いのかわかりません。
関数が独立した関数として動作しないのはなぜですか?