반응형

전체 글 661

(C++) 열거형 enum

C++에서 열거형(enumeration)은 열거된 상수 값들의 집합을 정의하는 데 사용되는 사용자 정의 데이터 타입입니다. 열거형을 사용하면 코드의 가독성과 유지보수성을 높일 수 있습니다. 각 열거형 값은 기본적으로 정수형 값을 가지며, 첫 번째 값은 0부터 시작하고 이후 값들은 순차적으로 1씩 증가합니다. 물론, 원하는 경우 특정 값을 직접 지정할 수도 있습니다. 열거형 기본 문법enum 열거형이름 {     값1,     값2,     값3 }; 예제: 요일 열거형 정의#include using namespace std;enum Weekday { Sunday, // 0 Monday, // 1 Tuesday, // 2 Wednesday, // 3 Thursday..

C_C++ 2024.10.13

c++ typedef, 기존 자료형에 새로운 이름 부여

typedef는 C++에서 기존 타입에 새로운 이름(별칭)을 부여하는 데 사용됩니다. 이를 통해 코드의 가독성을 높이거나 복잡한 타입을 간단하게 표현할 수 있습니다. 특히 함수 포인터, 템플릿 클래스, 긴 타입 선언 등을 다룰 때 유용합니다.typedef 기존_타입 새_이름; 예시 1: 기본 타입에 대한 typedeftypedef int Integer;Integer a = 5; // This is the same as writing "int a = 5;" 예시 2: 포인터에 대한 typedeftypedef int* IntPtr;IntPtr p = nullptr; // This is the same as writing "int* p = nullptr;" 예시 3: 함수 포인터에 대한 typedef#incl..

C_C++ 2024.10.12

c++ 구조체 struct

구조체는 다른 데이터 타입의 변수를 하나로 묶어서 사용할 때 유용합니다. 특히, 객체지향 프로그래밍에서 클래스와 유사하지만 기본적으로 구조체의 멤버 변수는 **public(공개)**입니다. 구조체 개념구조체는 여러 개의 변수를 하나의 단위로 묶어 연관된 데이터를 함께 관리할 수 있습니다. 구조체 내부에는 다양한 데이터 타입을 포함할 수 있으며, 구조체를 이용해 새로운 데이터 타입을 정의할 수 있습니다.  기본 구조체 선언 방법 struct 구조체이름 { 데이터타입 멤버변수1; 데이터타입 멤버변수2; // ...}; 예제: 학생 정보를 저장하는 구조체학생의 이름, 나이, 학번을 저장하는 구조체 예제를 보겠습니다.#include #include using namespace std;// 학생 ..

C_C++ 2024.10.10

C++ 함수 템플릿(Function Template)

C++의 함수 템플릿(Function Template)은 코드의 일반화를 가능하게 해주는 기능입니다. 함수 템플릿을 사용하면 함수의 매개변수 타입에 관계없이 같은 함수 코드를 여러 타입에 대해 사용할 수 있습니다. 이는 동일한 로직을 다양한 데이터 타입에 대해 중복 작성하지 않고 처리할 수 있게 해주므로, 코드의 재사용성을 높이고 유지보수를 용이하게 만듭니다.  함수 템플릿 정의함수 템플릿을 정의하려면 template 키워드를 사용합니다. 그 뒤에 타입 매개변수를 받는 꺾쇠괄호()를 붙입니다. 타입 매개변수는 주로 T, U 같은 이름으로 지정하지만, 임의의 이름을 사용할 수 있습니다. template T add(T a, T b) { return a + b;}위의 예제는 두 개의 매개변수를 받아서 더..

C_C++ 2024.10.06

C++: 윤년 구하기

C++에서 윤년을 구하는 코드를 작성하려면 조건문을 이용해 윤년의 규칙을 구현할 수 있습니다. 아래는 C++로 윤년을 구하는 코드입니다.윤년은 1년이 366일이며, 2월달이 29일까지 있는 해를 말합니다. isLeapYear(int year) 함수:연도가 4로 나누어떨어지고(year % 4 == 0), 100으로 나누어떨어지지 않으면(year % 100 != 0) 윤년입니다.하지만 400으로 나누어떨어지면(year % 400 == 0) 윤년입니다.#include using namespace std;bool isLeapYear(int year) { // 윤년 조건: 4로 나누어 떨어지고, 100으로 나누어 떨어지지 않거나, 400으로 나누어 떨어져야 함 if ((year % 4 == 0 && y..

C_C++ 2024.10.01

C++ 클래스: 다중 상속에 관한 예제

C++에서 다중 상속은 두 개 이상의 클래스로부터 상속받을 수 있는 기능입니다. 이 기능을 사용할 때 주의해야 할 점은 상속받는 클래스들에 동일한 이름을 가진 함수나 멤버 변수가 있을 경우, 모호성(ambiguity)이 발생할 수 있다는 것입니다. 이러한 모호성은 해결 방법으로 :: 연산자를 사용하거나, virtual 키워드를 사용해 가상 상속을 통해 해결할 수 있습니다.다음은 다중 상속의 간단한 예제입니다.#include // 첫 번째 부모 클래스class Animal {public: void sound() { std::cout (Output)Some generic animal sound Vehicle is moving Flying car is flying

C_C++ 2024.09.28

scanf 함수 반환값

보통 scanf 함수는 아래 그림처럼 사용하는데요, "반환값이 무시되었습니다."라는 문구에 대해서 궁금해 하는 분들이 많습니다. 오류는 아니며 대부분의 경우에 무시해도 되는 메시지입니다. scanf 함수 원형과 반환값int scanf( const char *format [, argument]... );scanf 함수의 반환값은 int 형식이며, 비주얼스튜디오에서는 반환값에 대해 다음과 같이 설명하고 있습니다.성공적으로 변환되고 할당된 필드 수를 반환합니다. 반환 값에는 읽었으나 할당되지 않은 필드가 포함되지 않습니다. 반환 값이 0이면 할당된 필드가 없음을 나타냅니다. 예제 1#define _CRT_SECURE_NO_WARNINGS#include int main() { int a; int n ..

C_C++ 2024.08.24

2024년도 한국정보올림피아드 1차, 고등부 문제 1

두 개씩 곱하기6개의 수 1,2,3,4,5,6이 있다.이들 중 서로 다른 두 수 x, y (x  [답] 175↓                   아래의 코드는 제가 생각해서 푼 것이며, 다른 분은 또 다른 방법으로도 풀 수 있을 것입니다.c언어 프로그램 (1)#include int main() { int x, y, sum = 0; for(x=1; x= y) continue; sum += (x * y); } printf("%d\n", sum); return 0;}

코딩대회 문제 2024.07.19

(C언어) 달력 만들기(한 달)

C 언어를 사용하여 특정 년월의 달력을 출력하는 코드를 작성할 수 있습니다. 이를 위해 달력의 시작 요일을 계산하고, 각 날짜를 알맞게 출력해야 합니다.우선, 2024년 7월 1일이 무슨 요일인지 알아야 합니다. 이를 계산한 후, 해당 요일로부터 날짜를 출력하는 코드를 작성합니다.다음은 2024년 7월, 한 달의 달력을 출력하는 C 프로그램 예제입니다. 이 코드는 다음과 같이 작동합니다:dayOfWeek 함수는 주어진 날짜의 요일을 계산합니다. 이는 Zeller's Congruence 알고리즘을 변형하여 사용합니다.printCalendar 함수는 지정된 연도와 월에 대한 달력을 출력합니다.main 함수는 2024년 7월의 달력을 출력하기 위해 printCalendar 함수를 호출합니다.#include /..

C_C++ 2024.07.07

(C언어) 달력 만들기 (1년)

달력을 C언어로 출력하는 프로그램을 작성하는 방법을 설명하겠습니다. 이 프로그램은 윤년을 고려하여 2024년의 각 달의 날짜를 정확하게 출력합니다.먼저 2024년의 각 달이 몇 일인지 정의하고, 각 달의 시작 요일을 계산한 다음, 달력을 출력하는 방법을 구현합니다. 이 코드는 다음과 같은 주요 부분으로 구성됩니다:isLeapYear: 주어진 연도가 윤년인지 판단합니다.getDaysInMonth: 주어진 연도와 달에 해당하는 날짜 수를 반환합니다.getStartDayOfMonth: 주어진 연도와 달에 해당하는 첫 번째 날짜의 요일을 계산합니다.printCalendar: 주어진 연도와 달에 대한 달력을 콘솔에 출력합니다.main: 2024년의 각 달을 출력하는 메인 함수입니다.이 코드를 실행하면 2024년의..

C_C++ 2024.07.06
반응형