永发信息网

如何在java中表达一个数在正负百分之二十间浮动

答案:2  悬赏:30  手机版
解决时间 2021-01-25 02:44
如何在java中表达一个数在正负百分之二十间浮动
最佳答案
以int类型为例。10的浮动范围+-20%,那么就是8~12
-10的浮动范围+-20%,那么就是-12~-8
参考核心代码
public static int fun1(int x,double fd) {
int y = (int) (Math.random() * (x + (x >= 0 ? 1 : -1)) * fd) * (Math.random() > 0.5 ? 1 : -1);
return x + y;
}完整的代码
public class Demo {
public static void main(String[] args) {
double fd= 0.2;//浮动的范围
int x = 10;//需要浮动的数字
//int x = -10;
for (int i = 0; i < 50; i++) {//循环50次,方便查看浮动的结果
System.out.println(fun1(x,fd));//调用方法一
//System.out.println(fun2(x,fd));//调用方法二
}
}
//方法一:写法比较简洁,不太好理解
public static int fun1(int x,double fd) {
int y = (int) (Math.random() * (x + (x >= 0 ? 1 : -1)) * fd) * (Math.random() > 0.5 ? 1 : -1);
return x + y;
}
//方法二:写法比较啰嗦,但是好理解
public static int fun2(int x,double fd){
int y;
int num;
if(x>=0){
y  = (int)(Math.random()*(x+1)*fd);
}else{
y  = (int)(Math.random()*(x-1)*fd);
}
double z = Math.random();
if(z>0.5){
num = x+y;
}else{
num = x-y;
}
return num;
}
}运行输出
浮动后的值是:11
浮动后的值是:10
浮动后的值是:12
浮动后的值是:10
浮动后的值是:10
浮动后的值是:8
....
全部回答
import java.util.Scanner;import java.lang.System;public class MyMain { public static void main(String[] args) { int positive1=0;//正数 positive number 负数 Negative int Negative1=0;//正数 positive number 负数 Negative int zero1.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
单纯性甲状腺肿与自身免疫性甲状腺炎的鉴别点
德化县公安局地址好找么,我有些事要过去
昭碧霞弹奏献唱,屈原看的入迷,亲切称爱妻时
【顺磁性与抗磁性】什么是顺磁性,反磁性,抗磁
我的车子只交了交强险 再一次对方强行超车时
【前四史】以下哪部书不属于前四史之一?()
请问宜兴紫砂壶有收藏的价值吗?
凌肯摩托车125系列报价及图片
择天记哪集比较好笑
额头左上角有痣
一个直角三角形边差5厘米,面积是7平方厘米,求
1+2-3+4+5-6+7+8-9+......+601+602-603+604+6
月亮是从哪边升起的?
我刚买的雅培一段奶粉,怎么摸起来有种粘粘的
四年级课本21课《跨越海峡的生命桥》小钱遇到
推荐资讯
进货的数量计算 有什么好的软件吗?
同一辆车能挂几本驾驶证
【非负整数包括0吗】0是非负整数吗?
各个汽车集团所拥有的品牌,包括世界上各种名
ryzen71800x 需要什么主板
如何在黄坝岭坐地铁去坂田五和中路
在翻译王勃《滕王阁序》中“十旬休假,胜友如
沅江市益阳沅江市园林管理处这个地址怎么能查
下列句中没有反义词的一项是A. 耳朵里有不可
求品牌铝合金窗花推荐。
女同桌她说她困了,想靠在我的肩膀上睡一会儿
锦江之星 北京王府井店怎么样
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?