计算乘法表

  • 两个数相乘,外层循环代表被乘数,控制行数;内层代表乘数,控制列数。
  • 循环嵌套,变量名不可以重复。
  • 使用 break 语句让输出的乘法表更简洁。
  • 使用 String 变量,做 String 的加法。

public class MultiTabble {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) { // 控制行 被乘数
String line = "";
for (int j = 1; j <= 9; j++) { // 控制列 乘数
line += i + "*" + j + "=" + i * j + "\t"; // 利用字符串的加法将结果连接起来
}
System.out.println(line);
}
}
}


我们发现运算结果,有大量的重复结果,例如1*2和2*1、1*3和3*1等等。

这是不符合乘法口诀表的摆放规则的。

那么这时我们就要想办法把重复的等式去掉

通过观察,在 i * j 的形式下,只要去掉 j 大于 i 的等式即可满足要求。

如何实现呢?

利用 break 语句跳出循环的这一特性来实现:当发现 j > i 时,就会跳出当前一层的循环(也就是这里的关于 j 的内循环),到达外层循环(关于 i 的外循环)。

public class MultiTabble {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) { // 控制行 被乘数
String line = "";
for (int j = 1; j <= 9; j++) { // 控制列 乘数 if (j > i) {
break; // 利用break跳出循环的操作解决重复问题
} line += i + "*" + j + "=" + i * j + "\t"; // 利用字符串的加法将结果连接起来
}
System.out.println(line);
}
}
}


除了上面的一种方法以外,还有一个更加简单的方法实现乘法表。

就是让内循环中的变量 j 只要小于等于外循环的 i 即可。

这样内循环就不会超过外循环的最大数值,

例如,i 的值为 5,j 的值就只能是1,2,3,4,5. 这就解决了等式重复的问题。

public class MultiTable2 {
public static void main(String[] args) {
for(int i = 1; i <= 9; i++) {
String line = ""; for( int j = 1; j <= i; j++) {
line += i + "*" + j + "=" + (i*j) + "\t";
} System.out.println(line);
}
}
}

99乘法表(for循环嵌套)的更多相关文章

  1. python(7)- 小程序练习:循环语句for,while实现99乘法表

    打印99乘法表 for 循环语句实现: for i in range(1,10): for j in range(1,10): print(j,"x",i,"=" ...

  2. For循环练习之99乘法表和转义字符

    之前说了for循环的概念以及常用到的操作,那么我们接下来做几个巩固练习: 1.打印99乘法表: 99乘法表的形式: 1*1 = 1 1*2 = 2 2*2 = 4 1*3 = 3 2*3 = 6 3* ...

  3. python的while嵌套 99乘法表 三角形和正方形

    python的99乘法表 num1=1 while num1<=9 : num2 = 1 while num2 <=num1 : print (str(num2)+"X" ...

  4. 使用for循环打印9×9乘法表

    请使用for循环,倒序打印9×9乘法表. 打印结果如下图所示: 使用for循环打印9×9乘法表 #include <stdio.h> int main() { int i, j, resu ...

  5. Java流程控制:增强for循环,break&continue,打印99乘法表

    增强for循环:java5引入了一种主要用于数组或集合的增强for循环for(声明语句:表达式){//代码句子} 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配.其作用域限定在循环语 ...

  6. 99乘法表 java for循环

    public static void main(String[] args) { //0-100的奇数和偶数和 int jsum=0; int osum=0; for (int i = 0; i &l ...

  7. Python,for循环小例子--99乘法表

    一.99乘法表 for i in range(1, 10): for j in range(1, i + 1): print('%sx%s=%s ' % (j, i, j * i), end='') ...

  8. 练习-99乘法表 token生成器 翻译小工具

    一.99乘法表 1.1 技术点 记住: for 循环的使用,以及for的嵌套使用 range()的使用,掌握sep为负数的使用的使用. print() 函数的使用,默认的结尾的换行符 替换 end= ...

  9. python中用代码实现99乘法表

    第一种:使用for遍历循环嵌套 ,): ,x+): print("%s*%s=%s" % (y,x,x*y),end=" ") print("&quo ...

  10. js实现99乘法表

    实现99乘法表(输出到页面上) * document.write("<table border='1' bordercolor='blue'>"); //循环行 9 f ...

随机推荐

  1. ScrollView不设置contentSize属性依然也可以作为底层滚动View(使用masonry设置scrollView的contentSize)

    第一步 //下层的scroolView self.baseScrollView = [[UIScrollView alloc] init]; self.baseScrollView.delegate ...

  2. Codeforces #617 (Div. 3)B. Food Buying

    Mishka wants to buy some food in the nearby shop. Initially, he has ss burles on his card. Mishka ca ...

  3. js 原生url编码

    参考:http://www.runoob.com/jsref/jsref-decodeuricomponent.html

  4. 学习不一样的Vue1:环境搭建

    学习不一样的Vue1:环境搭建  发表于 2017-05-31 |  分类于 web前端|  |  阅读次数 11677 首先 首发博客: 我的博客 项目源码: 源码 项目预览: 预览 因为个人的喜好 ...

  5. JS - false 的 六种类型

    document.write("--------------");document.write(!false);document.write("------------- ...

  6. Eth合约攻击

    前言 Ethernaut是一个类似于CTF的智能合约平台,集成了不少的智能合约相关的安全问题,这对于安全审计人员来说是一个很不错的学习平台,本篇文章将通过该平台来学习智能合约相关的各种安全问题,由于关 ...

  7. 本地启动tomcat的时候报java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space

    1.问题:我在tomcat中放入了大量的war包,启动的时候报:java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: ...

  8. 问题解决 : MyBatis一对一查询时,打印结果只有一条数据

    问题截图:修改后,结果返回条数正确 问题解决: 因为有重名的列,建议起个别名

  9. rhel7 系统服务——unit(单元)

    Linux内核版本从3.10后开始使用systemd管理服务,这也是系统开机后的第一个服务.systemd通过unit单元文件来管理服务. 它保存了服务.设备.挂载点和操作系统其他信息的配置文件,并能 ...

  10. 设计模式课程 设计模式精讲 18-2 迭代器模式coding

    1 代码演练 1.1 代码演练1(迭代器模式演练) 1.2 代码使用场景 1 代码演练 1.1 代码演练1(迭代器模式演练) 需求: 课程管理:需要实现课程可进行增添,删除,并能够打印出课程列表. u ...