문제 설명
이미지의 가로 해상도 w, 세로 해상도 h, 한 픽셀을 저장하기 위한 비트 b 가 주어질 때,
압축하지 않고 저장하기 위해 필요한 저장 용량을 계산하는 프로그램을 작성해 보자.
입력
w, h, b 가 공백을 두고 입력된다.
단, w, h는 모두 정수이고 1~1024 이다. b는 40이하의 4의 배수이다.
출력
필요한 저장 공간을 MB 단위로 바꾸어 출력한다.
소수점 이하 셋째 자리에서 반올림해 둘째 자리까지 출력한 뒤 MB를 출력한다.
내 풀이
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int w = sc.nextInt();
int h = sc.nextInt();
int b = sc.nextInt();
float result = (w * h * b / 8.0f) / 1024.0f ;
System.out.printf("%.2f MB", result / 1024.0);
}
}
문제 설명
1, 2, 3 ... 을 순서대로 계속 더해나갈 때,
그 합이 입력한 정수보다 작을 동안만 계속 더하는 프로그램을 작성해보자.
입력
언제까지 합을 계산할 지, 정수 1개를 입력받는다.
단, 입력되는 자연수는 100,000,000이하이다.
출력
1, 2, 3, 4, 5 ... 순서대로 계속 더해가다가, 그 합이 입력된 정수보다 커지거나 같아지는 경우,
그때까지의 합을 출력한다.
내 풀이
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int sum = 0;
for (int i = 1; i <= n; i++) {
if(sum >= n) {
break;
}
sum += i;
}
System.out.println(sum);
}
}
문제 설명
1부터 입력한 정수까지 1씩 증가시켜 출력하는 프로그램을 작성하되,
3의 배수인 경우는 출력하지 않도록 만들어보자.
입력
정수 1개를 입력받는다.
(1 ~ 100)
출력
1부터 입력한 정수보다 작거나 같을 때까지 1씩 증가시켜 출력하되
3의 배수는 출력하지 않는다.
내 풀이
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int sum = 0;
for (int i = 1; i <= n; i++) {
if(i % 3 != 0) {
System.out.print(i + " ");
}
}
}
}
문제 설명
시작 값(a), 등차(d), 몇 번째인지를 나타내는 정수(n)가 입력될 때
n번째 수를 출력하는 프로그램을 만들어보자.
입력
시작 값(a), 등차의 값(d), 몇 번째 수 인지를 의미하는 정수(n)가
공백을 두고 입력된다.(모두 0 ~ 100)
출력
n번째 수를 출력한다.
내 풀이
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int d = sc.nextInt();
int n = sc.nextInt();
int sum = a;
int cnt = 0;
for (int i = 0; i <= 100; i++) {
cnt++;
if(cnt == n) {
break;
}
sum += d;
}
System.out.println(sum);
}
}
문제 설명
시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때
n번째 수를 출력하는 프로그램을 만들어보자.
입력
시작 값(a), 등비의 값(r), 몇 번째 인지를 나타내는 정수(n)가
공백을 두고 입력된다.(모두 0 ~ 10)
출력
n번째 수를 출력한다.
내 풀이
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long a = sc.nextInt();
long r = sc.nextInt();
long n = sc.nextInt();
for (int i = 0; i < 10; i++) {
if(i == n) {
break;
}
a *= r;
}
System.out.println(a);
}
}
'CodeUp > Java' 카테고리의 다른 글
[CodeUp_JAVA] 1096 ~ 1099 (0) | 2022.02.14 |
---|---|
[CodeUp_JAVA] 1091 ~ 1095 (0) | 2022.02.11 |
[CodeUp_JAVA] 1081 ~ 1085 (0) | 2022.02.04 |
[CodeUp_JAVA] 1076 ~ 1080 (0) | 2022.01.20 |
[CodeUp_JAVA] 1071 ~ 1075 (0) | 2022.01.19 |