반응형

국내외를 막론하고 프로그래밍에 대해서 관심있는 사람들이라면

누구나 한번쯤은 들어보았을 것이다.

 

Hello world

 

Hello world란 뭘까?

 

개발자들이 가장 간단하게 프로그래밍 출력 테스트를 할 수 있게 해주는 프로그램이다.

 

간단히 말하면 Hello world는 하나의 문장에 불과하고

개발자는 자신의 프로그래밍 행위가 실제로 컴파일러, 통합 개발 환경, 런타임 환경을 거쳐

정상적으로 동작하였는지 테스트해보는 가장 간단한 테스트로 이해하면 쉽다.

 

그 역사는 1978년으로 돌아간다.

벨 연구소의 브라이언 커니핸 과  데니스 리치 는 "The C Programming Language" 라는 책을 출간을 하였고,

여기서 가장 처음으로 hello, world 라는 문장이 나오게 되었다.

 

Hello world는 말 그대로 "안녕 세상" 으로 번역하면 된다.

그 이상 그 이하의 어떠한 의미도 담고 있지 않다.

그러나 개발자 입장에서는

자신의 코드로 인해 화면에 원하는 결과를 보여줄 수 있는 매우 간단한 프로그래밍 테스트를 진행해 볼 수 있는 것이다.

 

위키 백과에 보면 프로그래밍 언어 별로 Hello world를 출력하는 

문법을 잘 정리해주었다.

 

https://ko.wikipedia.org/wiki/%22Hello,_World!%22_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8

 

"Hello, World!" 프로그램 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 펄로 작성된 GTK2기반 GUI 형태의 헬로 월드 프로그램 C언어로 만들어진 Hello World 프로그램 "Hello, World!" 프로그램 (세상아, 안녕!)은 "Hello, world!"를 화면에 출력하

ko.wikipedia.org

 

프로그래밍 전공자가 아니라면 보통은 Python을 배운다.

Python을 통해서 Hello world를 출력하려면 아래와 같이 하면 된다.

 

1. 우선 Python을 컴퓨터에 설치해준다. 

설치 경로: https://www.python.org/downloads/

 

Download Python

The official home of the Python Programming Language

www.python.org

 

2. cmd 혹은 terminal 창을 켜서 파이썬을 실행한다.

python

 

3. 아래 명령어를 실행한다.

print("Hello world")

 

반응형
반응형

 

안녕하세요 Henry입니다~

 

오늘은 프로그래머스의 Level 2 문제인 "다음 큰 숫자" 문제를 풀어보았습니다.

 

코딩테스트를 보시면서, 함수를 정의하여 사용하는 방법을 체험해볼 수 있는 좋은 문제라고 생각됩니다.

 

아래는 저의 코드입니다.

def solution(n):
    answer = 0
    target_one_count = get_one_count_from_binary_number(n)
    current_n = n
    while True:
        current_n += 1
        current_one_count = get_one_count_from_binary_number(current_n)
        if current_one_count == target_one_count:
            return current_n
    return answer

def get_one_count_from_binary_number(num: int) -> int:
    return_value: int = 0
    while True:
        num, remainder = divmod(num, 2)
        return_value += remainder
        if num == 0:
            return return_value

 

 

아래는 문제 풀이 영상입니다.

https://youtu.be/jV196NiV1mk

 

반응형
반응형

 

안녕하세요 Henry입니다~

 

오늘은 프로그래머스 문제 중에 비교적 간단한 Level 1문제를 풀어보았습니다.

 

문자열을 다루는 방법과, list comprehension을 사용하면 문제를 깔끔하게 해결할 수 있으실 것 같은 문제입니다.

 

아래는 저의 코드입니다.

def solution(n):
    answer = list(str(n)[::-1])
    return [int(x) for x in answer]

 

아래는 문제 풀이 영상입니다.

https://youtu.be/yww5zVu6Go4

 

- YouTube

 

www.youtube.com

 

반응형
반응형

 

안녕하세요 Henry입니다~

 

오늘도 코딩테스트 문제를 한 문제 풀어보았습니다.

프로그래머스의 Level 1 문제인데요,

 

약수의 합을 구하는 문제입니다.

문제를 풀면서 가장 중요했던 부분은, 약수인지 여부를 탐색하는 기준으로 

해당 index 값의 제곱값이 대상 정수를 넘지 않는 범위에서만 확인을 해주어야 한다는 것입니다.

 

아래는 제가 문제를 푼 코드입니다.

def solution(n):
    answer = 0
    current_number = 1
    while current_number*current_number < n:
        if n%current_number == 0:
            answer += current_number
            answer += n/current_number
        current_number += 1
            
    if current_number*current_number == n:
        answer += current_number
    return answer

 

아래는 문제 풀이 영상입니다.

https://youtu.be/9dd8TBquTxk

 

반응형
반응형

 

안녕하세요 Henry입니다~

 

오늘은 2019 카카오 개발자 겨울 인턴십에 출제되었던 튜플이라는 문제를 풀어보았습니다.

 

프로그래머스의 Level 2 난이도의 문제인데요,

 

문자열을 얼마나 자유자재로 다룰 수 있는지에 대한 능력을 요구하는 문제였습니다.

 

아래는 저의 코드입니다.

 

from typing import List

def solution(s: str) -> List[int]:
    answer = []
    s_list = s[2:-2].split('},{')
    sorted_list = sorted(s_list, key=lambda x: len(x))
    for l in sorted_list:
        ls = l.split(',')
        answer.append(list(set(ls)-set(answer))[0])
    return [int(i) for i in answer]

 

문제 풀이 영상입니다.

https://youtu.be/cjQFj3KVOEQ

 

- YouTube

 

www.youtube.com

 

반응형
반응형

 

안녕하세요 Henry입니다~

 

오늘도 코딩테스트 문제를 한문제 풀어보았습니다.

 

오늘은 프로그래머스의 Level 1 난이도의 문제인 평균 구하기 문제를 풀어보았습니다.

 

정답률이 80%가 넘는 만큼 간단하게 푸실 수 있는 문제이니,

 

가벼운 마음으로 접근하셔도 좋을 것 같습니다.

 

아래는 저의 코드입니다.

 

from typing import List

def solution(arr: List[int]) -> float:
    return sum(arr)/len(arr)

 

문제 풀이 영상입니다.

https://youtu.be/1vrqVsWgoeA

 

반응형
반응형


안녕하세요 Henry 입니다

오늘은 이진 변환 반복하기 라는 문제를 풀어보았습니다.
프로그래머스에서 Level 별로 문제 난이도가 정해져 있는데,
이 문제는 Level 2에 속해있는 문제입니다.

먼저 이진 변환하는 방법을 알아야 하고,
숫자로 되어있는 문자열에서 0을 제거하는 방법을 알아야 합니다.

저는 문자열을 리스트로 변환해서 문제를 풀었는데,
또 0과 1만 이루어져 있기 때문에, 값을 모두 더하는 것을 1의 개수로 보는 것도 참 좋은 방법일 것 같습니다.

아래는 제가 푼 소스입니다.
코드 보시면서 도움이 되시길 바랍니다ㅎㅎ

from typing import List

def solution(s: str) -> List[int]:
    zero_count_list = list()
    while True:
        ls = list(s)
        zero_count_list.append(sorted(ls).index('1'))
        value = len(ls) - zero_count_list[-1]
        s: str = binary_tranform(value)
        if s == '1':
            break
            
    return [len(zero_count_list), sum(zero_count_list)]



def binary_tranform(value: int) -> str:
    remainder_string = ''
    while True:
        value, remainder = divmod(value, 2)
        remainder_string = str(remainder) + remainder_string
        if value == 0:
            break
    return remainder_string


아래는 문제 풀이 영상입니다.
https://youtu.be/YdVfhz1WSl4

 

- YouTube

 

www.youtube.com

 

반응형
반응형

 

안녕하세요 Henry입니다!

 

오늘은 간단한 사칙연산 중 뺄셈에 대한 풀이를 요구하는 문제를 풀어보았습니다.

 

코드 보시면서 도움이 되시길 바랍니다ㅎㅎ

 

def solution(num1: int, num2: int) -> int:
    return num1 - num2

 

아래는 문제풀이 영상입니다.

https://youtu.be/yBQGiVZeJRs

 

- YouTube

 

www.youtube.com

 

반응형

+ Recent posts