package shijuan;
import java.util.*;
public class RoomManagement {
static RoomInformation r[]=new RoomInformation[10];
static String rens[]=new String[10];
//主界面
static void zjm() {
System.out.println("********************************");
System.out.println(" 石家庄铁道大学");
System.out.println(" 学生公寓管理系统v2022");
System.out.println("********************************");
System.out.println(" 1、宿舍查询");
System.out.println(" 2、安排新宿舍");
System.out.println(" 3、调整宿舍");
System.out.println(" 4、宿舍卫生评价");
System.out.println(" 5、卫生检查情况查询");
System.out.println("********************************");
}
//宿舍详细信息显示
static void fuction1()
{
System.out.println("********************************");
System.out.println(" 石家庄铁道大学");
System.out.println(" 学生公寓管理系统v2022");
System.out.println("********************************");
System.out.println(" 宿舍详细信息列表");
int i;
for(i=0;i<10;i++)
{
if(r[i].getxh1()==null)
{
System.out.printf("\t%d、9#10%d 0人 空宿舍\n",i+1,i);
continue;
}
else if(r[i].getxh2()==null)
System.out.printf("\t%d、9#10%d 1人 空3人\n",i+1,i);
else if(r[i].getxh3()==null)
System.out.printf("\t%d、9#10%d 2人 空2人\n",i+1,i);
else if(r[i].getxh4()==null)
System.out.printf("\t%d、9#10%d 3人 空1人\n",i+1,i);
else System.out.printf("\t%d、9#10%d 4人 已满\n",i+1,i);
}
System.out.println("********************************");
}
//安排新宿舍页面
static void apxss() {
System.out.println("********************************");
System.out.println("\t石家庄铁道大学");
System.out.println("\t学生公寓管理系统v2022");
System.out.println("\t安排新宿舍");
System.out.println("********************************");
}
//调整宿舍页面
static void tzss() {
System.out.println("********************************");
System.out.println(" 石家庄铁道大学");
System.out.println(" 学生公寓管理系统v2022");
System.out.println(" 调整宿舍");
System.out.println("********************************");
System.out.println(" 有空床位宿舍详细信息列表");
}
//宿舍卫生评价页面
static void wspj() {
System.out.println("********************************");
System.out.println(" 石家庄铁道大学");
System.out.println(" 学生公寓管理系统v2022");
System.out.println(" 宿舍卫生评价");
System.out.println("********************************");
//System.out.println(" 请输入待评价宿舍号:XXXXX");
//System.out.println("********************************");
}
//卫生检查情况查询页面
static void wscx() {
System.out.println("********************************");
System.out.println(" 石家庄铁道大学");
System.out.println(" 学生公寓管理系统v2022");
System.out.println(" 卫生检查情况查询");
System.out.println("********************************");
System.out.println(" 宿舍卫生检查情况信息");
}
//设置宿舍基础信息
static void seti()
{
r[0]=new RoomInformation();
r[0].setall("9#100","20214005","20214006","20214007","20214008",0);
r[1]=new RoomInformation();
r[1].setall("9#101","20214009","20214010","20214011","20214012",0);
r[2]=new RoomInformation();
r[2].setall("9#102","20214013","20214014","20214015",null,0);
r[3]=new RoomInformation();
r[3].setall("9#103","20214016","20214017",null,null,0);
r[4]=new RoomInformation();
r[4].setall("9#104","20214018",null,null,null,0);
r[5]=new RoomInformation();
r[5].setall("9#105","20214019"," 20214020","20214021","20214022",0);
r[6]=new RoomInformation();
r[6].setall("9#106",null,null,null,null,0);
r[7]=new RoomInformation();
r[7].setall("9#107",null,null,null,null,0);
r[8]=new RoomInformation();
r[8].setall("9#108",null,null,null,null,0);
r[9]=new RoomInformation();
r[9].setall("9#109",null,null,null,null,0);
}
//查人数:
static int rs(int i) {
int num=0;
if(r[i].getxh1()!=null)num++;
if(r[i].getxh2()!=null)num++;
if(r[i].getxh3()!=null)num++;
if(r[i].getxh4()!=null)num++;
switch(num) {
case 0:rens[i]="空宿舍";break;
case 1:rens[i]="空3人";break;
case 2:rens[i]="空2人";break;
case 3:rens[i]="空1人";break;
case 4:rens[i]="已满";break;
}
return num;
}
//设置新生
static void setxin(int k) {
Scanner scan=new Scanner(System.in);
String xss;
int i,j=0;
for(;;)
{xss=scan.next();
System.out.println("\t床位"+(j+1)+":");
if(xss.equals("END"))break;
for(i=0;i<10;i++)
{
if(xss.equals(r[i].getxh1())||xss.equals(r[i].getxh2())||xss.equals(r[i].getxh3())||xss.equals(r[i].getxh4()))
{
System.out.println("该学生已被安排宿舍");break;
}
}
if(i!=10)continue;
if(j==0)r[k].setstunno1(xss);
if(j==1)r[k].setstunno2(xss);
if(j==2)r[k].setstunno3(xss);
if(j==3)r[k].setstunno4(xss);
j++;
if(j==4) {
System.out.println("该宿舍已满");break;
}
}
}
//实现安排新宿舍功能操作
static void ap()
{
Scanner scan=new Scanner(System.in);
String xinsu;
int i=0,j;
for(;;)
{
apxss();
for(i=0,j=1;i<10;i++)//输出空宿舍
{
if(rs(i)==0)
{
System.out.println("\t"+j+"、"+r[i].getroomno()+" 0人\t空宿舍");j++;
}
}
System.out.println("请输入要安排的宿舍号:");
xinsu=scan.next();
if(xinsu.equals("END"))break;
for(i=0;i<10;i++)//判断输入是否为正确宿舍号
if(xinsu.equals(r[i].getroomno()))break;
if(i!=10)
{
if(rs(i)!=0)System.out.println("该宿舍不是空宿舍,无法安排新生");
else
{
apxss();
setxin(i);
}
}
else
{
System.out.println(i);
System.out.println("宿舍号输入错误,请重新输入");continue;
}
}
}
//调整新生
static void tiaoz(int k) {
Scanner scan=new Scanner(System.in);
String xss;
int i;
for(;;)
{System.out.println("请输入要调整的床位:");
int l;
l=scan.nextInt();
System.out.println("请输入学号");
xss=scan.next();
if(xss.equals("END"))break;
for(i=0;i<10;i++)
{
if(xss.equals(r[i].getxh1())||xss.equals(r[i].getxh2())||xss.equals(r[i].getxh3())||xss.equals(r[i].getxh4()))
{
System.out.println("该学生已被安排宿舍");break;
}
}
if(i!=10)continue;
if(l<=4)
System.out.println("\t床位"+l+":");
else { System.out.println("输入有误");continue;}
if(l==1&&r[k].getxh1()==null)r[k].setstunno1(xss);
if(l==2&&r[k].getxh2()==null)r[k].setstunno2(xss);
if(l==3&&r[k].getxh3()==null)r[k].setstunno3(xss);
if(l==4&&r[k].getxh4()==null)r[k].setstunno4(xss);
if(rs(k)==4) {
System.out.println("该宿舍已满");break;
}
}
}
//调整宿舍功能实现
static void tz()
{
Scanner scan=new Scanner(System.in);
String tiao;
int i=0,j;
for(;;)
{
tzss();
System.out.println("输出带空铺的宿舍");
for(i=0,j=1;i<10;i++)//输出带空铺的宿舍
{
if(rs(i)==0)
{
System.out.println("\t"+j+"、"+r[i].getroomno()+" 0人\t空宿舍");j++;
}
if(rs(i)==1)
{
System.out.println("\t"+j+"、"+r[i].getroomno()+" 1人\t空3人");j++;
}
if(rs(i)==2)
{
System.out.println("\t"+j+"、"+r[i].getroomno()+" 2人\t空2人");j++;
}
if(rs(i)==3)
{
System.out.println("\t"+j+"、"+r[i].getroomno()+" 3人\t空1人");j++;
}
}
System.out.println("输入待调整宿舍");
System.out.println("********************************");
tiao=scan.next();
if(tiao.equals("END"))break;
for(i=0;i<10;i++)//判断输入是否为正确宿舍号
if(tiao.equals(r[i].getroomno()))break;
if(i!=10)
{
if(rs(i)==4)System.out.println("该宿舍没有空床位,无法调整");
else
{
tzss();
int m=0;
System.out.println("\t床位"+(m+1)+"、"+"\t"+r[i].getxh1());m++;
System.out.println("\t床位"+(m+1)+"、"+"\t"+r[i].getxh2());m++;
System.out.println("\t床位"+(m+1)+"、"+"\t"+r[i].getxh3());m++;
System.out.println("\t床位"+(m+1)+"、"+"\t"+r[i].getxh4());m=0;
tiaoz(i);
}
}
}
}
//分数与评价对等
static String fsdd(int i) {
if(r[i].gethygienescore()<60)return "不合格";
if(r[i].gethygienescore()<80&&r[i].gethygienescore()>=60)return "合格";
if(r[i].gethygienescore()>=80&&r[i].gethygienescore()<90)return "良好";
else return "优秀";
}
//宿舍卫生评价
static void wspj2()
{
Scanner scan=new Scanner(System.in);
wspj();
System.out.println("请输入待评价宿舍号:");
System.out.println("********************************");
String pjh;int fs;
pjh=scan.next();
int i;
for(i=0;i<10;i++)
{
if(pjh.equals(r[i].getroomno()))break;
}
if(i!=10)
{
if(rs(i)==0)System.out.println("该宿舍为空宿舍");
else
{
wspj();
System.out.println("1、床位1:\t"+r[i].getxh1());
System.out.println("2、床位2:\t"+r[i].getxh2());
System.out.println("3、床位3:\t"+r[i].getxh3());
System.out.println("4、床位4:\t"+r[i].getxh4());
for(;;)
{
System.out.println("请输入卫生分数");
fs=scan.nextInt();
if(fs<100&&fs>0)
{
r[i].sethygienescore(fs);break;
}
else
{
System.out.println("输入错误");continue;
}
}
}
}
else System.out.println("宿舍号输入有误");
}
//卫生检查情况查询
static void wscx2()
{
wscx();
for(int h=0;h<10;h++)
{
if(rs(h)!=0)
System.out.println((h+1)+"、\t"+r[h].getroomno()+"\t"+fsdd(h));
}
}
//在主函数调用
public static void main(String [] args)
{
seti();
while(true)
{
zjm();
int i;
Scanner scan=new Scanner(System.in);
i=scan.nextInt();
switch(i)
{
case 1:
fuction1();break;
case 2:
ap();
break;
case 3:
tz();
break;
case 4:
wspj2();
break;
case 5:
wscx2();
break;
case 0:
break;
default:
System.out.println("该选项不存在");
}
if(i==0) break;
}
}
}
/*信2105-3班
* 20214005
* 赵悦恒*/
package shijuan;
import java.util.*;
public class RoomInformation {
private String roomno;
private String stunno1,stunno2,stunno3,stunno4;
private int hygienescore;
//读取、设置
public void setroomno(String ssh) {
this.roomno=ssh;
}
public String getroomno() {
return roomno;
}
public void setstunno1(String xh1) {
this.stunno1=xh1;
}
public String getxh1() {
return stunno1;
}
public void setstunno2(String xh2) {
this.stunno2=xh2;
}
public String getxh2() {
return stunno2;
}
public void setstunno3(String xh3) {
this.stunno3=xh3;
}
public String getxh3() {
return stunno3;
}
public void setstunno4(String xh4) {
this.stunno4=xh4;
}
public String getxh4() {
return stunno4;
}
public void sethygienescore(int fs) {
this.hygienescore=fs;
}
public int gethygienescore() {
return hygienescore;
}
public void setall(String roomnum,String stunno1,String stunno2,String stunno3,String stunno4,int hygienescore) {
this.roomno=roomnum;this.stunno1=stunno1;this.stunno2=stunno2;this.stunno3=stunno3;this.stunno4=stunno4;this.hygienescore=hygienescore;
}
}