88,50,38,100,90,100,99,65
출력문>
화장실(정렬) 들어가기 전 = 85 50 38 100 90 100 99 65
화장실(정렬) 들어가기 후 = 38 50 65 88 90 99 100 100 // 일반 for문
화장실(정렬) 들어가기 후 = 38 50 65 88 90 99 100 100 // 향상된 for문
int[] ar = {85,50,38,100,90,100,99,64};
System.out.print("화장실(정렬) 들어가기 전 = ");
for(int i=0;i<ar.length;i++) {
System.out.print(ar[i]+" ");
}
Arrays.sort(ar);
System.out.print("\n화장실(정렬) 들어가기 후 = ");
for(int i=0;i<ar.length;i++) {
System.out.print(ar[i]+" ");
}
System.out.print("\n화장실(정렬) 들어가기 전 = ");
for(int i : ar) {
System.out.print(i + " ");
}
Arrays.sort(배열명); --> 내장된 정렬 메서드(오름차순이 기본정렬)
import java.util.Arrays;
//[1] : 배열 선언 --> 성적 배열
int[] scores = {88,55,39,100,90,100,98,67};
// [2] : 성적배열 --> 오름차순 정렬 --> Arrays.sort(배열명);
System.out.print("화장실(정렬) 들어가기 전 = ");
for(int i=0;i<scores.length;i++)
System.out.print(scores[i]+" ");
Arrays.sort(scores);
System.out.print("\n화장실(정렬) 들어가기 후 = ");
for(int i=0;i<scores.length;i++)
System.out.print(scores[i]+" ");
//[3] : 향상된 for문 사용
System.out.print("\n화장실(정렬) 들어가기 전 = ");
for(int i : scores)
System.out.print(i + " ");
출력문>
화장실(정렬) 들어가기 전 = 88 55 39 100 90 100 98 67
화장실(정렬) 들어가기 후 = 39 55 67 88 90 98 100 100
화장실(정렬) 들어가기 전 = 39 55 67 88 90 98 100 100
Integer[] scores = {88,55,39,100,90,100,98,67};
Arrays.sort(배열명,컬랙션 reverseOrder); --> 추가 인자값이 필요하다!
import java.util.Arrays; import java.util.Collections;
// [2] : 성적배열 --> 내림차순 정렬 --> Arrays.sort(배열명);
System.out.print("화장실(정렬) 들어가기 전 = ");
for(int i=0;i<scores.length;i++)
System.out.print(scores[i]+" ");
// 내림차순 정렬
Arrays.sort(scores,Collections.reverseOrder());
System.out.print("\n화장실(정렬) 들어가기 후 = ");
for(int i=0;i<scores.length;i++)
System.out.print(scores[i]+" ");
//[3] : 향상된 for문 사용
System.out.print("\n화장실(정렬) 들어가기 전 = ");
for(int i : scores)
System.out.print(i + " ");
출력문 >
화장실(정렬) 들어가기 전 = 88 55 39 100 90 100 98 67
화장실(정렬) 들어가기 후 = 100 100 98 90 88 67 55 39
화장실(정렬) 들어가기 전 = 100 100 98 90 88 67 55 39
총 8명 학생의 성적과 등수는>
80점 -->5등 50점 -->7등 38점 --> 8등 100점 --> 1등 90점--> 4등 100--> 1등
99점-->3등 65점 --> 6등
int[] scores = {88,50,38,100,90,100,99,75};
int s_len = scores.length;
int[] ranking = new int[s_len];
System.out.println(scores.length);
System.out.println(ranking.length);
//[1] : 배열 선언 --> 성적 배열
int[] scores = {88,50,38,100,90,100,99,75};
int s_len = scores.length;
int[] ranking = new int[s_len];
System.out.println(scores.length);
System.out.println(ranking.length);
for(int i=0;i<s_len;i++) {
int max=scores[i],cnt=1;
// 랭킹 초기화
for(int j=0;j<s_len;j++) {
if(max<scores[j]) {
cnt++;
}
ranking[i]=cnt;
}
}
System.out.println("총 8명 학생의 성적과 등수는?");
for(int i=0;i<s_len;i++) {
System.out.print(scores[i]+"점 --> "+ranking[i]+"등 ");
}
출력문>
총 8명 학생의 성적과 등수는?
88점 --> 5등 50점 --> 7등 38점 --> 8등 100점 --> 1등 90점 --> 4등 100점 --> 1등 99점 --> 3등 75점 --> 6등
//[2]: 반복문을 돌면서 랭킹처리
for(int i=0;i<s_len;i++) {
// 랭킹 초기화
ranking[i] =1;
//중첩 반복문
for(int j=0;j<s_len;j++)
if(scores[i]<scores[j]) //이때 서로 비교되고 있는 값들을 잘 이해하기!
//System.out.println(scores[i]+"-" +scores[j] // 잘모를땐 출력해보기
ranking[i]++;
}
총 8명 학생의 성적과 등수는?
38점 --> 8등 50점--> 7등 75점 --> 6등 88점 --> 5등 90점 --> 3등 100 --> 1등 100 -->1등
//[1] : 배열 선언 --> 성적 배열
int[] scores = {88,50,38,100,90,100,99,75};
Arrays.sort(scores);
int s_len = scores.length;
int[] ranking = new int[s_len];
System.out.println(scores.length);
System.out.println(ranking.length);
//[2]: 반복문을 돌면서 랭킹처리
for(int i=0;i<s_len;i++) {
// 랭킹 초기화
ranking[i] =1;
//중첩 반복문
for(int j=0;j<s_len;j++)
if(scores[i]<scores[j])
ranking[i]++;
}
//출력
System.out.println("총 8명 학생의 성적과 등수는?");
for(int i=0;i<s_len;i++) {
System.out.print(scores[i]+"점 --> "+ranking[i]+"등 ");
}
출력문 >
총 8명 학생의 성적과 등수는?
38점 --> 8등 50점 --> 7등 75점 --> 6등 88점 --> 5등 90점 --> 4등 99점 --> 3등 100점 --> 1등 100점 --> 1등
public static void printRanking(int[] scores,int[] ranking) {
// 배열 길이
int scores_len = scores.length;
int ranking_len = scores_len;
// System.out.println(scores_len);
System.out.println("총 "+scores_len+"명 학생의 성적과 등수는?");
for(int i=0;i<scores_len;i++)
System.out.print(scores[i]+"점--> "+ranking[i]+"등 ");
}
//[1] : 배열 선언 --> 성적 배열
int[] scores = {88,50,38,100,90,100,99,75};
int s_len = scores.length;
int[] ranking = new int[s_len];
//[1.5] : 오름차순으로 배열 정렬 --> Arrays.sort(배열명);
Arrays.sort(scores);
System.out.println(scores.length);
System.out.println(ranking.length);
//[2]: 반복문을 돌면서 랭킹처리
for(int i=0;i<s_len;i++) {
// 랭킹 초기화
ranking[i] =1;
//중첩 반복문
for(int j=0;j<s_len;j++)
if(scores[i]<scores[j])
ranking[i]++;
}
//출력
printRanking(scores,ranking);
java100제 part4 끝!! 알고리즘 공부한지 얼마 안됬지만 재밌다! 선생님 풀이랑 비교해가면서 풀면 시간을 그만큼 많이 걸리지만 스스로 푸는 능력이 늘어가는 것 같다. 강의 더 빨리 끝낼 수 있었는데 여러 일정때문에(핑계) 늦게 끝나서 아쉬우면서도 뿌듯하다.😎 자바 공부는 정말 끝이 없다. 자바의 신 사서 공부해볼까 고민이다. 하고 싶은게 많다.