Numerical Analysis Programming using NRs

Slides:



Advertisements
Similar presentations
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
Advertisements

1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
1 구조체 윤 홍 란 컴퓨터 프로그래밍 2 구조체 정의  구조체란 ? o 서로 다른 형의 변수들을 하나로 묶어주는 mechanism. (cf. 배열 : 같은 형의 변수들을 하나로 묶어주는 mechanism) o 예 : 카드의.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
C 언어 (STS ) 10. Pointer Applications.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express Slide 1 (of 27)
제 9 장 포인터.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
제14장 동적 메모리.
Chapter 14 포인터.
쉽게 풀어쓴 C언어 Express 제11장 포인터 C Express.
C 프로그래밍 I.
9장. C 언어의 핵심! 함수. 9장. C 언어의 핵심! 함수 9-1 함수의 정의와 선언 main 함수 다시 보기 : 함수의 기본 형태 { } 그림 9-1.
제 9 장 구조체와 공용체.
컴퓨터 프로그래밍 기초 [Final] 기말고사
-Part2- 제3장 포인터란 무엇인가.
윤 홍 란 포인터 윤 홍 란
C 8장. 포인터 #include <stdio.h> int main(void) { int num;
자료 구조: Chapter 3 (2)구조체, 포인터
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
개정판 누구나 즐기는 C언어 콘서트 제9장 포인터 출처: pixabay.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
제 6장. 생성자와 소멸자 학기 프로그래밍언어및실습 (C++).
2007 1학기 16 구조체.
Ubiquitous Computing Practice - Part I (Installation) -
쉽게 풀어쓴 C언어 Express 제17장 동적메모리와 연결리스트 C Express Slide 1 (of 13)
5장. 참조 타입.
C++ 프로그래밍 년 2학기 전자정보공학대학 컴퓨터공학부.
제 3장. C보다 나은 C++ II.
C 프로그래밍.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
2주차: 변수, 수식, Control Flow.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 03. 변수와 연산자.
14장. 포인터와 함수에 대한 이해.
* 07/16/96 처음으로 배우는 C 프로그래밍 제1부 기초 제3장 치환, 주소, 대화식 입력 *
C 8장. 포인터 #include <stdio.h> int main(void) { int num;
C 2장. C 프로그램 시작하기 #include <stdio.h> int main(void) { int num;
JA A V W. 03.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
쉽게 풀어쓴 C언어 Express 제14장 포인터 활용 C Express Slide 1 (of 22)
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
포인터 1차원 배열과 포인터 2차원 배열과 포인터 문자열 배열과 포인터 포인터 배열
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
8주차: Strings, Arrays and Pointers
5강. 배열 배열이란? 배열의 문법 변수와 같이 이해하는 배열의 메모리 구조의 이해 레퍼런스의 이해 다차원 배열
Canary value 스택 가드(Stack Guard).
제 6 장 함수(functions).
Chapter 09. 포인터 1.
7주차: Functions and Arrays
11장 배열 1. 배열이란? 1.1 배열의 개요 1.2 배열의 선언과 사용.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
Summary of Pointers and Arrays
16장. 변수, 연산자, 사용자 정의 함수 변수 배열과 객체 연산자 함수.
Chapter 11 구조체.
어서와 C언어는 처음이지 제21장.
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
13. 포인터와 배열! 함께 이해하기.
Pointers summary.
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
Presentation transcript:

Numerical Analysis Programming using NRs Eun Joo Rhee

Contents Pointer의 개념 Using Numerical Recipes Using Visual Studio

Pointer의 개념

Pointer 일반 변수와 다르게 메모리의 주소(address) 값만을 저장할 수 있는 특별한 변수 포인터 변수 없이 프로그래밍이 가능하나, 포인터 변수를 이용하면 프로그램이 간결하고 효율적 일반 변수와 구별되며, 변수 선언 방법도 일반 변수 선언과 다름

하나의 변수는 변수 이름, 변수에 저장된 저장 값, 저장공간의 주소 값을 가짐 변수 저장 값 Pointer의 개념 2/13 주소 하나의 변수는 변수 이름, 변수에 저장된 저장 값, 저장공간의 주소 값을 가짐 변수 변수이름 저장 값 12FF7C 일반변수 a int a = 5; 5 12FF78 pi int *pi = &a 포인터 변수 12FF7C

Pointer의 개념 3/13 a : 2161304 5 변수 이름 a 변수 값 5 변수 주소(&a) 2161304 & 기호는 변수의 주소를 참조하는 포인터 연산자

Pointer의 개념 4/13 *p : 2881436 p : 2881448 5 *p 5를 가리키는 포인터변수 p 5를 가지는 값의 주소 &p P를 가리키는 값의 주소

Pointer 선언 1) int *pi; 2) int* pi; C언어는 프리포맷을 지원하므로 공백이 어디에 있는가는 중요하지 않다. C 스팩 문서는 모두 1) 형식으로 되어 있고 C++ 스팩 문서에는 두 형식이 혼재하되 2) 형식이 좀 더 우세하다. Visual C++의 라이브러리인 MFC는 모두 2) 의 형식으로 되어 있다. 1) int *pi; 2) int* pi;

Pointer 증감 일반 변수 포인터 변수 int i = 0; // i+1 = 1 int *pi = &i; // pi+1 = pi+(1*sizeof(int))

*ptr++ *와 ++는 동일한 연산순위를 가지면서 우측 우선의 결합순서를 가진다. Pointer의 개념 7/13 *ptr++ *와 ++는 동일한 연산순위를 가지면서 우측 우선의 결합순서를 가진다. ptr++은 후위연산자이기 때문에 연산이 끝나고 ++ 수행된다. 따라서 *ptr이 먼저 수행되고 ptr++이 수행된다. *ptr과 ptr++로 분리할 수 있다.

Pointer to function Call by Value 변수의 값을 받아와서 새 변수를 생성

Pointer의 개념 9/13 Call by Reference 변수의 주소을 받아와서 그 변수를 이용

Pointer Array (1D) int ptr[]와 int *ptr는 같은 의미 * ptr == ptr[0] *(ptr + i) == ptr[i] *(ptr + 1)은 *ptr + 1과 다른 결과이므로 괄호를 주의! C에서 배열은 zero-origin/zero-offset (0부터 시작) float b[4]: b[0], b[1], b[2], b[3]

Pointer의 개념 11/13 Using nrutil.c Allocation Deallocation

Pointer의 개념 12/13 Pointer Array (2D) 2차원 배열 이름은 이중 포인터 **m

Pointer의 개념 13/13 Using nrutil.c Allocation Deallocation

Using Numerical Recipes

Using Numerical Recipes 1/4 Simple example – SVD

Using Numerical Recipes 2/4 svdcmp.c input output

Using Numerical Recipes 3/4 xsvdcmp.c

Using Numerical Recipes 4/4 xsvdcmp.c

Using Visual Studio

Using Visual Studio 1/10 At 2008

Using Visual Studio 2/10

Using Visual Studio 3/10

Using Visual Studio 4/10

Using Visual Studio 5/10 미리 프로젝트 폴더에 필요한 파일들을 옮겨 놓는다

Using Visual Studio 6/10

Using Visual Studio 7/10

Using Visual Studio 8/10

Using Visual Studio 9/10

Using Visual Studio 10/10

Other questions to heckism@mr.hanyang.ac.kr