코딩(17)
-
[알고리즘 코딩 테스트] Ch03 - 1 : 배열과 리스트 그리고 벡터
문제 001. 숫자의 합 구하기 N개의 숫자가 공백 없이 쓰여 있다. 이 숫자를 모두 합해 출력하는 프로그램을 작성하시오. 입력 1번째 줄에 숫자의 개수 N(1 ≤ N ≤ 100), 2번째 줄에 숫자 N개가 공백 없이 주어진다. 출력 입력으로 주어진 숫자 N개의 합을 출력한다. 예제 입력 1 예제 출력 1 1 1 1 예제 입력 2 예제 출력 2 5 54321 15 #include using namespace std; int main(void) { int num, sum = 0; string sNum; cin >> num >> sNum; for (int i = 0; i < num; i++) sum += sNum[i] - '0';// '0' = 48, '1' = 49, '2' = 50 ... // '8' =..
2023.03.20 -
[정보처리기사] 02 - 01 : 소프트웨어 개발 환경 분석
1. 현행 시스템 파악 1) 개요 새로 개발하려는 시스템의 개발 범위를 정확히 판단하기 위해 시스템의 구성과 구성 요소의 기능을 정확히 파악하고 있어야 함. 2) 시스템 구성 파악 조직 내 모든 정보시스템의 현황을 파악하여 명칭과 주요 기능들을 명시하는 것 주요 업무를 담당하는 기간 업무와 기간 업무를 지원하는 지원 업무로 구분 3) 시스템 기능 파악 파악된 단위 업무 시스템들의 기능을 세분화하여 파악하고 명시하는 것 주요 업무 기능과 주요 기능의 하부 기능, 하부 기능의 세부 기능 등으로 계층화하여 표시 4) 시스템 인터페이스 파악 단위 업무 시스템 간에 주고 받게 되는 데이터에 대한 속성을 파악 데이터의 종류, 형식, 프로토콜(Protocol), 전송 주기 등을 파악 시스템 인터페이스 : 서로 다른 ..
2023.03.17 -
[C#] 03 : 연습 문제
문제 1 다음과 같이 사용자로부터 사각형의 너비와 높이를 입력받아 넓이를 계산하는 프로그램을 완성하세요. [출력 예시] 사각형의 너비를 입력하세요. 30 사각형의 높이를 입력하세요. 40 사각형의 넓이는 : 1200 Ch03/Q01/Program.cs using System; namespace RectArea { class Program { public static void Main() { Console.Write("사각형의 너비를 입력하세요. : "); string width = Console.ReadLine(); Console.Write("사각형의 높이를 입력하세요. : "); string height = Console.ReadLine(); double area = double.Parse(width)..
2023.03.16 -
[C#] 03 : 데이터 보관하기
기본 데이터 형식 Ch03/IntegralType/MainApp.cs using System; namespace IntegralTypes { class MainApp { static void Main(string[] args) { sbyte a = -10; byte b = 40; Console.WriteLine($"a = {a}, b = {b}"); short c = -30000; ushort d = 60000; Console.WriteLine($"c = {c}, d = {d}"); int e = -1000_0000; // 0이 7개 uint f = 3_0000_0000; // 0이 8개 Console.WriteLine($"e = {e}, f = {f}"); long g = -5000_0000_0000;..
2023.03.16 -
[C#] 02 : 연습 문제
문제 1 다음과 같이 텍스트를 출력하는 프로그램을 작성하세요. 여러분, 안녕하세요? 반갑습니다! Ch02/Q01/MainApp.cs using System; using static System.Console; namespace Q01 { class MainApp { static void Main(string[] args) { WriteLine("여러분 안녕하세요?\n반갑습니다!"); } } } 출력 결과 여러분 안녕하세요? 반갑습니다! 문제 2 아래 실행 결과를 출력할 수 있도록 다음 코드에서 [ 1 ]과 [ 2 ]에 필요한 코드를 채우세요. using [ 1 ]; class MainApp{ static void Main(string[] args) { [ 2 ].WriteLine("Hello World!..
2023.03.16 -
[C#] 02 : 처음 만드는 C# 프로그램
Hello, World! Ch02/HelloWorld/MainApp.cs using System; using static System.Console; namespace Hello { class MainApp { // 프로그램 실행이 시작되는 곳 static void Main(string[] args) { if (args.Length == 0) { Console.WriteLine("사용법 : Hello.exe "); return; } WriteLine("Hello, {0}!", args[0]); } } } 출력 결과 입력 : HelloWorld Chlln 출력 : Hello, Chlln!
2023.03.16 -
[정보처리기사] 01 - 03 : 소프트웨어 생명주기 모델
1. 소프트웨어 생명 주기 1) 개요 소프트웨어 개발 방법론의 바탕이 되는 것으로, 소프트웨어 개발 과정을 단계별로 나눈 것 각 개발 단계별 결과에 대한 산출물로 표현됨. 소프트웨어 수명 주기, 소프트웨어 공학 패러다임이라고도 함. 2) 폭포수 모델(Waterfall model) 특징 개발 이전 단계로 돌아갈 수 없다는 전제하에 각 단계를 확실히 매듭지음. 과거 가장 폭넓게 사용된 전통적인 소프트웨어 생명 주기 모형 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있음. 매뉴얼 작성이 필요 단계별 결과물이 명확하게 산출되어야 함. 개발 프로세스 3) 프로토타입 모델(Prototyping model) 특징 폭포수 모형의 단점을 보완한 모델 사용자의 요구사항 파악을 위해 견본품을 만들어 결과물을 예측..
2023.03.15 -
[정보처리기사] 01 - 02 : 소프트웨어 개발 방법론 활용
1. 소프트웨어 개발 방법론 1) 개요 소프트웨어 개발, 유지보수 등에 필요한 여러가지 일들의 수행 방법 개발을 수행하는 과정에서 필요한 각종 기법과 도구를 표준화한 것 소프트웨어의 생산성과 품질의 향상에 목적이 있음. 2) 구조적 방법론 개념 정형화된 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리 중심의 방법론 정보와 정보의 구조를 중심으로 분석, 설계, 구현 순차, 선택, 방법으로 프로그램의 흐름을 구성하여 복잡성을 감소시킴. 분할 정복을 통해 프로그램을 모듈화 구조적 방법론의 절차 3) 정보공학 방법론 개념 정보 시스템 개발에 필요한 관리 절차와 작업 기법을 체계화하는 것 계획, 분석, 설계, 구축에 대한 정형화된 기법을 전체적으로 적용 데이터, 업무 활동, 상호작용으로 구성 정보공학 방법..
2023.03.15 -
[정보처리기사] 01 - 01 : 소프트웨어의 분류와 특성
1. 상용 소프트웨어(Commercial Software) 1) 상용 소프트웨어의 개념 상업적 목적으로 생산되는 프로그램(Program) 프로그램 : 어떤 문제를 해결하기 위해 컴퓨터에게 주어지는 처리 방법과 순서를 기술한 일련의 명령문 집합체 시중에 판매되고 유통되는 소프트웨어 홍보를 위한 특정 무료 소프트웨어도 포함. 제작에 필요한 원시 코드(Source Code)를 제공하지 않음. 원시 코드 : 컴퓨터 프로그램을 사람이 읽을 수 있는 프로그래밍 언어로 기술한 텍스트 파일 2) 상용 소프트웨어의 구분 산업 특화 소프트웨어 : 자동차, 항공, 조선, 건설, 농업 등의 산업에 사용되는 소프트웨어 산업 범용 소프트웨어 : 시스템 소프트웨어, 미들웨어, 응용 소프트웨어 등이 있음. 3) 기업용 소프트웨어 오..
2023.03.14 -
[C++] 01 - 6 : OOP 단계별 프로젝트 01단계
구현의 예 /* *Banking System Ver 0.1 *작성자 : 윤성우 *내 용 : OOP 단계별 프로젝트의 기본 틀 구성 */ #include #include using namespace std; const int NAME_LEN = 20; void ShowMenu(void);// 메뉴출력 void MakeAccount(void);// 계좌개설을 위한 함수 void DepositMoney(void);// 입 금 void WithdrawMoney(void);// 출 금 void ShowAllAccInfo(void);// 잔액조회 enum { MAKE = 1, DEPOSIT, WITHDRAW, INQUIRE, EXIT }; typedef struct { int accID,// 계좌번호 balance..
2023.03.13 -
[C++] 문제 01 - 4 [파일의 분할]
문제 1 C++을 제대로 공부하려면 다음의 내용을 잘 알고 있어야 한다. 헤더파일의 의미와 정의 방법 헤더파일에 삽입할 내용과 소스파일에 삽입할 내용을 구분하는 방법 둘 이상의 헤더파일과 소스파일을 만들어서 하나의 실행파일로 컴파일하는 방법 이와 관련해서 전혀 감이 없다면, C언어 기본서를 참조하여 이 부분을 복습하기 바라며, 감이 좀 있다면, 앞으로 조금씩 그 감을 살려나가기 바란다. 그럼 헤더파일, 그리고 파일분할과 관련된 감을 살리기 위해서 앞서 소개한 예제 NameSp2.cpp를 다음과 같이 총 3개의 파일로 분할해서 컴파일 해보자. 헤더파일 : main 함수를 제외한 나머지 두 함수의 선언을 삽입한다. 소스파일1 : main 함수를 제외한 나머지 두 함수의 정의를 삽입한다. 소스파일2 : mai..
2023.03.13 -
[C++] 01 - 5 : 이름공간(namespace)에 대한 소개
이름공간의 기본원리 NameSp1.cpp #include using namespace std; namespace BestComImpl { void SimpleFunc(void) { cout
2023.03.13 -
[C++] 01 - 4 : 인라인(inline) 함수
C++ 기반의 인라인 함수 정의 InlineFunc.cpp #include using namespace std; inline int SQUARE(int x) { return x * x; } int main(void) { cout
2023.03.13 -
[C++] 문제 01 - 3 [매개변수의 디폴트값]
문제 1 예제 DefaultValue3에 정의된 함수 BoxVolume을 '매개변수의 디폴트값 지정' 형태가 아닌, '함수 오버로딩'의 형태로 재구현해보자. 물론 main 함수는 변경하지 않아야 하며, 실행 결과도 동일해야 한다. q01-3-1.cpp #include using namespace std; int BoxVolume(int length, int width, int height); int BoxVolume(int length, int width); int BoxVolume(int length); int main(void) { cout
2023.03.13 -
[C++] 01 - 3 : 매개변수의 디폴트값(Default Value)
매개변수에 설정하는 "디폴트값"의 의미 DefaultValue1.cpp #include using namespace std; int Adder(int num1 = 1, int num2 = 2) { return num1 + num2; } int main(void) { cout
2023.03.13 -
[C++] 문제 01 - 1 [C++ 기반의 데이터 입출력]
문제 1 사용자로부터 총 5개의 정수를 입력받아서, 그 합을 출력하는 프로그램을 작성해 보자. 단, 프로그램의 실행 결과는 다음과 같이 이뤄져야 한다. [실행의 예] 1번째 정수 입력 : 1 2번째 정수 입력 : 2 3번째 정수 입력 : 3 4번째 정수 입력 : 4 5번째 정수 입력 : 5 합계 : 15 q01-1-1.cpp #include using namespace std; int main(void) { int num, result = 0; for (int i = 1; i
2023.03.13 -
[C++] 01 - 1 : printf와 scanf를 대신하는 입출력 방식
문자열 "Hello World"의 출력 HelloWorld.cpp /* 문자열 "Hello World"의 출력 */ #include using namespace std; int main(void) { int num = 20; cout
2023.03.13