Java 반복문 응용 ( 이용해서 코딩도장 문제 풀어보기)

별의개발자커비·2023년 1월 27일
0

Java

목록 보기
17/66
post-thumbnail

1. 로그인 프로그램: user 이름만 확인

import java.util.Scanner;

public class AuthApp3 {

	public static void main(String[] args) {

		String[] users = { "karina", "winter" , "ning" } ;
		
		System.out.print("Your name?: ");
		Scanner in = new Scanner(System.in) ; 
		String inputId = in.next() ;
		
		boolean isLogined = false;
		for ( int i = 0 ; i < users.length ; i++ ) {
			String currentId = users[i] ;
			if (currentId.equals(inputId)) {
				isLogined = true ; 
				break ; 
			}
		}
		if ( isLogined ) {
			System.out.println("Hi! " + inputId );
		} else {
			System.out.println("WRONG USER!!");
		}
		
	}

}

2. 로그인 프로그램: user 이름, 비밀번호 확인

  • 배열(users)안에 배열(current)이 들어가있고, 배열(current)을 담은 배열(users)은 3개의 배열요소를 가지고있고, current는2개의 문자열 요소를 가지고있다.
  • current[0]은 아이디를 뜻하고 currnet[1]는 비밀번호를 뜻하고 users[i]은 {current[0], current[1]} 의 형태를 가진 배열을 반복문의 조건만큼 반복한다는 것.
import java.util.Scanner;

public class AuthApp3 {

	public static void main(String[] args) {

		String[][] users = { 
				{"karina", "1111" },
				{"winter", "2222" },
				{"ning", "3333" }
		} ;
		
	
		System.out.print("Your name?: ");
		Scanner in = new Scanner(System.in) ; 
		String inputId = in.next() ;
		
		System.out.print("Password?: ");
		String inputPass = in.next() ;
		
		boolean isLogined = false;
		for ( int i = 0 ; i < users.length ; i++ ) {
			String [] current = users[i] ;
			if (
					current[0].equals(inputId) &&
					current[1].equals(inputPass) 
					) {
				isLogined = true ; 
				break ; 
			}
		}
		if ( isLogined ) {
			System.out.println("Hi! " + inputId );
		} else {
			System.out.println("WRONG USER or PASSWORD!!");
		}
		
	}

}

3. 아이디, 비밀번호 틀린 경우 각 문장 다르게 나오기

import java.util.Scanner;

public class AuthApp_pr2 {

	public static void main(String[] args) {
		String[][] users = { { "karina", "1111" }, { "winter", "2222" }, { "ning", "3333" } };

		// users 입력 받기
		Scanner in = new Scanner(System.in);

		System.out.print("Id?: ");
		String inputId = in.next();

		System.out.print("Password?: ");
		String inputPw = in.next();


		// users, 비밀번호 맞는지 반복문, 조건문
		boolean isRightId = false;
		boolean isRightPw = false;

		for (int i = 0; i < users.length; i++) {
			String[] current = users[i];

			boolean isId = inputId.equals(current[0]);
			boolean isPw = inputPw.equals(current[1]);

			if (isId && isPw) {
				isRightId = true;
				isRightPw = true;
				break;
			} else if (isId) {
				isRightId = true;
			} 
		}

		if ( isRightId && isRightPw ) {
			System.out.println("Welcome! " + inputId);
		} else if ( isRightId ) {
			System.out.println("WRONG PW!!");
		} else {
			System.out.println("WRONG ID!!");
		}

	}

}

0개의 댓글