728x90
문제
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.
(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘째 줄에 (2)의 위치에 들어갈 세자리 자연수가 주어진다.
출력
첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다.
요구 조건
- 세자리 자연수 2개가 주어진다
-
- 나눗셈 연산자?
- 문자열로 입력받아 , chatAt() 메서드 쓰는 것(3) , (4) , (5) ,(6) 에 들어갈 곱셈 기법을 적는 것이다.
- (3)는 (1)번 전체랑, (2) 번의 세번째 자리수랑 곱한 것
- (4)는 (1)번 전체랑, (2) 번의 두번째 자리수를 곱한 것
- (5) 는 (1)번 전체랑, (2)번의 첫번째 자리수를 곱한 것
1번 방법 ( chartAt() 아스키코드 다시 공부하기..)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
String B = sc.next();
sc.close();
System.out.println(A * (B.charAt(2) - '0') );
System.out.println(A * (B.charAt(1) - '0') );
System.out.println(A * (B.charAt(0) - '0') );
System.out.println(A * Integer.parseInt(B));
}
}
2번 방법 (저는 이 방법으로 풀었습니다)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int A = sc.nextInt();
int B = sc.nextInt();
sc.close();
System.out.println(A * (B%10) ); //5
System.out.println(A * (B%100/10)); //8
System.out.println(A * (B/100));
System.out.println(A * B);
}
}
느낀점
charAt() 함수에 관련해서 조금 더 공부를 해야겠다는 필요성을 느꼈고, 아스키 코드 또한 조금 관심을 가지고 알아야 할
필요성을 느꼈습니다.
728x90