Closed. This question needs to be more focused。它当前不接受答案。
                        
                    
                
            
        
            
        
                
                    
                
            
                
                    想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
                
                    4年前关闭。
            
        

    

我想用C ++中的类表示所有非理性数字。

我怎样才能做到这一点?我的数据成员和职能应该是什么?

提前致谢...

最佳答案

我认为您可能能够实现这种性质的唯一方法是使用标识符,而不是实际的数学或数字表示形式。即使在纯数学中,由于给定的假设,无理数也被标记为无理数。甚至一个人也无法用数字真正代表一个非理性数字。因此,我唯一可以建议的是拥有一个已知无理数的标识符,例如:

enum Irrational {
    PI = 0,
    E,
    SQRT2,

    ...

};


然后,您可能希望将它们与这样的地图建立关联:

std::map<Irrational, double> myIrrationals;
myIrrations.insert( std::make_pair<Irrational, double>( PI, 3.141592654 ) );


然后,如果在此地图中找到无理数,则检查为true,否则为false。

08-06 12:09