首页 > 其他 > 详细

大数据学习2019.03.14

时间:2019-03-14 22:57:41      阅读:152      评论:0      收藏:0      [点我收藏+]

数组,分支,循环语句练习

1.输入一个数求该数是不是质数

技术分享图片
import java.util.Scanner;
public class Test01
{
    public static void main(String[] args){
    
        Scanner in = new Scanner(System.in);
        int num = in.nextInt();

        int i = 2;
        while(i<num){
            if (num%i == 0)
            {
                break;
            }
            i++;
        }
        if (num == i)
        {
            System.out.println(num+"是一个质数!");
        }else{
            System.out.println(num+"不是一个质数!");
        }

    }
}
View Code

2.判断一个年份是否是闰年。

技术分享图片
public class Test02{

    public static void main(String[] args){
        OUT:
        for(int i = 1;i<=5;i++){
            for(int j = 1;j<=3;j++){
                //System.out.println("("+i+","+j+")");
                if(i == 2){
                    break OUT;
                }
                System.out.println("("+i+","+j+")");
            }
        }    
    }
}
View Code

3.输入一个整数求他的逆序数。

技术分享图片
import java.util.Scanner;
public class Test07{

    /*
     *输入一个整数求他的逆序数
     */
    public static void main(String[] args){
    
        Scanner in = new Scanner(System.in);
        System.out.print("请输入一个整数:");
        int num = in.nextInt();
        int revNum = 0;
        int oriNum = num;
        while(num/10!=0|num>0){
            revNum = revNum*10 + num%10;
            num = num/10;
        }
        System.out.println(oriNum + "的逆序数为:" + revNum);

    }
}
View Code

4.求100到999内的水仙花数。

技术分享图片
public class Test08  {
    public static void main(String[] args){
        /*
        *求100到999内的水仙花数;
        *
        */
        int a = 0,b = 0,c = 0;
        for (int i = 100;i<=999 ;i++ ){
            a = i/100;
            b = i/10%10;
            c = i%10;
            if(a*a*a+b*b*b+c*c*c == i){
                System.out.println(i);
            }
        }
    }
}
View Code

5.冒泡排序。

技术分享图片
import java.util.Scanner;
public class Test10{
    
    //冒泡排序
    public static void main(String[] args){
    
        int[] arr = new int[10];
        Scanner in = new Scanner(System.in);
        System.out.print("请输入10个整数:");
        for(int i = 0;i<10;i++){
            arr[i] = in.nextInt();
        }
        for(int i = 0;i<arr.length;i++){
            for (int j = i+1;j<arr.length ;j++ )
            {
                if(arr[i]>arr[j]){
                    int temp = arr[j];
                    arr[j] = arr[i];
                    arr[i] = temp;
                }
            }
        }
        for(int k:arr){
            System.out.print(k+" ");
        }

    }
}
View Code

6.猜数字游戏。

技术分享图片
import java.util.Scanner;
public class Test12 {
    public static void main(String[] args) {
        System.out.println("猜数字小游戏");
        Scanner in = new Scanner(System.in);
        int res = (int)(Math.random()*100+1);
        while(true){
            System.out.print("请猜数字1到100:");
            int num = in.nextInt();
            if (res>num){
                System.out.println("小了");
            }else if(res<num){
                System.out.println("大了");
            }else{
                System.out.println("猜中了");
                break;
            }
        }
    }
}
View Code

7.判断素数进阶。

 

技术分享图片
package test01;

import java.util.Scanner;

public class PrimeTest01 {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int x = in.nextInt();
        boolean isPrime = true;
        if (x == 1 || x % 2 == 0 && x != 2) {
            isPrime = false;
        } else {
            for (int i = 3; i < Math.sqrt(x); i += 2) {
                if (x % i == 0) {
                    isPrime = false;
                    break;
                }
            }
        }
        if (isPrime) {
            System.out.println(x + "是一个素数!");
        } else {
            System.out.println(x + "不是一个素数!");
        }
        in.close();

    }

}
View Code

 

8.判断素数进阶二。

判断是否能被已知且<x的素数整除。

实例:求前50个素数

技术分享图片
package test01;

import java.util.Scanner;

public class PrimeTest01 {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int[] primes = new int[50];
        primes[0] = 2;
        int cnt = 1;
        OUT: for (int x = 3; cnt < 50; x++) {
            for (int i = 0; i < cnt; i++) {
                if (x % primes[i] == 0) {
                    continue OUT;
                }
            }
            primes[cnt++] = x;
        }
        for (int k : primes) {
            System.out.print(k + " ");
        }
        in.close();
    }
}
View Code

9.构造素数表

构造n以内的素数表

技术分享图片
package test01;

public class PrimeTest02 {
    public static void main(String[] args) {
        boolean[] isPrime = new boolean[100];
        for (int i = 0; i < isPrime.length; i++) {
            isPrime[i] = true;
        }
        for (int i = 2; i < isPrime.length; i++) {
            if (isPrime[i]) {
                for (int k = 2; i * k < isPrime.length; k++) {
                    isPrime[i * k] = false;
                }
            }
        }
        for (int i = 2; i < isPrime.length; i++) {
            if (isPrime[i]) {
                System.out.print(i + " ");
            }
        }
    }
}
View Code

二维数组

int[][] arr = new int[3][5];

二维数组的遍历。

技术分享图片
package test01;

public class ArrayTest {

    public static void main(String[] args) {

        int[][] arr = new int[3][5];
        for (int i = 0; i < arr.length; i++) {
            for (int j = 0; j < arr[i].length; j++) {
                arr[i][j] = i * j;
            }
        }

    }

}
View Code

 

字符串变量

String s;

String是一个类,String的变量是对象的管理者而非所有者;

字符串的初始化

 

String s = new String("a string");
String s1 = "Hello";

 

字符串连接:用加号(+)可以连接两个字符串;

输入字符串

in.next();读入一个单词,单词的标志是空格(空格包括空格,tab,和换行);

in.nextLine();读入一整行。

Strings应该用.equals来比较。

字符串操作

获得String的长度用length()函数。

访问String里的字符

s.charAt(index)

返回在index上的单个字符

不能用for-each循环来遍历字符串。

得到子串

s.substring(n);得到从n号位置到结尾的全部内容;

s.substring(b,e);得到从b到e之前的内容。

寻找字符

s.indexOf(c);得到c字符所在的位置,-1表示不存在;

s.indexOf(c,n);从n开始寻找c字符

s.indexOf(t);找到字符串t所在的位置。

s.lastIndexOf();从右边开始找。

注:所有的字符串都是不可变的,对它们的操作的结果都是制造新的字符串出来。

函数定义

函数是一块代码,接收零个或多个参数,做一件事,并返回零个或一个值。

函数调用: 

 

                                                                                                                                                                                                                                                                                                                                                                                                                     

 

大数据学习2019.03.14

原文:https://www.cnblogs.com/homelessdog/p/10533259.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!