1031 : [기초-출력변환] 10진 정수 1개 입력받아 8진수로 출력하기
https://codeup.kr/problem.php?id=1031
ㅇ 문제
참고
%d(10진수 형태)로 입력받고,
%o를 사용해 출력하면 8진수(octal)로 출력된다.
ㅇ 입력
단, 입력되는 정수는 int 범위이다.
입력 예시)
10
ㅇ 출력
출력 예시)
12
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
System.out.format("%o", a);
}
}
1032 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기1
https://codeup.kr/problem.php?id=1032
ㅇ 문제
참고
%d(10진수 형태)로 입력받고
%x로 출력하면 16진수(hexadecimal) 소문자로 출력된다.
10진법은 한 자리에 10개(0 1 2 3 4 5 6 7 8 9)의 문자를 사용하고,
16진법은 한 자리에 16개(0 1 2 3 4 5 6 7 8 9 a b c d e f)의 문자를 사용한다.
16진수의 a는 10진수의 10, b는 11, c는 12 ... 와 같다.
ㅇ 입력
입력 예시
255
ㅇ 출력
출력 예시
ff
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
System.out.format("%x", a);
}
}
1033 : [기초-출력변환] 10진 정수 입력받아 16진수로 출력하기2
https://codeup.kr/problem.php?id=1033
ㅇ 문제
참고
%d(10진수 형태)로 입력받고
%X로 출력하면 16진수(hexadecimal) 대문자로 출력된다.
10진법은 한 자리에 10개(0 1 2 3 4 5 6 7 8 9)의 문자를 사용하고,
16진법은 한 자리에 16개(0 1 2 3 4 5 6 7 8 9 A B C D E F)의 문자를 사용한다.
(알파벳 대소문자는 표현만 다르고 같은 값을 의미한다.)
16진법의 A는 10진법의 10, B는 11, C는 12 ... 와 같다.
ㅇ 입력
입력 예시
255
ㅇ 출력
출력 예시
FF
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
System.out.format("%X", a);
}
}
1034 : [기초-출력변환] 8진 정수 1개 입력받아 10진수로 출력하기
https://codeup.kr/problem.php?id=1034
ㅇ 문제
참고
%o로 입력받으면 8진수로 인식시켜 저장시킬 수 있다.
%d로 출력하면 10진수로 출력된다.
예시
int n;
scanf("%o", &n);
printf("%d", n);
(C언어에서 소스 코드 작성 시 0으로 시작하는 수는 8진수로 인식된다. int a = 013; // 10진수 11과 같은 값)
ㅇ 입력
입력 예시
13
ㅇ 출력
출력 예시
11
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a = br.readLine();
int b = Integer.parseInt(a, 8);
System.out.print(b);
}
}
1035 : [기초-출력변환] 16진 정수 1개 입력받아 8진수로 출력하기
https://codeup.kr/problem.php?id=1035
ㅇ 문제
참고
%x(영문자 소문자) 나 %X(영문자 대문자)로 입력 받으면
16진수로 인식시켜 저장시킬 수 있다. %o로 출력하면 8진수로 출력된다.
C언어에서 소스 코드 작성시 0으로 시작하는 수는 8진수로 인식된다.
또한 소스코드 내에서 //로 시작하면 1줄 설명을 넣을 수 있다.
여러 줄을 설명(주석) 을 넣을 경우 /* 와 */ 사이에 작성하면 된다.
예시
int n;
scanf("%x", &n); //소문자로 16진수 입력
printf("%o", n);
ㅇ 입력
(단, 16진수는 영문 소문자로 입력된다.)
입력 예시
f
ㅇ 출력
출력 예시
17
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a = br.readLine();
int b = Integer.parseInt(a, 16);
System.out.format("%o", b);
}
}
1036 : [기초-출력변환] 영문자 1개 입력받아 10진수로 출력하기
https://codeup.kr/problem.php?id=1036
ㅇ 문제
참고
아스키 코드는
(ASCII, 미국표준코드, American Standard Code for Information Interchange)
영문자, 특수 문자 등을 저장할 때 사용하는 표준 코드이다.
컴퓨터로 저장되는 모든 데이터는 2진 정수화되어 저장되는데,
영문자와 특수기호 등을 저장하는 방법으로 아스키코드가 기본적으로 사용된다.
예를 들어 영문 대문자 "A"는 10진수 65를 의미하는 2진수 값으로 저장된다.
ㅇ 입력
입력 예시
A
ㅇ 출력
출력 예시
65
ㅇ 코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
int a = s.charAt(0);
System.out.print(a);
}
}
1037 : [기초-출력변환] 정수 입력받아 아스키 문자로 출력하기
https://codeup.kr/problem.php?id=1037
ㅇ 문제
단, 0 ~ 255 범위의 정수만 입력된다.
ㅇ 입력
입력 예시
65
ㅇ 출력
출력 예시
A
ㅇ 코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
char s = (char)a;
System.out.print(s);
}
}
1038 : [기초-산술연산] 정수 2개 입력받아 합 출력하기1
https://codeup.kr/problem.php?id=1038
ㅇ 문제
(단, 입력되는 정수는 -1073741824 ~ 1073741824 이다.)
ㅇ 입력
** 주의 : 계산의 결과가 int 범위를 넘어가는지를 잘 생각해 보아야 한다.
입력 예시
123 -123
ㅇ 출력
출력 예시
0
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
BigInteger a = new BigInteger(st.nextToken());
BigInteger b = new BigInteger(st.nextToken());
System.out.print(a.add(b));
}
}
1039 : [기초-산술연산] 정수 2개 입력받아 합 출력하기2
https://codeup.kr/problem.php?id=1039
ㅇ 문제
단, 입력되는 정수는 -2147483648 ~ +2147483648 이다.
참고
+ 연산자를 사용하면 된다.
단, 계산된 결과가 int 형으로 저장할 수 있는 범위를 넘어갈 수 있기 때문에 다른 데이터형을 사용해야 한다.
주의
int 데이터형은 %d로 입출력하고,
long long int 데이터형은 %lld로 입출력한다.
ㅇ 입력
입력 예시
2147483648 2147483648
ㅇ 출력
예시
4294967296
ㅇ 코드
import java.io.*;
import java.math.BigInteger;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
BigInteger a = new BigInteger(st.nextToken());
BigInteger b = new BigInteger(st.nextToken());
System.out.print(a.add(b));
}
}
1040 : [기초-산술연산] 정수 1개 입력받아 부호 바꿔 출력하기
https://codeup.kr/problem.php?id=1040
ㅇ 문제
단, -2147483647 ~ +2147483647 범위의 정수가 입력된다.
참고
단항 연산자인 -(negative)를 변수 앞에 붙이면 부호가 반대로 바뀌어 계산된다.
예시
int a;
scanf("%d", &a);
printf("%d", -a);
ㅇ 입력
입력 예시
-1
ㅇ 출력
출력 예시
1
ㅇ 코드
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(br.readLine());
System.out.print(a*(-1));
}
}
'Programming > CodeUp' 카테고리의 다른 글
[JAVA] 코드업(CodeUp) 기초 100제 1021~1030 (0) | 2023.04.06 |
---|---|
[JAVA] 코드업(CodeUp) 기초 100제 1011~1020 (0) | 2023.03.23 |
[JAVA] 코드업(CodeUp) 기초 100제 1001~1010 (0) | 2023.03.21 |