<B9CCB5F0BEEE20C1A4BAB8C3B3B8AE2E687770>

Save this PDF as:
 WORD  PNG  TXT  JPG

Size: px
Start display at page:

Download "<B9CCB5F0BEEE20C1A4BAB8C3B3B8AE2E687770>"

Transcription

1 제목 : 미디어정보처리프로그래밍실습모음 일시 : 작성자 : 성용철학번 : 한남대학교정보통신멀티미디어공학부 ( 전자정보통신전공 )

2 미디어정보처리프로그래밍실습숙제설명 X 256 grayscale 의디스플레이프로그램 Resource View 의 menu item 에서 Display 밑에 Raw gray 라마든다음에그림과같이 ID 와 Caption 을넣는다. CTestView 클래스에다음과같이함수를생성한다. void CTestView::OnOpen() // TODO: Add your command handler code here CTestDoc* pdoc=getdocument(); ASSERT_VALID(pDoc); pdoc->choice=1; pdoc->doubleload(); //OnDraw함수에서출력하기위한변수선택 //raw 그레이스케일을읽어들이기위한함수 Invalidate(FALSE); CTestDoc 클래스에그림을읽어들이기위한함수를만든다. void CTestDoc::DoubleLoad() //AfxMessageBox("Gray Scale 을선택하세요."); CFileDialog dlg(true); if(dlg.domodal()==idok) CFile file; file.open(dlg.getfilename(), CFile::modeRead); file.read(m_openimg,sizeof(m_openimg)); file.close();

3 2.256 X 256 Color scale 을읽어들이기 그림과같이 CTestView에컬러를읽어들이기위한함수를만든다. void CTestView::OnCopen() // TODO: Add your command handler code here CTestDoc* pdoc=getdocument(); ASSERT_VALID(pDoc); pdoc->choice=2; pdoc->doubledcload(); Invalidate(FALSE); // 컬러를읽어들이기위한함수 도큐먼트클래스에다음과같은함수를만든다. void CTestDoc::DoubledCLoad() AfxMessageBox("Color 를선택하세요. "); CFileDialog dlg(true); if(dlg.domodal()==idok) CFile file; file.open(dlg.getfilename(), CFile::modeRead);

4 file.read(m_opencimg,sizeof(m_opencimg)); file.close(); 뷰클래스의 Ondraw함수의코드부분이다. choice==1은 GrayScale일경우이고 Choice==2는 Color일경우이다. if(pdoc->choice==1) for (int y=0;y<256;y++) for(int x=0;x<256;x++) pdc->setpixel(x,y,rgb(pdoc->m_openimg[y][x], pdoc->m_openimg[y][x], pdoc->m_openimg[y][x])); if (pdoc->choice==2) for (int y=0;y<256;y++) int z=0; for(int x=0;x<256;x++) z+=3; pdc->setpixel(x,y,rgb(pdoc->m_opencimg[y][z], pdoc->m_opencimg[y][z+1], pdoc->m_opencimg[y][z+2])); 3.256*256 scale 의그레이영상을읽어들이고이영상에일정한양의정수를더한합의영상을처리하고원영상과함께디스플레이하는프로그램리소스뷰에다음과같이다이얼로그박스를만든다

5 다이얼로그박스에대한클래스를생성한다. View 클래스에 OnSumConst 함수를만든다음다음과같이코딩한다. void CTestView::OnSumConst() // TODO: Add your command handler code here CTestDoc* pdoc=getdocument(); ASSERT_VALID(pDoc); pdoc->choice=3; int Temp; UpdateData(); if(m_dlgconst.domodal()==idok) // 다이얼로그박스에대한이벤트 Temp=m_dlgConst.m_Const; int data=0; for(int x=0; x<256; x++) for(int y=0; y<256; y++) data=pdoc->m_openimg[x][y] + Temp; if(data>255) pdoc->m_resultimg[x][y]=255; else pdoc->m_resultimg[x][y]=data; Invalidate(FALSE);

6 4. 두영상을더하는처리와그결과를원영상과함께출력하는프로그램 뷰클래스에다음과같이 OnSumImage 함수를만든다. void CTestView::OnSumImage() // TODO: Add your command handler code here int data=0; CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdoc->secfileload(); // 두개의파일을순서대로불러들이기위한코드 pdoc->choice=4; for(int x=0; x<256; x++) for(int y=0; y<256; y++) pdoc->m_imagebuffer1[x][y]+pdoc->m_imagebuffer2[x][y]; if(data>255) pdoc->m_resultimg[x][y]=255; else pdoc->m_resultimg[x][y]=data; pdoc->m_openimg[x][y]=data; Invalidate(FALSE); 도큐먼트쿨래스에파일을읽어들이기위한 SecFileLoad() 함수를만든다. void CTestDoc::SecFileLoad() AfxMessageBox("Select First Image"); CFileDialog dlg(true); if(dlg.domodal()==idok) CFile file; file.open(dlg.getfilename(), CFile::modeRead); file.read(m_imagebuffer1,sizeof(m_imagebuffer1)); file.close();

7 //Second Image Load AfxMessageBox("Select second Image"); CFileDialog dlg2(true); if(dlg2.domodal()==idok) CFile file; file.open(dlg2.getfilename(), CFile::modeRead); file.read(m_imagebuffer2,sizeof(m_imagebuffer2)); file.close(); 5. 엠보싱효과 3X3 컨볼루션마스크를읽어들이는다이얼로그박스를만들고정수데이터를입력받아엠보싱효과를내는프로그램다이얼로그박스를다음과같이디자인한다. edit 박스에대해변수를설정한다. ClassWizard를통해새로운클래스로등록한다. ClassWizard에서 edit 박스를통해입력받는변수에대한속성과변수명설정한다. 뷰클래스에다음과같이코딩한다. void CTestView::OnEmbossing() CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); int t1,t2; UpdateData(); if(m_ems.domodal()==idok) t1=m_ems.m_embos1,t2=m_ems.m_embos2;

8 if(t1==0) t1=-1,t2=1; int centervalue1=0; int sum=0; unsigned char m_tmpimg[258][258]; int mask1[3][3]= t1,0,0, 0,0,0, 0,0,t2; for(int k=1; k<257; k++) for(int l=1; l<257; l++) m_tmpimg[k][l]=pdoc->m_openimg[k-1][l-1]; for(int row=0; row<256; row++) for(int column=0; column<256; column++) for(int i=0; i<3; i++) for(int j=0; j<3; j++) centervalue1+=m_tmpimg[i+row][j+column]*mask1[i][j]; sum=abs(centervalue1+= 128); if(sum>255)sum=255; pdoc->m_resultimg[row+1][column+1]=(unsigned char)sum; centervalue1=0; sum=0; UpdateData(FALSE); pdoc->choice=4; Invalidate(FALSE);

9 6. 소벨윤곽선검출기 다이얼로그박스에다음과같이디자인하고새로운클래스를추가한다. 각에디트박스마다변수를할당한다. 뷰클래스에다음과같이코딩한다. void CTestView::OnSobel() // TODO: Add your command handler code here CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdoc->sobel(); // 소벨연산을하는함수이다. pdoc->choice=3; Invalidate(FALSE); 도큐먼트클래스에다음과같이코딩한다 void CTestDoc::Sobel() int e1,e2,e3,w1,w2,w3; if(m_dlgsobel.domodal()==idok) e1=m_dlgsobel.m_de1, e2=m_dlgsobel.m_de2,e3=m_dlgsobel.m_de3, w1=m_dlgsobel.m_dw1, w2=m_dlgsobel.m_dw2,w3=m_dlgsobel.m_dw3 ; if (e1==0) // 상수를입력하지않을경우디폴트로하기위한처리 e1=1, e2=2, e3=1,w1=1,w2=2,w3=1; int centervalue1=0; int centervalue2=0; int sum=0; unsigned char m_tmpimg[258][258];

10 int mask1[3][3]= 0-e1,0,e1, 0-e2,0,e2, 0-e3,0,e3; int mask2[3][3]= w1,w2,w3, 0,0,0, 0-w1,0-w2,0-w3; for(int k=1; k<257; k++) for(int l=1; l<257; l++) m_tmpimg[k][l]=m_openimg[k-1][l-1]; for(int row=0; row<256; row++) for(int column=0; column<256; column++) for(int i=0; i<3; i++) for(int j=0; j<3; j++) centervalue1 += m_tmpimg[i+row][j+column]*mask1[i][j]; centervalue2 += m_tmpimg[i+row][j+column]*mask2[i][j]; sum=abs(centervalue1)+abs(centervalue2); if(sum>255)sum=255; m_resultimg[row+1][column+1]=(unsigned char)sum; centervalue1=0; centervalue2=0; sum=0;

11 7. 샤프닝 위와동일한과정을거쳐새로운클래스와다이얼로그를만든다, 뷰클래스에샤프닝에대한함수를만든다. void CTestView::OnShrp() // TODO: Add your command handler code here CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdoc->sharp(); pdoc->choice=4; Invalidate(FALSE); 도큐먼트클래스에샤프닝을구현할코드를만든다. void CTestDoc::Sharp() int a=0,b=0,c=0,d=0,e=5,f=0,g=0,h=0,i=0 ; int sum=0; if(m_sharp.domodal()==idok) a=m_sharp.m_dlgsh1, b=m_sharp.m_dlgsh2, c=m_sharp.m_dlgsh3, d=m_sharp.m_dlgsh4, e=m_sharp.m_dlgsh5, f=m_sharp.m_dlgsh6, g=m_sharp.m_dlgsh7, h=m_sharp.m_dlgsh8, i=m_sharp.m_dlgsh9; if(e==0) b=-1,d=-1,e=5,f=-1,h=-1;

12 int mask[3][3]= a,b,c, d,e,f, g,h,i; for(int row=0; row<255; row++) for(int column=0; column<255; column++) for(int i=0; i<3; i++) for(int j=0; j<3; j++) sum += m_openimg[i+row][j+column]*(mask[i][j]); if(sum<0)sum=0; else if(sum>255)sum=255; m_resultimg[row+1][column+1]=(unsigned char)sum; sum=0; 8. Affine 변환을수행하는프로그램전의과정들과같이다이얼로그와새로운클래스를추가하고변수를할당한다.

13 뷰클래스에다음과같이코딩한다. void CTestView::OnAffine() // TODO: Add your command handler code here CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdoc->affine(); zoom=1; Invalidate(FALSE); 도큐먼트클래스에다음과같이코딩한다. void CTestDoc::Affine() int Shift_X=0,Shift_Y=0,Roat=0,Size_X=0,Size_Y=0; if(dlgaffine.domodal()==idok) Shift_X=dlgAffine.m_Aff1, Shift_Y=dlgAffine.m_Aff2, Roat=dlgAffine.m_Aff3,Size_X=dlgAffine.m_Aff4, Size_Y=dlgAffine.m_Aff5; // 회전 if(roat>0) double i=0,j=0,m=0,n=0,x=0,y=0; int y=0,x=0,left=0,right=0; double seta=0,pi= ; double in,k; in=roat; if(in==360) // 입력되는각이 360도일경우 k=180/in; else if (in>180) // 입력되는각이 180도를넘을경우 k=(-180/(in-180)); else // 입력되는각이 180도가안되는경우

14 k=180/in; seta=pi/k; for(y=0; y<256; y++) for(x=0; x<256; x++) i=-1*((y-128)*sin(seta))+128; j=(x-128)*cos(seta); X=(i+j); if(x>255)x=255; if(x<0)x=0; m=((x-128)*sin(seta))+128; n=(y-128)*cos(seta); Y=(m+n); if(y>255)y=255; if(y<0)y=0; m_resultimg[(int)y][(int)x]=m_openimg[y][x]; // 확대 if(size_x>0) int i=0,j=0,y=0,x=0,sum=0; int m_inx=size_x, m_iny=size_y ; for(y=0; y<256; y++) for(x=0; x<256; x++) i=y*m_iny; j=x*m_inx; m_scaleimg[i][j]=m_resultimg[y][x];

15 //*/////////////// 평균값을이용한보간법 /////////////////// //step1 y=0; x=0; for(i=1; i<512; i+=2) for(j=1; j<512; j+=2) sum+=m_scaleimg[y][(x)]; sum+=m_scaleimg[y][(x)+2]; sum+=m_scaleimg[y+2][(x)]; sum+=m_scaleimg[y+2][(x)+2]; sum=sum/4; m_scaleimg[i][(j)]=sum; sum=0; x+=2; x=0; y+=2; //step2 y=0; x=0; for(i=0; i<512; i+=2) for(j=1; j<512; j+=2) sum+=m_scaleimg[y][(x)]; sum+=m_scaleimg[y][(x)+2]; sum=sum/2; m_scaleimg[i][(j)]=sum; sum=0; x+=2; x=0; y+=2; //step3 y=0; x=0; for(j=0; j<512; j+=2) for(i=1; i<512; i+=2) sum+=m_scaleimg[y][(x)];

16 sum+=m_scaleimg[y+2][(x)]; sum=sum/2; m_scaleimg[i][(j)]=sum; sum=0; y+=2; y=0; x+=2; 9.PPM Image file의 Load /Store 뷰클래스에다음과같이코딩한다. void CTestView::OnGet_Result() // TODO: Add your command handler code here CTestDoc* pdoc = GetDocument(); ASSERT_VALID(pDoc); pdoc->ppmload(); pdoc->get_ppm(); pdoc->choice=5; Invalidate(FALSE); 도큐먼트크래스에파일을읽어오는함수와파일의헤더와이미지를분리하여정보를얻어내는부분을코딩한다. void CTestDoc::PpmLoad() //PPM 이미지파일을읽어온다. CFileDialog dlg(true); if(dlg.domodal()==idok) CFile file; file.open(dlg.getfilename(), CFile::modeRead); file.read(m_opentotal,sizeof(m_opentotal)); file.close(); void CTestDoc::Get_PPM() //PPM 파일의영상정보를갖고온다.

17 int temp1=m_opentotal[3]-'0'; int temp2=m_opentotal[4]-'0'; int temp3=m_opentotal[5]-'0'; m_x=(temp1*100)+(temp2*10)+temp3; //x축픽셀값 int temp4=m_opentotal[7]-'0'; int temp5=m_opentotal[8]-'0'; int temp6=m_opentotal[9]-'0'; m_y=(temp4*100)+(temp5*10)+temp6; //y축픽셀값 int t=15; for(int y=0; y<m_y; y++) // 이미지부분에대한정보추출 for (int x=0; x<m_x*3; x+=3) m_openppm[y][x]=m_opentotal[t++]; m_openppm[y][x+1]=m_opentotal[t++]; m_openppm[y][x+2]=m_opentotal[t++]; 뷰문서의 OnDraw() 함수에다음을코딩한다. if(choice==5) int RV=0,GV=1,BV=2; for (int y=0;y<pdoc->m_y;y++) for(int x=0;x<pdoc->m_y;x++) pdc->setpixel(x,y,rgb(pdoc->m_openppm[y][rv+=3], pdoc->m_openppm[y][gv+=3], pdoc->m_openppm[y][bv+=3])); RV=0;GV=1;BV=2; pdoc->store_result();

18

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 03 장 영상처리를위한 Visual C++ 디지털영상파일포맷 MFC AppWizard[exe] 를이용한 MFC 프로젝트작성 MFC 를이용한영상처리입. 출력프로그램작성 MFC 를이용한영상축소 MFC 를이용한영상확대 MFC 를이용한양자화영상처리 한빛미디어 ( 주 ) 학습목표 3 장. 영상처리를위한 Visual C++ 영상처리에사용되는 RAW 파일포맷을이해한다.

More information

歯Lecture2.PDF

歯Lecture2.PDF VISUAL C++/MFC Lecture 2? Update Visual C ++/MFC Graphic Library OpenGL? Frame OpenGL 3D Graphic library coding CLecture1View? OpenGL MFC coding Visual C++ Project Settings Link Tap Opengl32lib, Glu32lib,

More information

윈도우 프로그래밍의 개념

윈도우 프로그래밍의 개념 제 10 장다양한뷰클래스 10.1 도큐먼트 10.2 파일입출력 10.3 다양한뷰클래스 실습 10-1 Formview를이용한문자를출력하고파일입출력 10.4 분할윈도우 실습 10-2 정적분할윈도우를이용한학생정보프로그램 10.5 다중뷰 실습 10-3 다중뷰만들기 CDocument 클래스 데이터를관리하는클래스 OnNewDocument() 함수 새로운도큐먼트를만드는기능

More information

ch3.hwp

ch3.hwp 미디어정보처리 (c) -4 한남대 정보통신멀티미디어학부 MCCLab. - -...... (linear filtering). Z k = n i = Σn m Σ j = m M ij I ji 컨볼루션 영역창 I I I I 3 I 4 I 5 I 6 I 7 I 8 x 컨볼루션 마스크 M M M M 3 M 4 M 5 M 6 M 7 M 8 I 입력 영상 Z 4 = 8 k

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

히스토그램구하기 사전준비 : 히스토그램을저장할메모리가필요함 필요한메모리개수 à 전체영상의픽셀은그값이 0 ~ 255이므로 256 개의메모리필요함 영상을구성하는픽셀의개수는매우크므로메모리형식은 unsigned long으로해야함 ( unsigned 란 +/- 를고려하지않는다는

히스토그램구하기 사전준비 : 히스토그램을저장할메모리가필요함 필요한메모리개수 à 전체영상의픽셀은그값이 0 ~ 255이므로 256 개의메모리필요함 영상을구성하는픽셀의개수는매우크므로메모리형식은 unsigned long으로해야함 ( unsigned 란 +/- 를고려하지않는다는 디지털영상처리 실습 : 히스토그램 방송영상미디어과 히스토그램 (Histogram) 히스토그램이란? n 디지털영상을구성하는화소는명도값을나타내는데어떤명도값을가진픽셀수가몇개있는가를나타내는함수 n 화소의명도값은 0~255 인데각명도값에해당하는화소의수를나타내는함수 히스토그램구하는방법 4 4 3 3 픽셀갯수 6 5 4 4 3 3 4 1 2 3 2

More information

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070> #include "stdafx.h" #include "Huffman.h" 1 /* 비트의부분을뽑아내는함수 */ unsigned HF::bits(unsigned x, int k, int j) return (x >> k) & ~(~0

More information

untitled

untitled while do-while for break continue while( ) ; #include 0 i int main(void) int meter; int i = 0; while(i < 3) meter = i * 1609; printf("%d %d \n", i, meter); i++; return 0; i i< 3 () 0 (1)

More information

C 언어 프로그래밊 과제 풀이

C 언어 프로그래밊 과제 풀이 과제풀이 (1) 홀수 / 짝수판정 (1) /* 20094123 홍길동 20100324 */ /* even_or_odd.c */ /* 정수를입력받아홀수인지짝수인지판정하는프로그램 */ int number; printf(" 정수를입력하시오 => "); scanf("%d", &number); 확인 주석문 가필요한이유 printf 와 scanf 쌍

More information

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CC0E7B0EDB0FCB8AE5C53746F636B5F4D616E D656E74732E637070>

<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CC0E7B0EDB0FCB8AE5C53746F636B5F4D616E D656E74732E637070> 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include "QuickSort.h" 7 using namespace std; 8 9 10 Node* Queue[100]; // 추가입력된데이터를저장하기위한 Queue

More information

DocsPin_Korean.pages

DocsPin_Korean.pages Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2

목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2 제 7 장. 배열 목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2 배열의개요 배열 (array) 의정의 같은데이터형을가지는여러개의변수를하나의배열명으로공유 기억공간을순차적으로할당받아사용하는것 [ 7.1] C 3 배열의개요 배열 (array) 의필요성 같은데이터형의여러개의변수간결하게선언 기억공간을순차적으로변수의값들을저장, 관리

More information

<4D F736F F F696E74202D20C1A C0E520B5B5C5A5B8D5C6AE20C6C4C0CF20C0D4C3E2B7C220B9D720B4D9BEE7C7D120BAE420C5ACB7A1BDBA2E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A C0E520B5B5C5A5B8D5C6AE20C6C4C0CF20C0D4C3E2B7C220B9D720B4D9BEE7C7D120BAE420C5ACB7A1BDBA2E BC8A3C8AF20B8F0B5E55D> 제 10 장다양한뷰클래스 10.1 도큐먼트 10.2 파일입출력 10.3 다양한뷰클래스 실습 10-1 Formview를이용한문자를출력하고파일입출력 10.4 분할윈도우 실습 10-2 정적분할윈도우를이용한학생정보프로그램 10.5 다중뷰 실습 10-3 다중뷰만들기 도큐먼트 CDocument 클래스 데이터를관리하는클래스 OnNewDocument() 함수 새로운도큐먼트를만드는기능

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx 2018 학년도 1 학기 JAVA 프로그래밍 II 514760-1 2018 년봄학기 5/10/2018 박경신 Lab#1 (ImageTest) Lab#1 은영상파일 (Image) 을읽어서정보를출력 Java Tutorials Lesson: Working with Images https://docs.oracle.com/javase/tutorial/2d/images/index.html

More information

17장 클래스와 메소드

17장 클래스와 메소드 17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는

More information

졸업논문 되어자전거의현재정보를알려주게된다 시스템의동작절차그림 3-1 리더에서의자전거정보조회동작절차위에동작절차에서알수있듯이리더에서하는동작절차에서는크게 부분으로나눌수있다 리더에서에너지를보내 로부터데이터가전송되면자전거의정보를확인한다 여기서도난당한자전거인

졸업논문 되어자전거의현재정보를알려주게된다 시스템의동작절차그림 3-1 리더에서의자전거정보조회동작절차위에동작절차에서알수있듯이리더에서하는동작절차에서는크게 부분으로나눌수있다 리더에서에너지를보내 로부터데이터가전송되면자전거의정보를확인한다 여기서도난당한자전거인 신에서시작되었다 시스템은리더 정보를저장 하고리더와데이터를교환하는 리더와기업용 사람들이점점더건강을생각하게되고기름값또한고유가의시대로접어들면서자동차의비중이점점 응용프로그램사이에서중계하는미들웨어로구성되어있다 줄어들고있다 자동차의비중이줄어들면서자전거 시스템은 동호회 자전거출 퇴근등자전거를타는사람들은매년꾸준히증가하고있다 이에따라자전거도난사건또한매년증가추세에있다 현재자전거의도난방지를위해다양한자물쇠나잠금장치등이개발되어나오고있지만자전거도난사건자체는크게줄어들지않고있는게현실이다

More information

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>

< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074> Chap #2 펌웨어작성을위한 C 언어 I http://www.smartdisplay.co.kr 강의계획 Chap1. 강의계획및디지털논리이론 Chap2. 펌웨어작성을위한 C 언어 I Chap3. 펌웨어작성을위한 C 언어 II Chap4. AT89S52 메모리구조 Chap5. SD-52 보드구성과코드메모리프로그래밍방법 Chap6. 어드레스디코딩 ( 매핑 ) 과어셈블리어코딩방법

More information

Microsoft PowerPoint - hci2-lecture7.ppt

Microsoft PowerPoint - hci2-lecture7.ppt Overview 파일입출력 CFile 클래스를이용한파일입출력기법 도큐먼트 / 뷰구조이해 CArchive 클래스를이용한직렬화기법 HCI Programming 2 (321190) 2007 년가을학기 11/5/2007 박경신 2 파일입출력방법 일반파일입출력 CFile ( 파생 ) 클래스 Read(), Write() 등의함수이용 직렬화 (serialization)

More information

2015 개정교육과정에따른정보과평가기준개발연구 연구책임자 공동연구자 연구협력관

2015 개정교육과정에따른정보과평가기준개발연구 연구책임자 공동연구자 연구협력관 2015 개정교육과정에따른정보과평가기준개발연구 연구책임자 공동연구자 연구협력관 2015 개정교육과정에따른정보과평가기준개발연구 연구협력진 머리말 연구요약 차례 Ⅰ 서론 1 Ⅱ 평가준거성취기준, 평가기준, 성취수준, 예시평가도구개발방향 7 Ⅲ 정보과평가준거성취기준, 평가기준, 성취수준, 예시평가도구의개발 25 Ⅳ 정보과평가준거성취기준, 평가기준, 성취수준, 예시평가도구의활용방안

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 4 강. 함수와라이브러리함수목차 함수오버로딩 디폴트매개변수 라이브러리함수 clock 함수 난수발생 비버퍼형문자입력 커서이동 프로그래밍문제 1 /21 4 강. 함수와라이브러리함수함수오버로딩 2 /21 함수오버로딩 동일한이름의함수를여러개만들수있음 함수프로파일이달라야함 함수프로파일

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

106 107, ( ),, ( ), 3, int kor[5]; int eng[5]; int Microsoft Windows 4 (ANSI C2 ) int kor[5] 20 # define #define SIZE 20 int a[10]; char c[10]; float

106 107, ( ),, ( ), 3, int kor[5]; int eng[5]; int Microsoft Windows 4 (ANSI C2 ) int kor[5] 20 # define #define SIZE 20 int a[10]; char c[10]; float Part 2 31 32 33 106 107, ( ),, ( ), 3, int kor[5]; int eng[5]; int Microsoft Windows 4 (ANSI C2 ) int kor[5] 20 # define #define SIZE 20 int a[10]; char c[10]; float f[size]; /* 10 /* c 10 /* f 20 3 1

More information

윈도우시스템프로그래밍

윈도우시스템프로그래밍 객체지향프로그래밍응용 Chap 4. 대화상자와컨트롤 (#1) 2013.09.27. 오병우 컴퓨터공학과금오공과대학교 Control 들을가진윈도우 Dialog 개요 사용자의입력을받기위한 Object 의집합 종류 프로그램수행도중사용자의입력이필요할때다이얼로그박스출력 다이얼로그박스는사용자로부터입력받은데이터를메인루틴에넘기고소멸 Modal Dialog Parent window

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 15 장프로젝트 _ 웨이브렛변환 웨이브렛변환의개념 웨이브렛변환을위한 MFC 설정하기 파일입. 출력설정하기 웨이브렛변환을위한대화상자설정하기 순방향웨이브렛변환구현하기 역방향웨이브렛변환구현하기 한빛미디어 ( 주 ) 15 장. 프로젝트 _ 웨이브렛변환 학습목표 웨이브렛변환의개념을소개한다. 순방향웨이브렛변환프로그램을실습한다. 역방향웨이브렛변환프로그램을실습함다. 2 Section

More information

슬라이드 1

슬라이드 1 마이크로컨트롤러 2 (MicroController2) 2 강 ATmega128 의 external interrupt 이귀형교수님 학습목표 interrupt 란무엇인가? 기본개념을알아본다. interrupt 중에서가장사용하기쉬운 external interrupt 의사용방법을학습한다. 1. Interrupt 는왜필요할까? 함수동작을추가하여실행시키려면? //***

More information

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver. 2.0 jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 이중포인터란무엇인가? 포인터배열 함수포인터 다차원배열과포인터 void 포인터 포인터는다양한용도로유용하게활용될수있습니다. 2 이중포인터

More information

<4D F736F F F696E74202D20C1A63134C0E520C6F7C0CEC5CD5FC8B0BFEB>

<4D F736F F F696E74202D20C1A63134C0E520C6F7C0CEC5CD5FC8B0BFEB> 쉽게풀어쓴 C 언어 Express 제 14 장포인터활용 이중포인터 이중포인터 (double pointer) : 포인터를가리키는포인터 int i = 10; int *p = &i; int **q = &p; // i 는 int 형변수 // p 는 i 를가리키는포인터 // q 는포인터 p 를가리키는이중포인터 이중포인터 이중포인터의해석 이중포인터 // 이중포인터프로그램

More information

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.

2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android 2 xmlns:tools=http://schemas.android. 10 차시파일처리 1 학습목표 내장메모리의파일을처리하는방법을배운다. SD 카드의파일을처리하는방법을배운다. 2 확인해볼까? 3 내장메모리파일처리 1) 학습하기 [ 그림 10-1] 내장메모리를사용한파일처리 2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1

More information

Microsoft PowerPoint - Chapter 1-rev

Microsoft PowerPoint - Chapter 1-rev 1.C 기반의 C++ part 1 스트림입출력 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 스트림입출력 Jong Hyuk Park printf 와 scanf 출력의기본형태 : 과거스타일! iostream.h 헤더파일의포함

More information

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2 제 8 장. 포인터 목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2 포인터의개요 포인터란? 주소를변수로다루기위한주소변수 메모리의기억공간을변수로써사용하는것 포인터변수란데이터변수가저장되는주소의값을 변수로취급하기위한변수 C 3 포인터의개요 포인터변수및초기화 * 변수데이터의데이터형과같은데이터형을포인터 변수의데이터형으로선언 일반변수와포인터변수를구별하기위해

More information

Microsoft PowerPoint - additional01.ppt [호환 모드]

Microsoft PowerPoint - additional01.ppt [호환 모드] 1.C 기반의 C++ part 1 함수 오버로딩 (overloading) 디폴트매개변수 (default parameter) 인-라인함수 (in-line function) 이름공간 (namespace) Jong Hyuk Park 함수 Jong Hyuk Park 함수오버로딩 (overloading) 함수오버로딩 (function overloading) C++ 언어에서는같은이름을가진여러개의함수를정의가능

More information

Microsoft PowerPoint _파일입출력.ppt

Microsoft PowerPoint _파일입출력.ppt 8 장. 파일입출력 파일입출력연속화 (serialization) 아카이브 (archive) 객체 Paint4.dsw Paint5.dsw 레지스트리 (registry) 오목게임 순천향대학교정보기술공학부이상정 1 파일입출력 순천향대학교정보기술공학부이상정 2 파일입출력소개 파일입출력 프로그램에서만든정보를하드디스크의파일로저장하는방법 MFC 에서사용하는파일입출력방법인연속화

More information

C++ Programming

C++ Programming C++ Programming 연산자다중정의 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 연산자다중정의 C++ 스타일의문자열 2 연산자다중정의 연산자다중정의 단항연산자다중정의 이항연산자다중정의 cin, cout 그리고 endl C++ 스타일의문자열 3 연산자다중정의 연산자다중정의 (Operator

More information

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp

4.18.국가직 9급_전산직_컴퓨터일반_손경희_ver.1.hwp 2015년도 국가직 9급 컴퓨터 일반 문 1. 시스템 소프트웨어에 포함되지 않는 것은? 1 1 스프레드시트(spreadsheet) 2 로더(loader) 3 링커(linker) 4 운영체제(operating system) - 시스템 소프트웨어 : 운영체제, 데이터베이스관리 프로그램,, 컴파일러, 링커, 로더, 유틸리티 소프트웨 어 등 - 스프레드시트 : 일상

More information

03장.스택.key

03장.스택.key ---------------- DATA STRUCTURES USING C ---------------- 03CHAPTER 1 ? (stack): (LIFO:Last-In First-Out) 2 : top : ( index -1 ),,, 3 : ( ) ( ) -> ->. ->.... 4 Stack ADT : (LIFO) : init():. is_empty():

More information

Programming hwp

Programming hwp 6 장 MDI 응용프로그램 MDI 응용프로그램의형태 응용프로그램마법사 (AppWizard) 가생성하는 MDI 응용프로그램의주실행창을나타내는객체는 CFrameWnd에서파생된클래스인스턴스이며, 기본외형은아래그림과같이메뉴와툴바를포함한다. 문서내용을보여주는뷰들은이창의클라이언트영역안에자식창으로만들어지는윈도우들을통해표시된다. 주실행창의클라이언트영역안에는여러개의자식창이만들어질수있으며,

More information

C++ Programming

C++ Programming C++ Programming 예외처리 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 예외처리 2 예외처리 예외처리 C++ 의예외처리 예외클래스와객체 3 예외처리 예외를처리하지않는프로그램 int main() int a, b; cout > a >> b; cout

More information

Microsoft PowerPoint - IP11.pptx

Microsoft PowerPoint - IP11.pptx 열한번째강의카메라 1/43 1/16 Review 2/43 2/16 평균값 중간값 Review 3/43 3/16 캐니에지추출 void cvcanny(const CvArr* image, CvArr* edges, double threshold1, double threshold2, int aperture_size = 3); aperture_size = 3 aperture_size

More information

LCD Display

LCD Display LCD Display SyncMaster 460DRn, 460DR VCR DVD DTV HDMI DVI to HDMI LAN USB (MDC: Multiple Display Control) PC. PC RS-232C. PC (Serial port) (Serial port) RS-232C.. > > Multiple Display

More information

Microsoft PowerPoint - [2009] 02.pptx

Microsoft PowerPoint - [2009] 02.pptx 원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include

More information

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4

0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4 Introduction to software design 2012-1 Final 2012.06.13 16:00-18:00 Student ID: Name: - 1 - 0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using

More information

Visual C++의 개요

Visual C++의 개요 2.1 MFC 의개요 2.2 MFC 프로그램의구조 2.3 Visual C++ 의시작실습 2-1 Application Wizard 익히기 2.4 SDI 템플릿 2.5 MDI 템플릿 2.6 MFC 애플리케이션아키텍처실습 2-2 간단한 MFC 프로젝트만들기 MFC 의개요 MFC 윈도우애플리케이션을생성하기위해만들어진 C++ 클래스라이브러리 애플리케이션프레임워크를제공

More information

untitled

untitled MFC MFC MFC AppWizard 來 MFC MFC 類 了 類 Document/View MFC Visual C++ AppWizard MFC 不 力 亮 來 不 Document View 不 列 AppWizard View 類 CEditView 列 列 說 行 不 了 Document/View MFC Application Framework 靈 OLE Document

More information

K&R2 Reference Manual 번역본

K&R2 Reference Manual 번역본 typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct

More information

C 프로그래밊 개요

C 프로그래밊 개요 함수 (2) 2009 년 9 월 24 일 김경중 공지사항 10 월 1 일목요일수업휴강 숙제 #1 마감 : 10 월 6 일화요일 기초 함수를만들어라! 입력 함수 ( 기능수행 ) 반환 사용자정의함수 정의 : 사용자가자신의목적에따라직접작성한함수 함수의원형 (Function Prototype) + 함수의본체 (Function Body) : 함수의원형은함수에대한기본적정보만을포함

More information

untitled

untitled int i = 10; char c = 69; float f = 12.3; int i = 10; char c = 69; float f = 12.3; printf("i : %u\n", &i); // i printf("c : %u\n", &c); // c printf("f : %u\n", &f); // f return 0; i : 1245024 c : 1245015

More information

Chapter 4. LISTS

Chapter 4. LISTS 6. 동치관계 (Equivalence Relations) 동치관계 reflexive, symmetric, transitive 성질을만족 "equal to"(=) 관계는동치관계임. x = x x = y 이면 y = x x = y 이고 y = z 이면 x = z 동치관계를이용하여집합 S 를 동치클래스 로분할 동일한클래스내의원소 x, y 에대해서는 x y 관계성립

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Web server porting 2 Jo, Heeseung Web 을이용한 LED 제어 Web 을이용한 LED 제어프로그램 web 에서데이터를전송받아타겟보드의 LED 를조작하는프로그램을작성하기위해다음과같은소스파일을생성 2 Web 을이용한 LED 제어 LED 제어프로그램작성 8bitled.html 파일을작성 root@ubuntu:/working/web# vi

More information

그래픽 프로그래밍

그래픽 프로그래밍 제 13 장그래픽프로그래밍 13.1 베지어곡선 실습 13-1 알고리즘을통한베지어곡선그리기 실습 13-2 컨트롤포인트이동및베지어곡선 해상도설정하기 그래픽프로그래밍 베지어곡선 베지어곡선알고리즘은곡선을생성하는대표적이고기본이되는알고리즘이다. MFC 에서의베지어곡선함수 BOOL PolyBezier(const POINT* lppoints, int ncount); lppoints

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

chap x: G입력

chap x: G입력 재귀알고리즘 (Recursive Algorithms) 재귀알고리즘의특징 문제자체가재귀적일경우적합 ( 예 : 피보나치수열 ) 이해하기가용이하나, 비효율적일수있음 재귀알고리즘을작성하는방법 재귀호출을종료하는경계조건을설정 각단계마다경계조건에접근하도록알고리즘의재귀호출 재귀알고리즘의두가지예 이진검색 순열 (Permutations) 1 장. 기본개념 (Page 19) 이진검색의재귀알고리즘

More information

Microsoft PowerPoint _대화상자.ppt

Microsoft PowerPoint _대화상자.ppt 7 장. 대화상자 모달대화상자 (modal dialog box) DDX (Dialog Data Exchange) 모델리스대화상자 (modeless dialog box) 공통대화상자의사용 Paint3.dsw 순천향대학교정보기술공학부이상정 1 모달대화상자 (modal dialog box) 순천향대학교정보기술공학부이상정 2 대화상자의종류 모달대화상자 (modal

More information

윈도우즈프로그래밍(1)

윈도우즈프로그래밍(1) 제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장

More information

Chapter 4. LISTS

Chapter 4. LISTS 연결리스트의응용 류관희 충북대학교 1 체인연산 체인을역순으로만드는 (inverting) 연산 3 개의포인터를적절히이용하여제자리 (in place) 에서문제를해결 typedef struct listnode *listpointer; typedef struct listnode { char data; listpointer link; ; 2 체인연산 체인을역순으로만드는

More information

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

[제1강] 텍스트를 입력하세요

[제1강] 텍스트를  입력하세요 제 10 강 폼뷰 (1) Visual C++ 프로그래밍 컴퓨터과학과 김강현교수 제 10 강의학습내용 FormView 프로젝트생성리소스편집 / 컨트롤추가멤버변수추가멤버함수추가파일열기와저장파일열기대화상자 학습내용 1 부 FormView 프로젝트생성 Static Text, Edit Control,Spin Control,Button 멤버변수 (Control 형 /Value

More information

슬라이드 1

슬라이드 1 Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치

More information

C 프로그래밊 개요

C 프로그래밊 개요 구조체 2009 년 5 월 19 일 김경중 강의계획수정 일자계획 Quiz 실습보강 5 월 19 일 ( 화 ) 구조체 Quiz ( 함수 ) 5 월 21 일 ( 목 ) 구조체저녁 6 시 5 월 26 일 ( 화 ) 포인터 5 월 28 일 ( 목 ) 특강 (12:00-1:30) 6 월 2 일 ( 화 ) 포인터 Quiz ( 구조체 ) 저녁 6 시 6 월 4 일 ( 목

More information

5.스택(강의자료).key

5.스택(강의자료).key CHP 5: https://www.youtube.com/watch?v=ns-r91557ds ? (stack): (LIFO:Last-In First-Out):. D C B C B C B C B (element) C (top) B (bottom) (DT) : n element : create() ::=. is_empty(s) ::=. is_full(s) ::=.

More information

Chapter #01 Subject

Chapter #01  Subject Device Driver March 24, 2004 Kim, ki-hyeon 목차 1. 인터럽트처리복습 1. 인터럽트복습 입력검출방법 인터럽트방식, 폴링 (polling) 방식 인터럽트서비스등록함수 ( 커널에등록 ) int request_irq(unsigned int irq, void(*handler)(int,void*,struct pt_regs*), unsigned

More information

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout << " 양수입력 : "; cin >> *p; if (*p <= 0) cout << " 양수를입력해야합니다 " << endl; return; 동적할

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout <<  양수입력 : ; cin >> *p; if (*p <= 0) cout <<  양수를입력해야합니다  << endl; return; 동적할 15 장기타주제들 auto_ptr 변환함수 cast 연산자에의한명시적형변환실행시간타입정보알아내기 (RTTI) C++ 프로그래밍입문 1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout > *p; if (*p

More information

Java ...

Java ... 컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.

More information

2. GCC Assembler와 AVR Assembler의차이 A. GCC Assembler 를사용하는경우 i. Assembly Language Program은.S Extension 을갖는다. ii. C Language Program은.c Extension 을갖는다.

2. GCC Assembler와 AVR Assembler의차이 A. GCC Assembler 를사용하는경우 i. Assembly Language Program은.S Extension 을갖는다. ii. C Language Program은.c Extension 을갖는다. C 언어와 Assembly Language 을사용한 Programming 20011.9 경희대학교조원경 1. AVR Studio 에서사용하는 Assembler AVR Studio에서는 GCC Assembler와 AVR Assmbler를사용한다. A. GCC Assembler : GCC를사용하는경우 (WinAVR 등을사용하는경우 ) 사용할수있다. New Project

More information

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F > 10주차 문자 LCD 의인터페이스회로및구동함수 Next-Generation Networks Lab. 5. 16x2 CLCD 모듈 (HY-1602H-803) 그림 11-18 19 핀설명표 11-11 번호 분류 핀이름 레벨 (V) 기능 1 V SS or GND 0 GND 전원 2 V Power DD or V CC +5 CLCD 구동전원 3 V 0 - CLCD 명암조절

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 6 강. 함수와배열, 포인터, 참조목차 함수와포인터 주소값의매개변수전달 주소의반환 함수와배열 배열의매개변수전달 함수와참조 참조에의한매개변수전달 참조의반환 프로그래밍연습 1 /15 6 강. 함수와배열, 포인터, 참조함수와포인터 C++ 매개변수전달방법 값에의한전달 : 변수값,

More information

Microsoft PowerPoint - 07-Data Manipulation.pptx

Microsoft PowerPoint - 07-Data Manipulation.pptx Digital 3D Anthropometry 7. Data Analysis Sungmin Kim SEOUL NATIONAL UNIVERSITY Body 기본정보표시 Introduction 스케일조절하기 단면형상추출 단면정보관리 3D 단면형상표시 2 기본정보표시및스케일조절 UI 및핸들러구성 void fastcall TMainForm::BeginNewProject1Click(TObject

More information

kg242-1.ps

kg242-1.ps 미래, 그리고 사람중심의 제242호 릲우리 구에 전통과 문화의 향 기를 한 데 아우르는 관광벨트가 생깁니다.릳 금정구는 국내 최장 금정산성 과 역사와 전통이 있는 범어사를 중심축으로 스포원과 회동수원 지를 연계하여 관광벨트로 구축 하는 야심찬 계획을 실행에 옮기 고 있다. 오는 2014년까지 모두 156억 2100만원의 예산을 들여 금정산 성과 범어사 구간은

More information

Lab 3. 실습문제 (Single linked list)_해답.hwp

Lab 3. 실습문제 (Single linked list)_해답.hwp Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.

More information

PowerPoint Presentation

PowerPoint Presentation Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음

More information

?

? 01 02 03 04 05 01 02 03 01 02 03 01 02 PART 8 9 10 11 PART 12 14 15 16 17 18 19 20 21 22 23 24 25 PART 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 ppm 50 51 PART 52 54 55 56 57 58

More information

C프로-3장c03逞풚

C프로-3장c03逞풚 C h a p t e r 03 C++ 3 1 9 4 3 break continue 2 110 if if else if else switch 1 if if if 3 1 1 if 2 2 3 if if 1 2 111 01 #include 02 using namespace std; 03 void main( ) 04 { 05 int x; 06 07

More information

슬라이드 1

슬라이드 1 BMP 파일구조 김성영교수 금오공과대학교 컴퓨터공학부 학습목표 BMP 파일의구조및그특징을설명할수있다. 파일헤더및비트맵정보헤더의주요필드를구분하고그역할을설명할수있다. C언어를사용하여 BMP 파일을처리할수있다. 2 BMP 파일구조 File Header (BITMAPFILEHEADER) Bitmap Info. Header (BITMAPINFOHEADER) Headers

More information

본 강의에 들어가기 전

본 강의에 들어가기 전 C 기초특강 종합과제 과제내용 구조체를이용하여교과목이름과코드를파일로부터입력받아관리 구조체를이용하여학생들의이름, 학번과이수한교과목의코드와점수를파일로부터입력 학생개인별총점, 평균계산 교과목별이수학생수, 총점및평균을계산 결과를파일에저장하는프로그램을작성 2 Makefile OBJS = score_main.o score_input.o score_calc.o score_print.o

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 5 장생성자와접근제어 1. 객체지향기법을이해한다. 2. 클래스를작성할수있다. 3. 클래스에서객체를생성할수있다. 4. 생성자를이용하여객체를초기화할수 있다. 5. 접근자와설정자를사용할수있다. 이번장에서만들어볼프로그램 생성자 생성자 (constructor) 는초기화를담당하는함수 생성자가필요한이유 #include using namespace

More information

LIDAR와 영상 Data Fusion에 의한 건물 자동추출

LIDAR와 영상 Data Fusion에 의한 건물 자동추출 i ii iii iv v vi vii 1 2 3 4 Image Processing Image Pyramid Edge Detection Epipolar Image Image Matching LIDAR + Photo Cross correlation Least Squares Epipolar Line Matching Low Level High Level Space

More information

PowerPoint Presentation

PowerPoint Presentation public class SumTest { public static void main(string a1[]) { int a, b, sum; a = Integer.parseInt(a1[0]); b = Integer.parseInt(a1[1]); sum = a + b ; // 두수를더하는부분입니다 System.out.println(" 두수의합은 " + sum +

More information

가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을

가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을 CHAPTER 5 도트매트릭스제어하기 가. 도트매트릭스제어하기 가. 도트매트릭스제어하기 단일 LED와는다르게도트매트릭스를구동시는구동전류가프로세서에서출력되는전류보다사용량을더많이필요하기때문에 TTL 계열의 IC로구동시키기에는무리가따른다. 이러한문제를해결하기위해서사용전압, 전류정격이높은달링턴트랜지스터가어레이형태로들어있는 ULN2803을이용한다. 이 IC에는 8개의

More information

PowerPoint Template

PowerPoint Template 16-1. 보조자료템플릿 (Template) 함수템플릿 클래스템플릿 Jong Hyuk Park 함수템플릿 Jong Hyuk Park 함수템플릿소개 함수템플릿 한번의함수정의로서로다른자료형에대해적용하는함수 예 int abs(int n) return n < 0? -n : n; double abs(double n) 함수 return n < 0? -n : n; //

More information

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터 - Part2-3 3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터 3.1 포인터란 ü ü ü. ü. ü. ü ( ) ? 3.1 ü. ü C ( ).? ü ü PART2-4 ü ( ) PART3-4 3.2 포인터변수의선언과사용 3.2 포인터 변수의 선언과 사용 (1/8) 포인터 변수의

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor

Microsoft PowerPoint - 08-C-App-19-Quick-Preprocessor 19. 전처리와분할컴파일 순천향대학교컴퓨터학부이상정 1 학습내용 전처리명령어 #include #define 기호상수 const 분할컴파일 순천향대학교컴퓨터학부이상정 2 전처리과정 전처리 (preprocessor) 전처리명령어는 # 기호로시작 #incldue #define 순천향대학교컴퓨터학부이상정 3 #include (1) 지정된파일을프로그램에삽입 꺽쇠괄호는포함할파일을컴파일러에설정되어있는특정디렉토리에서검색

More information

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다. Eclipse 개발환경에서 WindowBuilder 를이용한 Java 프로그램개발 이예는 Java 프로그램의기초를이해하고있는사람을대상으로 Embedded Microcomputer 를이용한제어시스템을 PC 에서 Serial 통신으로제어 (Graphical User Interface (GUI) 환경에서 ) 하는프로그램개발예를설명한다. WindowBuilder:

More information

Microsoft PowerPoint - chap06-5 [호환 모드]

Microsoft PowerPoint - chap06-5 [호환 모드] 2011-1 학기프로그래밍입문 (1) chapter 06-5 참고자료 변수의영역과데이터의전달 박종혁 Tel: 970-6702 Email: jhpark1@seoultech.ac.kr h k 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- ehanbit.net 자동변수 지금까지하나의함수안에서선언한변수는자동변수이다. 사용범위는하나의함수내부이다. 생존기간은함수가호출되어실행되는동안이다.

More information

The Pocket Guide to TCP/IP Sockets: C Version

The Pocket Guide to  TCP/IP Sockets: C Version 인터넷프로토콜 5 장 데이터송수신 (3) 1 파일전송메시지구성예제 ( 고정크기메시지 ) 전송방식 : 고정크기 ( 바이너리전송 ) 필요한전송정보 파일이름 ( 최대 255 자 => 255byte 의메모리공간필요 ) 파일크기 (4byte 의경우최대 4GB 크기의파일처리가능 ) 파일내용 ( 가변길이, 0~4GB 크기 ) 메시지구성 FileName (255bytes)

More information

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,

More information

chap01_time_complexity.key

chap01_time_complexity.key 1 : (resource),,, 2 (time complexity),,, (worst-case analysis) (average-case analysis) 3 (Asymptotic) n growth rate Θ-, Ο- ( ) 4 : n data, n/2. int sample( int data[], int n ) { int k = n/2 ; return data[k]

More information

슬라이드 1

슬라이드 1 UNIT 08 조건문과반복문 로봇 SW 교육원 2 기 학습목표 2 조건문을사용핛수있다. 반복문을사용핛수있다. 조건문 3 조건식의연산결과에따라프로그램의실행흐름을변경 조건문의구성 조건식 실행될문장 조건문의종류 if switch? : ( 삼항연산자 ) if 조건문 4 if 문의구성 조건식 true 또는 false(boolean 형 ) 의결과값을갖는수식 실행될문장

More information

Microsoft Word - ExecutionStack

Microsoft Word - ExecutionStack Lecture 15: LM code from high level language /* Simple Program */ external int get_int(); external void put_int(); int sum; clear_sum() { sum=0; int step=2; main() { register int i; static int count; clear_sum();

More information

2

2 2 3 . 4 * ** ** 5 2 5 Scan 1 3 Preview Nikon 6 4 6 7 8 9 10 22) 11 12 13 14 15 16 17 18 19 20 21 . 22 23 24 Layout Tools ( 33) Crop ( 36) Analog Gain ( 69) Digital ICE 4 Advanced ( 61) Scan Image Enhancer

More information

슬라이드 1

슬라이드 1 한국산업기술대학교 제 5 강스케일링및회전 이대현교수 학습안내 학습목표 3D 오브젝트의확대, 축소및회전방법을이해한다. 학습내용 3D 오브젝트의확대및축소 (Scaling) 3D 오브젝트의회전 (Rotation) 변홖공갂 (Transform Space) SceneNode 의크기변홖 (Scale) void setscale ( Real x, Real y, Real z)

More information