Javaシナリオの深化

2870 ワード

402番全生徒のうち、ユーザが入力した数字に従って生徒選抜プログラムをランダムに作成してください.
    //사용자가 입력한 숫자만큼 뽑음 하지만 중복되지 않게 뽑아야함
	
	String[] students ={"강나영", "강동환", "강태영", "곽지훈", "김서윤", "김영훈", "김진석", "김충신", "박슬기", 
			           "박채린", "손영태", "손영흔", "안정연", "이선우", "이수보", "이주홍", "이중호", "임현정",
			           "장유진", "정신애", "조수경", "조하영", "조혜민", "허민정", "박지은"};
	
	
	Scanner sc = new Scanner(System.in);
	System.out.println("숫자를 입력하시오 >");
	int num = Integer.parseInt(sc.nextLine());
	   
	   String[] pick = new String[count]; //뽑은 사람을 저장할 배열
	   int pickCount = 0; 
          //현재 뽑은 사람 수(새야지 언제까지 뽑을지 알수 있기때문에 변수를 만든것)
          
	   do{
	      int random = (int)(Math.random() * students.length);
          //랜덤값과 원래 뽑힌 사람을 비교해야함
	      
	      boolean flag = true;//중복의 여부를 확인 하기 위한 변수
          
	      for(int i = 0; i < pick.length; i++){
	        if(students[random].equals(pick[i]){
          //랜덤으로 방금 뽑은 사람과 이미 뽑인 사람과 비교를해서 같으면 추가를 하면 안됨(중복)
	          flag = false;//랜덤으로 뽑힌 사람과 이미뽑힌 사람이 같으면 flag를 false로 만듬
	      }
	        if(flag){//변수가 그대로 내려왔으면 중복이 안된것
	          pick[pickCount++] = students[random]; 
          // 그대로 내려왔으면 뽑은사람 배열에 랜덤으로 뽑인 사람이 들어오고 뽑은사람을 카운트 해준것
	      }
	    }while(pickCount < count); 뽑은값/입력한값
	   
	   System.out.println(Arrays.toString(pick));
       
       
おつりにコイン1個あたりの単位を印刷してください
	거스름돈: 2860원
	500원:5개
	100원: 3개
	50원: 1개
	10원: 1개

	/* count = money / coin[0];
	 * money = money % coin[0];
	 * 
	 * count = money / coin[1];
	 * money = money % coin[1];
	 * 
	 * count = money / coin[2];
	 * money = money % coin[2];
	 * 
	 * count = money / coin[3];
	 * money = money % coin[3];
         //이런 식으로 반복 되는 형태
     
        int money = (int)(Math.random() * 500) * 10;
	int[] coin = {500,100,50,10};
	System.out.println("거스름돈: "+ money);
	
	for(int i = 0; i < coin.length; i++){
		int count = money / coin[i];
		money %= coin[i];
		System.out.println(coin[i]+"원 : "+count+"개");
	}
*を使用してグラフを1~5の数で描画します.
	  1:***3 //일단 숫자부터 세야댐
	  2:****4
	  3:**2
	  4:*****5
	  5:******6
	  
	
	int[] arr = new int[20];
	for(int i=0;i<arr.length; i++){
		arr[i] = (int)(Math.random() * 5)+1;
	}
	System.out.println(Arrays.toString(arr));
	
	int[] count = new int[5];
	for(int i=0; i < arr.length; i++){
		count[arr[i] - 1]++; //각 숫자가 발생되는 수를 새는것(인덱스 값을 구하는 것이라 -1)
	}   //카운트 숫자만큼 별을 찍으면댐
	for(int i = 0; i < count.length; i++){
		System.out.print(i + 1 + " : ");
		
	   for(int j = 0; j < count[i]; j++){
		   System.out.print("*");
	}
	System.out.println(" "+count[i]);
}