python中如何编程求1到100之间的素数 python编写程序,输出100以内的所有素数?
\u7f16\u7a0b\u6c421\u5230100\u4e4b\u95f4\u7684\u6240\u6709\u7d20\u6570 \u5e76\u8f93\u5165\u7ed3\u679c#include
int main()
{
int n1,nm,i,j,flag,count=0;
do{
printf("Input START and END=?");
scanf("%d%d",&n1,&nm); /*\u8f93\u5165\u6c42\u7d20\u6570\u7684\u8303\u56f4*/
}while(!(n1>0&&n1<nm)); /*\u8f93\u5165\u6b63\u786e\u7684\u8303\u56f4*/
printf("...........PRIME TABLE(%d--%d)............\n",n1,nm);
if(n1==1||n1==2) /*\u5904\u7406\u7d20\u65702*/
{
printf("%4d",2);
n1=3;count++;
}
for(i=n1;i<=nm;i++) /*\u5224\u5b9a\u6307\u5b9a\u8303\u56f4\u5185\u7684\u6574\u6570\u662f\u5426\u4e3a\u7d20\u6570*/
{
if(!(i%2))continue;
for(flag=1,j=3;flag&&j<i/2;j+=2)
/*\u5224\u5b9a\u80fd\u5426\u88ab\u4ece3\u5230\u6574\u6570\u7684\u4e00\u534a\u4e2d\u7684\u67d0\u4e00\u6570\u6240\u6574\u9664*/
if(!(i%j))flag=0; /*\u82e5\u80fd\u6574\u9664\u5219\u4e0d\u662f\u7d20\u6570*/
if(flag) printf(++count%15?"%4d":"%4d\n",i);
}
}
for I in range\uff082\uff0c100\uff09\uff1b
for j in range\uff082\uff0ci\uff09\uff1a
if i%j==0\uff1a
break
else\uff1a
print\uff08i\uff09
1、新建python文件,testprimenum.py;
2、编写python代码,求1到100之间的素数;
list1 = []
i = 2
for i in range(2,101):
j = 2
for j in range (2,i):
if i%j == 0:
break
else:
list1.append(i)
print(list1)
3、窗口中右击,选择‘在终端中运行Python文件’;
4、查看执行结果,1-100之间的素数为:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
#!/usr/bin/python
#-*- coding:UTF-8 -*-
#求素数
list=[]
i=2
for i in range (2,100):
j=2
for j in range(2,i):
if(i%j==0):
break
else:
list.append(i)
print(list)
扩展资料:
python:for语句的使用方法
for循环的语法格式:
for i in range(n):#从数据类型中拿一个值赋值给i
print(i)#打印i
例如:
#for
for i in range (1,6,2):#从一开始到六之前每隔上2个数字
print(i)#结果为1,3,5
# ------------------------------------------------
s = ["man", "woman", "girl", "boy", "sister"]
for i in s:#列表s中的每个元素给i
print(i)
#-------------------------------------------------
for i in range(5):
print(i)#结果为:0,1,2,3,4
for循环实例:数字0,1,2组成一个百位数,并且数字不重复!
#for
for i in range(0,3):
for j in range(0,3):
for k in range(0,3):
if (i != 0) and (i != j) and (i != k) and (j != k):
print (i,j,k)
def primes(x):
# prepair data space
plist = [0, 0] + range(2,x+1)
for i in xrange(2, x):
if plist[i]:
plist[i+i::i] = [0] * len(plist[i+i::i])
return filter(None, plist)
print primes(100)
筛选法是高效的素数列表计算算法, python的列表切片赋值可以极大地简化代码
result=[]
for i in range(2,101):
for j in range(2,i):
if i%j==0
break
else:
result.append(i)
print(result)
绛旓細灞傛暟 = 3for i in range(1,灞傛暟+1):print(" "*(灞傛暟-i),end="") # 鏁板瓧宸︿晶鐨勭┖鏍糵or j in range(1,i+1): # 鏄剧ず宸︿晶鏁板瓧print(j,end="")for j in range(i-1,0,-1): # 鏄剧ず鍙充晶鏁板瓧print(j,end="")print(" " * (灞傛暟 - i), end="") # 鏁板瓧鍙充晶鐨...
绛旓細int main(){ int i,j,s;for(i=2;i<=1000;i++){ s=1;for(j=2;j<=i/2;j++)if(i%j==0)s+=j;if(s==i)printf("%d\n",i);} getch();return 0;}
绛旓細绠鍗曠殑寰堬紝涓夊洓琛屼唬鐮銆
绛旓細鏂规硶浜:绱犳暟鎬ц川娉曟柟娉曞叚: 鍩冩媺鎵樻柉鐗瑰凹绛涙硶鎷撳睍璧勬枡锛歅ython鐢辫嵎鍏版暟瀛﹀拰璁$畻鏈虹瀛︾爺绌跺浼氱殑Guido van Rossum 浜1990 骞翠唬鍒濊璁★紝浣滀负涓闂ㄥ彨鍋欰BC璇█鐨勬浛浠e搧銆侾ython鎻愪緵浜嗛珮鏁堢殑楂樼骇鏁版嵁缁撴瀯锛岃繕鑳界畝鍗曟湁鏁堝湴闈㈠悜瀵硅薄缂栫▼銆侾ython璇硶鍜屽姩鎬佺被鍨嬶紝浠ュ強瑙i噴鍨嬭瑷鐨勬湰璐紝浣垮畠鎴愪负澶氭暟骞冲彴涓婂啓鑴氭湰鍜屽揩閫熷紑...
绛旓細鍦≒ython缂栫▼璇█涓紝鎴戜滑鍙互浣跨敤while寰幆鏉ユ眰瑙1鍒100涔嬮棿鐨勫伓鏁板拰銆傞鍏堬紝鎴戜滑闇瑕佸垵濮嬪寲涓涓彉閲忔潵琛ㄧず褰撳墠鍋舵暟锛屽苟璁惧畾涓涓疮鍔犲櫒鏉ョ疮璁″伓鏁板拰銆傜劧鍚庯紝鎴戜滑閫氳繃while寰幆锛屾瘡娆″皢鍋舵暟鍔2锛岀劧鍚庣疮鍔犲埌鍋舵暟鍜屼腑锛岀洿鍒板伓鏁拌秴杩100涓烘銆備互涓嬫槸涓涓娇鐢╳hile寰幆姹傝В1鍒100鐨勫伓鏁板拰鐨勭ず渚嬩唬鐮侊細鍒濆鍖栧伓鏁板拰...
绛旓細1銆佹柊寤python鏂囦欢锛宼estprimenum.py锛2銆佺紪鍐檖ython浠g爜锛姹1鍒100涔嬮棿鐨勭礌鏁帮紱list1 = []i = 2 for i in range(2,101):j = 2 for j in range (2,i):if i%j == 0:break else:list1.append(i)print(list1)3銆佺獥鍙d腑鍙冲嚮锛岄夋嫨鈥樺湪缁堢涓繍琛Python鏂囦欢鈥欙紱4銆佹煡鐪嬫墽琛岀粨鏋滐紝1-...
绛旓細sum=0 for i in range(101):sum+=i print(sum)
绛旓細+= 1 else:num_else += 1 print("鏁板瓧鐨勪釜鏁帮細",num_num)print("瀛楁瘝鐨勪釜鏁帮細",num_alp)print("绌烘牸鐨勪釜鏁帮細",num_null)print("鍏朵粬鐨勪釜鏁帮細",num_else)杩愯缁撴灉锛氳杈撳叆涓涓瓧绗︿覆锛歨aha 123 ** 11 鏁板瓧鐨勪釜鏁帮細 5 瀛楁瘝鐨勪釜鏁帮細 4 绌烘牸鐨勪釜鏁帮細 3 鍏朵粬鐨勪釜鏁帮細 2 鏈涢噰绾筹紒
绛旓細锛/usr/bin/python -*- coding:UTF-8 -*- 姹傜礌鏁 list=[]i=2 for i in range (2,100):j=2 for j in range(2,i):if(i%j==0):break else:list.append(i)print(list)
绛旓細L = [0, 1]for i in range(2,21): L.append(L[i-1] + L[i-2])print(L)