- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我正在开发一个黑 jack 程序,但我有点卡住了。我会警告大家,我对编程真的很陌生,而且,我正在项目中期......所以有一些松散的结局和未使用的变量,以及一些不必要的逻辑(用于测试),但这就是我需要帮助的内容与。
1) 我使用 Math.random 来充当一副牌,起初它似乎工作正常......但在第二次点击之后,很明显以前的牌值被当前的牌取代值(value)。如果你画了一个 3,5,9...数组将读取 9,9,9 而不是 3,5,9。
2) Eclipse 指出变量 user_total(在方法 user_hand 中)和 Dealer_total(在方法 Dealer_hand 中)无法返回到 main,因为它们“无法解析为变量”。我不明白为什么,据我所知,它们是正常的整数。
抱歉,如果它的格式很奇怪,stackoverflow 正在提示一些事情......这是我的代码:
public class blackJack
{
final static int DEALER_STAND_THRSH = 17;
final static int MAX_CARD_VALUE = 10;
static Random randomNumbers = new Random();
public static void main(String[] args)throws IOException
{
BufferedReader in;
in = new BufferedReader (new InputStreamReader (System.in));
int number_of_hits=0;
boolean still_playing=true;
while (still_playing)
{
//tracks number of hits----------------------------------
number_of_hits ++;
System.out.println("this is draw : " + number_of_hits);
System.out.println(" ");
// gets users
int user_total=user_hand(number_of_hits);
//get dealers card----------------------------------------
int dealer_total=dealer_hand(number_of_hits);
//ask user if they'd like to hit or stand
System.out.println("\nwould you like to hit or stand?\nenter:H to hit\nenter:S to stand");
char hit_or_stand=in.readLine().charAt(0);
char hit_or_stand_case = Character.toLowerCase(hit_or_stand);
if (hit_or_stand_case=='s')
{
//compare cards
who_wins(user_total,dealer_total );
}
// continue game prompt --------------------------------
System.out.println("are you still playing? enter 1 for yes. 2 for no.");
int still_playing_response = Integer.parseInt(in.readLine());
if(still_playing_response==1)
{
still_playing=true;
}
else
{
still_playing=true;
System.out.println("goodbye");
}
}//while end
}//main end
public static int generate_a_card()
{
Scanner input = new Scanner(System.in);
int card=randomNumbers.nextInt(MAX_CARD_VALUE) +1 ;
return card;
}
public static int user_hand(int number_of_hits)
{
int user_card=generate_a_card();
System.out.println( "you drew: " + user_card );
int user_current_hand [] = new int [number_of_hits];
for (int i=0; i<user_current_hand.length; i++)
{
user_current_hand [i]= user_card;
System.out.println( user_card + " has been stored in index " + i + " of user_current_hand array");
int user_total=0;
for(int j=0; j<user_current_hand.length; j++)
{
user_total+= user_current_hand[i];
if (user_total>21)
{
System.out.println("you have exeeded 21, you lose!");
}//if end
}//nested for loop
}//first for loop
return user_total;
}//end user_hand method
public static int dealer_hand(int number_of_hits )
{
System.out.println("-----------------------------------------\n");
System.out.println("now for the dealers draw");
System.out.println(" ");
int dealer_card=generate_a_card();
System.out.println( "the dealer drew: " + dealer_card);
int dealer_current_hand [] = new int [number_of_hits];
for (int i=0; i<dealer_current_hand.length; i++)
{
dealer_current_hand [i]= dealer_card;
System.out.println( dealer_card + " has been stored in index " + i + " dealer_current_hand array");
int dealer_total=0;
for(int j=0; j<dealer_current_hand.length; j++)
{
dealer_total+= dealer_current_hand[i];
if (dealer_total>21)
{
System.out.println("the dealer has exeeded 21, you win!");
}//if end
}//nested for loop
}//first for loop
return dealer_total;
}//end main
public static void who_wins(int user_total, int dealer_total )
{
if(user_total > dealer_total)
{
System.out.println("congradulations, you won!\nYour score: " + user_total + "\ncomputer's score: " + dealer_total);
}
else if(user_total < dealer_total)
{
System.out.println("Sorry, you lost.\nYour score: " + user_total + "\ncomputer's score: " + dealer_total);
}
else
{
System.out.println("this round was a tie!\nYour score: " + user_total + "\ncomputer's score: " + dealer_total);
}
}
}
最佳答案
dealer_total 和 user_total 在 for 循环内声明,并在返回之前超出范围。这就是 eclipse 提示的原因。
关于java - 有点卡在简单的黑 jack 程序上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9059890/
Google已正式发布其博客http://android-developers.blogspot.fr/2014/12/hello-world-meet-our-new-experimental.ht
我正尝试按照本文 https://developer.android.com/preview/j8-jack.html 中的步骤在我的 Android 项目中启用 Jack 工具链但只要我添加 and
系统:ubuntu 18.04 环境:VirtualBox 第一次在Ubuntu 18.04上编译AOSP源码,通过,第二次编译失败。 这是一条错误消息。 [ 10% 538/4980] Ensuri
我在使用最新的 Android Studio(预览版 4)和使用 Jack 进行编译时遇到问题。 我收到这个错误: FAILURE: Build failed with an exception. *
如 developer.android 网站所述 "The Jack toolchain is deprecated, as per this announcement. If your projec
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 8年前关闭。 Improve this qu
我使用的是 Android Studio 版本 v2.1.2,当我尝试签署发布版本时 Proguard 不起作用,构建严重失败。 According to this link from develop
尝试在 python 中使用 pyaudio 时出现以下错误。 Python 2.7.10 (default, Oct 14 2015, 16:09:02) [GCC 5.2.1 20151010]
升级我的项目以启用 Jack 和 Java8 功能后,我的 16gb macbook 似乎无法再构建我的项目。我看到内存使用率越来越高,但进程总是卡在同一点。 我的 Gradle 控制台: Execu
假设我拥有一个社交媒体网站。我想实现一个 iframe,允许用户通过第 3 方网站注册我的网站 - 很像 facebook 的“like this”iframe,但用于注册。 (顺便说一句,这只是一个
我正在尝试在 Eclipse 中编写一个黑 jack 程序,但当该程序处理 Ace 时遇到问题。我询问用户是否希望 A 值 1 或 11。确实如此,但当我输入值时,它会给出错误消息 "Exceptio
我正在使用 ROS 运行大量 docker 容器,用于控制机器人。其中一个容器必须通过 sound_play 包播放一些音频文件。但是它返回错误 Cannot connect to server so
所以我正在开发一个黑 jack 程序,但我有点卡住了。我会警告大家,我对编程真的很陌生,而且,我正在项目中期......所以有一些松散的结局和未使用的变量,以及一些不必要的逻辑(用于测试),但这就是我
我不太确定如何解决。所以我正在编程 blackJack 并且我有我的函数声明(如图所示),对于我的 add_card_to_hand 函数,我不知道该怎么做。我有 2 个参数,一手牌是我通过引用传递的
我正在尝试在 Jack 中设置回调函数。这通常非常简单,使用函数“jack_set_process_callback”(在设置“process”回调的情况下)。 API中的定义是这样的: int ja
我目前无法将 Jack 集成到我的 QUnit 中。除了不知道从哪里开始,我也对如何实际使用它感到困惑 (Jack)。网络上没有很多示例,所以我想知道是否有人有使用 Jack 模拟 AJAX 调用/通
Android Studio 2.2 Gradle Android 工具 2.2.0 Gradle Wrapper 2.14.1-all 我正在使用 apt 插件编译 ButterKnife(版本 8
我需要像这样的兔子聚类的建议,任何人都可以提供引用。 有服务器 1 和 2,那里有大耳兔服务器 1 和 2。每个 jack 兔服务器创建一个 jack 兔文件夹。 如果server1访问jack ra
我在黑 jack 游戏中需要帮助。我在数组中有一副牌,每次我取出一张牌并处理它时,数组都会被重新分配为小于大小的一个。所以我有这个循环,向每个第 n 个玩家发两张牌 deck=crea
我在 HP Pavilion dm1 4200sg 上网本上运行 Ubuntu 12.04 工作室。这几乎是一个全新的安装。我尝试通过运行 来启动 jackd 服务器 jackd -R -d alsa
我是一名优秀的程序员,十分优秀!