안녕하세요, 코린이의 코딩 학습기 채니 입니다.
printf, Scanner에 대해서 간단한 실습 문제들을 풀어보았습니다.
개인 포스팅용으로 내용에 오류 및 잘못된 정보가 있을 수 있습니다.
@실습 문제 1
자신의 신상정보를 저장할 변수를 만들고 정보를 변수에 대입, 출력하는 프로그램을 작성하세요.
(System.out.printf 메소드 사용할것.)
- 이름, 나이, 성별,주소, 전화번호, 이메일
=======================================================================
이름 나이 성별 전화번호 이메일 주소
=======================================================================
홍길동 22 남 01012341234 hgd@naver.com 경기도 광주시
홍길순 20 여 010123412341 hgs@gmail.com 전라남도 광주시
작성한 변수를 재사용해 팀메이트의 정보를 다시 변수에 대입 출력하는 프로그램으로 수정하세요.
public void test() {
String line = "=========================================================";
String list = ("이름 나이 성별 전화번호 이메일 주소");
String name = "박채니";
int age = 24;
char gender = '여';
String phoneNum = "01012345678";
String mail = "abc@naver.com";
String addr = "서울시 송파구";
System.out.println(line);
System.out.println(list);
System.out.println(line);
System.out.printf("%s%5d%5c%15s%15s%10s\n", name, age, gender, phoneNum, mail, addr);
name = "갱미니";
age = 29;
gender = '남';
phoneNum = "01098765432";
mail = "bcd@naver.com";
addr = "경기도 수원시";
System.out.printf("%s%5d%5c%15s%15s%10s\n", name, age, gender, phoneNum, mail, addr);
}
@콘솔출력값
=========================================================
이름 나이 성별 전화번호 이메일 주소
=========================================================
박채니 24 여 01012345678 abc@naver.com 서울시 송파구
갱미니 29 남 01098765432 bcd@naver.com 경기도 수원시
@실습 문제 2
Scanner문제 : 사용자의 이름(String), 나이(int), 주소(String), 키(double), 몸무게(double), 성별(char)를 입력받고 출력하는 프로그램을 작성하세요.
- 키와 몸무게는 실수를 입력받되(nextDouble), 정수로 변환하여 출력
public void test2() {
Scanner sc = new Scanner(System.in);
System.out.print("> 이름과 나이를 입력하세요 : ");
String name = sc.next(); //공백문자 전까지 출력
int age = sc.nextInt(); //실제 값 이전의 공백문자 버림
System.out.print("> 주소를 입력하세요 : ");
sc.nextLine(); //개행문자 날리기용
String addr = sc.nextLine();
System.out.print("> 키와 몸무게를 입력하세요 : ");
int height = (int)sc.nextDouble();
int weight = (int)sc.nextDouble();
System.out.print("> 성별을 입력하세요 : ");
char gender = sc.next().charAt(0);
System.out.printf("이름 : %s, 나이 : %d\n", name, age);
System.out.printf("주소 : %s\n", addr );
System.out.printf("키 : %d, 몸무게 : %d\n", height, weight);
System.out.printf("성별 : %c\n", gender);
}
@콘솔출력값
> 이름과 나이를 입력하세요 : 박채니 24
> 주소를 입력하세요 : 서울시 송파구
> 키와 몸무게를 입력하세요 : 160.5 46.5
> 성별을 입력하세요 : 여자
이름 : 박채니, 나이 : 24
주소 : 서울시 송파구
키 : 160, 몸무게 : 46
성별 : 여
next()계열 메소드와 nextLine계열 메소드 특징을 활용하여 풀이해보았음.
@실습 문제 3-1
[연습]
=> 실행내용 : 정수 두 개를 입력받아, 두 수의 합, 차, 곱
나누기한 몫과 나머지 출력
=> 입력예
첫번째 정수 : 23
두번째 정수 : 7
=> 출력예 계산식
더하기 결과 : 30 --> (값1 + 값2)
빼기 결과 : 16 --> (값1 - 값2)
곱하기 결과 : 161 --> (값1 * 값2)
나누기한 몫 : 3 --> (값1 / 값2)
나누기한 나머지 : 2 --> (값1 % 값2)
public void test3() {
Scanner sc = new Scanner(System.in);
System.out.print("> 첫 번째 정수를 입력하세요 : ");
int a = sc.nextInt();
System.out.print("> 두 번째 정수를 입력하세요 : ");
int b = sc.nextInt();
System.out.printf("더하기 결과 : %d + %d = %d\n", a, b, a+b);
System.out.printf("빼기 결과 : %d - %d = %d\n", a, b, a-b);
System.out.printf("곱하기 결과 : %d x %d = %d\n", a, b, a*b);
System.out.printf("나누기 결과 : %d / %d = %d\n", a, b, a/b);
System.out.printf("나누기한 나머지 : %d %% %d = %d\n", a, b, a%b);
}
@콘솔출력값
> 첫 번째 정수를 입력하세요 : 23
> 두 번째 정수를 입력하세요 : 7
더하기 결과 : 23 + 7 = 30
빼기 결과 : 23 - 7 = 16
곱하기 결과 : 23 x 7 = 161
나누기 결과 : 23 / 7 = 3
나누기한 나머지 : 23 % 7 = 2
@실습 문제 3-2
[연습 2]
=> 실행내용 : 가로, 세로 값을 실수형으로 입력받아
사각형의 면적과 둘레를 계산하여 출력
계산공식 - 면적 : 가로 * 세로
둘레 : (가로 + 세로) * 2
=> 입력예
가로 : 13.5
세로 : 41.7
=> 출력예
면적 : 562.95
둘레 : 110.4
public void test4() {
Scanner sc = new Scanner(System.in);
System.out.print("> 가로 값을 입력하세요 (예:13.5) : ");
double wight = sc.nextDouble();
System.out.print("> 세로 값을 입력하세요 (예:13.5) : ");
double height = sc.nextDouble();
System.out.printf("면적 : %.2f\n", wight * height);
System.out.printf("둘레 : %.1f\n", (wight + height) * 2);
}
@콘솔출력값
> 가로 값을 입력하세요 (예:13.5) : 13.5
> 세로 값을 입력하세요 (예:13.5) : 41.7
면적 : 562.95
둘레 : 110.4
@실습 문제 3-3
[연습 3]
=> 실행내용 : 영어 문자열 값을 키보드로 입력받아
각 자리의 문자를 출력
=> 입력예
문자열(3글자이상)을 입력하시오 : apple
=> 출력예 (3개까지만 출력해 봄)
첫번째 문자 : a
두번째 문자 : p
세번째 문자 : p
public void test5() {
Scanner sc = new Scanner(System.in);
System.out.print("> 문자열(3글자이상)을 입력하시오 : ");
String str = sc.next();
System.out.printf("첫 번째 문자 : %s\n", str.charAt(0));
System.out.printf("두 번째 문자 : %s\n", str.charAt(1));
System.out.printf("세 번째 문자 : %s\n", str.charAt(2));
}
@콘솔출력값
> 문자열(3글자이상)을 입력하시오 : apple
첫 번째 문자 : a
두 번째 문자 : p
세 번째 문자 : p
'Java > └ [JAVA] Practice' 카테고리의 다른 글
[실습문제] 반복문, 분기문 (0) | 2022.04.11 |
---|---|
[실습문제] switch, for문 (0) | 2022.03.15 |
[실습문제] 난수, 조건문 (0) | 2022.03.10 |
[실습문제] 연산자 (0) | 2022.03.10 |
[실습 문제] 자바 기초, 변수 (0) | 2022.02.26 |