일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 소켓 통신
- c#
- 산책하기 좋은 곳
- 졸업 작품 소재
- 소스 코드
- Windows Forms
- 강의
- 유튜브 동영상 강의
- 충남 천안
- 안드로이드 앱 개발
- 동영상 강의
- 네트워크 프로그래밍
- 졸업 작품
- 프로젝트
- 클래스 다이어그램
- C++
- c언어
- 알고리즘
- 표준 라이브러리 함수
- 파이썬
- 추천
- 언제나 휴일
- 언제나휴일
- 동영상
- 표준 입출력
- 실습
- 원격 제어 프로그램
- 실습으로 다지는 c#
- 무료 동영상 강의
- 캡슐화
- Today
- Total
목록충남 천안 (25)
프로그래밍 언어 및 기술 [언제나휴일]
[실습으로 다지는 C#] 정수와 소수점 이하 자릿수 결정하기이번 강의에서는 숫자를 출력할 때 정수와 소수점 이하 자릿수를 지정하는 방법을 알아볼거예요. 다음은 자릿수를 지정하는 표현과 예를 간략하게 나타낸 것입니다.다음은 이번 실습에 사용할 변수 선언입니다.double dv = 1234.123456789;int iv = 123;포멧 문자열에 0의 갯수는 정수 자릿수를 의미하며 빈 자리는 0을 출력합니다.//0의 갯수 = 정수 자릿수(빈 자리는 0 출력) Console.WriteLine("{0:000000}", iv); Console.WriteLine("{0:000000}", dv);실행 결과000123001234“D” 형식 지정자 뒤에 정수 표현도 정수 자릿수를 의..
[실습으로 다지는 C#] 숫자 출력 – 형식 지정자 이용하기 이번 실습에서는 형식 지정자를 이용하여 숫자를 출력하는 방법을 알아보기로 할게요. 이미 이전 강의에서는 출력할 때 문자열 출력 포멧을 알아보았죠.{index[,alignment][:formatString]}{인덱스[,배치][:포멧문자열]} 포멧 문자열에는 출력할 내용을 어떠한 형식으로 출력할 것이지 나타내는 표현도 나타낼 수 있습니다. 이를 형식 지정자라 불러요.이번 실습에서는 형식 지정자를 이용하여 숫자를 표현하는 방법을 다룰거예요. 다음은 숫자를 표현할 때 사용하는 형식 지정자와 간략한 예를 나타낸 것입니다.먼저 실습에 사용할 변수를 선언하세요.int iv = 12345;double dv = 12345.6789;double dv2 = 0.2..
이번에는 특정 컨트롤을 우측 마우스 버튼 클릭하였을 때 나오는 컨텍스트 메뉴(Context Menu)를 사용하는 실습을 해 봅시다. 이번 실습에서는 두 개의 TextView를 배치하고 각각의 TextView 개체마다 서로 다른 Context Menu를 띄우는 실습을 할 거예요.먼저 activity_main.xml 파일에 두 개의 TextView를 배치하세요. app>>res 하위에 menu 폴더를 생성한 후에 두 개의 메뉴 파일(menu1.xml, menu2.xml)을 추가하세요.다음은 menu1.xml 파일의 내용입니다. 다음은 menu2.xml 파일의 내용입니다. 두 개의 TextView 개체를 참조할 멤버 필드를 선언하고 두 번째 TextView의..
이번에는 옵션 메뉴(Option Menu)를 사용하는 실습을 해 봅시다.먼저 프로젝트 뷰의 app>>res 하위에 menu 폴더를 추가하고 menu1.xml 파일을 추가하세요. 다음처럼 메뉴를 작성합시다. >" > activity_main.xml은 다음처럼 작성하세요. 여기에서는 단순히 메뉴에서 전체 배경 색상과 텍스트 뷰의 배경 색상을 변경할 것이기 때문에 id를 부여하는 작업 정도면 충분합니다. 이제 MainActivity.java 소스 파일을 편집합시다. 먼저 두 개의 컨트롤을 참조할 수 있는 멤버 필드를 선언하세요. LinearLayout root_layout; ..
이번에는 대화상자를 사용하는 간단한 실습을 합시다.여기에서는 단순한 정보를 전달하는 대화상자와, 확인 버튼을 누를 수 있는 대화상자, 목록 중에 원하는 항목을 선택할 수 있는 대화상자를 띄우는 실습을 할 거예요. 이에 맞게 세 개의 버튼을 배치하세요. 다음은 activity_main.xml 파일 내용입니다. 대화상자를 생성할 때 AlertDialog.Builder 클래스로 생성합니다. setTitle, setMessage 등의 메서드로 제목이나 메시지 설정 등을 할 수 있습니다. 그리고 show 메서드를 호출하여 시각화합니다. public void btnOnClick1(View view){ AlertDialog.Builder dlg = new AlertDialog.B..
이번에는 앞에서 다루었던 기본 컨트롤을 이용하는 간단한 앱을 만들어 봅시다. 소재는 도서 관리 앱입니다. 도서 관리 앱은 도서 추가, 도서 목록, 도서 검색 기능을 제공합니다. 앱의 화면은 세 개의 탭인 HOME(도서 목록), ADD(도서 추가), FIND(도서 검색)으로 원하는 기능을 선택하여 사용할 수 있습니다.먼저 도서 관리자에서 관리할 도서 개체를 Book 클래스로 정의합시다. 도서 개체는 제목, 저자, 보유 개수, 장르를 멤버 필드로 갖고 있고 이들 값을 가져오기 할 수 있는 접근자 메서드 및 생성자로 구성합니다. 참고로 장르는 인문, 자연, 과학, 기타로 정하기로 할게요.package com.example.ehclub.ex_bookmanager;/** * Created by ehclub on ..
이번에는 같은 영역에 보여줄 컨텐츠를 선택할 수 있게 하여 일관성있는 화면 구성을 할 수 있는 TabHost를 이용하는 간단한 실습을 합시다.먼저 activity_main.xml 파일에 컨트롤을 배치합시다.TabHost는 TabWidget과 FrameLayout으로 구성합니다. TabWidget은 사용자가 원하는 컨텐츠(혹은 기능)를 선택하는 영역이고 FrameLayout은 컨텐츠 영역입니다.TabWidget의 id 속성은 @android:id/tabs로 지정하고 FrameLayout의 id 속성은 @android:id/tabcontent로 지정합니다.여기에서는 언어, 기술, 예제 Tab으로 구성할 것입니다. 각 Tab을 선택하였을 때 컨텐츠를 FrameLayout에 배치합니다. 각 컨텐츠는 간단하게 L..
이번에는 ListView의 항목을 개발자가 정의하여 사용하는 실습을 합시다. 여기에서는 도서 제목과 저자를 ListView의 항목으로 정의할게요. 그리고 항목을 클릭하였을 때의 도서 정보를 TextView로 보여주고 EditText에 도서 정보를 입력하여 추가 Button을 누르면 ListView에 항목으로 나타나게 합시다.먼저 activity_main.xml에 컨트롤을 배치하세요. 최상위 요소는 LinearLayout을 배치합니다. 그리고 선택한 항목의 도서 정보를 표시할 TextView를 두 개 배치하세요. 그리고 ListView를 배치합니다. 또한 추가할 도서 정보를 입력하기 위해 EditText를 두 개 배치하고 Button을 추가하세요. 추가 버튼의 onClick 속성을 설정할 수도 있습니다. ..
이번에는 TableLayout을 실습을 통해 알아봅시다. TableLayout은 표 형태로 자식 컨트롤을 배치할 수 있습니다.최상위 요소는 LinearLayout이며 자식으로 TextView(TalbeLayout 실습)와 TableLayout으로 배치합니다.그리고 TableLayout의 자식으로 4개의 TableRow를 배치합니다.첫 번째 TableRow에는 TextView(숫자)를 배치합니다.두 번째 TableRow에는 5개의 TextView(0~4)를 배치합니다.세 번째 TableRow에는 5개의 TextView(5~9)를 배치합니다.네 번째 TableRow에는 Button을 배치합니다. ..
안드로이드 RelativeLayout이번에는 자식 컨트롤을 배치할 때 상, 하, 좌, 우, 중앙 등을 선택하여 배치할 수 있는 RelativeLayout을 이용하는 간단한 실습을 해 봅시다. 최상위 요소는 LinearLayout이며 TextView(RelativeLayout 실습)와 RelativeLayout을 자식으로 배치하세요. 그리고 RelativeLayout의 자식으로 5개의 TextView를 상, 하, 좌, 우, 중앙에 배치하세요.layout_alignParentTop, layout_alignParentBottom, layout_alignParentLeft, layout_alignParentRight 속성을 이용하여 상, 하, 좌, 우에 배치할 수 있으며 layout_centerInParent ..
안드로이드 LinearLayout이번에는 자식 컨트롤을 배치할 때 사용하는 Layout 중에 순차적으로 배치하는 LinearLayout을 사용하는 간단한 앱을 작성합시다. 먼저 Empty Activity 형태의 프로젝트를 생성하세요. 그리고 activity_main.xml 파일을 다음처럼 수정하세요. 여러분께서 목적에 따라 직접 입력을 하거나 자동 완성 기능을 사용하세요.LinearLayout에 자식을 배치할 때 위에서 아래로 배치할 때는 orientation 속성을 vertical로 설정합니다.언제나휴일 추천 여행 및 산책충남 천안 쌍용공원
첫 번째 앱 만들기 및 스마트폰에 개발자 옵션 설정하기Android Studio를 실행하여 Start a new Android Studio project를 선택합니다.앱 이름을 입력하고 프로젝트 위치를 설정합니다.자신에 맞는 Devices를 선택합니다.앱의 액티비티를 선택합니다.액티비티 이름을 결정하세요.처음 만들 때 오늘의 팁이 나옵니다. 필요 없으면 Show Tips on Startup 체크 박스를 선택 해제하세요.마법사에 의해 만들어진 주요 파일은 activity_main.xml과 MainActivity.java 파일입니다. xml 파일에는 컨텐츠 뷰에 자식 컨트롤을 배치하는 xml 코드를 작성할 수 있고 java 파일에는 수행할 작업을 작성할 수 있습니다.마법사에 의해 만들어진 MainActivi..
제어문, 정사각형, 삼각형, 역삼각형, 다이아몬드 출력 [C언어]알고리즘n:←정수 입력반복(line:0→n)반복(space:0→n-line-1)공백 출력반복(star:0→2*line+1)‘*’ 출력개행반복(line:n-2→n)반복(space:0→n-line-1)공백 출력 반복(star:0→2*line+1)‘*’ 출력개행소스코드//반복문 연습 - 다이아몬드 출력// 입력// 5 - n//출력// * 0- 공백 4, 별1, 개행// *** 1- 공백 3, 별3, 개행 // ***** 2- 공백2, 별5, 개행// ******* 3- 공백1, 별7, 개행 // ********* 4- 공백0,..
제어문, 정사각형, 삼각형, 역삼각형, 다이아몬드 출력 [C언어]알고리즘n:←출력할 라인 수 입력반복(i:0→n)—반복(j:0→n)——‘*’출력—개행소스 코드//정사각형 출력// 입력// 5//출력// *****// *****// *****// *****// *****#include int main(void){ int n; int i, j; printf("출력할 라인 수:"); scanf_s("%d", &n);//입력 for (i = 0; i 언제나휴일 추천 여행 및 산책
안녕하세요. 언제나 휴일의 언휴예요.함수만들기 - 합계 구하기, 소수 판별, 소문자 판별, 대문자 판별, 소문자 변환, 대문자 변환자주 사용하는 알고리즘을 함수로 만들어 사용합니다.함수를 만들고 사용하는 것은 많은 연습을 필요합니다.이번에는 기초적인 함수들을 만들어 보는 실습을 해 볼게요.특정 범위 내의 정수 합계를 구하는 함수함수를 만들 때 제일 먼저 해야 할 일은 무엇을 만들어야 하는지 정확히 분석하는 거예요. 이러한 작업은 도메인 분석이라고도 부르죠.함수를 만들 때는 전달해야 할 인자가 무엇이고 어떠한 결과를 나와야 하는지 결정할 수 있어야 합니다.특정 범위 내의 정수 합계를 구하는 함수를 예를 든다면 입력 인자로 특정 범위를 전달해야 할 거예요. 범위의 시작과 범위의 끝을 전달하면 되겠죠. 그리고..
안녕하세요. 언제나휴일의 언휴예요.함수 선언, 함수 정의, 함수 호출 [C언어] 프로그램을 만들다 보면 자주 사용하는 알고리즘이 있어요.이러한 코드는 이름(함수 명), 알고리즘에 필요한 입력 인자(입력 매개변수), 원하는 결과(리턴 타입)를 정하여 알고리즘을 전개하여 함수로 만들 수 있습니다.함수를 만들면 필요할 때 함수를 호출하여 사용할 수 있어요.함수 개요우리는 초등학교부터 함수에 관한 교육을 받아왔어요.블랙 박스에 입력 값을 넣으면 출력 값이 나오는 형태, y = x+2 처럼 방정식 형태, 정의역과 공역의 요소를 매핑하는 형태와 f(x) = x+2 등 다양하게 다루었어요. 함수 정의문C언어의 함수 관련 문법은 크게 함수 정의문, 함수 호출문, 함수 선언문이 있어요.함수 정의문은 함수를 만드는 구문을..
안녕하세요. 언제나휴일의 언휴예요.제어문은 문법이 어려운 것은 아니죠.하지만 막상 문제를 표현하려고 할 때 어떠한 제어문을 어떻게 전개해야 할 지 막막합니다.이는 문법보다는 문제 해결 능력에 관한 것이죠.문제를 해결하기 위해 알고리즘, 자료구조를 비롯한 다양한 경험을 요구합니다.이번에는 다양한 제어문을 연습할 수 있는 다양한 문제를 제시할게요.여러분께서 먼저 해결해 본 후에 코드를 비교해 보길 권할게요.여기에서는 별도의 설명은 생략합니다.두 수를 입력받은 후 작은 수~큰 수 사이의 모든 수의 합을 구하는 프로그램을 작성하시오.#include int main(void){ int a, b; int sum; printf("두 개의 정수 입력:"); scanf_s("%d%d", &a, &b..
안녕하세요. 언제나휴일의 언휴예요.반복적인 작업은 while 혹은 for 문을 사용하세요. [C언어] C언어의 반복문C언어는 세 종류의 반복문을 제공하고 있어요.while(조건 표현) statement;do statement while(조건 표현);for(statement;statement;statement)statement;while 문C언어에서는 특정 조건이 참일 동안 반복하는 구문으로 while 문을 제공하고 있어요.while(표현) statement;while문 소괄호 표현은 참과 거짓을 판별할 수 있는 표현이어야 합니다. 다음은 0에서 10까지 정수의 합계를 계산하는 코드입니다.i를 0으로 초기화하였고 i가 10보다 작거나 같다면 블록({}) 에 있는 구문을 반복합니다.while문도 if 문처럼..
안녕하세요. 언제나 휴일의 언휴예요.값에 따라 수행할 구문을 선택하는 switch case 문 [C언어] 선택문C언어에서는 특정 표현의 값에 따라 구문을 선택하여 수행하는 switch 선택문을 제공하고 있어요.switch(표현){case 상수: [수행 구문] [break]case 상수: [수행 구문] [break]…[default:] [수행구문] [break] }switch 선택문에서 중괄호는 반드시 달아야 합니다. 물론 개발할 때 중괄호를 달지 않으면 문법 오류가 발생하기 때문에 개발할 때 실수할 확률은 지극히 낮겠죠.여러 조건에 따라 수행할 구문을 표현할 때 if 조건문을 사용하면 복잡할 때가 있습니다. 이 때 switch 선택문으로 해결할 수 있는지 고민해 보세요.학점 부여하기로 조건문과 선택문 비..
안녕하세요. 언제나 휴일에 언휴예요. 이번 글은 강의는 아닙니다. 이 내용을 모르더라도 C언어를 익히는 데 영향이 없습니다.실수 형식의 메모리 구조C언어에서 실수는 메모리에 2진 체계에 의해 부호부, 지수부, 가수부로 표현합니다.double 형식은 부호부(1), 지수부(11), 가수부(52)로 구성합니다.float 형식은 부호부(1), 지수부(8), 가수부(23)로 구성합니다.실수를 메모리에 표현하는 방법은 별도의 게시글로 제공하고 있으니 참고하세요.실수를 메모리에 표현하는 방법 알아보기FLT_MIN, FLT_MAX실수 형식의 양수는 FLT_MIN~FLT_MAX까지 표현 가능한 것으로 알고 있습니다.float.h에 이 값을 약속하고 있죠. 그런데 이러한 값이 메모리에 어떻게 표현하는지 아시나요?FLT_M..
안녕하세요. 언제나 휴일에 언휴예요. 확장 문자 형식 wchar_t와 한글 문자 [C언어 동영상 강의]이번 강의는 확장 문자 형식 wchar_t와 한글 문자 표현을 다룰거예요.1. char 형식의 한계2. wchar_t 형식3. wchar_t 형식 크기 및 출력 함수1. char 형식의 한계이전 강의에서 char 형식은 ASCII 코드를 표현할 수 있는 문자 형식이라고 했었죠. 영문 알파벳이 아닌 한글처럼 ASCII 코드가 아닌 문자는 char 형식으로 표현하는데 한계가 있어요.한글 문자 하나를 char 형식으로 다루지 못하는 것이죠.#include //표준 입출력 헤더int main(){ char ch = 'ㄱ'; printf("%c\n", ch); return 0;}위 코드의 ..
안녕하세요. 언제나 휴일에 언휴예요. 이번 강의는 문자 형식 char와 ASCII 코드에 관해 다루기로 할게요.1. ASCII 코드와 char 형식 크기2. 숫자 문자, 소문자, 대문자 ASCII 코드 값 확인3. 문자 리터럴4. char 형식의 한계5. ASCII 코드1. ASCII 코드와 char 형식 크기 C언어는 미국에서 만들었죠. C언어의 문자 표현은 미국 표준 문자인 ASCII 코드를 표현하도록 만들었어요.ASCII , American Standard Code for Information Interchange C언어에서 문자를 표현할 때 char 형식을 사용합니다. char 형식은 미국의 표준 문자인 ASCII 코드를 표현할 수 있는 크기로 설계한 거예요. 영문 알파벳 소문자, 대문자, 숫자..
안녕하세요. 언제나 휴일에 언휴예요. 정수 형식과 표현 범위(char, short, int, long,...)[C언어 동영상 강의]이번 강의에서는 정수 형식과 표현 범위를 알아볼게요.== 다루는 내용1. 정수 형식의 종류2. 정수 형식의 메모리 크기3. 정수 형식의 표현 범위정수 형식의 종류C언어에서 제공하는 정수 형식은 다음처럼 여러 가지 정수 형식을 제공합니다.char, short, int, long, long longC언어에서 제공하는 정수 형식은 음수를 포함하지 않는 정수 형식도 제공합니다. unsigned 키워드가 붙는 형식은 모두 음수를 포함하지 않는 정수 형식입니다.unsigned char, unsigned short, unsigned int, unsigned long, …형식을 unsign..
안녕하세요. 언제나 휴일에 언휴예요. 정수 표현 및 출력 - 10진수, 8진수, 16진수 [C언어] 동영상 강의 이번 강의에서는 정수 표현과 출력을 알아봅시다.== 다루는 내용1. 정수 표현(10진수, 8진수, 16진수)2. 정수 출력 (10진수, 8진수, 16진수)3. 왜 8진수와 16진수 표현과 출력을 제공할까?1. 정수 표현(10진수, 8진수, 16진수)C언어에서 일반적인 수 표현은 당연히 10진수입니다. 8진수를 표현하려면 표현 앞에 숫자 0을 추가하세요.16진수를 표현하려면 표현 앞에 숫자 0과 알파벳 x를 추가하세요.#include //표준 라이브러리 헤더 파일#include //표준 입출력 헤더 파일int main()//프로그램 진입점{ //10진수 출력 printf("%d..
안녕하세요. 언제나 휴일입니다.자신의 정보 출력하기, puts, printf 함수 동영상 강의 첫 번째 프로그램은 자신의 정보를 콘솔 화면에 출력하는 것으로 할게요.== 다루는 내용 1. main - 프로그램의 진입점 함수2. #include //표준 입출력 헤더3. puts 함수 - 라인 단위로 출력4. printf 함수 - 개발자가 원하는 포멧에 맞게 출력1. main – 프로그램의 진입점 함수C언어로 작성한 콘솔 응용은 언제나 main함수부터 시작합니다.이러한 이유로 main 함수를 프로그램 진입점이라고 말합니다.함수 는 특정 기능을 수행할 수 있게 작성한 코드를 말합니다.이번 강의에서 출력에 사용할 putchar와 printf도 함수입니다.다음은 함수 구조입니다.자연스럽게 다룰 내용이므로 한..