我写了一个程序,为我的java类复制狂欢游戏。有5个骰子,4,6,8,12和20个侧面。我必须模拟玩游戏100次并计算胜利。运行它的代码一次正常。我无法让它运行100次。
我在编译时遇到这些错误: [第15行] 错误:Carnival类型中的方法dieRoll(int,int,int,int,int)不适用于参数(int) [行:17] 错误:dieRoll无法解析为变量
我正在使用
尝试使用for功能for(int i = 0; i < 100; i++){dieRoll(i);}
{
System.out.println("You rolled a " + dieRoll);
}
任何想法我做错了什么? 这是整个计划:
public class Carnival
{
public static void main(String[] args)
{
int dice1=(int)(4*Math.random()+1);
int dice2=(int)(6*Math.random()+1);
int dice3=(int)(8*Math.random()+1);
int dice4=(int)(12*Math.random()+1);
int dice5=(int)(20*Math.random()+1);
System.out.println(dieRoll(dice1, dice2, dice3, dice4, dice5));
for(int i = 0; i < 100; i++){dieRoll(i);} //Here is where I have the
//errors
{
System.out.println("You rolled a " + dieRoll); //And here
}
}//end main
public static int dieRoll(int dice1, int dice2, int dice3, int dice4, int
dice5)
{
return dice1 + dice2 + dice3 + dice4 + dice5;
}//end method
}//end class
答案 0 :(得分:1)
第一个错误是由于您尝试将1个参数传递给具有多个参数的函数。函数调用语句应该具有函数定义中的确切参数数量。
其次,您正在使用的print语句是直接打印不可能的功能。最好将输出存储在变量中,然后将其打印出来。
答案 1 :(得分:0)
你好如果你通过生成随机数来玩游戏100次,你需要在for循环中添加随机数的计算以生成不同的数字。
for(int i = 0; i < 100; i++)
{
int dice1=(int)(4*Math.random()+i);
int dice2=(int)(6*Math.random()+i);
int dice3=(int)(8*Math.random()+i);
int dice4=(int)(12*Math.random()+i);
int dice5=(int)(20*Math.random()+i);
System.out.println("You rolled : "+dieRoll(dice1,dice2,dice3,dice4,dice5));
}