B3970 [语言月赛 202405] 数字取模 题解

· · 题解

Source & Knowledge

2024 年 5 月语言月赛,由洛谷网校入门计划/基础计划提供。

题目大意

给定一个四位正整数 x ,请你将 x 的每一位分别对 k 取余,然后输出这个数字的结果值。

题目分析

将每一位数字都开一个 int 变量存下来,然后分别取余,最后 “拼在一起”,输出结果。

首先,建立四个 int 变量 a b c d,分别代表 x 的千位、百位、十位和个位:

int a, b, c, d, x;
cin >> x;
a = x/1000, b = x/100%10, c = x/10%10, d = x%10;

然后,将它们分别取余:

a %= k, b %= k, c %= k, d %= k;

最后将结果拼回到 x 去,并输出结果:

x = a*1000 + b*100 + c*10 + d;
cout << x << '\n';

视频讲解