自然数与质数做商结果的探究

#include <iostream>
#include <cmath>
#include <fstream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
bool isPrime(int num) {
	int temp;
	if(num < 2) {
		return false;
	}
	else {
		temp = sqrt(num);
		for(int i = 2;i <= temp;++i) {
			if(num % i == 0) {
				return false;
			}
		}
		return true;
	}
} 
int main(int argc, char** argv) {
	ofstream fout;
	fout.open("out.txt",ios::out);
	for(int i = 1, j = 2;i < 1000;++i, ++j) {
		for(;!isPrime(j);++j);
		fout << i << " " << j << " " << (double)(i)/(double)(j) << endl;
	}
	fout.close();
	return 0;
}

  

这段代码的含义是用从1开始的递增为1的等差数列除以从小到大的素数数列。运行这段代码后,我们得到了结果。不难发现,前1000个孪生素数,除了5和7,347和349之外,所有的孪生素数的除法结果都是相近的(即精确到小数点后1位都是相等的)。我们还可以发现素数之间的差距似乎是越拉越大,但是除法结果也有后一个比前一个大的,比如179和181。

1 2 0.5

2 3 0.666667

3 5 0.6

4 7 0.571429

5 11 0.454545

6 13 0.461538

7 17 0.411765

8 19 0.421053

9 23 0.391304

10 29 0.344828

11 31 0.354839

12 37 0.324324

13 41 0.317073

14 43 0.325581

15 47 0.319149

16 53 0.301887

17 59 0.288136

18 61 0.295082

19 67 0.283582

20 71 0.28169

21 73 0.287671

22 79 0.278481

23 83 0.277108

24 89 0.269663

25 97 0.257732

26 101 0.257426

27 103 0.262136

28 107 0.261682

29 109 0.266055

30 113 0.265487

31 127 0.244094

32 131 0.244275

33 137 0.240876

34 139 0.244604

35 149 0.234899

36 151 0.238411

37 157 0.235669

38 163 0.233129

39 167 0.233533

40 173 0.231214

41 179 0.22905

42 181 0.232044

43 191 0.225131

44 193 0.227979

45 197 0.228426

46 199 0.231156

47 211 0.222749

48 223 0.215247

49 227 0.215859

50 229 0.218341

51 233 0.218884

52 239 0.217573

53 241 0.219917

54 251 0.215139

55 257 0.214008

56 263 0.212928

57 269 0.211896

58 271 0.214022

59 277 0.212996

60 281 0.213523

61 283 0.215548

62 293 0.211604

63 307 0.205212

64 311 0.205788

65 313 0.207668

66 317 0.208202

67 331 0.202417

68 337 0.20178

69 347 0.198847

70 349 0.200573

71 353 0.201133

72 359 0.200557

73 367 0.19891

74 373 0.198391

75 379 0.197889

76 383 0.198433

77 389 0.197943

78 397 0.196474

79 401 0.197007

80 409 0.195599

81 419 0.193317

82 421 0.194774

83 431 0.192575

84 433 0.193995

85 439 0.193622

86 443 0.194131

87 449 0.193764

88 457 0.19256

89 461 0.193059

90 463 0.194384

91 467 0.194861

92 479 0.192067

93 487 0.190965

94 491 0.191446

95 499 0.190381

96 503 0.190855

97 509 0.19057

98 521 0.1881

99 523 0.189293

100 541 0.184843

101 547 0.184644

102 557 0.183124

103 563 0.182948

104 569 0.182777

105 571 0.183888

106 577 0.183709

107 587 0.182283

108 593 0.182125

109 599 0.18197

110 601 0.183028

111 607 0.182867

112 613 0.182708

113 617 0.183144

114 619 0.184168

115 631 0.18225

116 641 0.180967

117 643 0.18196

118 647 0.18238

119 653 0.182236

120 659 0.182094

121 661 0.183056

122 673 0.181278

123 677 0.181684

124 683 0.181552

125 691 0.180897

126 701 0.179743

127 709 0.179126

128 719 0.178025

129 727 0.177442

130 733 0.177353

131 739 0.177267

132 743 0.177658

133 751 0.177097

134 757 0.177015

135 761 0.177398

136 769 0.176853

137 773 0.177232

138 787 0.175349

139 797 0.174404

140 809 0.173053

141 811 0.173859

142 821 0.17296

143 823 0.173755

144 827 0.174123

145 829 0.17491

146 839 0.174017

147 853 0.172333

148 857 0.172695

149 859 0.173458

150 863 0.173812

151 877 0.172178

152 881 0.172531

153 883 0.173273

154 887 0.173619

155 907 0.170893

156 911 0.17124

157 919 0.170838

158 929 0.170075

159 937 0.169691

160 941 0.170032

161 947 0.170011

162 953 0.16999

163 967 0.168563

164 971 0.168898

165 977 0.168884

166 983 0.168871

167 991 0.168517

上一篇:SQL 数据类型


下一篇:JMeter——JMeter如何进行汉化