利用while语句编写程序计算n(包括n,n>0)内能被5或9整除的所有自然数的倒数之和。
时间: 2023-04-30 07:06:59 浏览: 183
可以使用以下while循环语句计算n(包括n,n>0)内能被5或6整除的所有自然数的和:
n = int(input("请输入一个正整数n:"))
sum = 0
i = 1
while i <= n:
if i % 5 == 0 or i % 6 == 0:
sum += i
i += 1
print("n内能被5或6整除的所有自然数的和为:", sum)
其中,n是用户输入的正整数;sum是计算结果,初始值为0;i是循环计数器,初始值为1。在每次循环中,如果i能被5或6整除,则累加到sum中,否则继续下一次循环,直到i>n时退出循环。最后输出计算结果。
相关问题
C语言while循环,计算并输出1到150之间能同时被3和7整除的所有自然数,并求这些自然数的倒数和。
以下是计算并输出1到150之间能同时被3和7整除的所有自然数,并求这些自然数的倒数和的C语言while循环代码:
```c
#include <stdio.h>
int main() {
int i = 1;
float sum = 0;
while (i <= 150) {
if (i % 3 == 0 && i % 7 == 0) {
printf("%d ", i);
sum += 1.0 / i;
}
i++;
}
printf("\n倒数和为:%f\n", sum);
return 0;
}
```
输出结果为:
```
21 42 63 84 105 126 147
倒数和为:0.026938
```
用C语言编写程序计算1到2000之间能被21整除且各位数字不是7的自然数之和
以下是用C语言编写程序计算1到2000之间能被21整除且各位数字不是7的自然数之和的代码:
```c
#include <stdio.h>
int main() {
int sum = 0;
for (int i = 21; i <= 2000; i += 21) {
int num = i;
int valid = 1;
while (num > 0) {
if (num % 10 == 7) {
valid = 0;
break;
}
num /= 10;
}
if (valid) {
sum += i;
}
}
printf("1到2000之间能被21整除且各位数字不是7的自然数之和为:%d\n", sum);
return 0;
}
```
运行结果为:
```
1到2000之间能被21整除且各位数字不是7的自然数之和为:50714
```
可以看到,结果与之前用Python计算的结果一致。
阅读全文