//练习一、计算若干个浮点数的平均值,以 -1 作输入结束。
void doubles() {
float a = 0, b = 0;
int index = 0;
cout << "输入若干个浮点数,以 -1 作输入结束" << endl;
while (true)
{
cin >> b;
if (b == -1) {
break;
}
a += b;
index++;
}
cout << "平均值为:" << a / index << endl;
}
//练习二、写一个程序读入10个整数,输出所有正数之和,负数之和与所有整数之和。用户可一次性输入
// 这10个整数,而且可以采用任何的顺序。程序不应该要求用户单独输入正数和负数。
void intArr() {
int arr[10];
int a = 0, ua = 0, sum = 0;
for (int i = 0; i < 10; i++)
{
cin >> arr[i];
if (arr[i] > 0) {
a += arr[i];
}
else if (arr[i] < 0) {
ua += arr[i];
}
sum += arr[i];
}
cout << "所有正数之和为" << a << endl;
cout << "所有负数之和为" << ua << endl;
cout << "所有整数之和为" << sum << endl;
}
/*练习三、用于计算数字n的平方根的巴比伦算法如下:
a.先猜一个答案guess(可以将n / 2作为第一个答案)
b.计算r = n / guess
c.令guess = (guess + r) / 2
d.如有必要返回第2步重复多次。步骤2和步骤3重复的次数越多,guess就越接近n的平方根。
写一个程序,输入整数作为n的值,重复执行巴比伦算法,直到guess与前一个guess的误差在1 % 范围
内,将答案作为一个double输出。*/
void maths() {
double a = 0, r = 0;
cout << "请输入一个数字" << endl;
cin >> a;
cout << "请猜一个数字" << endl;
double guess = 0;
cin >> guess;
double pre = 0;
while (true) {
r = a / guess;
guess = (guess + r) / 2;
if (abs(pre - guess) <= 0.01) {
cout << "答案是" << endl;
cout << guess << endl;
break;
}
pre = guess;
}
}
/*
练习四、“23”游戏是一个双人游戏,道具是23根牙签,玩家轮流取1,2或3根牙签。拿到最后一根牙签