import java.util.Random;
import java.util.Scanner;
public class Light {
public static void main(String args[]) {
//初始化棋盘
int[][] games = new int[10][10];
Random random = new Random(); //随机打开某些灯
for(int i = 0;i<=20;i++) {
games[random.nextInt(10)][random.nextInt(10)] = 1;
}
ShowGames(games);
while(! IsSuccess(games)) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入行:");
int row = sc.nextInt();
System.out.println("请输入列:");
int col = sc.nextInt();
games[row][col] = 1 - games[row][col];
//改变上方块的颜色
if(row > 0) {
games[row - 1][col] = 1 - games[row - 1][col];
}
//改变下方块的颜色
if(row < games.length-1) {
games[row + 1][col] = 1 - games[row + 1][col];
}
//改变左方块的颜色
if(col > 0) {
games[row][col - 1] = 1 - games[row][col - 1];
}
//改变右方块的颜色
if(col < games[row].length) {
games[row][col + 1] = 1 - games[row][col + 1];
}
ShowGames(games);
}
System.out.println("游戏成功!");
}
//遍历输出棋盘内容
public static void ShowGames(int[][] games) {
for(int i = 0;i<games.length;i++) {
for(int j = 0;j <games[i].length;j++) {
System.out.print(games[i][j]+" ");
}
System.out.println();
}
}
//判断是否成功 循环
public static boolean IsSuccess(int[][] games) {
int sum = 0;
for(int i = 0;i <games.length;i++) {
for(int j = 0;j<games.length;j++) {
sum = sum + games[i][j];
}
}
return sum == 0;
}
}
java实现关灯游戏
最新推荐文章于 2025-05-21 19:46:04 发布