JavaSE part1 基础程序设计day07

本文集锦了多个Java编程实例,涵盖了数学计算、日期处理、字符串操作、算法实现及用户交互等多个方面,通过具体代码展示了如何解决实际问题,是学习Java编程的良好资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4_9
在这里插入图片描述
代码:

	public static void main(String[] args){
		double sum=0;
		for(int i=1;i<=99;i+=2){
			sum=sum+1.0*i/(i+2);
		}
		System.out.println(sum);
	}

4_10
在这里插入图片描述
代码:

	public static void main(String[] args){
		double pi=0;
		for(int i=1;i<=1000000000;i++){
			if(i%2==1){
				pi=pi+1.0/(2*i-1);
			}else{
				pi=pi-1.0/(2*i-1);
			}
		}
		System.out.println(4*pi);
	}
public static void main(String[] args){
		double pi=0;
		double flag=1.0;
		for(int i=1;i<=1000000000;i++){
			//pi=pi+Math.pow(-1, i+1)/(2*i-1);
			pi=pi+flag/(2*i-1);
			flag=-flag;
		}
		pi=4*pi;
		System.out.println(pi);
	}

4_11
在这里插入图片描述
代码:

public static void main(String[] args){
		double e=0;
		for(int i=1;i<10000;i++){
			double multi=1.0;
			for(int j=1;j<=i;j++){
				multi=multi*j;
			}
			e=e+1/multi;
		}
		System.out.println(e);
		
	}

4_12
在这里插入图片描述
代码:

	public static void main(String[] args) {
		int count=0;
		for(int i=101;i<=2100;i++){
			if(i%4==0&&i%100!=0||i%400==0){
				System.out.print(i+" ");
				count++;
				if(count%10==0){
					System.out.println();
				}
			}
		}
		System.out.println("\n"+count);
	}

4_13
在这里插入图片描述
代码:

public static void main(String[] args) {
		//输入年份 星期
		//输出每个月的第一天是星期几
		//1.1 2.1 3.1...12.1
		int year;
		int week;
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter year and week:");
		year=scanner.nextInt();//2013
		week=scanner.nextInt();
		int m=0,y=0,k=0,j=0,h=0;
		String monthStr="";
		String weekStr="";
		for(int month=1;month<=12;month++){
			m=month;
			y=year;//2013
			if(m==1||m==2){
				m+=12;
				y--;
			}
			k=y%100;
			j=y/100;
			h=(1+26*(month+1)/10+k+k/4+j/4+5*j)%7;
			switch (month) {
				case 1:
					monthStr="January";
					break;
				case 2:
					monthStr="February";
					break;
				case 3:
					monthStr="March";
					break;
				case 4:
					monthStr="April";
					break;
				case 5:
					monthStr="May";
					break;
				case 6:
					monthStr="June";
					break;
				case 7:
					monthStr="July";
					break;
				case 8:
					monthStr="August";
					break;
				case 9:
					monthStr="September";
					break;
				case 10:
					monthStr="October";
					break;
				case 11:
					monthStr="November";
					break;
				case 12:
					monthStr="December";
					break;
			}
			switch (h) {
				case 0:
					weekStr="Saturday";
					break;
				case 1:
					weekStr="Sunday";
					break;
				case 2:
					weekStr="Monday";
					break;
				case 3:
					weekStr="Tuesday";
					break;
				case 4:
					weekStr="Wednesday";
					break;
				case 5:
					weekStr="Thursday";
					break;
				case 6:
					weekStr="Friday";
					break;
			}
			System.out.println(monthStr+" 1,"+year+" is "+weekStr);
		}
	}

4_15
在这里插入图片描述
代码:

public static void main(String[] args){
		int sum=0;
		for(int i=1;i<=10000;i++){
			for(int j=1;j<=i/2;j++){
				if(i%j==0){
				sum+=j;
				}
			}
			if(sum==i){
				System.out.println(i);
			}
			sum=0;
		}
	}

4_16
在这里插入图片描述
代码:

public static void main(String[] aargs){
		int cCount=0;
		int pCount=0;
		Scanner scanner=new Scanner(System.in);
		while(true){
			System.out.print("请输入;0剪刀1石头2布:");
			int p=scanner.nextInt();
			int c=(int) (Math.random()*3);
			if(p==c){
				System.out.println("平局,请继续!");
			}
			if(p==0&&c==1){
				System.out.println("玩家剪刀,电脑石头,电脑赢");
				cCount++;
			}
			if(p==0&&c==2){
				System.out.println("玩家剪刀,电脑布,玩家赢");
				pCount++;
			}
			if(p==2&&c==0){
				System.out.println("玩家布,电脑剪刀,电脑赢");
				cCount++;
			}
			if(p==2&&c==1){
				System.out.println("玩家布,电脑石头,玩家赢");
				pCount++;
			}
			if(p==1&&c==2){
				System.out.println("玩家石头,电脑布,电脑赢");
				cCount++;
			}
			if(p==1&&c==0){
				System.out.println("玩家石头,电脑剪刀,玩家赢");
				pCount++;
			}
			if(cCount==2||pCount==2){
				break;
			}
		}
		if(cCount==2){//Unreachable code
			System.out.println("游戏结束,最终电脑赢!");
		}else{
			System.out.println("游戏结束,最终玩家赢!");
		}
	}

4_17
在这里插入图片描述
代码:

public static void main(String[] args){
		double sum=0;
		for(int i=1;i<=624;i++){
			sum=sum+1/(Math.sqrt(i)+Math.sqrt(i+1));
		}
		System.out.print(sum);
	}

4_18
在这里插入图片描述
代码:

public static void  main(String[] args){
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter a number:");
		int number=scanner.nextInt();
		String str="";
		while(true){
			int num=number%16;
			if(num>=10){
				switch(num){
				case 10:
					str="A"+str;
					break;
				case 11:
					str="B"+str;
					break;
				case 12:
					str="C"+str;
					break;
				case 13:
					str="D"+str;
					break;
				case 14:
					str="E"+str;
					break;
				case 15:
					str="F"+str;
					break;
				}	
			}else{
				str=num+str;
			}
			number/=16;
			if(number==0){
				break;
			}
//			str=number%2+str;
//			number/=2;
//			if(number==0){
//				break;
//			}
		}
		System.out.print("0X"+str);
	}

4_19
在这里插入图片描述
代码:

public static void main(String[] args){
		int max=0;
		int count=0;
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter numbers:");
		while(true){
			int n=scanner.nextInt();
			if(n>max){
				max=n;
				count=1;
			}else if(n==max){
				count++;
			}else if(n==0){
				break;
			}
		}
		System.out.print(max+":"+count);
	}

4_20
在这里插入图片描述
代码:

public static void main(String[] args){
		int count=0;
		for(int i=1;i<=6;i++){
			for(int j=i+1;j<=7;j++){
				System.out.println(i+":"+j);
				count++;
			}
		}
		System.out.print("count:"+count);
	}

4_21
在这里插入图片描述
代码:

public static void main(String[] args){
		Scanner scanner=new Scanner(System.in);
		double sum=0;
		double powSum=0;
		System.out.print("Enter 10 numbers:");
		for(int i=1;i<=10;i++){
			double num=scanner.nextDouble();
			sum+=num;
			powSum+=num*num;
		}
		double mean=sum/10;
		double sd=Math.sqrt( (powSum-sum*sum/10)/9);
		System.out.println("mean= "+mean);
		System.out.println("sd= "+sd);
	}

4_22
在这里插入图片描述
代码:

public static void main(String[] args){
		//提示用户输入两个字符串
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter a str1:");
		String s1=scanner.nextLine();
		System.out.print("Enter a str2:");
		String s2=scanner.nextLine();
		//比较两个字符串 Math.min
		//相对应字符挨个比较 直到不相等或最短的遍历完
		int i=0;
		for(;i<=Math.min(s1.length(), s2.length());i++){
			if(s1.charAt(i)!=s2.charAt(i)){
				break;
			}
		}
		//通过 substring(0,i)截取
		System.out.print("["+s1.substring(0, i)+"]");
	}

4_23
在这里插入图片描述
代码:

public static void main(String[] args) {
		//1.获取字符串
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter a string:");
		String s=scanner.nextLine();
		//2.遍历字符 
		int count=0;
		for(int i=0;i<s.length();i++){
			if(s.charAt(i)>=65&&s.charAt(i)<=90){
				count++;
			}
		}
		System.out.println(count);
	}

4_24
在这里插入图片描述
代码:

public static void main(String[] args){
		Scanner scanner=new Scanner(System.in);
		System.out.print("Enter a string:");
		String str=scanner.nextLine();
		for(int i=0;i<str.length();i++){
			if(i%2==0){
				System.out.print(str.charAt(i));
			}
		}
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值