首页 > 试题广场 >

数位五五

[编程题]数位五五
  • 热度指数:11392 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
求出a到b之间有多少个数数位之和为5的倍数

输入描述:
输入一行包含两个整数x,y ()


输出描述:
输出一个整数
示例1

输入

10 20

输出

2

说明

14和19的数位和为5和10,符合条件
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = in.nextInt(), b = in.nextInt();
        int ret = multiple_5(a, b);
        System.out.println(ret);
    }

    public static int multiple_5(int a, int b) {
        int sum = 0;
        int count = 0;
        for (int i = a; i <= b; i++) {
            int tmp = i;
            while (tmp > 0) {
                sum += tmp % 10;
                tmp /= 10;
            }
            if (sum % 5 == 0) {
                count++;
            }
            sum = 0;
        }
        return count;
    }
}

发表于 2024-09-24 20:16:51 回复(0)
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        int b = in.nextInt();
        int sum = 0;
        ArrayList<Integer> arr = new ArrayList<>();
        for(int i = a; i <= b; i++) {
            int c = i;
            int count = 0;
            while(c != 0) {
              //将数的每个位都加起来
              count += c % 10;
              c = c / 10;
            }
            arr.add(count);
        }

        for(int i = 0; i < arr.size(); i++) {
            if(arr.get(i) % 5 == 0) {
                sum++;
            }
        }

        System.out.println(sum);
    }
}
发表于 2023-10-17 11:29:04 回复(0)
import java.util.Scanner;

public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        int a=sc.nextInt(),b=sc.nextInt();
        int count=0;
        for(int i=a;i<=b;i++){
            if(sum(i)%5==0) count++;
        }
        System.out.print(count);
    }
    public static int sum(int x){
        int total=0;
        while(x!=0){
            total+=x%10;
            x/=10;
        }
        return total;
    }
}

发表于 2022-08-09 20:36:43 回复(0)
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int count = 0;
        for(int i = a;i <= b;i++){
            int sum = sumOfDigital(i);
            if(sum % 5 == 0){
                count++;
            }
        }
        System.out.println(count);
    }
    public static int sumOfDigital(int num){
        int sum = 0;
        while(num / 10 != 0 || num % 10 != 0){
            sum = sum + num % 10;
            num = num / 10;
        }
        return sum;
    }
}

发表于 2022-07-05 14:44:06 回复(0)
mport java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int sumi;
        int count = 0;
        for(int i = a;i<=b;i++){
            sumi = m5(i);   //调用函数
            if(sumi % 5 == 0 ){   //如果发现数位之和能够被5整除,那么则在计数器上加一
                count++;
            }
        }
        System.out.printf("%d",count);
    }
    public static int m5(int a){     //此函数的作用是取整数各位然后再将各位相加
        int sum = 0;
        int x;
        while(a!=0){
                x = a%10;
                a = a/10;
                sum = sum + x;
        }
        return sum;  //函数范围各个位数字之和
    }
}

发表于 2022-03-15 14:25:27 回复(0)