본문 바로가기
문제풀기

10월 22일 Java - eclipse

by project100 2023. 10. 22.

연습문제 1~2

 

문제 1

전제조건 >> 

if문 + Stirng 활용 

입력은 Scanner로 받기

 

문제 내용 >>

사용자는 아이디를 입력합니다. 
사용자는 비밀번호를 입력합니다.
사용자가 입력한 아이디가 저장한 아이디와 다를 경우 아이디가 틀렸습니다.를 출력
사용자가 입력한 비밀번호가 저장된 비밀번호와 다를 경우 비밀번호가 틀렸습니다.를 출력
아이디와 비밀번호가 모두 맞은 경우 로그인 성공!을 출력

 

예시 >>

Scanner sc = new Scanner(System.in);

String id = "JTistory";

String pw = "JT1487";

 

답 >>

public class Practice01 {
	public static void main(String[] args) {
	// if문 + String 활용 연습문제

	Scanner sc = new Scanner(System.in);
	String id = "JTistory";
	String pw = "JT1487";
	
	// nextLine() : 한줄, next() : 한 단어
	System.out.print("아이디를 입력하세요. >> ");
	String ckid = sc.next();
	System.out.print("비밀번호를 입력하세요. >> ");
	String ckpw = sc.next();
	
	// 문자열.equals(문자열)은 두 문자열이 서로 '값'이 같은지를 비교하는 문법
	if (ckid.equals(id) == false) {
		System.out.println("아이디가 틀렸습니다.");
	} else if(ckpw.equals(pw) == false) {
		System.out.println("비밀번호가 틀렸습니다.");
	} else {
		System.out.println("로그인 성공!");
	}
	sc.close();
	}
}

 

 

문제2

전제 조건 >>

ArrayList 사용하기

입력은 Scanner로 받기

 

문제 내용 >>

사람 5명을 리스트에 저장하고, 이름을 조사해 해당 이름이 리스트에 있는지 확인

입력이 끝나고 난후, 성만 입력해서 해당 성씨를 가지고 있는 사람의 이름을 전체 출력하기

 

예시 >>

이름을 입력합니다 >> 김XX

배열에 들어가 이름 : [김일현, 김기동, 이준, 양인우, 강지찬] 일 경우

성씨를 입력해 주세요 >>

검색결과 : 김일현

검색결과 : 김기동

 

답>>

public class Practice02 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> name_list = new ArrayList();
		
		for(int i = 0; i < 5; i++) {
		System.out.print("이름을 입력합니다 >> ");	
		String name = sc.next();
		name_list.add(name);
		}
		
		System.out.println(name_list);
		
		System.out.print("성씨를 입력해주세요 >> ");
		String first_name = sc.next();

		for(int i = 0; i < name_list.size(); i++) {
			String result = name_list.get(i);  // 결과값 받을 변수 사용하기! ArrayList 가져올 때 get
			// startsWith를 써도 됨
            if(result.contains(first_name)) {
				System.out.println("검색결과 : " + result);
			}
		}  
		sc.close();
	}
}
public class Practice02 {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		ArrayList<String> name_list = new ArrayList();

		String first_name;

		for(int i = 0; i < 5; i++) {
			System.out.print("이름을 입력해주세요 >> ");
			name_list.add(sc.next());
		}
		
		// 성씨에 대한 입력을 진행
		System.out.print("성씨를 입력해주세요 >> ");
		first_name = sc.next();
		
		for(int i = 0; i < name_list.size(); i++) {
			// 입력한 값이 이름 목록에서 가져온 이름에서 한글자만 분리한 값과 동일하다면 
			// substring에 대한 기능은 Day02의 문자열 파트 참고
			// 문자열.substring(시작번호, 끝 번호)
			// 시작번호부터 끝 번호 전까지의 문장으로 분리해 주는 기능
			if(first_name.equals(name_list.get(i).substring(0, 1))) {
				System.out.println("검색 결과 : " + name_list.get(i));
			}
		}
		sc.close();
	}
}