질문) 자바 오류 해결 좀 해주세요
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040201&docId=261834489
답변)
1-1. CLASS
public class Mome {
public static void main(String[] args) {
int a[] = {3,4,2,5,1};
int i, j;
int max = a[0], local = 0;
for(i = 0; i < 5; i++){
if(max < a[i]){
max = a[i];
local = i + 1; // 자릿수에 'i'를 넣으면 끝!!
}
}
System.out.println("최대값은" + max + ", 자릿값은" + local);
}
}
1-2. CLASS
public class Mome {
public static void main(String[] args) {
int a[] = {3,4,2,5,1};
int i, j;
int max = a[0], local = 0;
for(i = 0; i < 5; i++){
if(max < a[i]){
max = a[i];
}
if(i + 1 == a.length){ // i 가 배열의 갯수와 같아지면 자릿수를 구하기 시작한다.
for(j = 0; j < a.length; j++){ // for문의 실행결과를 이용할 경우.
if(a[j] == max) local = j + 1;
}
}
}
System.out.println("최대값은" + max + ", 자릿값은" + local);
}
}
1-3. CLASS
public class Mome {
public static void main(String[] args) {
int a[] = {3,4,2,5,1};
int i, j, k;
int max = a[0], local = 0;
if(a.length % 2 == 1){
k = a.length / 2 + 1;
}else{
k = a.length / 2;
}
// 배열개수의 중간을 구해서 앞에서부터 시작한 배열값과, 뒤에서부터 시작한 배열값을 비교해서 자릿수를 구한다.
for(i = 0, j = (a.length - 1); i < k; i++, j--){
if(max < a[i] || max < a[j]){
if(a[i] > a[j]){
max = a[i];
local = i;
}else{
max = a[j];
local = j;
}
}
}
System.out.println("최대값은" + max + ", 자릿값은" + (local + 1));
}
}
2. RUN
최대값은5, 자릿값은4
'course > 지식인' 카테고리의 다른 글
[자바] 특정자릿수의 문자검색. (0) | 2016.11.12 |
---|---|
[자바] 문자열의 일정부분을 기호 등으로 대체.. (0) | 2016.09.28 |
[자바] java.lang.NullPointerException 에러 관련 질문.. (2) | 2016.09.09 |