C++ Can';我的代码不能用十进制精度除法

C++ Can';我的代码不能用十进制精度除法,c++,C++,我试图写一个素数识别符,但每次我试图将输入的数字除以,它就不会变成小数。我试过使用双变量和浮点变量。我是个初学者,所以我可能需要问一些关于你答案的问题。下面是代码(looper是我用于while函数以保持其运行的数字) #包括 int main(){ int输入=0; 浮动结果=0; int-looper=2; std::cout>输入; 如果(输入=1或输入=0){ std::cout算术计算有一些规则 如果任何操作数是float或double,则结果将分别截断为float或double类型

我试图写一个素数识别符,但每次我试图将输入的数字除以,它就不会变成小数。我试过使用双变量和浮点变量。我是个初学者,所以我可能需要问一些关于你答案的问题。下面是代码(looper是我用于while函数以保持其运行的数字)

#包括
int main(){
int输入=0;
浮动结果=0;
int-looper=2;
std::cout>输入;
如果(输入=1或输入=0){

std::cout算术计算有一些规则

  • 如果任何操作数是
    float
    double
    ,则结果将分别截断为
    float
    double
    类型(int
  • 如果任何操作数是
    long
    类型,则结果将被截断为
    long
    类型(int
但是,您可以在这里做更好的选择(使用模数运算符
%
),如下所示:

if(输入%looper==0){
//复合材料案例
//换句话说,输入值完全可以被活套的当前值整除
}
否则{
//输入值不能完全被活套的当前值整除
//这意味着存在一个余数
}

虽然您将素数的
printf
语句放在了错误的位置,但您提供的算法可以改进以确定整数是否为素数。

有一些算术计算规则

  • 如果任何操作数是
    float
    double
    ,则结果将分别截断为
    float
    double
    类型(int
  • 如果任何操作数是
    long
    类型,则结果将被截断为
    long
    类型(int
但是,您可以在这里做更好的选择(使用模数运算符
%
),如下所示:

if(输入%looper==0){
//复合材料案例
//换句话说,输入值完全可以被活套的当前值整除
}
否则{
//输入值不能完全被活套的当前值整除
//这意味着存在一个余数
}

尽管您将prime数字的
printf
语句放在了错误的位置,但您提供的算法可以得到改进,以确定整数是否为prime。

由整数dvided的整数返回整数,即使您将其分配给浮点。请先将其中一个整数转换为浮点,然后再将其division将返回一个浮点。输入和循环器都是
int
,而不是
double
float。
当您进行除法时,
std::cout Integer math的结果返回值是整数值,整数没有小数点。您应该阅读笔记或书籍以查看数据类型部分。也要注意请注意,一旦您开始在浮点中进行dealimg,您就会遇到各种有趣的算术问题,即使您将整数指定给浮点,整数D也会返回整数。首先将其中一个整数转换为浮点,然后除法将返回浮点。输入和循环器都是
整数
,而不是
双精度
de>浮点。
当您进行除法时,
std::cout Integer math的结果返回值会产生整数值,并且整数没有小数点。您应该阅读笔记或书籍以查看数据类型部分。还应注意,一旦您开始在浮点中进行dealimg,您就会遇到各种各样与arithmet有关的有趣问题ic更新了ans更新了ans