Pour tout nombre supérieur à 3, déterminez s'il s'agit d'un nombre premier
une analyse:
(1) Nombre premier: Sauf 1 et lui-même, il ne peut être divisible par aucun autre nombre
(2) En supposant que le nombre est n, il suffit de vérifier s'il est divisible par 2 ~ n / 2 (même s'il suffit de le juger par rapport au nombre radical n).
Résolution de problèmes en langage C
La quatrième étape est assez compliquée à écrire et vous devez juger les petits nombres de 3, 4 et 5. Seulement des idées personnelles
Et faites attention à la conversion de type (int) n / 2
#include<stdio.h>// 素数判定intmain(){
// 1.获取n的值int n, i;printf("请输入n的值:\n");scanf("%d",&n);// 2. 创建 作为初始除数i=2for(i=2;i <= n/2; i++){
// 3. 判断 2~ n/2 的是能否整除,能整除就得出 不是素数,结束循环if(n%i ==0){
printf("%d, 不是素数\n", n);break;}}// 4. 当i>= n/2时,表示循环全部结束,输出n是素数(这里 i > n/2 的情况是 n==3,i=1,且 n 不能为4,因为是四,两个printf语句都将输出) if(i >=(int)n/2&& n !=4)printf("%d, 是素数\n", n);return0;}
Ajouté: en fait aucune conversion de type
résolution de problèmes python
La syntaxe else inhérente à l'instruction python for élimine le jugement if à la fin du langage C, qui est un peu plus concis
n =int(input("请输入要判定的数字:"))for i inrange(2,int(n/2)+1):if n%i ==0:print("%d, 不是素数"% n)break# 此else 与for对齐else:print("%d, 是素数"% n)
Je suppose que tu aimes
Origine blog.csdn.net/pythonstrat/article/details/112647951