计算乘法表

  • 两个数相乘,外层循环代表被乘数,控制行数;内层代表乘数,控制列数。
  • 循环嵌套,变量名不可以重复。
  • 使用 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. Redis数据库在windows系统下的安装及使用

    1.下载 Redis官方是不支持windows的,但是Microsoft Open Tech group 在 GitHub上开发了一个Win64的版本,下载地址:https://github.com/ ...

  2. 吴裕雄--天生自然ORACLE数据库学习笔记:SQL语言基础

    select empno,ename,sal from scott.emp; SELECT empno,ename,sal FROM scott.emp; selECT empno,ename,sal ...

  3. Java 调用系统系统可执行文件

    public class Test { public static Map<String, String> executeCmd(String cmd) { Runtime rt = Ru ...

  4. redis 高性能的原因

    1. redis 数据存储在内存中: 2. redis 是单线程: 3. redis 多路复用: 指令先放到队列里 4.redis 使用resp 协议

  5. 树莓派4B踩坑指南 - (5)设置阿里云的源及解决apt提示依赖

    解决树莓派apt升级/安装提示依赖问题: 注意!!buster是根据系统版本(cat /etc/os-release)来写的,如果是jessie或者stretch要改为buster.参考解决树莓派ap ...

  6. uniapp - 导航切换(样式)

    <view class="text-area" v-for="(menu,i) in menus" :key="i" v-show=& ...

  7. PHP PDO_MYSQL 链式操作 非链式操作类

    <?php /* vim: set expandtab tabstop=4 shiftwidth=4: */ // +-------------------------------------- ...

  8. luogu P2754 [CTSC1999]家园

    本题是分层图最大流问题,相当于按时间拆点,每个当前点向下一点的下一时间层连点,每一层有n+1个点 #include<bits/stdc++.h> using namespace std; ...

  9. Python 基础之模块之math random time

    一:math 数学模块import math#(1)ceil() 向上取整操作 (对比内置round)res = math.ceil(6.001)  #注意精度损耗print(res)#(2)floo ...

  10. Xcode下载途径

    Xcode除了能在Appstore直接下载外,还可以用开发者账号登陆开发者中心[https://developer.apple.com/download/]下载对应的资源. 在开发者中心下载的好处是, ...