Test/JAVA Test
중복 허용 정수 값 구하기
오류나면꽥꽥
2023. 5. 22. 21:59
중복허용
정수를 입력합니다. 0을 입력하면 종료됩니다.
프로그램이 종료되었을때
현재까지 이렵한 정수들의 평균을 출력
_._ 입니다.
입력한 정수중에서 짝수가 몇개인지 출력해주세요
짝수는 _개 입니다.
해당 컬렉션에 짝수만 남겨서 출력해주세요.
package class02;
import java.util.ArrayList;
import java.util.Scanner;
public class Test02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
// 배열은 개수가 정해져 있어야 하는데 그게 안되어 있으니까 못쓴다
// => 배열리스트 써야함
ArrayList<Integer> data=new ArrayList<Integer>();
while(true) { // 무한루프
System.out.print("입력) ");
int num=sc.nextInt(); // 입력값
if(num==0) { // 종료조건
System.out.println("0을 입력하여 프로그램이 종료되었습니다.");
break;
}
data.add(num);
}
int sum=0;
/*
for(int i=0;i<data.size();i++) {
sum+=data.get(i);
}
*/
for(int v:data) {
sum+=v;
}
double avg=sum*1.0/data.size();
System.out.println("평균: "+avg);
// 처음주터 끝까지 돌면서
// data의 모든 요소를 확인할거야~
// [a b c] 요소 b를 삭제
// [a c] 삭제한 인덱스부터 재확인!
// 이상하다면, 디버깅표를 작성해서 -> 원인 파악
int index=0;
while(index<data.size()) { // 인덱스부터 데이터 끝까지
if(data.get(index)%2==0) { //삭제해야하는 일이 발생했다면 -> 데이터 짝수니?
data.remove(index);
continue;
}
index++;
}
System.out.println(data);
}
}