循环控制自编代码

实现的主要功能:
1.实现用户自定义用户和密码的注册功能
2.用户的登录功能,用户名和密码为自定义的密码和用户名
3.用户登录后看到的选择界面
4.随机输出两位整数进行算数运算
5.输出爱心图形方法
6.杨辉三角的方法
7.输出自任意的乘法表

#代码块

import java.util.Scanner;

public class  Demo6{
	String name;
	String sex;
	String addr;
	String password;
	int age;
	boolean flag=true;

public Demo6(){}

public Demo6(String name,String sex,String addr,int age){
	this.name=name;
	this.sex=sex;
	this.addr=addr;
	this.age=age;
}
	public static void main(String[] args) 
	{
		Demo6 insert=new Demo6();
		insert.getinput();
		insert.upon();
		insert.show();
	}
//实现用户自定义用户和密码的注册功能
public void getinput(){
	do{
	Scanner input=new Scanner(System.in);
    System.out.print("请输入注册的名字:");
	String new1name=input.next();
	System.out.print("请输入注册的密码:");
	String pass1word=input.next();
    System.out.print("请再次输入密码:");
	String pass2word=input.next();
	if(pass1word.equals(pass2word)&&new1name.length()>=6){
		name=new1name;
		password=pass1word;	
		flag=true;
	}else{
	    System.out.println("两次密码输入不一致并且用户名长度必须大于6");
		flag=false;
	}    
}while(!flag);{
        System.out.println("注册成功,请记住用户名和密码!"+"\n"+"\n");}
}

//用户的登录功能,用户名和密码为自定义的密码和用户名
public void upon(){
	   while(flag){
		Scanner upon=new Scanner(System.in);
        System.out.print("请输入登录用户名:");
        String name1=upon.next();
		System.out.print("请输入登录的密码:");
		String password1=upon.next();
       if (name1.equals(name)&&password1.equals(password))
       {
		   System.out.println("登陆成功!欢迎您回家!"+"\n");
		   break;
       }else{
	       System.out.println("对不起!密码或用户名不正确!请重新登录");
		   flag=true;
	        }
	   }
}

//用户登录后看到的选择界面
public void show(){
	while(true){
		   Scanner show=new Scanner(System.in); 
	       System.out.println("实现功能:");
		   System.out.println("1.百位数内的算数运算");
		   System.out.println("2.输出爱心的图案");
		   System.out.println("3.输出乘法表和杨辉三角");
           System.out.println("4.退出程序");
		   System.out.println("请选择实现的功能:");
		   int i=show.nextInt();
		   switch(i){
		           case 1:
		        	   yunsuan();
					   break;
			       case 2:
					   singlehreat();
				       break;
				   case 3:
					   Scanner x=new Scanner(System.in);
					   System.out.print("选择乘法表请按 1,选择杨辉三角请按 2:");
					   int a=x.nextInt();
					   if (a==1)
					   {
						   System.out.print("乘法表打印如下");
						   chengfa();
					   }else{
					   array();
					   }
					   break;
				   case 4:
					   System.out.print("感谢你的使用!即将退出!");
				       break;
				   default:
					   System.out.print("选择错误!请重新选择");
				       break;
		   }
     if (i==4)
     {
		 break;
     }	
	}     
}

//随机输出两位整数进行算数运算
public static void yunsuan(){
	boolean flag=false;
    Scanner input=new Scanner(System.in);
    int fristnum=(int)(1+Math.random()*100);
    int secondnum=(int)(1+Math.random()*100); 
    System.out.print("请选择运算符(+,-,*,/):");
    String getstring=input.next();     
    switch(getstring){
      case "+":
		  while(!flag){
		   System.out.print("请输入"+fristnum +"+"+secondnum+"=  ");
           int i4=input.nextInt();
		   if(i4==(fristnum+secondnum)){
				System.out.println("You are Right!"+"\n");
				break;
		   }else{
		        System.out.println("Wrong!Plase try again!"+"\n");
				flag=false;
		        }
		   }
           break;
      case "-":
		  while(!flag){
		   System.out.print("请输入: "+fristnum +"-"+secondnum+"=  ");
           int i1=input.nextInt();
		   if(i1==(fristnum-secondnum)){
				System.out.println("You are Right!"+"\n");
				break;
		   }else{
		        System.out.println("Wrong!Plase try again!"+"\n");
				flag=false;
		        }
		   }
           break;
      case "*":
		  while(!flag){
		   System.out.print("请输入"+fristnum +"*"+secondnum+"=  ");
           int i2=input.nextInt();
		   if(i2==(fristnum*secondnum)){
				System.out.println("You are Right!"+"\n");
				break;
		   }else{
		        System.out.println("Wrong!Plase try again!"+"\n");
				flag=false;
		        }
		   }
           break;
      case "/":
		  while(!flag){
		   System.out.print("请输入"+fristnum +"/"+secondnum+"=  ");
           int i3=input.nextInt();
		   if(i3==fristnum/secondnum){
				System.out.println("You are Right!"+"\n");
				break;
		   }else{
		        System.out.println("Wrong!Plase try again!"+"\n");
				flag=false;
		        }
		   }
           break;
      default:
           System.out.println("输入错误!");
           break;
       }
}

//输出爱心图形方法
public static void singlehreat(){
	int n = 4;
    int i, j, m;
    for (i=1; i<=n; i++) {       //第一行空格的个数   为5格
        for (j=1; j<=2*(n-i)-1; j++) {
            System.out.print(" ");
        }
        for (j=1; j<=6+(10- i)*(i-1)/ 2; j++) {     //输出左半边*
        	System.out.print("*");
        }
        for (j=1; j<=2*n-1+(i-6)*(i-1); j++) {
            if (i==n)
                break;
            		System.out.print(" ");    //输出中间部分空格
        }
        for (j=1; j<=6+(10-i)*(i-1)/2; j++) {
            if (i==n)
                break;
            		System.out.print("*");   //输出右半边*
        }
        if (i==n) {
            for (j=1; j<=6+(10-i)*(i-1)/2-1; j++) {
                System.out.print("*");
            }
        }
        		System.out.println("");
    } // 上面部分  前4行
    for (i=1; i<=n-2; i++) {
        for (j=1; j<=6+(10-n)*(n-1)/2-1+6+(10 - n)*(n-1)/2; j++) {
            System.out.print("*");
        }
        	System.out.println("");
    } // 中间部分  中间两行
    m = 6+(10-n)*(n-1)/2+6+(10-n)*(n-1)/2-1;
    for (i =1; i<= (m-2-3)/4+1; i++) {
        for (j =1; j<=2*i-1; j++) {
            System.out.print(" ");
        }
        for (j=1; j<=m +2-4*i; j++) {
            System.out.print("*");
        }
        	System.out.println("");
    }
    for (j=1; j<=2*((m-2-3)/4+1); j++)
    {
        	System.out.print(" ");
    }
    		System.out.print("*");        // 下面部分
 }

//杨辉三角的方法
public static void array(){
    int i,j;
    int[][] a=new int[10][10];
    a[0][0]=1;
    for(i=1;i<10;i++){
      a[i][0]=1;
      a[i][i]=1;
      for(j=1;j<i;j++)
      {
        a[i][j]=a[i-1][j]+a[i-1][j-1];     }
    }
    for(i=0;i<10;i++)
     {
      for(j=0;j<=i;j++){
       System.out.print(" "+a[i][j]+" ");  
      } System.out.println();   
        System.out.println();   
    }
}

//输出自定义的乘法表
public static void chengfa(){
			int sum;
			int get;
			Scanner input=new Scanner(System.in );
			System.out.println("输入数字:");
			get=input.nextInt();
			for(int i=1;i<=get;i++)
			 {
				for(int j=1;j<=get;j++) {
					sum=i*j;
					System.out.print(j+"*"+i+"="+sum+"       ");	
					if(i==j) {
						System.out.println();
						break;
					}
				}		
			}
     }
}

不是很完美,作为一个初学java的菜鸟只能做到这了。仅供参考!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值