2011-04-18 4 views
0

그래서 0-4의 배열을 가지므로 5 개의 정수 값 (예 : 1020251550)이 있습니다. 프로그램은 사용자에게 정수를 입력하도록 요청합니다. 사용자가 17을 입력 할 수있게합니다. 프로그램은 배열의 5 가지 값을 확인하고 사용자가 입력 한 것보다 큰 숫자를 인쇄합니다.이 경우 17입니다. (나는 이것을 위해 for 루프를 사용한다). 나는 또한 사용자가 입력 한 것보다 큰 숫자의 숫자를 출력하려고합니다.이 경우 2 (17보다 큰 숫자)입니다. 어떻게해야합니까? 첫 번째 for 루프 안에 for 루프를 작성합니까?for 루프를 사용하여 배열의 인덱스 수를 계산합니다.

int[] myArrays = new int[10,20,25,15,50]; 

int numEntered; 

for (i = 0; i < myArrays.length; i++) 
{ 
    if (myArrays[i] > numEntered) 
     System.out.println(myArrays[i]); 
} 

이제 어떻게하면 사용자가 입력 한 것보다 큰 총 수를 얻을 수 있습니까?

답변

2

누계 카운터가 있습니다. 당신은 사용자가 입력 한 것보다 더 큰의 번호를 찾을 때마다

int counter = 0; 

그런 다음, counter++;를 사용하여 카운터를 증가. 그런 다음 for 루프를 실행 한 후 카운터의 값을 출력하십시오.

너무 많이 공개하지 않고 숙제를 해결하는 데 필요한 충분한 정보 여야합니다.

+0

for 루프 앞에 또는 for 루프 내부에 int counter = 0을 설정합니까? –

+0

for 루프 앞에. 루프를 for 루프에 넣으면 내부의 모든 것이 루프의 반복마다 실행됩니다. 의미는 카운터 = 0, 모든 반복, 카운터는 0으로 재설정됩니다. – Tony

0

올바른 길을 가고 있습니다. 기본적으로, 문제는 이러한 항목에 귀결 :

  1. 를 지정한 값으로 모든 항목이 지정한 값보다 큰 발생 합산
  2. 보다
  3. 기록 항목 더 큰 배열을 통해 반복.

이 모든 작업은 어레이의 단일 루프로 수행 할 수 있습니다.

+0

그건 내가 생각하지만 약간 혼란 스럽네요. –

+0

당신의 다른 루프는 무엇을하고 있습니까? – Tejs

0

두 번째 루프가 필요합니까? 왜? 나는 그렇게 할 것입니다.

//Take in the number to test. 
public void islarger(int num){ 
    int counter = 0; 
    int numbers[] = new int[5]; 
    //loop through array 
    for(int x=0; x < array.length; ++x){ 
     if(array[x] > num){ 
      //If it meets the condition add it to the new array 
      numbers[y] = array[x]; 
      ++y; 
     } 
    } 
    //print our results. 
    System.out.println("There are " + counter " numbers larger than " + num + \n "They are..."); 
    Arrays.toString(numbers); 
} 
0

사용자 입력 값보다 큰 값을 찾을 때마다 증가하는 정수가있는 것이 아닙니까?

int count=0; 
for(int i=0; i<4; i++) { 
    if(myArrays[i] > numEntered) { 
     count++; 
     System.out.println(myArrays[i]); 
    } 
} 
System.out.println("found " + count + " values greater than " + numEntered); 
관련 문제