设计程序sy3-2.c,计算并输出给定整数n的所有因子(不包括1与自身)之和。
时间: 2023-11-12 16:07:52 浏览: 47
```c
#include <stdio.h>
int main() {
int n, sum = 0;
printf("请输入一个整数n:");
scanf("%d", &n);
for (int i = 2; i < n; i++) {
if (n % i == 0) { // 判断i是否为n的因子
sum += i; // 累加因子
}
}
printf("%d的所有因子之和为:%d\n", n, sum);
return 0;
}
```
相关问题
设计程序sy3-3.c,输入一个整数,要求将该整数上各位数字是偶数的数取出,并按原来从高位到低位的顺序组成一个新数。
```c
#include <stdio.h>
int main()
{
int num, new_num = 0, digit, power = 1;
printf("请输入一个整数:");
scanf("%d", &num);
while (num > 0)
{
digit = num % 10; // 取出个位数字
if (digit % 2 == 0) // 判断是否为偶数
{
new_num += digit * power; // 将偶数位数字添加到新数中
power *= 10; // 新数位数增加
}
num /= 10; // 去掉个位数字
}
if (new_num == 0) // 如果没有偶数位数字
{
printf("没有偶数位数字。\n");
}
else
{
printf("取出偶数位数字后的新数为:%d\n", new_num);
}
return 0;
}
```
编写程序sy4-1.cpp,输入n,计算并输出如下多项式的值:Sn=1+1/2!+1/3!+1/4!+…+1/n!。例如输入n为15时,输出1.718282。
sy4-1.cpp是一个计算多项式值的程序,根据输入的n值,计算并输出多项式Sn=1+1/2!+1/3!+1/4!+…+1/n!的结果。
以下是sy4-1.cpp的代码示例:
```cpp
#include <iostream>
using namespace std;
double factorial(int n) {
double result = 1.0;
for (int i = 2; i <= n; i++) {
result *= i;
}
return result;
}
double calculateSn(int n) {
double sum = 1.0;
for (int i = 2; i <= n; i++) {
sum += 1 / factorial(i);
}
return sum;
}
int main() {
int n;
cout << "请输入n的值:";
cin >> n;
double result = calculateSn(n);
cout << "多项式的值为:" << result << endl;
return 0;
}
```
你可以将以上代码保存为sy4-1.cpp文件,并通过编译器编译运行。程序会要求你输入n的值,然后计算并输出多项式的结果。