• 【视频+图文】Java经典基础练习题(二)输出9*9乘法口诀表


    能解决题目的代码并不是一次就可以写好的
    我们需要根据我们的思路写出后通过debug模式找到不足再进行更改
    多次测试后才可得到能解决题目的代码!
    通过学习,练习【Java基础经典练习题】,让我们一起来培养这种解决问题思路。

    一、视频讲解

    点击这里即可去B站观看

    二、思路分析

    Q1: 拿到题目之后,该如何去分析题目并一步步向能解决题目的代码去靠近呢?
    Q2: 我的思路是:

    • 先根据题目写出一些例子(有的题目也会给出例子)
    • 根据写出(给出)的例子找到规律
    • 根据规律写好代码
    • 运行后若有错误通过debug找到错误并更改
    • 直到程序可以正确得出题目的结果

    那么针对本题:

    (一)我们可以先写出部分的9*9乘法表

    1*1=1
    2*1=2 2*2=4
    3*1=3 3*2=3 3*3=9
    4*1=4 4*2=8 *3=12 4*4=16
    5*1=5 5*2=10 5*3=15 5*4=20 5*5=25

    (二)根据我们写出的部分9*9乘法表我们可以发现:

    1. 在相乘的过程中行数和列数是一直发生变化的
    2. 所以我们可以定义两个变量i,j来分别代表行数i和列数j

    4

    (三)我们看下图的行数和列数变化,可得到规律:j<=i

    在这里插入图片描述

    (四)因为行数i和j都是一直变化的,且结合我们得到的规律
    所以我们选用双重for循环来解决这道题。

    三、代码+详解+结果

    代码:

    package Exercise;
    
    public class ChengFa {
    //	题目:输出9*9乘法口诀。
    	public static void main(String[] args) {
    		int i = 0;// i为行数
    		int j = 0;// j为列数
    		for (i = 1; i < 10; i++) {
    			for (j = 1; j <= i; j++) {// 这里需用到我们总结的规律j<=i
    				System.out.print(i + "*" + j + "=" + i * j + "    ");
    			}
    			System.out.println();
    		}
    	}
    }
    
    

    详解:

    以i=3为例

    i = 3 3<10 j=1 1<=3 执行输出语句

    System.out.print(i + "*" + j + "=" + i * j + "    ");  
    

    输出 3 * 1=3 j++ ,j = 2

    =================================================================
    i = 3 3<10 j=2 2<=3 执行输出语句

    System.out.print(i + "*" + j + "=" + i * j + "    ");  
    

    输出3*2=6 j++, j = 3

    =================================================================
    i = 3 3<10 j=3 3<=1 执行输出语句

    System.out.print(i + "*" + j + "=" + i * j + "    ");  
    

    输出3*3=9 j++, j = 4

    =================================================================

    j=4,不满足j<=i条件,所以退出第二层for循环执行输出语句进行换行

     System.out.println(); 
    

    =================================================================
    i++ i = 4 再进行下一次循环。

    结果:

    在这里插入图片描述

    四、彩蛋:

    在这里插入图片描述
    推荐你看:

    【视频+图文】Java基础经典练习题(一)输出2-100之间的素数,及素数个数

  • 相关阅读:
    百度前端技术学院2015JavaScript基础部分-BOM
    百度前端技术学院2015JavaScript基础部分实现自己的小型jQuery
    百度前端技术学院2015JavaScript基础部分代码实现
    FCC Advanced Algorithm Scripting
    哈哈哈,我追随大佬的脚步来园子了。
    《将博客搬至CSDN》
    [USACO07JAN] Tallest Cow
    NOIP刷题Day1
    p1514 引水入城
    欧拉路径回路
  • 原文地址:https://www.cnblogs.com/Qpgshare/p/12544050.html
Copyright © 2020-2023  润新知