no image
[C++] 백준 18108번 - 1998년인생인 내가 태국에서는 2541년생?!
불기와 서기 연도를 변환하는 문제이다. 1. 서기를 알아보고 싶은 불기를 입력(string) 2. 서기와 불기의 차는 543년 3. 입력된 불기 - 543 = 서기 #include int main(){ using namespace std; int year; cin >> year; cout
2022.11.21
no image
[C++] 백준 10926번 - ??!
준하가 놀란 것을 표현하는 문제다..ㅎㅎ 1. string으로 id를 입력 받는다. 2. 입력받은 id에 "??!"을 붙여 출력한다. 코드는 다음과 같다. #include #include int main(){ using namespace std; string id; cin >> id; id += "??!"; cout
2022.11.21
no image
[C++] 백준 10869번 - 사칙연산
단순 사칙연산을 하는 문제이다. C++ 기초 공부를 따로 하지 않고 알고리즘을 풀면서 공부해나갈 예정이다. 1. 첫째 줄에서 연산을 수행할 두 값을 받는다. 2. 저장한 두 값으로 사칙연산을 수행한다. 코드는 다음과 같다. #include using namespace std; int main(int argc, char const *argv[]){ int a, b; cin >> a >> b; cout
2022.11.21
[ C++ ] Hello World 출력해보기
전공자 버프로 C++로 짜여진 코드를 보고 해석은 할 수 있는 수준이지만 직접 코드를 작성하기엔 어려움을 느끼는 수준이다. 오늘부터 차근차근 C++ 언어를 공부할 예정이다. #include int main() { std::cout
2022.11.15
[Python] 백준 단계별로 풀어보기 1000번
1000번 문제 1. 한 줄에 2개의 입력값 받아오기 2. 입력 받은 두 값을 더해서 출력 - python A, B = int(input()).Split() print(A + B)
2022.11.15

불기와 서기 연도를 변환하는 문제이다.

 

1. 서기를 알아보고 싶은 불기를 입력(string)

2. 서기와 불기의 차는 543년

3. 입력된 불기 - 543 = 서기

 

#include <iostream>

int main(){
    using namespace std;
    
    int year;
    
    cin >> year;
    
    cout << year - 543;
    
    return 0;
}

원리만 잘 생각하면 간단하게 풀 수 있는 문제였다!

준하가 놀란 것을 표현하는 문제다..ㅎㅎ

1. string으로 id를 입력 받는다.

2. 입력받은 id에 "??!"을 붙여 출력한다.

 

코드는 다음과 같다.

#include <iostream>
#include <string>

int main(){
    using namespace std;
    
    string id;
    
    cin >> id;
    id += "??!";
    
    cout << id;
    
    return 0;
}

c++에 삼중자라는 것이 있는데 외우기 귀찮기도 하고.. 외워도 언젠가 잊어버릴 것이 분명하기 때문에.. 삼중자를 신경쓰지 않고 코드를 작성할 수 있는 string 클래스로 작성하였다..

 

그래도 삼중자가 궁금하니 삼중자 시퀀스를 알아보자.

삼중자 문자(치환되는 문자)
??= #
??/ \
??' ^
??( [
??) ]
??! |
??< {
??> }
??- ~

3개 문자를 조합해서 특정 문자로 치환되는 것이다.

왜?

일부 언어권 문자 중에서 C언어의 표준 문제셋을 모두 받아들이지 못해 C언어에서 사용하는 표현식을 쓰지 못하는 경우가 발생해 삼중자 시퀀스를 만들었다고 한다.

삼중자를 출력할 때 출력하고 싶다면??

물음표 사이어 역슬래쉬(\)를 끼워주면 된다.

?\?! 이런 느낌으로 ..

단순 사칙연산을 하는 문제이다. C++ 기초 공부를 따로 하지 않고 알고리즘을 풀면서 공부해나갈 예정이다.

 

1. 첫째 줄에서 연산을 수행할 두 값을 받는다.

2. 저장한 두 값으로 사칙연산을 수행한다.

 

코드는 다음과 같다.

#include <iostream>

using namespace std;

int main(int argc, char const *argv[]){
    int a, b;
    
    cin >> a >> b;
    
    cout << a+b << "\n";
    cout << a-b << "\n";
    cout << a*b << "\n";
    cout << a/b << "\n";
    cout << a%b << "\n";
    
    return 0;
}

한 줄에 두 번의 입력을 받는 과정은 파이썬과 C#을 선택했을 때 split() 함수를 사용했었는데 C++은 간편하게 할 수 있어서 좋은 것 같다..

전공자 버프로 C++로 짜여진 코드를 보고 해석은 할 수 있는 수준이지만 직접 코드를 작성하기엔 어려움을 느끼는 수준이다.

오늘부터 차근차근 C++ 언어를 공부할 예정이다.

#include <iostream>
int main()
{
    std::cout<<"HELLO ~"<<std::end;
    
    return 0;
}

Python, C# 등의 언어와 많이...많이.. 다르다...

#include <iostream>
using namespace std;   // 출력할 때 std:: 안붙어도 됨

int main()
{
    /* 주석 */
    // 주석
    
    //std::cout<<"HELLO ~"<<std::end;

    cout<<"Hello c++ !"<<endl;
    cout<<"C++은 C#과 굉장히 다르다..";
    
    return 0;
}

이렇게 using namespace std를 써주면 출력할 때 std::를 귀찮게 안써줘도 된다.

'<<' 이것은 우측의 내용을 왼쪽의 객체로 보낸다고 생각하면 쉬운데, "Hello c++"이라는 문자열을 cout 객체로 보내 출력한다고 생각하면 된다.

 

endl 객체는 End Line 이라는 뜻으로 말 그대로 줄 바꿈하는 객체이다.

주석은 C#과 동일하게 여러 블록을 주석처리하고 싶다면 /* */를 사용하면 되고, 한 줄만 주석처리하고 싶다면 //을 사용하면 된다.

1000번 문제

1. 한 줄에 2개의 입력값 받아오기

2. 입력 받은 두 값을 더해서 출력

- python

A, B = int(input()).Split()

print(A + B)