본문 바로가기

전체 글

(166)
백준 1032(명령 프롬프트) 파이썬(python) 해결 https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net 문제 시작 -> 실행 -> cmd를 쳐보자. 검정 화면이 눈에 보인다. 여기서 dir이라고 치면 그 디렉터리에 있는 서브 디렉터리와 파일이 모두 나온다. 이때 원하는 파일을 찾으려면 다음과 같이 하면 된다. dir *.exe라고 치면 확장자가 exe인 파일이 다 나온다. "dir 패턴"과 같이 치면 그 패턴에 맞는 파일만 검색 결과로 나온다. 예를 들어, dir a?b.exe라고 검색하면 파..
파이썬(python) 문자열 포맷팅(formatting) 연습 모든 프로그래밍 언어에서 기초로 배우고 기본적으로 사용하는 입출력. 입출력 방법은 기본적으로 알고 있는 것 외에 다양하게 제공되고 있습니다. 그중 출력하는 다양한 방법을 연습했습니다. 대표적인 출력 함수 print()는 안에 따옴표(' ', " ")를 바탕으로 문자열을 출력합니다. 일반적으로 고정된 형태의 문자열을 출력할 수 있지만, 변수에 저장된 값의 출력 등 특정 데이터의 출력을 위해서는 문법을 사용해야 합니다. 파이썬에서는 3가지의 출력 방법을 제공하고 있습니다. 1. % 연산자 활용 방법 대표적으로 C언어에서 데이터 입출력을 할 때 사용하는 % 연산자를 활용하는 방법입니다. 2. str.format() 방법 ( { }.format() ) 중괄호 { }안에 특정 데이터의 참조를 정의하고 format..
GPS 센서 NEO-6M 연결하기 (아두이노) GPS(Global Positioning System)은 현재의 위치정보를 획득하는 용도로 사용합니다. 아두이노와 라즈베리파이에서 사용 가능한 GPS 센서인 NEO-6M을 사용하여 위치정보를 얻어보았습니다. 이번 글은 아두이노를 사용하여 위치정보를 받아볼 것이며 다음 글에서는 라즈베리파이를 사용합니다. 라즈베리파이로 적용한 글 2021.06.29 - [작업/라즈베리파이 & 아두이노] - GPS 센서 NEO-6M 연결하기 (라즈베리파이) GPS 센서 NEO-6M 연결하기 (라즈베리파이) 이전 글에는 "아두이노" 기준으로 GPS 모듈인 NEO-6M을 연결했었습니다. https://zifmfmphantom.tistory.com/117 GPS 센서 NEO-6M 연결하기 (아두이노, 라즈베리파이) GPS(Glob..
백준 1003(피보나치 함수) 파이썬(Python) 해결 www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net 문제 다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다. fibonacci(3)을 호출하면 다음과 같은 일이 일어난다. fibonacci(3)은 fibonacci(2)와 fibonacci(1) (첫 번째 호출)을 호출한다. fibonacci(2)는 fibonacci(1) (두 번째 호출)과 fibonacci(0)을 호출한다. 두 번째 호출한 fibonacci(1)은 1을 출력하고 1을 리턴한다. fibonacci(0)은 0을 출력하고, 0을 리턴한다. fibonacci(2)는 fibonacci(1)과..
파이썬(python) 배열(list) 함수 연습 이전 글에서는 파이썬에서 사용하는 배열 구조인 리스트(list)와 튜플(tuple)을 정리했습니다. 이번 글에서는 파이썬의 리스트에서 주로 사용되는 함수들을 다루었습니다. 리스트와 튜플에 대한 설명을 참고하시려면 아래 링크를 이용하세요! 파이썬(python) 배열 연습 (list, tuple) range(0, 5, 1)에 해당하는 0, 1, 2, 3, 4의 값을 list 형태로 list_a에 저장합니다. print(list_a)로 값을 출력해보면 [ 0, 1, 2, 3, 4 ] 값을 확인할 수 있습니다. range(-1, -6, -1) -> -1부터 -5까지 -1씩 계산하여 처리합니다. -1, -2, -3, -4, -5의 값을 다룹니다. for i in range(-1, -6, -1): print(f'현..
라즈베리파이 VNC 연결 VNC는 Virtual Network Computing, 가상 네트워크 컴퓨팅입니다. 원격으로 다른 컴퓨터를 제어할 때 주로 사용하는 공유 시스템입니다. PC A와 B가 있을 때, A가 B를 VNC로 연결하면 B의 PC 자원을 A가 제어할 수 있게 됩니다. 라즈베리파이도 소형 PC이기 때문에 VNC 연결이 가능합니다. 작업할 때 라즈베리파이에 별도의 키보드 마우스 연결을 하지 않고서 다른 PC로 VNC 연결하여 사용하면 편리합니다. 이번 글은 PC와 라즈베리파이를 VNC로 연결하는 과정을 기록한 것입니다. 1. 라즈베리파이 VNC 기능 활성화 라즈베리파이를 작동시킨 다음 VNC 기능을 활성화(Enable)합니다. 좌측 상단의 라즈베리파이 아이콘으로 메뉴를 연 다음 "Raspberry Pi Configur..
라즈베리파이 4 Model B 라즈비안 설치하기 (Raspbian) 라즈베리파이(Raspberry Pi)를 사용하여 센서 장비를 다루는 학습을 하고 있습니다. 라즈베리파이 자체에는 운영체제가 없기 때문에 SD카드에 운영체제를 설치하여 결합해야 합니다. 지금부터 라즈베리파이 운영체제 설치 과정을 기록하겠습니다. 운영체제를 설치하는 과정은 다음과 같습니다. 1. 라즈베리파이 & SD카드 준비 2. SD카드 포맷 및 운영체제 설치 3. 라즈베리파이에 SD카드 결합 및 부팅 1. 라즈베리파이 & SD카드 준비 "라즈베리파이 4 Model B 8GB"로 진행하였습니다. SD카드는 32GB 이상이면 충분하다고 합니다. 방열판은 라즈베리파이가 고온에 의해 오작동이나 결함이 발생하는 문제를 없애기 위해 필요합니다. SD카드는 PC와 연결하여 포맷 작업 및 운영체제 설치를 진행해야 하므..
파이썬(python) 배열 연습 (list, tuple) 리스트(list)와 튜플(tuple)은 파이썬에서 배열로 사용하는 자료 형태입니다. 2가지로 사용하는 이유는 특징이 서로 다르기 때문입니다. """ list는 값을 한 번 저장한 다음에 수정(추가, 삭제, 변경 등)이 가능합니다. tuple은 값을 한 번 저장하면 수정이 불가합니다. """ list와 tuple의 사용 형태를 정리했습니다. 1. 리스트와 튜플 선언(정의) 배열을 만들기 위해 어떤 값을 넣을지 분명히 알고 있는 경우, 배열을 만들고 싶지만 어떤 값을 넣을지는 정하지 않은 경우로 배열을 선언하였습니다. ① 어떤 값을 넣을지 분명히 알고 있는 경우 1~4, 5~8의 정수를 저장하는 list와 tuple을 만들고 싶다는 가정을 하겠습니다. 주의해야 할 것은 리스트는 대괄호(" [ ] "), 튜플..
파이썬(python) 사용자 입력 방법 연습 (input) 파이썬에서 사용자 입력으로 사용하는 함수는 "input()"입니다. input() 함수를 사용하는 여러 방식에 대해 정리했습니다. 1. input() input() 함수는 사용자가 입력하는 값을 변수에 저장하고자 할 때 사용합니다. 입력되는 값은 무조건 문자(str) 형으로 받아들이는 특징이 있습니다. 그래서 입력으로 숫자(ex. 100, 555)를 입력해도 문자형이 됩니다. input() 함수는 큰따옴표(" ")를 기준으로 텍스트 입력이 가능합니다. 이는 프롬프트 화면으로 입력 전에 출력되어 사용자가 입력 전에 내용을 이해할 수 있도록 도와줍니다. 2. int(input()) 수치 데이터를 입력하려면 int() 함수를 적용합니다. int() 함수는 integer(정수) 자료형으로 변환하는 함수입니다. ..
백준 1100(하얀 칸) 파이썬(Python) 해결 문제 체스판은 8*8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램을 작성하시오. 입력 첫째 줄부터 8개의 줄에 체스판의 상태가 주어진다. ‘.’은 빈 칸이고, ‘F’는 위에 말이 있는 칸이다. 출력 첫째 줄에 문제의 정답을 출력한다. 하얀 칸의 값을 1로 가지는 체스판을 배열로 만들었습니다. 그다음 입력으로 받는 문자 ' . '은 0으로, 'F'는 1로 바꾼 다음 배열에 저장하였습니다. 마지막으로, 두 배열의 값이 모두 1인 개수를 구하여 해결하였습니다. board = [1,0,1,0,1,0,1,0,0,1,0,1,0,1,0,1, 1,0,1,0,1,0,1,0,0,1,0,..
와이어 전구 아두이노로 작동시키기 2020년 크리스마스 때 방에서 간단하게 분위기를 내려고 했습니다. 그때 선택한 것이 '패브릭 트리'라고 하는 크리스마스 장식입니다. 트리가 그려진 포스터에 와이어 전구를 붙여서 꾸미는 방식이었습니다. 창문에 걸어서 예쁘게 사용하고 있던 어느 날... 걸었던 한쪽이 풀리면서 바닥으로 떨어졌는데 전구 스위치에 연결된 선이 끊어졌습니다 ㅠㅠ.. 고치기 위해서는 선을 다시 납땜해야 했지만, 장비가 없어서 할 수 없었습니다. 어떻게 고칠지 생각하다가 안 쓰고 있는 아두이노 우노 보드로 대체해 보기로 했습니다. 아두이노 우노 보드에 회로 연결 와이어 전구에 사용된 배터리와 스위치입니다. 3V 단추형 전지 2개가 사용되었습니다. 제 입장에서 전지와 회로가 어떻게 연결되는지 알 수는 없었지만 5V 전압인 아두이노로는..
제닉스 NEW ARENA-X ZERO Chair 게임용/게이밍 컴퓨터 의자 구매 코로나19에 의해 24시간 중에 24시간을 집에서 생활하게 되었습니다...ㅠ 학기 중에도 실습이나 팀 프로젝트가 있는 과목을 제외하고는 전부 온라인 강의로 진행되었습니다. 그래서 컴퓨터 앞에 앉아서 보내는 시간이 매우 많아졌습니다. 앞으로도 이런 생활이 유지될 것으로 생각하니 편하게 앉아야겠다는 욕구가 강해졌고, 이번 기회에 의자를 새로 구매하기로 했습니다. 본가에는 사무용 의자를 구매해서 두었지만, 대학 근처 자취방에는 더 좋은 의자를 두고 싶었습니다 : ) 그래서 이번에 선택한 것은 게이밍 의자! 가격대 20만 원을 넘지 않는 선에서 구매하고자 했는데, 눈에 바로 들어온 의자가 이번에 구매한 "제닉스 의자 NEW ARENA-X ZERO Chair"입니다. 지금부터 구매 후기 시작합니다~ 생각 이상으로..