프로그래머스/Lv. 0 코딩 기초 트레이닝

[프로그래머스] 코딩 기초 트레이닝 2일차 - 덧셈식 출력하기

두부버섯 2023. 11. 1. 10:48


1. 덧셈식 출력하기

문제 설명

두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요.

a + b = c

제한 사항

  • 1 ≤ a, b ≤ 100

입출력 예

입력

4 5

출력

4 + 5 = 9
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();

        System.out.printf("%d + %d = %d",a,b,a+b);
    }
}

printf를 사용하여 해당 식을 출력하였습니다.


2. 문자열 붙여서 출력하기

문제 설명

두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다.
입출력 예와 같이 str1 str2을 이어서 출력하는 코드를 작성해 보세요.

제한 사항

  • 1 ≤ str1, str2의 길이 ≤ 10

입출력 예

입력

apple pen

출력

applepen
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        String b = sc.next();

        System.out.print(a+b);
    }
}

a와 b는 각각 주어지기 때문에 +를 통해 공백 없이 출력하였습니다.


3. 문자열 돌리기

문제 설명

문자열 str이 주어집니다.
문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요.

제한 사항

1 ≤ str의 길이 ≤ 10

입출력 예

입력

abcde

출력

a
b
c
d
e
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a = sc.next();
        
        for(int i =0; i<a.length(); i++){
            System.out.println(a.charAt(i));
        }
    }
}

for 반복문과 .charAt을 사용하여 한 글자씩 떨어뜨려 출력하였습니다.


4. 홀짝 구분하기

문제 설명

자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을,

홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요.

제한 사항

  • 1 ≤ n ≤ 1,000

입출력 예

입력

100

출력

100 is even
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        if(n%2==0){
            System.out.print(n+" is even");
        } else{
             System.out.print(n+" is odd");
        }
    }
}

n을 2로 나누어 나머지가 없다는 것은 짝수라는 뜻이므로

짝수일 때는 even, 그렇지 않을 때(홀수)는 odd를 출력하도록 했습니다.


5. 문자열 겹쳐쓰기

문제 설명

문자열 my_string, overwrite_string과 정수 s가 주어집니다.

문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을

문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.

제한 사항

  • my_string와 overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
  • 1 ≤ overwrite_string의 길이 ≤ my_string의 길이 ≤ 1,000
  • 0 ≤ s  my_string의 길이 - overwrite_string의 길이

입출력 예

my_string overwrite_string s result
"He11oWor1d" "lloWorl" 2 "HelloWorld"
"Program29b8UYP" "merS123" 7 "ProgrammerS123"
class Solution {
    public String solution(String my_string, String overwrite_string, int s) {
        String answer = "";

        int size1 = my_string.length();
        int size2 = overwrite_string.length();

        for(int i =0; i<s; i++){
            answer+=my_string.charAt(i);
        }
        answer+=overwrite_string;
        for(int i =s+size2; i<size1; i++){
            answer+=my_string.charAt(i);
        }

        return answer;
    }
}

s까지의 문자열을 저장하고,

overwrite_string을 저장한 뒤

나머지 my_string의 글자를 저장하여 풀이하였습니다.

 

다른 풀이를 보니 .substring()을 사용하는 경우가 있어 참고하여 

다음에는 적용 가능하도록 해야겠습니다.