코딩테스트

[프로그래머스 코딩테스트 연습 LV 0 : 1장]

Muru 2023. 9. 6. 23:41

문자열 출력하기

이게 과연 0레벨이 맞는것인가? ㅋㅋ

 

주의깊게 봐야할 것은

[1] 문자열 str이 주어짐

[2] 입력 값은 HelloWorld!

[3] 출력 값도 HelloWorld!

 

[문제를 안 읽고 푼 처음의 나]
string str = "HelloWorld!";
Console.WriteLine(str);

[이게 안된다고? 나중에 제대로 푼 나]
string str;
str = Console.ReadLine();
Console.WriteLine(str);

a와 b 출력하기

 

정수 a와 b가 주어지며 각 수를 입력 받아 입출력을 아래와 같이 맞춰야한다.

또한 4와 5사이에 띄어쓰기를 인식하려면 Split() 메소드를 사용해야한다.

Split()는 지정된 문자를 기준으로 현재 문자열을 분리한 다음 분리한 문자열의 배열을 반환하는 분할 메소드다.

 

  static void Main(string[] args)
        {
            string[] str;

            Console.Clear();
            str = Console.ReadLine().Split(' ');

            int a = Int32.Parse(str[0]);
            int b = Int32.Parse(str[1]);

            Console.WriteLine($"a = {a} \nb = {b}");
            
            //\nb를 사용해 아래와 같은 중복 코드 삭제
            //Console.WriteLine($"a = {a}");
            //Console.WriteLine($"b = {b}");

        }

문자열 반복해서 출력하기

문자열 str과 정수 n이 주어지고, str이 n번 반복되어야한다. 입력값이 'string 5' 인데 출력 값이 stringX5이 되려면 아까 문자열 분할 기능을 수행했던 Split이 또 필요할 것이라 예상이된다.

 

[기본 방법]
using System;

public class Example
{
    public static void Main()
    {
      String[] input;

        Console.Clear();
        input = Console.ReadLine().Split(' ');

        String s1 = input[0];
        int a = Int32.Parse(input[1]);

        for(int i=0; i < a; i++)
        {
            Console.Write(s1);
        }                   
    }
}

[문자열을 효율적으로 이용하는 가변형식]
using System;
using System.Text;

public class Example
{
    public static void Main()
    {
      String[] input;
        input = Console.ReadLine().Split(' ');
        
        String s1 = input[0];
        int a = Int32.Parse(input[1]);
        
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < a; i++){
            sb.Append(s1);
        }
        
        string str = sb.ToString();
        Console.WriteLine(str);
    }
}

대소문자 바꿔서 출력하기

using System;

public class Example
{
    public static void Main()
    {
        String s;
        Console.Clear();
        s = Console.ReadLine();

        for (int i = 0; i < s.Length; i++){
            if (Char.IsLower(s[i])){
                Console.Write(char.ToUpper(s[i]));
            }
            else{
                Console.Write(char.ToLower(s[i]));
            }
        }
    }
}
[대문자 반환 ToUpper]
char.ToUpper
char a = 'a';
char b = char.ToUpper(a);
Console.WriteLine(b);	//출력: A

[소문자 반환 ToLowe]
char.ToUpper
char a = 'A';
char b = char.ToUpper(a);
Console.WriteLine(b);	//출력: a