标签 Java算法 下的文章 - NianSir's BLOG
首页
关于 | About US
文章协议
友情站点
搜 索
1
【Minecraft | 我的世界】PC存档转移到服务器存档教程
8,332 阅读
2
记一次七日杀(7Days to die)游戏服务器搭建及联机问题和解决方案
1,274 阅读
3
【陌辞论坛】送一批邀请码,带惊喜大礼
957 阅读
4
Steam低价CDK激活码?必须安利CDKEYPlus!
862 阅读
5
【免费主机】进行时数据 - 免费1G主机
856 阅读
生活杂谈
好物分享
技术探索
代码杂烩
学习笔记
登录
/
注册
搜 索
标签搜索
学习笔记
网络
CDN
免费
网络安防
Minecraft
Windows
服务器搭建
参赛
奖品
Python
实战
站点优化
PILOT
百乐
优质文具
OurlIMG
免费图床
公益项目
免费主机
NianSir
累计撰写
25
篇文章
累计收到
13
条评论
首页
栏目
生活杂谈
好物分享
技术探索
代码杂烩
学习笔记
页面
关于 | About US
文章协议
友情站点
用户登录
登录
注册
找到
1
篇与
相关的结果
2023-04-23
【Java算法】新除法,不使用%、/运算符输出商和余数
NianSir小站很久不水文章了,寻思最近学习Java,有很多比较有意思的算法题可以练练思维,就果断开始制定自己的刷题计划,同时也可以水一点文章发发博客就顺便用博客的Java专题记录一下子咯。 温馨提示:NianSir的代码Java水平可能很一般,如果有更好的建议欢迎各位dalao指点指点 下面就来分享一下今天带来的第一个Java算法题——“新除法” Java算法题A-01 - “新除法” 顾名思义,作为“新除法”,那肯定是与传统的除法不同,要求我们不使用‘%’、‘/’运算符进行商和余数的运算(所有数据均为整数类型),很明显这类算法的实现并不复杂,并不需要深度的Java知识也能够完成,那直接开整吧! #1 算法设计 对于传统的÷,假设a为除数,b为被除数,我们可以理解为a中最多包含b的n倍,剩余的a-nb即为余数,那么我们不妨直接使用循环结构对a-b进行循环操作,直至a-b不小于0为止,其中循环次数即为n,a-nb就是余数啦,我们可以在循环结构里加入一个计数器得到n的数值。 当然细心一点不难发现,这个逻辑是在a>b的情况下成立的,当a小于b时,b应该直接为余数,而不需要循环判断,所以我们只需要在设定好的循环结构外层加一个if判断即可,先进行判断,再进行循环,最后print输出结果即可。 #2 代码 a、b为除数与被除数,shang存储商、yu存储余数,Java代码如下package day1_4_22; import java.util.Scanner; public class XinChuFa1 { public static void main(String[] args) { // 新除法-算法题 给定两个整数不使用/、%进行计算取商和余数 /* * 作者:NianSir * 时间:2023-4-22 * */ int a,b,n1,n2,shang=0,yu,i=0; Scanner sc=new Scanner(System.in); System.out.println("请输入除数与被除数(整数):"); n1=a=sc.nextInt(); n2=b=sc.nextInt(); if(a-b<0) { shang=0;yu=a; System.out.println(a+"÷"+b+" = "+shang+"···"+yu); }else { for(i=0;n1-n2>=0;i++) { n1-=n2; } yu=n1;shang=i; System.out.println(a+"÷"+b+" = "+shang+"···"+yu); } } } #3 运行结果 当a大于b时: 当a小于b时: 如有更好的思路欢迎各位留言交流(^▽^)
2023年04月23日
618 阅读
0 评论
3 点赞