敲七游戏-java

题目描述:
写程序无聊,玩个游戏,从1开始喊数,数到含7或者是7的倍数的要拍键盘!
那么问题来了,请你:输出7和7的倍数,还有包含7的数字例如(17,27,37…70,71,72,73…)

输入:
一个整数N。(N不大于30000)

输出:
统计出不大于N的与7有关的数字的个数。如20以内与7有关的数为7、14、17共3个。

样例输入:
20

样例输出:
3

解题思路:
正确找到7和7的倍数,还有包含7的数字!!!

i%7==0||i%10==7||i%100==7||i%1000==7||i/10==7||i/100==7||i/1000==7||(i%100)/10==7||(i%1000)/100==7||(i%10000)/1000==7

完整代码:

import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N =sc.nextInt();
		int count=0;
		for(int i=1;i<=N;i++)
		{
		    if(i%7==0||i%10==7||i%100==7||i%1000==7||i/10==7||i/100==7||i/1000==7||(i%100)/10==7||(i%1000)/100==7||(i%10000)/1000==7)
		    {
		        //System.out.print(i+" ");
		        count++;
		    }
		}
		System.out.println(count);
	}
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
游戏开发中,往往需要提供游戏暂停和恢复的功能,方便玩家在游戏过程中进行操作。本文将介绍如何在Java游戏开发中实现空格键暂停游戏和再次击空格键恢复游戏运行。 首先,我们需要在游戏循环中加入暂停和恢复的代码逻辑。游戏循环是指游戏运行时不断执行的代码块,包括更新游戏状态、渲染游戏画面等操作。在这个循环中,我们需要判断当前游戏是否处于暂停状态。 代码如下: ```java boolean isPaused = false; // 是否暂停游戏 while (true) { if (isPaused) { // 游戏处于暂停状态,不进行游戏更新和渲染 continue; } // 更新游戏状态 updateGame(); // 渲染游戏画面 renderGame(); // 等待一段时间,保证游戏帧率 sleep(16); } ``` 在游戏循环中,我们通过一个布尔变量isPaused来判断游戏是否处于暂停状态。如果isPaused为true,表示游戏已经暂停,此时不进行游戏更新和渲染操作,直接进行下一次循环。如果isPaused为false,表示游戏正在运行,此时进行游戏更新和渲染操作。 接下来,我们需要实现按下空格键暂停游戏和再次击空格键恢复游戏运行的功能。Java中,可以使用KeyListener接口来监听键盘事件。当用户按下或释放某个键盘按键时,程序会自动触发keyPressed或keyReleased方法。 代码如下: ```java JFrame frame = new JFrame("My Game"); frame.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { // 判断是否按下空格键 if (e.getKeyCode() == KeyEvent.VK_SPACE) { isPaused = !isPaused; // 切换游戏暂停状态 } } }); frame.setVisible(true); ``` 在代码中,我们创建了一个JFrame窗口,并添加了一个KeyListener监听器。当用户按下键盘时,会自动触发keyPressed方法。在keyPressed方法中,我们判断是否按下空格键,如果是,则切换游戏暂停状态。具体来说,如果游戏当前处于暂停状态,则将isPaused设为false;如果游戏当前处于运行状态,则将isPaused设为true。 最后,为了保证游戏帧率,我们需要在游戏循环中加入一个sleep方法,等待一段时间。具体等待时间可以根据游戏需求进行调整。 综上所述,我们通过添加一个布尔变量isPaused和一个KeyListener监听器,成功实现了空格键暂停游戏和再次击空格键恢复游戏运行的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值