求1~50间的素数(利用带标号的break语句使其终止)

public class C3_18
{ 
    public static void main(String[] args)
    {        
    int n=0,m,j,i;
        p1:for(i=3;i<=100;i+=2)//外层循环,前面带有标号
        {
            m=(int)Math.sqrt((double)i);            
            for(j=2;j<=m;j++)//内嵌循环
             {                
             if((i%j)==0) break;                
             if(i==51) break p1;//条件成立时结束由标号p1所指向的循环
            }//内嵌循环结束
            if(j>=m+1)
            {                
            if(n%6==0) System.out.print("\n");//换行控制
                System.out.print(i+"  ");
                n++;
            }
        }//外循环结束
    }
}

运行结果

时间: 2024-10-14 05:41:02

求1~50间的素数(利用带标号的break语句使其终止)的相关文章

求1~100间的素数.java

public class C3_18 {      public static void main(String[] args)     {             int n=0,m,j,i;             for(i=3;i<=100;i+=2)//外层循环         {             m=(int)Math.sqrt((double)i);                         for(j=2;j<=m;j++)//内嵌循环              

Ruby、PHP与SHELL中求50之内的素数方法

求50之内的素数,ruby的代码如下: #encoding:utf-8 #求50以内的素数(注意数字中..与...的区别) for i in 2..50     f=true #起始假定每个数都是素数     for p in 2...i #比自身小的正整数(1和自身除外) if i%p==0 #如果能整除 f=!f #那么这个数不是素数 break #并且跳出这层循环         end # if 结束     end #内层循环结束     print i," " if f #

COJ 3018 求1~n之间的素数

求1~n之间的素数 难度级别:A: 运行时间限制:1000ms: 运行空间限制:256000KB: 代码长度限制:2000000B 试题描述  素数是大于1,且除1和本身以外不能被其他整数所整除的数.要求输出1~n之间的素数. 输入 正整数n 输出 1~n之间的所有素数,包括n,数字之间用一个空格隔开,第一个数字前不能有空格. 输入示例 10 输出示例 2 3 5 7 其他说明 n是大于1且不大于100的正整数 题解:可以练习一下MR(都不会打了) 1 #include<iostream> 2

POJ 3026 Borg Maze(Prim+bfs求各点间距离)

题目链接:http://poj.org/problem?id=3026 题目大意:在一个y行 x列的迷宫中,有可行走的通路空格’  ‘,不可行走的墙’#’,还有两种英文字母A和S,现在从S出发,要求用最短的路径L连接所有字母,输出这条路径L的总长度. 解题思路:相当于所有的字母A和S都是结点,求连接这些结点的最小距离和,是最小生成树的题目.先用BFS求各点间的距离,然后再用Prim(Kruskal也可以)求出最小距离就可以了. 注意:输完行列m和n之后,后面有一堆空格,要用gets()去掉,题目

筛选法求n以内所有的素数

求n以内所有的素数? 筛选法:将2到n中所有的数都列出来,然后从2开始,先化掉所有2的倍数,然后每次从下一个剩下的数(必然是素数)开始,划掉其内所有的倍数,最后剩下来的数就都是素数 例:13  红色为删除的元素 第一轮 2的倍数: 2 3 4 5 6 7 8 9 10 11 12 13 第二轮 3的倍数: 2 3 4 5 6 7 8 9 10 11 12 13 第三轮 4的倍数: 2 3 4 5 6 7 8 9 10 11 12 13 ..... 1 #include<iostream> 2

SGU 231 Prime Sum 求&lt;=n内有多少对素数(a,b)使得a+b也为素数 规律题

题目链接:点击打开链接 题意: 求<=n内有多少对素数(a,b)使得a+b也为素数 思路: 我们发现所有素数间隔都是>=2的,且除了2都是奇数,那么: 奇数+奇数 = 偶数. 所以只有一种情况2+素数=素数. 所以打个素数表,看一下有多少个素数和前面那个素数间隔是2的. #include <stdio.h> #include <string.h> #include <iostream> #include <math.h> #include <

62.编程求所有的三位素数,且要求该数是对称数

//1.写一个函数判断一个数是否为素数 //2.判断该数是否是对称数 #include <iostream> #include <cmath> using namespace std; bool isPrime(int i) { for(int a=2; a<=sqrt(i); a++) { if(i%a==0) { return false; } } return true; } bool isHui(int i) { return (i/100==i%10); } int

求n以内的所有素数之Golang实现

package main import (     "fmt"     "math" ) func prime(value int) bool {     if value <= 1 {         return false     }     if value == 2 || value == 3 || value == 5 || value == 7 {         return true     }     if value%2 == 0 || 

python脚本11_求10万以内所有素数

#求10万以内所有素数 num = int(input(">>>")) strs = '' for i in range(2,num): for c in range(2,int(i**0.5)+1): if i%c == 0: break else: strs += str(i)+' ' print(strs) 方法2: print(2) for i in range(3,100001,2): if i>10 and i%10 == 5: continue e