返回 课程
信奥AC之路-2级
0% 完成
0/0 步骤
-
第一课:字符5 主题|小节
-
第二课 嵌套循环与矩形图案(一)4 主题|小节
-
第三课 嵌套循环与矩形图案(二)3 主题|小节
-
第四课:矩形三5 主题|小节
-
第五课:字符矩形7 主题|小节
-
第六课:直角三角形6 主题|小节
-
第七课:倒三角形7 主题|小节
-
第八课:字符三角形8 主题|小节
-
第九课:字符倒三角形7 主题|小节
-
第十课:平行四边形6 主题|小节
-
第十一课:字符直角三角形5 主题|小节
-
第十二课:左斜三角形6 主题|小节
-
第十三课:等腰三角形6 主题|小节
-
第十四课:倒置等腰三角形7 主题|小节
-
第十五课:上下对称图形4 主题|小节
-
第十六课:复杂对称图形5 主题|小节
-
第十七课:左右对称图形5 主题|小节
-
第十八课:空心图形5 主题|小节
-
第十九课:空心图形3 主题|小节
-
第二十课:嵌套应用4 主题|小节
-
第二十一课:嵌套应用二4 主题|小节
-
第二十二课:嵌套应用三3 主题|小节
-
第二十三课:嵌套应用四3 主题|小节
课 进展
0% 完成
“在许多问题中,我们需要从一系列数据中筛选出满足特定条件的数据,”我继续解释道,”嵌套循环配合条件判断可以帮助我们高效地完成这类任务。”
20.2.1 姐妹数对问题
题目描述:给定两个不同的正整数x,y,若x+y能被3除尽或能被7除尽,则称x,y为姐妹数对。求1~n之间的所有姐妹数对。
样例输入:
5
样例输出:
1 2
1 5
2 4
2 5
3 4
代码实现:
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n; // 读入上限n
// 外循环:遍历第一个数字i从1到n-1
for(int i=1; i<n; i++) {
// 内循环:遍历第二个数字j从i+1到n
// j从i+1开始是为了确保i<j,避免重复计算相同的数对
for(int j=i+1; j<=n; j++) {
// 判断i和j是否构成姐妹数对:和能被3整除或能被7整除
if((i+j) % 3 == 0 || (i+j) % 7 == 0) {
cout << i << " " << j << endl; // 输出满足条件的数对
}
}
}
return 0;
}
思考:
- 外循环(i)从1遍历到n-1
- 内循环(j)从i+1遍历到n,保证每对数只统计一次
- 使用条件(i+j) % 3 == 0 || (i+j) % 7 == 0判断是否为姐妹数对
- 这个实验展示了如何使用嵌套循环和条件判断找出满足特定数学关系的数对