【第03天】给定整数 a 和 b,a 是否能被 b 整除 | if 判断与运算符运用

本文已收录于专栏
《Java入门一百例》

文章目录

  • 序、专栏前言
  • 序、本章前言
  • 一、if语句
  • 二、【例题1】
    • 1、题目描述
    • 2、解题思路
    • 3、模板代码
    • 4、代码解析
  • 三、课后习题

序、专栏前言

   本专栏开启,目的在于帮助大家更好的掌握学习Java,特别是一些Java学习者难以在网上找到系统地算法学习资料帮助自身入门算法,同时对于专栏内的内容有任何疑问都可在文章末尾添加我的微信给你进行一对一的讲解。
   但最最主要的还是需要独立思考,对于本专栏的所有内容,能够进行完全掌握,自己完完全全将代码写过一遍,对于算法入门肯定是没有问题的。
   算法的学习肯定不能缺少总结,这里我推荐大家可以到高校算法社区将学过的知识进行打卡,以此来进行巩固以及复习。
  学好算法的唯一途径那一定是题海战略,大量练习的堆积才能练就一身本领。专栏的任何题目我将会从【题目描述】【解题思路】【模板代码】【代码解析】等四板块进行讲解。

序、本章前言

   前一章细讲了for循环的作用与重要性,今天将会详解同样重要if语句与运算符。对于该内容必须掌握。

一、if语句

  if语句在程序中的角色不可或缺,它的存在就像一个岔路口,决定了我们程序走向的分支。它的主体如图所示

		if(布尔表达式){
            //body
        }else if (布尔表达式){
            //body
        }else if (布尔表达式){
            //body
        }else{
            //body 
        }
  • ( 1 ) (1) (1)if语句可分为ifelse ifelse,其中else ifelse是可以省略不写的
  • ( 2 ) (2) (2)程序会从上往下进行判断,从if开始,如果某个括号内的布尔表达式为true,则会执行该代码块内的代码,同时不会再去判断和进入其他的else if判断
  • ( 3 ) (3) (3)当所有的ifelse if都为false时,且程序中存在else语句,则会自动执行else语句的内容

二、【例题1】

1、题目描述

  给定多组数据 t ( 1 ≤ t ≤ 1000 ) t(1\leq t\leq1000) t(1t1000),每次给定两个整数 a 和 b a和b ab,如果 a a a能被 b b b整除,则输出YES,否则输出NO

2、解题思路

  对于判断两个数a,b是否为倍数与因数的关系,则需要使用到取余运算符%。因为我们知道如果a,b满足要求,则一定满足​​​​​​​​​​​​​​式子: a b = n . . . . . 0 \frac{a}{b}=n.....0 ba=n.....0。其中 0 0 0表示的就是 a / b a/b a/b的余数, n n n是任意一个非负整数。
  取余运算符%可以直接获得 a / b a/b a/b的余数,写成a%b。我们只需要判断该值是否为0即可知道两者关系。

3、模板代码

import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int t=sc.nextInt();
        while (t-->0){
            int a=sc.nextInt();
            int b=sc.nextInt();
            if (a%b==0){
                System.out.println("YES");
            }else{
                System.out.println("NO");
            }
        }
    }
}

import java.util.Scanner;
public class Main{
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int t=sc.nextInt();
        while (t-->0){
            int a=sc.nextInt();
            int b=sc.nextInt();
            System.out.println(a%b==0?"YES":"NO");
        }
    }
}

4、代码解析

  • ( 1 ) (1) (1)由于只有YESNO两种情况,所以我们只需要ifelse语句即可
  • ( 2 ) (2) (2) 对于这种只有两种情况的,我们也可以使用条件判断语句布尔表达式?代码1:代码2,当表达式为true执行代码1,表达式为false执行语句2。

三、课后习题

序号 题目链接 难度评级
1 两数相除 1
学习有疑问?

你可能感兴趣的