怎么才能输入结果乘三然后随机返回三个数
例
输入801.5
返回2404.5
返回 801.7 802.1 800.7
三个数存放数组中,返回数组。
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner in=new Scanner(System.in);
double nums[]=getNums(in.nextDouble());
System.out.println("乘3结果为:"+nums[0]);
System.out.print("返回:");
for (int n=1;n<nums.length;n++) {
System.out.print(String.format("%.1f",nums[n])+" ");
}
}
public static double[] getNums(double num){
double nums[]=new double[4];
nums[0]=num*3;
nums[1]=(int)(Math.random()*20)/10.0+800;
nums[2]=(int)(Math.random()*20)/10.0+800;
nums[3]=nums[0]- nums[1]- nums[2];
return nums;
}
}
你是要输入一个平均值,然后反过来输出三个数,其平均值是输入的平均值,然后在输出三个数的总和吗?需求要明确一点
前两个数可以随机,第三个数等于输入数乘以3减去前两个数就可以了
举个例子
import random
a=100 #假设这个数是100
x=2 #输入2
a=a*x
n=0
while n<x-1 :
b = random.randint(0,a)
a-=b
print(b)
n+=1
if a!=0:
print(a)
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
float myrand(float a, float b)
{
return a + (b - a) * rand() / RAND_MAX;
}
int main()
{
float a, b, c, avg, sum;
srand(time(NULL));
scanf("%f", &avg);
sum = avg * 3;
printf("%.1f\n", sum);
a = avg + myrand(-1.0, 1.0);
b = avg + myrand(-1.0, 1.0);
c = sum - a - b;
printf("%.1f %.1f %.1f\n", a, b, c);
return 0;
}
$ gcc -Wall main.c
$ ./a.out
801.5
2404.5
801.6 800.8 802.1