# include <iostream.h>
int fact(int n,int & rSquare,int & rCubed)   //求一个数的平方,立方并返回他们的值!
                                                               //问题1:这里的n也可以写成为&n后程序输出相同!!为什么?
{
    if( n>20 ||n<0){
        cout<<"输入错误"<<endl;
        return 1;   }
    else  {
     cout<<"输入正确"<<endl;     
        rSquare=n*n;
          rCubed=n*n*n;
          return 0;}
}
void main()
{
    int num,squ,cub,error;
 cout<<"please input num(0--20):\n";
 cin>>num;
 error=fact(num,squ,cub);          //问题2:这个逻辑费解!是不是if (error)指代fact中的 if( n>20 ||n<0)?
 if (error)
     cout<<"error encounted ...:\n";
 else
 {
     cout<<"num:"<<num<<endl;
     cout<<"squ:"<<squ<<endl;
     cout<<"cub:"<<cub<<endl;
 }
}



											
	    

	

											