自然数

斐波那契数列--求自然数的和

馋奶兔 提交于 2019-12-05 00:16:14
斐波那契数列 /* 斐波那契数列是: 前两项一样, 第三项是前两项的和 1+1=2 第四项是前二项的和 1+2=3 第五项是前二项的和 3+2=5 1 1 2 3 5 8 13 21 34 55 .... */ 使用递归求斐波那契数列第N项的值 1 //使用递归求斐波那契数列第N项的值 2 package main 3 4 import "fmt" 5 6 func main() { 7 fmt.Println("通过斐波那契列数,测试电脑计算能力,数字不动了,请自行关闭窗口。") 8 for i := 0; i < 10000; i++ { 9 fmt.Printf("第 %v 位置,数为 %v \n", i, GetFibonacci(i)) 10 } 11 } 12 13 func GetFibonacci(n int) int { 14 15 //归回来 16 if n == 0 || n == 1 { 17 return 1 18 } 19 20 //一路递下去 21 return GetFibonacci(n-1) + GetFibonacci(n-2) 22 } 23 /* 24 通过斐波那契列数,测试电脑计算能力,数字不动了,请自行关闭窗口。 25 第 0 位置,数为 1 26 第 1 位置,数为 1 27 第 2 位置,数为 2 28 第 3 位置,数为 3 29

欧拉工程第一至十题解题思路分析

不打扰是莪最后的温柔 提交于 2019-12-03 23:08:52
一、3或5的倍数(multiples of 3 and 5) 如果我们将小于10的所有是3或5倍数的自然数列出来,我们得到3,5,6和9,它们的和是23。与之类似,计算1000以下所有是3或5的倍数的自然数的和。 分析:此题至少有两种解法,第一种解法较为直接,将1000以下所有3或5的倍数列出再求即可,在python中使用列表推导式只需要一行代码即可。第二种思路是使用求和公式,分别求出1000以下所有三的倍数和五的倍数的和再减去十五的倍数的和,即: \[ s=\sum_{i=1}^{333}3i+\sum_{i=1}^{199}5i-\sum_{i=1}^{66}15i=\frac{3}{2}\cdot333(333+1)+\frac{5}{2}\cdot199(199+1)-\frac{15}{2}\cdot66(66+1) \] 第一种思路的实现代码如下: def main(): ans = sum([x for x in range(1,1000) if x%3==0 or x%5==0]) return ans 二、偶数斐波那契数(even Fibonacci numbers) 斐波那契序列中的数都是由前两项加总得出,假设第一与第二项为1与2,则前十项分别为: \[ 1,2,3,5,8,13,21,34,55,89 \] 考虑不超过四百万的斐波那契数

打印1-100质数代码实现

匿名 (未验证) 提交于 2019-12-02 23:38:02
print(一到一百质数) 哈哈哈哈 以上是开玩笑的,下面才是真正的代码: #_author:无言宝宝 #date: 2019/5/27 #打印1-100所有的质数 #质数又称素数。指整数在一个大于1的自然数中, # 除了1和此整数自身外,没法被其他自然数整除的数。 for i in range(1,101): for x in range(2,i): if i%x ==0: break else: print(i) 文章来源: https://blog.csdn.net/gaosong0623/article/details/90765889

累加和

匿名 (未验证) 提交于 2019-12-02 23:35:02
累加和 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 题目描述: 编写程序,求自然数1至n(n>1)的累加和。其中n的值从键盘输入。(难度级别―容易) Input 输入一个自然数赋给变量n。 Output 输出自然数1至n的累加和。 Sample Input 5 Sample Output The sum of 1 to 5 is 15 Hint Source 本文旨在为非计算机专业同学提供帮助 #include <stdio.h> int main() { int n,i; scanf("%d",&n); int s=0; for(i=0;i<=n;i++) s=s+i; printf("The sum of 1 to %d is %d",n,s); return 0; } 文章来源: https://blog.csdn.net/qq_41938269/article/details/90573151

&quot;如何判断一个自然数是否是某个数的平方&quot;(python)

匿名 (未验证) 提交于 2019-12-02 22:11:45
题目描述:设计一个算法,判断给定的一个数n是否是某个数的平方,不能使用开放运算。 分析与解答: 方法一:直接计算法 由于不能使用开方运算,因此最直接的方法就是计算平方。主要思路为:对1到n的每个数i,计算它的平方m,如果m<n,那么继续遍历下一个值(i+1),如果m == n ,那么说明n是某个数的平方,如果m>n,那么n不能表示成某个数的平方。 def isPower(n): if n <= 0: print(n+"不是自然数") return False i = 1 while i < n: m = i * i if m == n: return True elif m > n: return False i += 1 return False if __name__ == "__main__": n1 = 15 n2 = 16 if isPower(n1): print(str(n1)+"是某个自然数的平方") else: print(str(n1)+"不是某个自然数的平方") if isPower(n2): print(str(n2)+"是某个自然数的平方") else: print(str(n2)+"不是某个自然数的平方") 方法二:二分查找法 与方法一类似,这种方法的主要思路还是查找从1~n的数字中看,是否存在一个数m,使得m的平方为n

求出1~100之间,既是3又是7的倍数的自然数出现的次数

匿名 (未验证) 提交于 2019-12-02 21:38:03
1 public class Demo { 2 3 public static void main(String[] args) { 4 5 /* 6 * 求出1~100之间,既是3又是7的倍数的自然数出现的次数 7 */ 8 int count = 0; // 计数 9 for (int i = 1; i <= 100; i++) { 10 if (i % 3 == 0 && i % 7 == 0) { 11 System.out.println(i); 12 count++; 13 } 14 } 15 16 System.out.println("个数为:" + count); // 21 42 63 84 17 } 18 } 文章来源: 求出1~100之间,既是3又是7的倍数的自然数出现的次数

1.5编程基础之循环控制 25:求特殊自然

半城伤御伤魂 提交于 2019-12-02 19:41:42
描述 一个十进制自然数,它的七进制与九进制表示都是三位数,且七进制与九进制的三位数码表示顺序正好相反。编程求此自然数,并输出显示。 输入无。输出三行: 第一行是此自然数的十进制表示; 第二行是此自然数的七进制表示; 第三行是此自然数的九进制表示。样例输入 (无) 样例输出 (不提供) 源代码(错解) #include<iostream> #include<iomanip> #include<cmath> using namespace std; int main() { int a; for(int i=81;i<=342;i++) { if(a/49==a%9&&a%49/7==a%81/9&&a%7==a/81){ cout<<a<<endl; cout<<a/49<<a%49/7<<a%7<<endl; cout<<a/81<<a%81/9<<a%9; } } return 0; } 源代码 #include<iostream> #include<iomanip> #include<cmath> using namespace std; int main() { for(int a=81;a<=342;a++) { if(a/49==a%9 && a%49/7==a%81/9 && a%7==a/81){ cout<<a<<endl; cout<<a/49<<a%49/7<

[逻辑学]连续的自然数

随声附和 提交于 2019-12-02 00:20:40
连续的自然数 安妮和比尔听到:“给定两个连续的自然数,我会悄悄的把一个数告诉安妮,把另一个数告诉比尔。” 安妮和比尔现有如下对话: 安妮:“我不知道你的数” 比尔:“我不知道你的数” 安妮:“我知道你的数了“ 比尔:”我也知道你的数了” 开始时他们都不知道对方的数,对话后双方都知道了对方的数。这是怎么做到的?两个数中可以确定有哪个自然数? 来源: https://www.cnblogs.com/liusandao/p/11722854.html