package com.zhang.hello;
public class Task {
    /**
     * 1. 输出打印九九乘法表
     * */
    public void NO1(){
        for(int i=1;i<10;i++){
            for(int j=1;j<=i;j++){
                System.out.print(j+"*"+i+"="+(i*j)+"\t");
            }
            System.out.println();
        }
    }
    /**
     * 2. 求1!+2!+3!+...+20!之和。
     *
     * */
    public long NO2(long n) {//n=20
        long s=0;
        for(long i=1;i<=n;i++){
            long k=1;
            for(long j=i;j>0;j--){
                k*=j;
            }
            s+=k;
        }
        return s;
    }
    /**
     * 3. 求1!+5!+9!+...+21!之和。
     * */
    public double NO3(double n) {//n=21
        double s=0;
        for(int i=1;i<=n;i+=4){
            double k=1;
            for(int j=i;j>0;j--){
                k*=j;
            }
            s+=k;
        }
        return s;
    }
    /**
     * 4. 求1+(1+2)+(1+2+3)+···+(1+2+3+···+10)的值?
     * */
    public int NO4(int n) {//n=10
        int s=0;
        for(int i=1;i<=n;i++){
            int k=0;
            for(int j=i;j>0;j--){
                k+=j;
            }
            s+=k;
        }
        return s;
    }
    /**
     * 5.输出杨辉三角
     * */
    public void NO5(){
        int h=1;
        for(int i=0;i<4;i++){
            for(int j=4;j>i;j--){
                System.out.print(" ");
            }

            for(int j=0;j<h;j++){
                System.out.print("@");
            }
            h+=2;
            System.out.println("");
        }
        System.out.println("-------------");
        h=1;
        for(int i=0;i<4;i++){
            for(int j=4;j>i;j--){
                System.out.print(" ");
            }

            for(int j=0;j<h;j++){
                if(j%2==0) System.out.print("@");
                else System.out.print(" ");
            }
            h+=2;
            System.out.println("");
        }
    }
    /**
     * 6.输出100到1000个位为3的所有素数
     * */
    public void NO6(){
        boolean[] prime=new boolean[1000];
        for(int i=0;i<1000;i++){
            if(i%2==0) prime[i]=false;//排除偶数
            else prime[i]=true;
        }

        for(int i=3;i<=Math.sqrt(1000);i+=2){
            if(prime[i]){//如果他是素数,他的倍数全部排除
                for(int j=i+i;j<1000;j+=i){
                    prime[j]=false;
                }
            }
        }

        for(int i=0;i<1000;i++){
            if(prime[i]&&i>99&&i<1000&&i%10==3)
                System.out.println(i+" ");
        }
    }
    public static void main(String[] args) {

        Task t=new Task();
        t.NO1();
        System.out.println(t.NO2(20));
        System.out.println(t.NO3(21.0));
        System.out.println(t.NO4(10));
        t.NO5();
        t.NO6();

    }
}

JAVA 练习 找出素数的更多相关文章

  1. 用JAVA实现找出输入字符串中的出现次数最多的字符及其次数;

    //通过Map 类实现,通过键值对的方式,可以将输入的字符串的每一个字符,作为键,每个字符出现的次数作为值:如下: public class Find { public static void mai ...

  2. 实验五:任意输入10个int类型数据,排序输出,并找出素数

    源代码: package 数组;import java.util.*;public class vvv { public static void main(String[] args) { Scann ...

  3. 实验五:任意输入10个int类型数据,排序输出,再找出素数

    一.程序编写 import java.util.*;public class Port {  public static void main(String[] args) {  // TODO 自动生 ...

  4. 【算法学习笔记】Meissel-Lehmer 算法 (亚线性时间找出素数个数)

    「Meissel-Lehmer 算法」是一种能在亚线性时间复杂度内求出 \(1\sim n\) 内质数个数的一种算法. 在看素数相关论文时发现了这个算法,论文链接:Here. 算法的细节来自 OI w ...

  5. java语言 找出文章中出现次数最多的单词

    package english; import java.io.File; import java.util.Scanner; import java.io.FileNotFoundException ...

  6. Java/sql找出oracle数据库有空格的列

    1.java方式 String table_sql = "select table_name from user_tables";//所有用户表 List<String> ...

  7. Java实现找出数组中重复次数最多的元素以及个数

    /**数组中元素重复最多的数 * @param array * @author shaobn * @param array */ public static void getMethod_4(int[ ...

  8. Java字符串找出4个字节长度的字符

    不解释,直接上代码:  由于Iteye代码贴四个字节的UTF-8字符出错,特能图的方式发布几个特殊字符:  public class Byte4Check { public static void m ...

  9. 【机试题】c# 是否是素数,找出比它大的第一个素数

    题目: 输入一个自然数 判断是否是素数,是素数则提示是素数,否则找出比它大的第一个素数 代码: Console.WriteLine("请输入任意一个自然数."); string n ...

随机推荐

  1. python/SQLAchemy

    python/SQLAchemy SQLAlchemy是Python编程语言下的一款ORM框架,该框架建立在数据库API之上,使用关系对象映射进行数据库操作,简言之便是:将对象转换成SQL,然后使用数 ...

  2. python基础——面向对象的程序设计

    python基础--面向对象的程序设计 1 什么是面向对象的程序设计 面向过程的程序设计的核心是过程,过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优 ...

  3. if__name__ == '__main__'

    # a.py import b def x(): print('x') b.y #b.py import a def y(): print('y') a.x() #执行b.py引发异常 首先,执行b. ...

  4. 使用生成器把Kafka写入速度提高1000倍

    title: 使用生成器把Kafka写入速度提高1000倍 toc: true comment: true date: 2018-04-13 21:35:09 tags: ['Python', '经验 ...

  5. vue-router详解——小白速会

    一.概述 vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用. vue的单页面应用是基于路由和组件的,路由用于设定访问路径,并将路径和组件映射起来. ...

  6. Override与Overload

    方法重写(Override) 方法重写是子类对父类(父类为抽象类)的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变.即外壳不变,核心重写! 方法的重写规则 1.参数列表必须完全与被重写 ...

  7. 【SQL.基础构建-第一节(1/4)】

    --        Tips:数据库与sql--    一.What's 数据库-- 1.数据库(Database,DB):将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合.--   ...

  8. java之设计模式工厂三兄弟之工厂方法模式

    [学习难度:★★☆☆☆,使用频率:★★★★★] 简单工厂模式虽然简单,但存在一个很严重的问题.当系统中需要引入新产品时,由于静态工厂方法通过所传入参数的不同来创建不同的产品,这必定要修改工厂类的源代码 ...

  9. Java动态代理模式浅析

    Java代理设计模式 - 静态代理 Java中的动态代理 - 调用处理器 代理设计模式的UML图: 我将首先介绍Java中的各种代理实现方法 Java代理设计模式 - 静态代理 这个例子非常简单,只有 ...

  10. Pycharm数据库连接错误

    简单地总结就一句话: Python2的mysql库为:mysqldb,而Python3的为:pymysql. 当我们使用Pycharm开发项目时,首先需要下载安装相对应的数据库,以及在项目根目录下的s ...