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