@iwktd981220
2017-11-12T01:00:47.000000Z
字数 1469
阅读 383
实验课
第9次实验课需要提交作业
本次作业需提交: 第4章的补充题“1”、“2”、“3”、“4”
第5章简答题“5”第4章程序设计补充题:
【补充题1】输入两个正整数m和n,求其最大公约数和最小公倍数。
提示:找出既能整除m也能整除n的数就是最大公约数,用m和n的乘积除以最大公约数就是最小公倍数。
【补充题2】输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如153是一个水仙花数,因为153=1+125+27
【补充题3】猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,有多吃了一个。第2天早上又将剩下的桃子吃了一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半另加一个。到第10天早上再想吃时,就只剩一个桃子了。求第1天共摘了多少个桃子。
第4章程序设计补充题:
【补充题4】两个乒乓球队进行比赛,各出3人。甲队为A,B,C 共3人,乙队为X,Y,Z也是3人。已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比。请编程序找出3对赛手的名单。
![]()
提示:采用三重循环结构进行比较,有条件:
1. 一个队员只能和对方的一人比赛;
2. A不和X比,C不和X,Y比。
在内循环-第三重循环中满足2个条件就输出A和i比,B和j比,C和k比。第5章简答题
【3】用for循环实现下述整型数组的初始化操作。
Squares
0 1 2 3 4 5 6 7 8 9 10
#include <iostream>
#include <stdio.h>
using namespace std;
void task1() {
int m,n;
cin>>m>>n;
if (m < n) {
int temp = m;
m = n;
n = temp;
}
int j = n;
for (; j >= 1; j--) {
if (m % j ==0 && n %j == 0)break;
}
cout<<"the greatest common factor is ";
j == 0? j = 1,cout<<j : cout<<j;
cout<<"the lowest common multiple:";
cout<< (m*n/j);
}
void task2() {
int a[3];
for (int i = 100; i <= 999; i++) {
int num = i;
int mul = 100;
for (int j = 1; j <= 3; j++) {
a[j-1] = num/mul;
num -=a[j-1]*mul;
mul /=10;
}
int x =((a[0]*a[0]*a[0])+(a[1]*a[1]*a[1])+(a[2]*a[2]*a[2]));
if (i == x) cout<<i<<endl;
}
}
void task3() {
int num = 1;
for (int i = 0; i < 9; i++) {
num = (num+1)*2;
}
cout<<num<<endl;
}
void task4() {
char a[3]={'X','Y','Z'};
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
for(int t=0;t<3;t++)
{
if(i!=0 && t!=0 && t!=2 && i!=t && i!=j && t!=j)
printf("A vs %c\nB vs %c\nC vs %c\n",a[i],a[j],a[t]);
}
}
}
}
int main() {
int task;
cin>>task;
switch (task) {
case 1:task1();break;
case 2:task2();break;
case 3:task3();break;
case 4:task4();break;
}
return 0;
}