반응형

전체 글 705

파이썬: 로또복권번호 자동생성기 tkinter GUI

사용자가 입력한 개수만큼 로또 번호 세트(Set)를 생성하여 표시하는 Tkinter GUI 프로그램입니다.import tkinter as tkfrom tkinter import ttk, messageboximport randomclass LottoBulkGeneratorApp: def __init__(self, master): # 메인 윈도우 설정 self.master = master master.title("🔢 로또 6/45 번호 일괄 생성기") master.geometry("400x450") master.resizable(False, False) # 창 크기 변경 불가 # 폰트 설정 self...

Python 2025.12.02

파이썬: QR코드 생성하기

파이썬으로 간단하게 QR 코드를 생성하는 코드입니다. 아래의 라이브러리가 필요합니다.pip install qrcode[pil] pillowqrcode는 PNG 생성에 편하고, Pillow는 이미지 처리에 필요합니다. 파이썬 QR코드 생성 프로그램import qrcodedata = "https://gonyzany.tistory.com" # QR에 담을 텍스트나 URLimg = qrcode.make(data)img.save("c:/temp/qrcode_gonyzany.png")print("qr코드 생성 완료") 생성된 QR코드 이미지

Python 2025.11.21

파이썬: gTTS를 이용한 텍스트를 음성으로 변환하기

파이썬으로 gTTS(google TTS)를 이용해서 텍스트를 음성으로 변환하는 소스입니다.변환된 파일을 mp3 형식으로 저장합니다. 아래의 모듈이 필요할 수 있습니다.pip install gTTS playsound==1.2.2 from gtts import gTTSimport osimport tempfileimport sysdef tts_gtts(text, lang='ko', slow=False, filename=None, play=True): """ text: 읽을 문자열 lang: 언어 코드, 한국어는 'ko' slow: True면 천천히 재생 filename: 저장할 파일명 (예: 'out.mp3'). None이면 임시파일로 저장 play: True면 저장 후 재생 ..

Python 2025.11.20

C++26 소개

C++26은 2026년에 공식 표준화될 예정인 C++ 차기 표준(ISO/IEC 14882:2026) 입니다.현재(2025년 기준) C++26 초안(draft) 이 활발히 개발 중이며, C++23 이후의 개선된 언어 기능과 표준 라이브러리 확장이 포함됩니다.아래에 C++26의 핵심 내용을 간결하게 정리해 봅니다 👇🧭 C++26 개요표준화 기구: ISO/IEC JTC1/SC22/WG21 (C++ 표준 위원회)출시 목표: 2026년핵심 방향:언어 단순화 및 안전성 강화메타프로그래밍과 리플렉션(reflection) 지원병렬/비동기 프로그래밍 강화표준 라이브러리 확장 및 현대화🧩 주요 언어 기능(예상 또는 승인된 제안)1. ✅ 리플렉션(Reflection)C++26에서 가장 기대되는 기능 중 하나입니다.컴파..

C_C++ 2025.11.09

음수를 2의 보수로 표현하는 방법, C언어 코드

아래 예제는 정수를 입력받아, 해당 정수를 8비트 이진수로 출력하면서 양수/음수의 2의 보수 표현을 확인할 수 있게 해줍니다.#include // 8비트 이진수 출력 함수void printBinary8(int num) { for (int i = 7; i >= 0; i--) { printf("%d", (num >> i) & 1); }}int main() { int num; printf("정수를 입력하세요: "); scanf("%d", &num); printf("입력 값: %d\n", num); printf("8비트 이진수 표현: "); printBinary8(num); printf("\n"); if (num 실행 예시 정수를 입력하세요: -..

C_C++ 2025.09.10

VC++ MFC 소개

🔹 VC++ MFC란?VC++ (Visual C++)Microsoft에서 만든 C++ 개발 환경(IDE)으로, Windows 응용 프로그램을 만들 때 많이 사용합니다.MFC (Microsoft Foundation Class)윈도우 프로그래밍을 쉽게 만들 수 있도록 제공하는 C++ 클래스 라이브러리입니다.원래는 Win32 API를 직접 호출해야 했는데, API는 코드가 복잡하고 다루기 어려워서 이를 쉽게 사용할 수 있도록 만들어 놓은 클래스 라이브러리입니다.🔹 MFC의 특징윈도우 프로그램 제작 편리버튼, 대화상자(Dialog), 메뉴, 툴바 같은 GUI 요소들을 쉽게 만들 수 있음.클래스 구조 제공CWnd, CDialog, CButton, CEdit 등 다양한 윈도우 컨트롤 클래스 제공.메시지 맵(Me..

C_C++/VC++(MFC) 2025.08.21

C언어 역사 연대표

C언어의 역사는 꽤 흥미롭고, 오늘날 우리가 쓰는 거의 모든 현대 프로그래밍 언어의 ‘조상님’ 격이죠.아래는 C언어의 탄생부터 현재까지의 흐름을 간단하게 정리한 내용입니다.📜 C언어 역사 연대표1. 시작 이전 – BCPL과 B 언어1966년 – 마틴 리처즈(Martin Richards)가 BCPL(Basic Combined Programming Language) 개발→ 시스템 프로그래밍을 위해 설계된 단순하고 효율적인 언어1969년 – 켄 톰프슨(Ken Thompson)이 BCPL을 기반으로 B 언어 개발→ 초기 유닉스(UNIX) 시스템을 PDP-7에서 구현할 때 사용2. C언어의 탄생1972년 – 데니스 리치(Dennis Ritchie), 벨 연구소(Bell Labs)에서 C 언어 개발목적: UNIX..

C_C++ 2025.08.13

C++, 틱택토(TIC TAC TOE) 콘솔 게임: 인간과 컴퓨터 AI의 대결

사람(X) vs 컴퓨터(AI, O)의 콘솔 틱택토 게임 C++ 소스 코드(단일 파일) 입니다. AI는 미니맥스(minimax) 알고리즘으로 최적의 수를 둡니다.리눅스의 g++과 윈도우에서 Visual Studio 2022에서 실행할 수 있습니다 - 소스중에서 헤더 부분만 수정하면 됩니다.// 리눅스: g++ 헤더//#include //using namespace std;// Visual Studio 헤더#include #include #include #include using namespace std;// 3x3 보드, 빈칸은 ' '// 사람: 'X', 컴퓨터(AI): 'O'char board[3][3];// 보드 초기화void initBoard() { for (int i = 0; i +1..

C_C++ 2025.08.09

동기식(Synchronous)/비동기식(Asynchronous) 방식 개요

동기식(Synchronous) 방식과 비동기식(Asynchronous) 방식은 작업 처리 방식을 설명할 때 자주 사용되는 개념입니다. 두 방식은 작업 요청과 응답이 어떻게 이루어지는지에 따라 구분됩니다.✅ 동기식(Synchronous) 방식 개요🔹 개념요청한 작업이 끝날 때까지 기다린 후에 다음 작업을 수행하는 방식입니다.즉, 작업 A가 완료되어야 작업 B를 시작할 수 있습니다.🔹 특징요청 → 대기 → 응답 → 다음 작업흐름이 직선적이고 예측 가능함구현이 단순하지만, 응답 시간이 길어지면 전체 성능 저하 가능🔹 예시함수 호출: 함수가 값을 반환할 때까지 기다림전화 통화: 상대방이 응답할 때까지 기다림✅ 비동기식(Asynchronous) 방식 개요🔹 개념요청한 작업이 끝나기를 기다리지 않고 바로 다..

통합게시판 2025.06.28

VC++, MFC 바둑판 (오목판) 그리기 (1)

VC++, MFC 대화상자 기반으로 바둑판(오목판)을 그리는 코드입니다.프로젝트명: Omok OmokDlg.h// OmokDlg.h: 헤더 파일//#pragma once// COmokDlg 대화 상자class COmokDlg : public CDialogEx{// 생성입니다.public: COmokDlg(CWnd* pParent = nullptr); // 표준 생성자입니다.// 대화 상자 데이터입니다.#ifdef AFX_DESIGN_TIME enum { IDD = IDD_OMOK_DIALOG };#endif protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 지원입니다.// 구현입니다.protected: HICON m_hIcon;..

C_C++/VC++(MFC) 2025.06.09
반응형