Programming 19

[TIL] 정보처리기사 독학 (현행 시스템 파악, 개발 기술 환경 파악)

2025 시나공 정보처리기사 필기 기본서https://product.kyobobook.co.kr/detail/S000214616457독학 1일차 p33 ~ 41현행 시스템 파악현행 시스템 파악 절차새로 개발하려는 시스템의 개발 범위를 명확히 설정하기 위해 파악1단계시스템 구성 파악 : 조직의 주요 업무를 담당하는 기간 업무와 이를 지원하는 지원 업무로 구분하여 기술시스템 기능 파악 : 현재 제공하는 기능들을 주요 기능과 하부 기능, 세부 기능으로 구분하여 계층형으로 표시시스템 인터페이스 파악 : 단위 업무 시스템 간에 주고받는 데이터의 종류, 형식, 프로토콜, 연계유형, 주기 등을 명시2단계아키텍처 구성 파악 : 최상위 수준에서 계층별로 표현한 아키텍처 구성도를 작성소프트웨어 구성 파악 : 소프트웨어들의..

Programming/TIL 2025.04.24

[TIL] 정보처리기사 독학 (소프트웨어 생명 주기, Scrum기법, XP기법)

2025 시나공 정보처리기사 필기 기본서https://product.kyobobook.co.kr/detail/S000214616457독학 1일차 p.1 ~ 32소프트웨어 생명 주기소프트웨어 생명 주기 (Software Life Cycle) 소프트웨어 개발 방법론의 바탕이 되는 것으로, 소프트웨어를 개발하기 위해 정의하고 운용, 유지보수 등의 과정을 각 단계별로 나눈 것소프트웨어 개발 단계와 각 단계별 주요 활동, 그리고 활동의 결과에 대한 산출물로 표현 소프트웨어 공학 (SE; Software Engineering)소프트웨어의 위기를 극복하기 위한 방안으로 연구된 학문여러가지 방법론과 도구, 관리 기법등을 통하여 소프트웨어의 품질과 생산성 향상을 목적으로 함 소프트웨어 공학의 기본 원칙현대적인 프로그래밍..

Programming/TIL 2025.04.19

[TIL] C언어 입문 17일차 (형식을 지정해 파일 입출력하기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.377 ~ 400fprintf(), fscanf()fprintf()와 fscanf() 함수는 정해진 형식에 맞춰 파일에 데이터를 읽거나 쓸 때 사용한다.먼저 fprintf() 함수는 파일에 데이터를 저장할 때 사용하는데, 첫 번째 전달값에는 데이터를 저장할 파일 포인터를 넣고, 두 번째 전달값에는 서식지정자를, 마지막 전달값에는 해당 서식 지정자에 매칭되는 값을 넣는다.fscanf() 함수는 파일에서 데이터를 읽어오며, 첫 번째 전달값에는 데이터를 읽어 올 파일 포인터를, 두 번째 전달값에는 서식 지정자를, 마지막 전달값에는 읽어 온 데이터를 저장할 변수의 주소를 적는다.#define _C..

Programming/TIL 2025.03.16

[TIL] C언어 입문 16일차 (문자열 단위로 파일 입출력하기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.363 ~ 376파일에 데이터를 저장하는 것을 파일 쓰기, 저장한 내용을 불러오는 것을 파일 읽기라고 한다. C언어에서 파일을 읽고 쓸 때는 fputs(), fgets() 함수와 fprintf(), fscanf() 함수를 사용한다. 이 함수들은 한 쌍으로 이루어져 있는데, 섞어 써도 상관없다.fopen(), fputs(), fclose(), fgets()파일에서 데이터를 읽고 쓸 때는 먼저 fopen() 함수로 파일을 열어서 파일 포인터를 얻어야 한다. 파일 포인터는 fopen() 함수를 통해 무슨 파일을 열었는지, 파일을 어디까지 읽었는지, 파일의 끝에 도달했는지 등의 정보를 담는다. 파..

Programming/TIL 2025.03.13

[TIL] C언어 입문 15일차 (typedef로 구조체 선언하기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.340 ~ 362typedef로 구조체 선언하기typedef는 C언어에서 자료형에 별명을 붙일 때 사용한다. 예를 들어 typedef int 정수; 라고 선언하면 'int' 대신 '정수'를 자료형으로 사용할 수 있다. 구조체는 선언할 때 키워드와 구조체명을 모두 넣어야 하므로 긴 경우가 많기 때문에 typedef를 사용하여 짧게 줄여서 쓸 수 있다.#include struct GameInfo { char* name; int year;};typedef struct GameInformation { char* name; int year;} GAME_INFO;int main(void) { type..

Programming/TIL 2025.03.09

[TIL] C언어 입문 14일차 (구조체)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.321 ~ 339구조체 정의, 선언하기구조체는 같은 형태의 정보들을 관리할 때 사용한다. 구조체는 여러 자료형으로 된 변수들을 묶어 하나의 새로운 자료형으로 정의하는 것이며, 이름과 멤버를 사용자가 직접 정의할 수 있기 때문에 사용자 정의 자료형(UDT, User-defined Data Type)이라고 한다.#include int main(void) { char* name = "나도게임"; int year = 2025; int price = 50; char* campany = "나도회사"; char* name2 = "너도게임"; int year2 = 2025; int price2 = 100..

Programming/TIL 2025.03.09

[TIL] C언어 입문 13일차 (프로젝트 - 동물 카드 뒤집기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.290 ~ 3208장 마무리 프로젝트 - 동물 카드 뒤집기#include #include #include int arrayAnimal[4][5];char* strAnimal[10];int checkAnimal[4][5];void initAnimalArray();void initAnimalName();void shuffleAnimal();int getEmptyPosition();int conv_pos_x(int x);int conv_pos_y(int y);void printAnimals();void printQuestion();int foundAllAnimals();int main(void)..

Programming/TIL 2025.03.07

[TIL] C언어 입문 12일차 (다차원 배열)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.273 ~ 289다차원 배열이란?배열은 동일한 자료형의 값 여러개를 저장하는 연속된 메모리 공간이다. 이런 연속된 메모리 공간이 하나 있는 배열을 1차원 배열이라고 한다. 다차원 배열은 1차원 배열에 배열을 하나 이상 추가한 2차원, 또는 그 이상의 배열을 의미한다. 2차원 배열은 크기를 뒤부터 읽는다. 예를 들어 arr2[2][5]는 5개의 연속된 메모리 공간을 가진 1차원 배열이 2개 있다는 뜻이고, 이 배열의 총 요소는 5 × 2 = 10개이다. 3차원 배열도 크기를 뒤부터 읽는다. arr3[3][4][5]는 5개의 연속된 공간을 가진 1차원 배열이 4개 있고, 이런 2차원 배열이 다..

Programming/TIL 2025.03.06

[TIL] C언어 입문 11일차 (프로젝트 - 물고기 키우기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.250 ~ 2727장 마무리 프로젝트 - 물고기 키우기#include #include #include int level;int arrayFish[6];int* cursor;void initData();void printfFishes();void decreaseWater(long elapsedTime);int checkFishAlive();int main(void) { long startTime = 0; int num; long totalElapsedTime = 0; //총 경과시간 long prevElapsedTime = 0; //직전에 물을 준 시간 initData(); startTime..

Programming/TIL 2025.03.05

[TIL] C언어 입문 10일차 (포인터로 배열 다루기)

길벗 코딩 자율학습단 13기https://cafe.naver.com/gilbutitbook/12930C언어 입문 p.235 ~ 249포인터로 배열에 접근하기#include int main(void) { int arr[3] = { 5,10,15 }; for (int i = 0; i 포인터 변수에 배열을 값으로 넣으면 포인터 변수는 배열의 첫 번째 요소의 주소, 즉 배열의 시작 주소를 가리키게 된다. 그러면 포인터 변수는 시작 주소로 배열에 접근해 요소의 값을 하나씩 가져올 수 있다.#include int main(void) { int arr[3] = { 5,10,15 }; for (int i = 0; i 포인터 변수에 값을 직접 넣어서 바꾼 후에 출력해보면 포인터 변수의 값도 바뀌고 배열의 값도 바뀐다. ..

Programming/TIL 2025.03.02