java经典程序(1-10)

package question;

import java.util.Scanner;
/**
 * java经典程序100例
 * @author llj
 * @date 2019年6月2日
 */
public class Test {
	/**
	 * 1.判断某一年是不是闰年
	 * 能除以4不能除以100闰年
	 * 能除以400是闰年
	 */
	public void test1(){
		while(true){
			Scanner sc = new Scanner(System.in);
			int a = sc.nextInt();
			if(a<3000&&a>0){
				//满足其中一个进行
				if(a%4==0&&a%100!=0||a%400==0){
					System.out.println(a+"是闰年");
				}else{
					System.out.println(a+"不是闰年");
				}
			}else{
				System.out.println("请输入0到3000的数");
			}
		}
	}
	/**
	 * 输入一个分数,显示分数的等级
	 */
	public void test2(){
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		String str = "";
		//在这个分数阶段才执行
		if(a>=0&&a<=100){
			switch(a/10){
				case 10 :str = "满分"; break;
				case 9:str="优";break;
				case 8 :str = "良"; break;
				case 7:str="中";break;
				case 6 :str = "差"; break;
				default :str="不及格";
			}
			System.out.println(str);
		}else{
			System.out.println("输入的分数有误");
			System.exit(0);//退出系统
		}
	}
	/**
	 * 编写程序求1+3+5+7+···+99
	 */
	public void test3(){
		int sum=0;
		//i每次加2
		for(int i=1; i<=99; i+=2){
			sum+=i;
		}
		System.out.println(sum);
	}
	//使用for循环打印9*9表
	/**
	 *  1*1=1 
		1*2=2 2*2=4 
		1*3=3 2*3=6 3*3=9 
		1*4=4 2*4=8 3*4=12 4*4=16 
		1*5=5 2*5=10 3*5=15 4*5=20 5*5=25 
		1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36 
		1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49 
		1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64 
		1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81 
	 */
	public void test4(){
		for(int i=1; i<10; i++){
			for(int j=1; j<=i; j++){
				System.out.print(j+"*"+i+"="+j*i+" ");
			}
			//每行打印完换行
			System.out.println();
		}
	}
	/**
	 * 输出所有的水仙花数水仙花数是指一个3位数各位数字的立方和等于本身
	 * 例如:153=1*1*1+5*5*5+3*3*3
	 */
	public void test6(){
		for(int i=100; i<1000; i++){
			//获取百分位
			int aa = i/100;
			//获取十分位153%100=53,53/10=5
			int bb = i%100/10;
			//获取个位153%10=3   取余数
			int cc = i%10;
			//System.out.println(aa +":"+bb+":"+ cc +"==="+i);
			if(aa*aa*aa+bb*bb*bb+cc*cc*cc==i){
				System.out.println(i+"是水仙花数");
				//153是水仙花数
				//370是水仙花数
				//371是水仙花数
				//407是水仙花数
			}
		}
	}
	/**求a+aa+aaa+···+aaaaaaaaa··
	*   其中a 等于1-9之中的一个数
	*   a的大小和最后一项的个数由用户指定
	*/
	public void test7(){
		Scanner sc = new Scanner(System.in);
		System.out.println("输入a的大小!(a>0&&a<=9)");
		int a = sc.nextInt();
		System.out.println("输入最后一项a的个数!");
		int num = sc.nextInt();
		int sum=0;
		int b = a;//保存a的值,保证每次加的都是这个值
		for(int i=0; i<num; i++){
			sum = sum + a;//用sum接收
			a = a*10+b;//a的值表示第几项的值,
		}
		System.out.println(sum);
			/*输入a的大小!(a>0&&a<=9)
			  6
			     输入最后一项a的个数!
			  6
			 740736
		   */
	}
	/**
	 * 求2/1+3/2+5/3+8/5+····前20项的和
	 * 规律:分子和分母的值都是前两项的和
	 * 分子 2 3 5 8 13 21 。。。
	 * 分母 1 2 3 5 8 13
	 */
	public void test8(){
		double sum = 0;
		double fz = 2.0;
		double fm = 1.0;
		for(int i=0; i<4; i++){
			sum+=fz/fm;
			double temp = fm;
			fm = fz; //下一项的分母等于上一项的分子
			fz = fz+temp;//下一项的分子等于上一项的分子加分母
		}
		System.out.println(sum);//6.7666666666666675

	}
	/**
	 * 利用程序输出以下图形
	 *         *
	 *         ***
	 *         *****
	 *         *******
	 *         *****
	 *         ***
	 *         *
	 * 
	 */
	public void test9(){
		for(int i=1; i<=13; i+=1){
			for(int j=1; j<=i&&j+i<=14; j++){
				System.out.print("*");
			}
			System.out.println();
		}
		
	}
	/**
	 * 计算圆周率
	 * PI=4-4/3+4/5-4/7...
	 * 打印出第一个大于3.1415小于3.1416的值
	 */
	public void test10(){
		//分子为4,分母 1 3 5 7 9 符号:- + - +
		double PI=4.0;
		double fm = 3.0;
		int i = 0;
		while(true){
			i++;//循环次数
			if(i%2==0){//用于判断正负号
				PI = PI-4.0/fm;
			}else{
				PI = PI+4/fm;
			}
			if(PI>3.1415&&PI<3.1416){
				System.out.println(PI);//3.1415000095284658
				System.out.println(i);//循环次数10793
				return;
			}
			fm+=2;//分母每次加2
		}
		
	}
	/**
	 * 计算圆周率
	 * PI=4-4/3+4/5-4/7...
	 * 打印出第一个大于3.1415小于3.1416的值
	 */
	public void test10_1(){
		//分子为4,分母 1 3 5 7 9 符号:- + - +
		double PI=4.0;
		double fm = 3.0;
		double fz = -4.0;
		int i = 0;
		while(true){
			i++;
			PI+=fz/fm;
			fz =fz*(-1);
			fm+=2;
			if(PI>3.1415&&PI<3.1416){
				System.out.println(PI);
				System.out.println(i);//循环次数10793
				return;
			}
		}
	}
		
	public static void main(String[] args) {
		Test t = new Test();
		t.test4();
	}
}

  • 6
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本书内容包括java语言概述、 eclipse开发工具、 java语言基础、 流程控制、 数组及其常用操作、 面向对象入门、 面向对象进阶、 字符串与包装类、 java集合类框架、 常用数学工具类、 错误处理、 输入/输出、 枚举类型与泛型、 swing入门、 多线程、 网络通信和数据库操作。   本书所精选的实例都是一线开发人员在实际项目中所积累的,并进行了技术上的解析,给出了详细的实现过程。读者通过对本书的学习,能够提高开发的能力。    本书提供了大量的源程序、素材,提供了相关的模块库、案例库、素材库、题库等多种形式辅助学习资料,还提供迅速及时的微博、qq、论坛等技术支持。    本书内容详尽,实例丰富,非常适合作为零基础学习人员的学习用书和大中专院校师生的学习教材,也适合作为相关培训机构的师生和软件开发人员的参考资料。 《java经典编程300例》 第1章 java语言概述   实例001 输出“hello world”   实例002 输出控制台传递的参数   实例003 输出由“*”组成的三角形   实例004 输出符号表情 第2章 eclipse开发工具   实例005 下载并运行eclipse 工具   实例006 为eclipse安装汉化包   实例007 使用eclipse注释代码   实例008 使用eclipse格式化代码   实例009 安装windowbuilder插件   实例010 开发计算器界面 第3章 java语言基础   实例011 输出错误信息与调试信息   实例012 从控制台接收输入字符   实例013 重定向输出流实现程序日志   实例014 自动类型转换与强制类型转换   实例015 加密可以这样简单(位运算)   实例016 用三元运算符判断奇数和偶数 .  实例017 不用乘法运算符实现2×16   实例018 实现两个变量的互换(不借助第3个变量)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值