[java] 코드업 기초 100
🍒 코드업 기초 100제
1) [기초-출력]1001-1008
1001
C/C++언어에서 가장 기본적인 명령이 출력문이다.
printf()를 이용해 다음 단어를 출력하시오.
import java.io.*;
import java.util.*;
//1001
public class Main{
public static void main(String args[]) {
String a = "Hello";
System.out.printf("%s",a);
}
}
1002
C/C++언어에서 가장 기본적인 명령이 출력문이다.
printf()를 이용해 다음 단어를 출력하시오.
Hello World
(대소문자에 주의한다.)
import java.io.*;
import java.util.*;
//1002
public class Main{
public static void main(String args[]) {
String a = "Hello";
String b = "World";
System.out.printf("%s %s",a,b);
}
}
1003
이번에는 줄을 바꿔 출력하는 출력문을 연습해보자.
다음과 같이 줄을 바꿔 출력해야 한다.
Hello
World
(두 줄에 걸쳐 줄을 바꿔 출력)
//1003
public class Main{
public static void main(String args[]) {
String a = "Hello";
String b = "World";
System.out.printf("%s\n%s",a,b);
}
}
1004
이번에는 작은 따옴표(single quotation mark)가 들어있는
특수한 형태의 출력문에 대한 연습을 해보자.
다음 문장을 출력하시오.
‘Hello’
import java.io.*;
import java.util.*;
//1004
public class Main{
public static void main(String args[]) {
String a = "'Hello World'";
System.out.printf("%s",a);
}
}
1005
이번에는 큰따옴표(double quotation mark)가 포함된 출력문을 연습해보자.
다음 문장을 출력하시오.
“Hello World”
(단, 큰따옴표도 함께 출력한다.)
import java.io.*;
import java.util.*;
//1005
public class Main{
public static void main(String args[]) {
String a = "\"Hello World\"";
System.out.printf("%s",a);
}
}
1006
이번에는 특수문자 출력에 도전하자!!
다음 문장을 출력하시오.
”!@#$%^&*()”
(단, 큰따옴표도 함께 출력한다.)
import java.io.*;
import java.util.*;
//1006
public class Main{
public static void main(String args[]) {
String a = "\"!@#$%^&*()\"";
System.out.printf("%s",a);
}
}
1007
윈도우 운영체제의 파일 경로를 출력하는 연습을 해보자.
파일 경로에는 특수문자들이 포함된다.
다음 경로를 출력하시오.
“C:\Download\hello.cpp”
(단, 큰따옴표도 함께 출력한다.)
import java.io.*;
import java.util.*;
//1007
public class Main{
public static void main(String args[]) {
String a = "\"C:\\Download\\hello.java\"";
System.out.printf("%s",a);
}
}
1008
이번에는 특수문자를 출력하는 연습을 해보자.
키보드로 입력할 수 없는 다음 모양을 출력해보자.
(** 참고 : 운영체제의 문자 시스템에 따라 아래와 같은 모양이 출력되지 않을 수 있다.)
┌┬┐
├┼┤
└┴┘
//1008
public class Main{
public static void main(String args[]) {
String a = "\u250C\u252C\u2510";
String b = "\u251C\u253C\u2524";
String c = "\u2516\u253c\u2518";
System.out.printf("%s \n%s \n%s",a,b,c);
}
}
2) [기초-입출력]1010-1027
1010
정수형(int)으로 변수를 선언하고, 변수에 정수값을 저장한 후
변수에 저장되어 있는 값을 그대로 출력해보자.
import java.io.*;
import java.util.*;
//1010
public class Main{
public static void main(String args[]) throws IOException {
int a;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
a=Integer.parseInt(str);
System.out.print(a);
}
}
1011
문자형(char)으로 변수를 하나 선언하고, 변수에 문자를 저장한 후
변수에 저장되어 있는 문자를 그대로 출력해보자.
import java.io.*;
import java.util.*;
//1011
public class Main{
public static void main(String args[]) throws IOException {
String a;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
a = br.readLine();
System.out.print(a);
}
}
1012
실수형(float)로 변수를 선언하고 그 변수에 실수값을 저장한 후
저장되어 있는 실수값을 출력해보자.
import java.io.*;
import java.util.*;
//1012
public class Main{
public static void main(String args[]) throws IOException {
float a;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String b = br.readLine();
a = Float.parseFloat(b);
System.out.print(a);
}
}
1013
정수(int) 2개를 입력받아 그대로 출력해보자.
import java.io.*;
import java.util.*;
//1013
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a = br.readLine();
StringTokenizer st = new StringTokenizer(a," ");
int a1 = Integer.parseInt(st.nextToken());
int a2 = Integer.parseInt(st.nextToken());
System.out.printf("%d %d",a1,a2);
}
}
1014
2개의 문자(ASCII CODE)를 입력받아서 순서를 바꿔 출력해보자.
import java.io.*;
import java.util.*;
//1014
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a = br.readLine();
StringTokenizer st = new StringTokenizer(a," ");
char a1 = st.nextToken().charAt(0);
char a2 = st.nextToken().charAt(0);
System.out.printf("%c %c \n",a1,a2);
char temp;
temp=a1;
a1 = a2;
a2 = temp;
System.out.printf("%c %c",a1,a2);
}
}
1015
실수(float) 1개를 입력받아 저장한 후,
저장되어 있는 값을 소수점 셋 째 자리에서 반올림하여
소수점 이하 둘 째 자리까지 출력하시오.
import java.io.*;
import java.util.*;
//1015
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a = br.readLine();
double b = Double.parseDouble(a);
System.out.printf("%.2f",b);
}
}
1017
int형 정수 1개를 입력받아 공백을 사이에 두고 3번 출력해보자.
//1017
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);
System.out.printf("%d %d %d", b,b,b);
}
}
1018
어떤 형식에 맞추어 시간이 입력될 때, 그대로 출력하는 연습을 해보자.
//1018
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String a[] = br.readLine().split(":");
int b = Integer.parseInt(a[0]);
int c = Integer.parseInt(a[1]);
System.out.printf("%d:%d", b,c);
}
}
1019
년, 월, 일을 입력받아 지정된 형식으로 출력하는 연습을 해보자.
import java.io.*;
import java.util.*;
//1019
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(),("\\."));
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
int d = Integer.parseInt(st.nextToken());
System.out.printf("%04d.%02d.%02d", b,c,d);
}
}
1020
’-‘를 제외한 주민번호 13자리를 모두 붙여 출력한다.
//1020
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(),("-"));
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
System.out.printf("%d%d", b,c);
}
}
1021
1개의 단어를 입력받아 그대로 출력해보자.
import java.io.*;
import java.util.*;
//1021
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
System.out.print(str);
}
}
1022
공백 문자가 포함되어 있는 문장을 입력받고 그대로 출력하는 연습을 해보자.
import java.util.*;
//1022
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
System.out.print(str);
}
}
1023
실수 1개를 입력받아 정수 부분과 실수 부분으로 나누어 출력한다.
import java.io.*;
import java.util.*;
//1023
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(),"//.");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.printf("%d\n%d", a,b);
}
}
1024
단어를 1개 입력받는다.
입력받은 단어(영어)의 각 문자를
한줄에 한 문자씩 분리해 출력한다.
import java.io.*;
import java.util.*;
//1024
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String word = br.readLine();
for(int i=0; i<word.length(); i++) {
System.out.printf("\'%c\'\n",word.charAt(i));
}
}
}
1025
다섯 자리의 정수 1개를 입력받아 각 자리별로 나누어 출력한다.
import java.io.*;
import java.util.*;
//1025
public class Main{
public static void main(String args[]) throws IOException {
int a = 0,b=0,c=0,d=0,e=0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String word = br.readLine();
for(int i=0; i<word.length(); i++) {
a = Character.getNumericValue(word.charAt(0));
b = Character.getNumericValue(word.charAt(1));
c = Character.getNumericValue(word.charAt(2));
d = Character.getNumericValue(word.charAt(3));
e = Character.getNumericValue(word.charAt(4));
}
System.out.printf("[%d]\n[%d]\n[%d]\n[%d]\n[%d]",a*10000,b*1000,c*100,d*10,e);
}
}
1026
입력되는 시:분:초 에서 분만 출력해보자.
import java.io.*;
import java.util.*;
//1026
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String time = br.readLine();
StringTokenizer st = new StringTokenizer(time,":");
int hour = Integer.parseInt(st.nextToken());
int min = Integer.parseInt(st.nextToken());
int sec = Integer.parseInt(st.nextToken());
System.out.printf("%d", min);
}
}
1027
년월일을 출력하는 방법은 나라마다, 형식마다 조금씩 다르다.
년월일(yyyy.mm.dd)를 입력받아,
일월년(dd-mm-yyyy)로 출력해보자.
(단, 한 자리 일/월은 0을 붙여 두자리로, 년도도 0을 붙여 네자리로 출력한다.)
import java.io.*;
import java.util.*;
//1027
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String cal = br.readLine();
StringTokenizer st = new StringTokenizer(cal,".");
int year = Integer.parseInt(st.nextToken());
int mon = Integer.parseInt(st.nextToken());
int day = Integer.parseInt(st.nextToken());
System.out.printf("%02d-%02d-%04d",day,mon,year);
}
}
3) [기초-데이터형] 1028-1030
1028
정수 1개를 입력받아 그대로 출력해보자.
(단, 입력되는 정수의 범위는 0 ~ 4,294,967,295 이다.)
import java.io.*;
import java.util.*;
//1028
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int num = Integer.parseInt(br.readLine());
System.out.printf("%d", num);
}
}
1029
실수 1개를 입력받아 그대로 출력해보자.
(단, 입력되는 실수의 범위는 +- 1.710-308 ~ +- 1.710308 이다.)
import java.io.*;
import java.util.*;
//1029
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
double num = Double.parseDouble(br.readLine());
System.out.printf("%.11f", num);
}
}
1030
정수 1개를 입력받아 그대로 출력해보자.
단, 입력되는 정수의 범위는
-9,223,372,036,854,775,808 ~ +9,223,372,036,854,775,807 이다.
import java.io.*;
import java.util.*;
//1030
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
long num = Long.parseLong(br.readLine());
System.out.printf("%d", num);
}
}
4) [기초-출력변환] 1031-1037
1031
10진수를 입력받아 8진수(octal)로 출력해보자.
//1031
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.printf("%o", a);
}
}
1032
10진수를 입력받아 16진수(hexadecimal)로 출력해보자.
//1032
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***.printf("%x", a);
}
}
1033
10진수를 입력받아 16진수(hexadecimal)로 출력해보자.
import java.io.*;
import java.util.*;
//1033
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(Integer.toHexString(a).toUpperCase());
}
}
1034
8진수로 입력된 정수 1개를 10진수로 바꾸어 출력해보자.
import java.io.*;
import java.util.*;
//1034
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(),8);
System.out.printf("%d", a);
}
}
1035
16진수로 입력된 정수 1개를 8진수로 바꾸어 출력해보자.
import java.io.*;
import java.util.*;
//1035
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(),16);
System.out.printf("%o", a);
}
}
1036
영문자 1개를 입력받아 아스키 코드표의 10진수 값으로 출력해보자.
import java.io.*;
import java.util.*;
//1036
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
char a = br.readLine().charAt(0);
int ascii = (int)a;
System.out.printf("%d", ascii);
}
}
1037
10진 정수 1개를 입력받아 아스키 문자로 출력해보자.
단, 0 ~ 255 범위의 정수만 입력된다.
import java.io.*;
import java.util.*;
//1037
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 b = (char)a;
System.out.printf("%6c", b);
}
}
[기초-산술연산] 1038-1046
1038
정수 2개를 입력받아 합을 출력하는 프로그램을 작성해보자.
(단, 입력되는 정수는 -1073741824 ~ 1073741824 이다.)
import java.io.*;
import java.util.*;
//1038
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String two =br.readLine();
StringTokenizer st= new StringTokenizer(two," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.printf("%d", a+b);
}
}
1039
정수 2개를 입력받아 합을 출력해보자.
단, 입력되는 정수는 -2147483648 ~ +2147483648 이다.
//1038
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String two =br.readLine();
StringTokenizer st= new StringTokenizer(two," ");
long a = Long.parseLong(st.nextToken());
long b = Long.parseLong(st.nextToken());
System.out.printf("%d", a+b);
}
}
1040
입력된 정수의 부호를 바꿔 출력해보자.
단, -2147483647 ~ +2147483647 범위의 정수가 입력된다.
import java.io.*;
import java.util.*;
//1040
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String two =br.readLine();
int a = Integer.parseInt(two);
a*=-1;
System.out.printf("%d", a);
}
}
1041
영문자 1개를 입력받아 그 다음 문자를 출력해보자.
영문자 ‘A’의 다음 문자는 ‘B’이고, 영문자 ‘0’의 다음 문자는 ‘1’이다.
import java.io.*;
import java.util.*;
//1041
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
char a = br.readLine().charAt(0);
int ascii = (int)a;
ascii += 1;
System.out.printf("%c",ascii);
}
}
1042
정수 2개(a, b) 를 입력받아 a를 b로 나눈 몫을 출력해보자.
단, -2147483648 <= a <= b <= +2147483647, b는 0이 아니다.
import java.io.*;
import java.util.*;
//1042
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()," ");
int a =Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a/b);
}
}
1043
정수 2개(a, b) 를 입력받아 a를 b로 나눈 나머지를 출력해보자.
단, 0 <= a, b <= +2147483647, b는 0이 아니다.
import java.io.*;
import java.util.*;
//1043
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()," ");
int a =Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a%b);
}
}
1044
정수를 1개 입력받아 1만큼 더해 출력해보자.
단, -2147483648 ~ +2147483647 의 범위로 입력된다.
import java.io.*;
import java.util.*;
//1044
public class Main{
public static void main(String args[]) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
long a = Integer.parseInt(br.readLine());
a++;
System.out.println(a);
}
}
1045
정수 2개(a, b)를 입력받아 합, 차, 곱, 몫, 나머지, 나눈 값을 자동으로 계산해보자.
단 0 <= a, b <= 2147483647, b는 0이 아니다.
import java.io.*;
import java.util.*;
//1045
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
System.out.println(a%b);
System.out.printf("%.2f",(float)a/(float)b);
}
}
1046
정수 3개를 입력받아 합과 평균을 출력해보자.
import java.io.*;
import java.util.*;
//1046
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()," ");
long a = Integer.parseInt(st.nextToken());
long b = Integer.parseInt(st.nextToken());
long c = Integer.parseInt(st.nextToken());
System.out.println(a+b+c);
System.out.printf("%.1f",((float)a+(float)b+(float)c)/3);
}
}
[기초 - 비트시프트연산] 1047-1048
1047
정수 1개를 입력받아 2배 곱해 출력해보자.
import java.io.*;
import java.util.*;
//1047
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.println(a<<1);
}
}
1048
정수 2개(a, b)를 입력받아 a를 2b배 곱한 값으로 출력해보자.
import java.io.*;
import java.util.*;
//1048
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.println(a<<b);
}
}
[기초-비교연산] 1049-1052
1049
두 정수(a, b)를 입력받아
a가 b보다 크면 1을, a가 b보다 작거나 같으면 0을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.*;
//1049
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if(a>b)
System.out.println("1");
else
System.out.println("0");
}
}
1050
두 정수(a, b)를 입력받아
a와 b가 같으면 1을, 같지 않으면 0을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.*;
//1050
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if(a==b)
System.out.println("1");
else
System.out.println("0");
}
}
1051
두 정수(a, b)를 입력받아
b가 a보다 크거나 같으면 1을, 그렇지 않으면 0을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.*;
//1051
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if(a<=b)
System.out.println("1");
else
System.out.println("0");
}
}
1052
두 정수(a, b)를 입력받아
a와 b가 서로 다르면 1을, 그렇지 않으면 0을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.*;
//1052
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()," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
if(a!=b)
System.out.println("1");
else
System.out.println("0");
}
}
[기초 - 논리연산] 1053 - 1058
1053
1(true, 참) 또는 0(false, 거짓) 이 입력되었을 때
반대로 출력하는 프로그램을 작성해보자.
import java.io.*;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int a = Integer.parseInt(str);
if(a==1) {
System.out.print("0");
}
else {
System.out.print("1");
}
}
}
1054
두 개의 참(1) 또는 거짓(0)이 입력될 때,
모두 참일 때에만 참을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b= Integer.parseInt(st.nextToken());
if(a==1&&b==1) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
1055
두 개의 참(1) 또는 거짓(0)이 입력될 때,
하나라도 참이면 참을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b= Integer.parseInt(st.nextToken());
if(a==1||b==1) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
1056
두 가지의 참(1) 또는 거짓(0)이 입력될 때,
참/거짓이 서로 다를 때에만 참을 출력하는 프로그램을 작성해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b= Integer.parseInt(st.nextToken());
if((a==1&&b==0)||(a==0&&b==1)) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
1057
두 개의 참(1) 또는 거짓(0)이 입력될 때,
참/거짓이 서로 같을 때에만 참이 계산되는 프로그램을 작성해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b= Integer.parseInt(st.nextToken());
if((a==0&&b==0)||(a==1&&b==1)) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
1058
두 개의 참(1) 또는 거짓(0)이 입력될 때,
모두 거짓일 때에만 참이 계산되는 프로그램을 작성해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b= Integer.parseInt(st.nextToken());
if(a==0&&b==0) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
[기초-비트단위논리연산] 1059-1062
1059
import java.io.*;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int a = Integer.parseInt(str);
System.out.print(~a);
}
}
1060
입력된 정수 두 개를 비트단위로 and 연산한 후 그 결과를 정수로 출력해보자.
비트단위(bitwise)연산자 &를 사용하면 된다.(and, ampersand, 앰퍼센드라고 읽는다.)
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a&b);
}
}
1061
입력된 정수 두 개를 비트단위로 or 연산한 후 그 결과를 정수로 출력해보자.
비트단위(bitwise) 연산자 |(or, vertical bar, 버티컬바)를 사용하면 된다.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a|b);
}
}
1062
입력된 정수 두 개를 비트단위로 xor 연산한 후 그 결과를 정수로 출력해보자.
비트단위(bitwise) 연산자 ^(xor, circumflex/caret, 서컴플렉스/카릿)를 사용하면 된다.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a^b);
}
}
[기초-삼항연산] 1063-1064
1063
입력된 두 정수 a, b 중 큰 값을 출력하는 프로그램을 작성해보자.
단, 조건문을 사용하지 않고 3항 연산자 ? 를 사용한다.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
System.out.print(a>b?a:b);
}
}
1064
입력된 세 정수 a, b, c 중 가장 작은 값을 출력하는 프로그램을 작성해보자.
단, 조건문을 사용하지 않고 3항 연산자 ? 를 사용한다.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
System.out.print((a<b?a:b)<c? (a<b?a:b):c);
}
}
[기초-조건/선택실행구조] 1065-1070
1065
세 정수 a, b, c가 입력되었을 때, 짝수만 출력해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
if(a%2==0) {
System.out.println(a);
}
if(b%2==0) {
System.out.println(b);
}
if(c%2==0) {
System.out.println(c);
}
}
}
1066
세 정수 a, b, c가 입력되었을 때, 짝(even)/홀(odd)을 출력해보자.
import java.io.*;
import java.util.StringTokenizer;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
StringTokenizer st = new StringTokenizer(str," ");
int a = Integer.parseInt(st.nextToken());
int b = Integer.parseInt(st.nextToken());
int c = Integer.parseInt(st.nextToken());
if(a%2==0) System.out.println("even");
else System.out.println("odd");
if(b%2==0) System.out.println("even");
else System.out.println("odd");
if(c%2==0) System.out.println("even");
else System.out.println("odd");
}
}
1067
정수 1개가 입력되었을 때, 음(minus)/양(plus)과 짝(even)/홀(odd)을 출력해보자.
import java.io.*;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int a = Integer.parseInt(str);
if(a<0) {
System.out.println("minus");
if(a%2==0) {
System.out.println("even");
}
else {
System.out.println("odd");
}
}
if(a>0) {
System.out.println("plus");
if(a%2==0) {
System.out.println("even");
}
else {
System.out.println("odd");
}
}
}
}
1068
점수(정수, 0 ~ 100)를 입력받아 평가를 출력해보자.
import java.io.*;
public class Main{
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
int a = Integer.parseInt(str);
if(a>=90&&a<=100) System.out.println("A");
else if(a>=70&&a<90) System.out.println("B");
else if(a>=40&&a<70) System.out.println("C");
else if(a>=0&&a<40) System.out.println("D");
}
}
댓글남기기