본문 바로가기

프로그래밍

(133)
2주차 8일차 (12/23, 수) 축약어(snippets)와 prettier라는 포맷 익스텐션 도구를 알게됨 DOM 조작Document Object Model의 줄임말. 자바스크립트가 HTML 엘리먼트에 접근하고 조작(manipulate)할 수 있게끔 해줌.WEB API를 각 브라우저마다 담고있는데 자바스크립트를 이용해서 이 API에 접근할 수 있음이벤트 리스너(event listener)란 특정 이벤트가 발생할 때까지 기다리다가 이벤트가 발생하면 반응(react)하는 것이다.document.querySelector('.check').addEventListener('click', )클릭 이벤트에 반응하는 이벤트 리스너addEventListner의 두번째 인자에는 이벤트 핸들러의 함수(Function)이다. 예를..
1주차 1일차 (12/16 수)나는 지금 아무 생각이 없다. 무엇부터 시작해야할까. 코딩을 다시 시작하려고 했던 시도가 벌써 4번째다. 일단 내가 생각하고 있는 사이트가 트렐로와 가장 유사하지만, 우선은 포모도로 시계를 만들도록 하겠다. 우선 udemy JS 기초 프로그램 + 인프런 웹 게임을 만들며 배우기을 병행하면서 진행하고자 한다. Hooks는 페이스북이 요즘 밀고 있는 리액트 표준. 3-4년전까지는 Class였음 (현존하는 코드의 99%) React를 사용하는 이유 → "사용자 인터페이스"를 편하게 만들기 위해서. Single page application이라고 하는데 React 공식 블로그를 확인하면 알 수 있음. 또 데이터를 쉽게 처리하고자 하는 목적도 있음. 페이스북이 단일 웹페이지 중에서 가장 데..
[백준1935번] (C) 후위표기식2 (1935)후위표기식 백준 1935번 https://www.acmicpc.net/problem/1935 착안점 double형 스택을 구조체로 선언 +, -, *, /인 경우를 제외하면 피연산자이므로 int형 배열에 있는 원소를 push 테크닉 push(ch-'A') 입력 예제를 보면, ABCDE와 같은 피연산자는 숫자로 변환한 뒤, push해줘야 한다. 피연산자는 항상 A, B, 부터 입력되므로 array 배열에 있는 원소들을 차곡차곡 push하기 위해서는 ch-'A'만큼 빼주어야 한다. 맨 처음에 입력하는 num이 곧 array 배열의 길이기 때문에 AA+A+ 입력된다 할지라도 상관이 없다. 실수했던 점 calculate 함수의 parameter를 double로 선언하지 않았던 점. 함수(pop, pe..
[백준1918번] (C) 후위표기식 백준 1918번 착안점 각 연산자(operator)의 우선순위값을 return해주는 isOperator 함수를 만들어줬다. (, ) : 우선순위 0 +, - : 우선순위 1 *, / : 우선순위 2 피연산자 : 우선순위 -1 (즉, A, B, C) postfix함수가 가장 중요한 함수라고 할 수 있다. for문을 이용해 글자 하나하나씩 읽어나간다. 우선순위 -1 : 피연산자는 그대로 출력 열린괄호 ( : 스택에 push 닫힌괄호 ) : 스택에 있는 (를 만날 때까지 pop 우선순위 1 이상 스택이 비어있지 않고 && 스택에 있는 연산자의 우선순위가 더 높다면 pop 그외의 경우라면 스택에 push 맨 마지막에서는 스택에 남아있는 것이 없도록 모두 pop #include #include #define MA..
[C언어] 삼항연산자 활용하기 삼항연산자 삼항연산자의 중첩 삼항연산자는 양날의 검이다. 라인수를 짧게 하고 싶다면 권장되지만, 이해하기 어려운 코드를 만들기도 한다. 삼항연산자는 if-else문을 한 번만 사용한 경우에는 간단하게 이해할 수 있다. a > b ? a : b a가 b보다 크면 a를 출력하고, b가 더 크다면 b를 출력하는 간단한 예제다. 이 삼항 연산자는 중첩을 할 수 있다는 것이 까다롭게 작용한다. 어떻게 쉽게 볼 수 있을까 if-else가 하나라면 이해하기 쉽지만, if문의 중첩이 일어나면 상당히 보기가 까다로워진다. 이럴 때는, 괄호를 쳐서 보자. if문의 중첩이 어디서 발생하느냐에 따라서 미묘한 차이가 있다. 간단한 예제 두 숫자를 입력받고(a, b) 하나의 문자(c)를 입력받는 코드다. +를 입력받으면 두 수의..
[C] 포인터(pointer) 간단하게 이해하기 포인터 나는 포인터가 죽어도 안 외워졌다. 나는 포인터가 죽어도 안 외워졌다. C언어의 꽃이라고 불리는 포인터를 이해하기에 조금 오랜 시간이 걸렸다. 간단하게 생각하자.일단 가볍게 짚고 넘어가자. 포인터(pointer)는 메모리 주소 '값'이다. *는 값이다. &는 주소값이다. * (asterisk) *는 별표다. 별이 붙으면 특별해진다. 군대에서도 별을 달면 대우가 달라진다. 별을 달면 값을 나타낸다. num이 가지고 있는 5를 출력하고 싶다면 ptr라는 변수에 *을 붙여서 *ptr로 나타내면 된다. 그런데, 계급장을 때면, 이 녀석(ptr)은 주소값이 된다. 정말 그런지 ptr만 출력해보자. 계급장을 떄면, ptr 변수는 주소값을 가리킨다. 정확하게 말하면, num 변수의 메모리 주소값을 가리킨다. ..
정보처리기사 기출문제 정리 2018년도 1분기 정보처리기사를 준비하면서 제가 풀어본 문제들을 오답노트 형식으로 정리했습니다. 행정병이었던 경험을 살려서 2012년 1분기부터 2017년 8월(가장 최근 시험)까지 '빠르게' 정리했습니다. 그렇기 때문에 오타가 있을 수도 있고, 뭘 이렇게 만들었어? 하시는 부분도 있을 수 있지만 저만의 외우기 TIP이나 문제 배치를 최대한 효율적이도록 신경을 썼습니다. 쉬운 문제들은 건너 뛴 것들이 많고, 제가 틀린 것 위주로 모아놨기 초심자분들께는 잘 맞지 않을 수도 있습니다.
그레이 코드(gray code)를 2진 코드로 변환하기 Gray code 1111을 2진 코드로 바꾸면? 1. 1010 2. 1011 3. 0111 4. 1001 정답 : ① ※ XOR 연산 (서로 다르면 1)ABXOR000011101110 1단계그레이코드11112진 코드1 ① 맨 왼쪽은 일단 그대로 내릴 것 ⇒ 1 2단계그레이코드11112진 코드1⇒ 0 ② 그레이 코드 오른쪽으로 한칸 옮겨서 이진코드랑 XOR 연산 3단계그레이코드11112진 코드10=> 1 ③ 또 한칸 옮겨서 XOR 연산 4단계그레이코드11112진 코드101⇒ 0④ 또 한칸 옮겨서 XOR 연산 정답 : 1010