当前位置:网站首页>7-1 output all primes between 2 and n (PTA programming)
7-1 output all primes between 2 and n (PTA programming)
2022-07-06 13:55:00 【Programming Lindaiyu】
This problem requires output 2 To n All primes between , Output per row 10 individual . Prime numbers can only be 1 A positive integer divided by itself . Be careful :1 Not primes ,2 Prime number .
Input format :
Input gives an integer in a long integer range in one line .
Output format :
Output prime number , Each number accounts for 6 position , Output per row 10 individual . If the number of primes output in the last line is less than 10 individual , You also need a new line .
sample input :
10
sample output :
2 3 5 7
Code (Python):
n=int(input()) # First enter n, because input The input is a string , So it needs to be converted into int type
x=0 # Used to record the number of primes output
if n==2: # A special case : Input n be equal to 2( Because the following cycle needs to be judged n Is it divisible 2~n-1 Number between , If you will 2 Put it in the following loop , Because it can divide 2, Therefore, it will be judged as a non prime number and cause errors
print("%6d"%n,end='') # Note the output format ,%6d Indicates that each number accounts for 6 digit ,end='' Means no carriage return at the end
elif n>2: # General situation
for i in range(2,n): # Start judging 2~n( barring n) Between each number
j=2 # Divide each number by 2
while i%j!=0: # If divided by j Not for 0, Into the loop ,j Keep adding 1, Until you exit the loop
j+=1
if j==i: # Judge to exit above while Reasons for the cycle , If it is j be equal to i, It shows that the number has been added to itself without encountering a divisible number
if x!=0 and x%10==0: # See how many numbers it is output in this line , To judge whether to change lines :x be equal to 0 It is the first number of output , Don't wrap :x Remainder 10 be equal to 0 Words , Indicates that the output number is 10 Multiple , To wrap
x+=1 # One number per output ,x Add one
print() # Because the number of outputs is 10 Multiple , Indicates that the line outputs 10 Number , To wrap (print The default line breaks )
print("%6d"%i,end='') # Output primes in format
else: # Otherwise, it is not the above two situations , Indicates that the number of lines is not full 10 individual , There is no need to wrap , Normal output
x+=1 # One number per output ,x Add one
print("%6d"%i,end='') # Output primes in format The above program gives more detailed comments , For novice Xiaobai's reference . The thinking design of the program is not optimal , yes “ Stupid way ”, You are welcome to correct your mistakes or give better ideas .
I am a rookie who wants to be Kunpeng , Everyone's encouragement is my driving force , Welcome to like collection comments !
边栏推荐
- JS several ways to judge whether an object is an array
- 为什么要使用Redis
- MySQL lock summary (comprehensive and concise + graphic explanation)
- Have you encountered ABA problems? Let's talk about the following in detail, how to avoid ABA problems
- 【VMware异常问题】问题分析&解决办法
- 2. First knowledge of C language (2)
- [three paradigms of database] you can understand it at a glance
- 编写程序,模拟现实生活中的交通信号灯。
- Canvas foundation 1 - draw a straight line (easy to understand)
- 实验八 异常处理
猜你喜欢
随机推荐
4. Branch statements and loop statements
Service ability of Hongmeng harmonyos learning notes to realize cross end communication
QT meta object qmetaobject indexofslot and other functions to obtain class methods attention
HackMyvm靶机系列(5)-warez
仿牛客技术博客项目常见问题及解答(三)
[graduation season · advanced technology Er] goodbye, my student days
为什么要使用Redis
强化学习基础记录
C language Getting Started Guide
【黑马早报】上海市监局回应钟薛高烧不化;麦趣尔承认两批次纯牛奶不合格;微信内测一个手机可注册俩号;度小满回应存款变理财产品...
[modern Chinese history] Chapter V test
一段用蜂鸣器编的音乐(成都)
Thoroughly understand LRU algorithm - explain 146 questions in detail and eliminate LRU cache in redis
5月14日杂谈
MATLAB打开.m文件乱码解决办法
A comprehensive summary of MySQL transactions and implementation principles, and no longer have to worry about interviews
强化学习基础记录
ArrayList的自动扩容机制实现原理
杂谈0516
抽象类和接口的区别









