Ruby 프로그래밍 1

Size: px
Start display at page:

Download "Ruby 프로그래밍 1"

Transcription

1 Ruby 프로그래밍 1 문자열입출력제어구조 looping 함수정의 한국어정보의전산처리

2 코드, 컴파일 기계코드 (machine code): 컴퓨터가직접실행할수있는코드. 이진수로되어있어서이진코드 (binary code) 라고도함. 파일로저장할때흔히.exe 라는확장자를가짐. executable 이라고도함. 하드웨어에따라차이가있음. 인간이직접작성하기가매우힘듦. 소스코드 (source code): 인간이이해하고작성하기쉽게고안한코드. 컴파일 (compile): 소스코드를기계코드로바꾸는일. 컴파일러 (compiler): 컴파일해주는소프트웨어 어셈블리코드 (assembly code): 소스코드와기계코드의중간쯤되는코드. 기계코드로 1 대 1 로번역가능한명령들로이루어짐. 어셈블러 (assembler): 어셈블리코드를기계코드로번역해주는소프트웨어.

3 기계코드와어셈블리코드의예 x86/ia-32 프로세서에게 8 비트값 을메모리의특정레지스터 AL(000) 로옮기라 (10110) 는기계코드 = B0 61 같은의미를나타내는 8086 family 의어셈블리코드 MOV AL, 61h ( 메모리주소 AL 에 16 진수 61 을로드하라 ) 어셈블리코드는기계코드에직접대응하는명령을사용하기때문에, 전자를후자로매우쉽게번역할수있음. 실행속도가매우빠름. 매크로 (macro) 를이용하여, 복잡한코드를간단하게나타낼수있음. 동일하게반복되는부분은매크로로처리하면효율적. 구조적프로그래밍을가능케함. 인간친화적이아니라, 기계친화적 인간이기계에게익숙한층위까지내려가서프로그래밍하는셈.

4 컴파일형언어와인터프리트형언어 컴파일형언어 : C, C++, Fortran 인간이소스코드를작성. 컴파일러가이소스코드를기계코드로번역. 실행파일 (executable) 을만들어저장함. 사용자는이실행파일을실행함으로써특정과제를수행함. 컴파일은 1 번만하고, 컴파일결과를여러차례반복실행함. 인터프리트형언어 : Perl, Python, Ruby 인간이소스코드를작성하여 인터프리터가이소스코드를기계코드로번역하여 이기계코드를곧장실행함. ( 실행파일단계를건너뜀 ) 실행할때마다컴파일을다시함. 중간형언어 : Java, C# 인간이작성한소스코드를바이트컴파일러가바이트코드로번역하여저장. 가상기계 (virtual machine) 가바이트코드를기계코드로번역하여실행함. 즉소스코드를절반쯤컴파일한뒤, 나머지절반쯤의컴파일은그때그때함.

5 각유형의장단점 컴파일형인터프리트형중간형 컴파일비용 컴파일을 1번만하므로비용이적게듦 실행할때마다다시컴파일해야하므로비용이많이듦 절반의컴파일은미리해두고절반의컴파일만그때그때하므로드는비용이중간 실행속도빠름느림중간 실행을위한전제조건 프로그래머의컴퓨터에는컴파일러가있어야하나, 사용자의컴퓨터에는컴파일러가필요없음 사용자의컴퓨터에인터프리터가설치되어있어야함. 비용이가장큼 앞절반의컴파일은프로그래머의컴퓨터에서함. 사용자컴퓨터에는뒤절반의컴파일을해줄가상기계가설치되어있어야함. 소스코드보안 프로그래머는소스코드를감출수있음. 컴파일결과인실행파일만배포하면됨 소스코드를감출수없음. 프로그래머가사용자에게소스코드를배포해야함. 소스코드는감출수있음. 절반쯤컴파일한바이트코드를배포함. 개인적사용시 컴파일, 실행두단계거쳐야하므로번거로움 컴파일단계거치지않고곧장실행하므로간편함 역시컴파일, 실행의두단계를거쳐야하므로번거로움

6 object 와 type physical object 물리적개체, 물체 시공간상의일정한부분을차지하는존재 (programming) object 프로그래밍개체 컴퓨터메모리상의일정한부분 ( 공간 ) 을차지하는존재 프로그래밍에서가장기초적이고중요한개념 프로그래밍이란, 메모리상에개체를만들고이개체를조작하는일 object-oriented programming 개체 ( 객체 ) 지향프로그래밍 프로그래밍의초기에는개체에주목하지않고기계가수행할연산에주목하다가 점차개체를전면에내세우는프로그래밍언어와기법이주류가됨. 모든개체는일정한 type(class) 에속함. 개체가속하는 type 에따라그개체에대해할수있는일이정해져있음. 문자열 : 프린트하기, 두문자열을이어붙이기, 문자열내에서하위문자열찾기 정수 : 사칙연산 ( 더하기, 빼기, 곱하기, 나누기 ), 나머지, 제곱,... 실수 : 사칙연산, 제곱,... enumerable: 자신이포함한각개체각각에대해어떤일을함 (iterator: each, map, collect 등 )

7 변수 (variable) 와 type 메모리상에만든개체에대해조작을하고이개체에일어나는변화를추적하려면, 개체를가리키는이름이필요함. 이이름이바로변수임. named object: 변수와연결된, 즉이름을가진개체 unmamed object: 이름을갖지않는개체. literal 이라고도함. 만들어서한번만쓰고말개체는굳이이름을가질필요가없음. 하나의변수가 A 라는개체를가리키는이름으로쓰이다가, 나중에 B 라는개체를가리키는이름으로쓰일수도있음. ( 그래서변수라고함 ) 달리말하면, 변수가가리키는개체의값 (value) 이변할수있음. cf. 상수 (constant): 값이변할수없는개체. immutable 이라고도함. strongly typed language: 개체뿐아니라모든변수가 type 을가짐. 예 :C++ weakly typed language: 개체는 type 을가지나, 변수는 type 을가지지않음. 하나의변수가가리키는개체의 type 이바뀌어도됨. 예 : Ruby

8 함수 (function) 특정임무를수행하는프로그래밍단위 일정한입력에대해일정한조작을하여일정한출력을내놓음. 함수없이프로그래밍을하다가동일한코드가반복되게된다면, 반복되는부분을함수로독립시킬것을고려해야함. free function: 특정 type 의개체에매여있지않고, 자유롭게호출할수있는함수 class function=method: 특정 type 의개체에대해서만호출할수있는함수 non-mutating method : 개체에변화를초래하지않는 method mutating method : 개체에변화를초래하는 method Ruby 에서 method 명뒤에! 를붙여서구별함.

9 type system: built-in type Boolean: 참 (true) 과거짓 (false) 의두가지값만가질수있는개체 String: 문자열. 또는 와같이하여만듦. Integer: 정수 Fixnum: 1 (native machine) word 로표시될수있는값을가짐. Bignum: Fixnum 의범위를넘어서는값을가짐. Fixnum 개체에대한어떤연산결과가 Fixnum 의범위를넘으면자동으로 Bignum 으로변환됨 (IRB 를통해예시 ) Float: 실수. 컴퓨터의실수표시메커니즘을이용하여나타냄. 정확하지않음. 루트 2(Math::sqrt(2)) 의제곱이 2.0 이되지않을수도있음. Enumerable: 개체들의집합체 Range: (n..m) n 부터 m 까지의개체들의집합체. 순서가중요함. Array: [a,b,c] 임의의요소들을차례로모아놓은연쇄. 순서가중요함. 상이한 type 에속하는개체들이하나의 Array 에속하는것도가능. Hash: {a=>20, b=>35, c=> xyz } key-value 쌍들을모아놓은집합체. 순서는중요하지않음.

10 type system: user-defined type 사용자가원하는 type(class) 을정의해서사용할수있음. class Student def initialize(name, serial, = = = age 새로운 type 을정의할때, 반드시 initialize 라는 method 를만들어야함. 이 type 에속하는개체를만들때이 method 가호출됨. 위의 Student class 의경우 a = Student.new( John,372,21) 이라고하면 Student type 에속하는개체가만들어져변수 a 가이개체를가리키며 이개체에딸린 3 개의변수에 John, 372, 21 이라는값이할당됨.

11 statement 와 expression statement: 어떠어떠한일을하라 는식의완전한문장 a = 10 #a 라는변수에 10 의값을할당하라는 statement print b #b 라는변수에저장되어있는값을출력하라는 statement expression: 하나의 value 로 evaluate 될수있는표현 (a+b)*c #a 와 b 를더하고거기에 c 를곱하여그결과값이얻어짐. Math::sqrt(a) #a 라는변수에저장된값을입력으로하여제곱근함수를적용하여그결과값이얻어짐. x.abs #x 라는변수에저장된값에대해 abs 라는 method 를적용하여그결과값이얻어짐 x == y # 변수 x 에저장된값과변수 y 에저장된값이같다고하는명제. 참또는거짓이라는값으로 evaluate 됨. 프로그래밍을할때둘중어느하나만올수있는위치가있으므로개념적으로구분할필요가있음. 그러나최근에는 statement 도어떤값으로 evaluate 되는경향이있음. 둘의경계가점차모호해지고있음.

12 제어구조 (control flow): if 문 if 조건 실행할명령들 조건 : 참, 거짓으로 evaluate 될수있는 expression 조건이참일때만블록이실행됨. 실행할명령 if 조건 명령이 1 개일때편리 if 조건 실행할명령들 1 else 실행할명령들 2 if 조건 1 실행할명령들 1 elsif 조건 2 실행할명령들 2 elsif 조건 3 실행할명령들 3 else 실행할명령들 n elsif 블록은얼마든지추가가능 x? y : z #x 가참이면 y, 거짓이면 z 로 evaluate 되는 expression

13 제어구조 : case 문 case expression when value1 실행할명령들 1 when value2 실행할명령들 2 else 실행할명령들 n case 문은 if ~ elsif ~ else ~ end 형태로치환가능하기는하나 둘중 case 문이더효율적인기계코드로번역되기쉽기때문에, 가급적 case 문을쓸것. case 문은 statement 뿐아니라 expression 에도적용될수있음. 변수 = case expression when value1 expression 1 when value2 expression 2 else expression n expression 의값에따라변수에상이한값할당

14 반복문 (loop) while 조건 do 실행할명령들 조건이참인동안블록을반복실행 until 조건 do 실행할명령들 조건이거짓인동안블록을반복실행 정수.times do 실행할명령들 블록을 정수 번반복실행 for 변수 in Enumerable do 실행할명령들 Enumerable 안에들어있는각개체를 변수 라는이름으로지칭하면서 이개체에대해명령을실행함. Ruby 에서는같은일을하는더 Ruby 다운 syntax 가있기때문에 for loop 를잘쓰지않음. Enumerable.each do 변수 실행할명령들

15 새로운개체를만드는방법 new method 를이용하는방법 a = String.new #String type 에속하는비어있는개체, 즉빈문자열을만듦. b = Array.new #Array type 에속하는비어있는개체, 즉빈 Array 를만듦. c = Hash.new #Hash type 에속하는비어있는개체, 즉빈 Hash 를만듦. literal 을변수에할당하는방법 a = 10 # 정수의경우 new 메소드이용불가 b = 2.5 # 실수의경우 new 메소드이용불가 c = "xyz # c = String.new( xyz ) 와같은효과를가짐 d = "" # d = String.new 와같은효과를가짐 e = [] # e = Array.new 와같은효과를가짐 f = {} # f = Hash.new 와같은효과를가짐

16 unnamed object 의활용 프로그래밍의초보단계에서는, 명령을하나하나실행할때마다만들어지는개체에이름 ( 변수 ) 을부여하는것이좋으나 익숙해짐에따라, 한번사용하고말개체는이름을부여하지않아도됨. 방식 1 x = -5 # 정수개체를만들어그값을 -5 로하고이개체를가리키는변수를 x 로지정 y = x.abs # 변수 x 가가리키는개체에 abs 메소드를적용하여생기는개체를가리키는변수로 y 를지정 print y # 이 y 가가리키는개체를출력 방식 2 print -5.abs # -5 값을갖는정수개체 (unnamed object 1) 를만들어이개체에 abs() 메소드를적용하여생기는개체 (unnamed object 2) 를출력 command line 에서작업의중간결과를파일로저장하지않고여러명령을파이프 로연결하여단번에실행하는것, R 에서파이프 %>% 로여러함수를연결해서사용하는것과비슷한취지

17 Ruby script 의 shebang Unix/Linux/Cygwin 환경에서인터프리터로실행할 script 의첫라인에서어떤인터프리터를사용할것인지명시해줘야함. 아래의두방식이흔히쓰임. 후자를더권장함. #!/usr/bin/ruby /usr/bin 디렉토리에있는 ruby 라는이름의 executable 을사용하라. #!/usr/bin/env ruby /usr/bin 디렉토리에있는 ruby 라는이름의 executable 을사용하되 만약그디렉토리에 ruby executable 이없으면환경변수 path 에지정된디렉토리들에서찾아보라. ruby script의첫라인에 shebang이있으면, 스크립트파일명만으로실행할수있음 :./script script가들어있는 path/script ruby script 의첫라인에 shebang 이없으면, ruby script 실행시인터프리터를명시해줘야함 : ruby 스크립트파일명

18 출력 print, puts, 입력 gets, String method Hello! 를출력하는스크립트 print Hello! # Hello! 라는문자열을표준출력장치에출력 사용자로부터이름을입력받아, Hello, 이름! 을출력 print 이름을입력하세요 : name = gets # 사용자가입력한문자열을읽어서 name 변수에저장 # 사용자가타이핑한뒤엔터를치면 gets 가실행됨 # 사용자가마지막에타이핑한줄바꿈문자까지포함됨. name = name.chomp #name 문자열끝의줄바꿈문자를떼어내어다시저장 #name.chomp! 와같은효과 # 위의두줄은 name = gets.chomp 와같은효과 print Hello,, name,! #3 개의문자열을연달아출력 puts 는 print 와같되, 문자열끝에줄바꿈문자를추가하여출력함. 사용자가입력한문자열을뒤집어서출력 : reverse method 이용

19 command line arguments ruby script 를실행할때 script 파일명뒤에추가로정보를써줄수있는데이를 command line argument 라고함. 공백으로구분된문자열들이 ARGV 라는이름의 Array 에저장됨. 첫째요소는 ARGV[0], 둘째요소는 ARGV[1], 사용자로부터입력받은문자열뒤집어출력 print ARGV[0].reverse 사용자로부터 2 개의문자열을입력받아, 둘째문자열을뒤집어서첫째문자열뒤에붙여출력 print ARGV[0], ARGV[1].reverse 사용자로부터문자열을입력받아그문자열의길이를출력 print ARGV[0].length UTF-8 문자열에서, 각문자가몇바이트를차지하든하나의문자로침.

20 loop 이용기초 : range 1 부터 100 까지, 한라인에하나씩출력 (1..100).each do i puts i end (1..100).each { i puts i } do ~ end 와 { ~ } 는동일함. 대개 ~ 가 one-liner 일때후자사용 사용자로부터시작값과끝값을입력받아그사이의정수들출력 유의점 : gets 로입력받든 command line argument 로입력받든사용자로부터입력받은데이터는기본적으로 String 임. 필요한경우 type 변환을해야함. x.to_i #x 의 type 을정수 (integer) 로변환함. 크기에따라 Fixnum, Bignum 이자동적으로결정됨. x.to_f #x 의 type 을실수 (floating number) 로변환함. x.to_s #x 의 type 을문자열 (string) 로변환함. (ARGV[0].to_i..ARGV[1].to_i).each { i puts i } 문자열 range 도가능. 사용자로부터입력받은시작문자열, 끝문자열사이의문자열들출력하기 : (ARGV[0]..ARGV[1]).each { s puts s }

21 loop 내에서 if 문으로조건검사 사용자로부터입력받은정수 range 내에서짝수만출력 (ARGV[0].to_i..ARGV[1].to_i).each do i puts i if i % 2 == 0 # i 를 2 로나눈나머지가 0 이면 i 출력. i.even? 을써도됨 홀수만출력하기, 3 의배수만출력하기 i % 2 == 1 또는 i.odd? i % 3 == 0 제곱근이정수인것 ( 정수의제곱인것 ) 만출력하기 (ARGV[0].to_i..ARGV[1].to_i).each do i sqrt_of_i = Math::sqrt(i) #Math::sqrt 함수를이용하여 i 의제곱근을구함. 결과값은실수. puts i if sqrt_of_i == sqrt_of_i.to_i # 제곱근결과값에.to_i method 를적용 ( 소수점이하를버림 ) 한결과가제곱근자체와같으면, 즉소수점이하가 0 이면 i 출력 # 방법 1 i = ARGV[0].to_i # 첫째 command line argument( 시작값 ) 를정수로변환하여 i 에저장 while i**2 <= ARGV[1].to_i do # until i**2 > ARGV[1].to_i 와같음. # i 의제곱이상한선이하이면아래블록을반복실행함. puts i**2 # i 의제곱을출력 i += 1 # i = i +1 과같음. i 의값을 1 증가시킴. # 방법 2

22 더하기, 평균구하기 사용자로부터입력받은시작값부터끝값까지의정수들의합, 평균구하기 sum = 0 # 정수들을합을저장할변수 sum 을 0 으로초기화 range = (ARGV[0].to_i..ARGV[1].to_i) # 하한선.. 상한선 range 를저장 range.each do i #range 내의각정수 i 에대해 sum += i # sum = sum + i 와동일. sum 에 i 를더함. print sum, \t, sum.to_f / range.size #sum 과평균을출력 평균을낼때 sum 을우선실수로변환해야함에유의할것. 정수와정수의연산은결과값도정수가됨. ( 소수점이하버림 ) 실수와실수의연산은결과값도실수가됨. 실수와정수의연산은결과값이실수가됨. 같은 type 에속하는개체들끼리의연산은결과값도같은 type 의개체가됨. 정보량이많은 type 의개체와정보량이적은 type 의개체사이에연산을할때, 후자가전자로자동으로변환되어연산을수행함.

23 사용자로부터입력받은정수들의합, 평균 1 print " 정수들의합, 평균을구해드립니다. 입력할정수의개수 : " n = gets.chomp.to_i # 입력할정수의개수를 n 에저장 sum = 0 # 합을저장할변수 sum 을 0 으로초기화 n.times do # 아래의블록을 n 번반복실행 i = gets.chomp.to_i # 사용자가입력한것을정수로변환, i 에저장 sum += i #sum 에 i 를더함 # 위의두줄은 sum+=gets.chomp.to_i 라고할수도있음. unnamed object 이용. print sum, \t, sum.to_f / n # 합과평균출력

24 사용자로부터입력받은정수들의합, 평균 2 print " 정수들의합, 평균을구해드립니다. 입력할정수의개수 : " n = gets.chomp.to_i a = [] # a = Array.new와같음. 빈 Array를만듦. n.times do i = gets.chomp.to_i a << i #Array a에 i를추가 sum = a.inject(:+) # + 연산자를이용하여 a의요소들을집계 #ruby 2.4 이상에서는 a.sum도가능 print sum, "\t", sum.to_f / a.length

25 소수 (prime number) 판정 사용자로부터상한선을입력받아, 2부터상한선사이의소수출력 (2..ARGV[0].to_i).each do i #2부터사용자가제공한상한선까지 is_prime = true #is_prime 변수를일단참으로초기화 (2..i/2).each do x #2부터 i/2( 정수 ) 까지, 각 x에대해 if i % x == 0 #i를 x로나눈나머지가 0이면 is_prime = false # is_prime 변수를거짓으로하고 break # 가장하위의 loop를종료 puts i if is_prime #is_prime이참이면 i를출력

26 소수판정함수 어떤정수가소수인지판정하는부분을별도의함수로독립시키면프로그램의 logic 이더명확해짐. prime_func.rb (called code) def is_prime?(i) is_prime = true (2..i/2).each do x if i % x == 0 is_prime = false break is_prime # is_prime 의값반환 prime2.rb (calling code) #!/usr/bin/env ruby require './prime_func.rb # 호출할함수를정의한파일을 require 로불러옴. (2..ARGV[0].to_i).each do i puts i if is_prime?(i) #is_prime? 함수를사용

Week5

Week5 Week 05 Iterators, More Methods and Classes Hash, Regex, File I/O Joonhwan Lee human-computer interaction + design lab. Iterators Writing Methods Classes & Objects Hash File I/O Quiz 4 1. Iterators Array

More information

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap05-제어문.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); 1 학습목표 제어문인,, 분기문에 대해 알아본다. 인 if와 switch의 사용 방법과 사용시 주의사항에 대해 알아본다.

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

Microsoft PowerPoint Predicates and Quantifiers.ppt

Microsoft PowerPoint Predicates and Quantifiers.ppt 이산수학 () 1.3 술어와한정기호 (Predicates and Quantifiers) 2006 년봄학기 문양세강원대학교컴퓨터과학과 술어 (Predicate), 명제함수 (Propositional Function) x is greater than 3. 변수 (variable) = x 술어 (predicate) = P 명제함수 (propositional function)

More information

Ruby 프로그래밍 3

Ruby 프로그래밍 3 Ruby 프로그래밍 3 Array 와 Hash 이용 한국어정보의전산처리 2017. 5. 1. Array 기초 1: 문자열소팅 사용자가 command-line에입력한문자열들을소팅하여출력 if ARGV.length < 1 print 입력한문자열들을소팅해드립니다. exit ARGV.sort.each do s puts s Array 기초 2: 정수소팅 사용자가 command-line

More information

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

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

More information

Infinity(∞) Strategy

Infinity(∞) Strategy 반복제어 표월성 passwd74@cherub.sungkyul.edu 개요 for() 문 break문과 continue문 while문 do-while문 for() 문 for() 문형식 for( 표현식1; 표현식2; 표현식3) 여러문장들 ; 표현식 1 : 초기화 (1 번만수행 ) 표현식 2 : 반복문수행조건 ( 없으면무한반복 ) 표현식 3 : 반복문수행횟수 for()

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 06 반복문 01 반복문의필요성 02 for문 03 while문 04 do~while문 05 기타제어문 반복문의의미와필요성을이해한다. 대표적인반복문인 for 문, while 문, do~while 문의작성법을 알아본다. 1.1 반복문의필요성 반복문 동일한내용을반복하거나일정한규칙으로반복하는일을수행할때사용 프로그램을좀더간결하고실제적으로작성할수있음.

More information

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

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

More information

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다 10 강. 쉘스크립트 쉘스크립트 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다른운영체제로이식되지않음 -스크립트언어를사용하면컴파일과정이없고인터프리터가소스파일에서명령문을판독하여각각의명령을수행

More information

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

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

More information

C 프로그래밍 언어 입문 C 프로그래밍 언어 입문 김명호저 숭실대학교 출판국 머리말..... C, C++, Java, Fortran, Python, Ruby,.. C. C 1972. 40 C.. C. 1999 C99. C99. C. C. C., kmh ssu.ac.kr.. ,. 2013 12 Contents 1장 프로그래밍 시작 1.1 C 10 1.2 12

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 13. 포인터와배열! 함께이해하기 2013.10.02. 오병우 컴퓨터공학과 13-1 포인터와배열의관계 Programming in C, 정재은저, 사이텍미디어. 9 장참조 ( 교재의 13-1 은읽지말것 ) 배열이름의정체 배열이름은 Compile 시의 Symbol 로서첫번째요소의주소값을나타낸다. Symbol 로서컴파일시에만유효함 실행시에는메모리에잡히지않음

More information

C# Programming Guide - Types

C# Programming Guide - Types C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든

More information

Microsoft PowerPoint - chap04-연산자.pptx

Microsoft PowerPoint - chap04-연산자.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); } 1 학습목표 수식의 개념과 연산자, 피연산자에 대해서 알아본다. C의 를 알아본다. 연산자의 우선 순위와 결합 방향에

More information

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y

More information

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

Microsoft PowerPoint - C++ 5 .pptx

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

More information

Microsoft PowerPoint - e pptx

Microsoft PowerPoint - e pptx Import/Export Data Using VBA Objectives Referencing Excel Cells in VBA Importing Data from Excel to VBA Using VBA to Modify Contents of Cells 새서브프로시저작성하기 프로시저실행하고결과확인하기 VBA 코드이해하기 Referencing Excel Cells

More information

쉽게

쉽게 Power Java 제 4 장자바프로그래밍기초 이번장에서학습할내용 자바프로그램에대한기초사항을학습 자세한내용들은추후에. Hello.java 프로그램 주석 주석 (comment): 프로그램에대한설명을적어넣은것 3 가지타입의주석 클래스 클래스 (class): 객체를만드는설계도 ( 추후에학습 ) 자바프로그램은클래스들로구성된다. 그림 4-1. 자바프로그램의구조 클래스정의

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

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

17장 클래스와 메소드

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

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

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

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

Microsoft PowerPoint - chap-03.pptx

Microsoft PowerPoint - chap-03.pptx 쉽게풀어쓴 C 언어 Express 제 3 장 C 프로그램구성요소 컴퓨터프로그래밍기초 이번장에서학습할내용 * 주석 * 변수, 상수 * 함수 * 문장 * 출력함수 printf() * 입력함수 scanf() * 산술연산 * 대입연산 이번장에서는 C프로그램을이루는구성요소들을살펴봅니다. 컴퓨터프로그래밍기초 2 일반적인프로그램의형태 데이터를받아서 ( 입력단계 ), 데이터를처리한후에

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information

Visual Basic 반복문

Visual Basic 반복문 학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For

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

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

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (II) Contents 배열 문자와문자열 구조체 포인터와메모리관리 구조체 2/17 배열 (Array) (1/2) 배열 동일한자료형을가지고있으며같은이름으로참조되는변수들의집합 배열의크기는반드시상수이어야한다. type var_name[size]; 예 ) int myarray[5] 배열의원소는원소의번호를 0 부터시작하는색인을사용

More information

PowerPoint Presentation

PowerPoint Presentation 자바프로그래밍 1 배열 손시운 ssw5176@kangwon.ac.kr 배열이필요한이유 예를들어서학생이 10 명이있고성적의평균을계산한다고가정하자. 학생 이 10 명이므로 10 개의변수가필요하다. int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; 하지만만약학생이 100 명이라면어떻게해야하는가? int s0, s1, s2, s3, s4,

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 2 장 : C 프로그램시작하기 2012 년 이은주 학습목표 을작성하면서 C 프로그램의구성요소 주석 (comment) 이란무엇인지알아보고, 주석을만드는방법 함수란무엇인지알아보고, C 프로그램에반드시필요한 main 함수 C 프로그램에서출력에사용되는 printf 함수 변수의개념과변수의값을입력받는데사용되는 scanf 함수 2 목차 프로그램코드

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf(hihi\n); } warning: conflicting types for functiona 이름 : 학번 : A. True or False: 각각항목마다 True 인지 False 인지적으세요. 1. (Python:) randint 함수를사용하려면, random 모듈을 import 해야한다. 2. (Python:) '' (single quote) 는한글자를표현할때, (double quote) 는문자열을표현할때사용한다. B. 다음에러를수정하는방법을적으세요.

More information

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp 1 0 1.7 6 5 'A ' '/ u 4 4 2 2 ' " JS P 프로그래밍 " A ', 'b ', ' 한 ', 9, \ u d 6 5 4 ' c h a r a = 'A '; 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 < % @ p a g e c o n te n

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 - Lesson2.pptx

Microsoft PowerPoint - Lesson2.pptx Computer Engineering g Programming g 2 제 3 장 C 프로그래밍구성요소 Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 * 주석 * 변수, 상수 * 함수 * 문장 * 출력함수 printf() * 입력함수 scanf() *

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3

More information

Microsoft PowerPoint - 00_(C_Programming)_(Korean)_Computer_Systems

Microsoft PowerPoint - 00_(C_Programming)_(Korean)_Computer_Systems C Programming 컴퓨터시스템 (Computer Systems) Seo, Doo-Ok Clickseo.com clickseo@gmail.com 목 차 컴퓨터시스템 프로그래밍언어 2 컴퓨터시스템 컴퓨터시스템 컴퓨터하드웨어 컴퓨터소프트웨어 프로그래밍언어 3 컴퓨터시스템 컴퓨터시스템 하드웨어 : 물리적인장비 소프트웨어 : 프로그램 ( 명령어 ) 들의집합 Computer

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 08 함수 01 함수의개요 02 함수사용하기 03 함수와배열 04 재귀함수 함수의필요성을인식한다. 함수를정의, 선언, 호출하는방법을알아본다. 배열을함수의인자로전달하는방법과사용시장점을알아본다. 재귀호출로해결할수있는문제의특징과해결방법을알아본다. 1.1 함수의정의와기능 함수 (function) 특별한기능을수행하는것 여러가지함수의예 Page 4 1.2

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Ruby Programming 8 Web Crawling 한국어정보의전산처리 2017. 5. 24. Web Crawling 의요소기술 웹에접속하여웹문서읽어오기 open-uri 나 net/http 라이브러리이용. 웹문서분석 xml/html parser 라이브러리 ( 예 : nokogiri) 를이용할수도있으나 간단한분석일때는 scan 등의함수로정규표현을검색하여처리할수도있음.

More information

1

1 1 1....6 1.1...6 2. Java Architecture...7 2.1 2SDK(Software Development Kit)...8 2.2 JRE(Java Runtime Environment)...9 2.3 (Java Virtual Machine, JVM)...10 2.4 JVM...11 2.5 (runtime)jvm...12 2.5.1 2.5.2

More information

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770> 연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 10 포인터 01 포인터의기본 02 인자전달방법 03 포인터와배열 04 포인터와문자열 변수의주소를저장하는포인터에대해알아본다. 함수의인자를값과주소로전달하는방법을알아본다. 포인터와배열의관계를알아본다. 포인터와문자열의관계를알아본다. 1.1 포인터선언 포인터선언방법 자료형 * 변수명 ; int * ptr; * 연산자가하나이면 1 차원포인터 1 차원포인터는일반변수의주소를값으로가짐

More information

설계란 무엇인가?

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

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 - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D> 리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

untitled

untitled 시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000

More information

UI TASK & KEY EVENT

UI TASK & KEY EVENT 2007. 2. 5 PLATFORM TEAM 정용학 차례 CONTAINER & WIDGET SPECIAL WIDGET 질의응답및토의 2 Container LCD에보여지는화면한개 1개이상의 Widget을가짐 3 Container 초기화과정 ui_init UMP_F_CONTAINERMGR_Initialize UMP_H_CONTAINERMGR_Initialize

More information

JVM 메모리구조

JVM 메모리구조 조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.

More information

JAVA PROGRAMMING 실습 02. 표준 입출력

JAVA PROGRAMMING 실습 02. 표준 입출력 자바의기본구조? class HelloJava{ public static void main(string argv[]){ system.out.println( hello,java ~ ){ } } # 하나하나뜯어살펴봅시다! public class HelloJava{ 클래스정의 public static void main(string[] args){ System.out.println(

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field

More information

쉽게 풀어쓴 C 프로그래밍

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

More information

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc Visual Studio 2005 + Intel Visual Fortran 9.1 install Intel Visual Fortran 9.1 intel Visual Fortran Compiler 9.1 만설치해서 DOS 모드에서실행할수있지만, Visual Studio 2005 의 IDE 를사용하기위해서는 Visual Studio 2005 를먼저설치후 Integration

More information

Microsoft PowerPoint - KNK_C03_Expr_kor

Microsoft PowerPoint - KNK_C03_Expr_kor Expressions adopted from KNK C Programming : A Modern Approach Operators 연산자 C 는표현식을많이사용함 표현식은변수와상수와연산자로구성됨 C 에는연산자의종류가다양함 1. arithmetic operators ( 수식연산자 ) 2. relational operators ( 관계연산자 ) 3. logical

More information

슬라이드 1

슬라이드 1 UNIT 6 배열 로봇 SW 교육원 3 기 학습목표 2 배열을사용핛수있다. 배열 3 배열 (Array) 이란? 같은타입 ( 자료형 ) 의여러변수를하나의묶음으로다루는것을배열이라고함 같은타입의많은양의데이터를다룰때효과적임 // 학생 30 명의점수를저장하기위해.. int student_score1; int student_score2; int student_score3;...

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

KNK_C03_Expr_kor

KNK_C03_Expr_kor Expressions adopted from KNK C Programming : A Modern Approach Operators 연산자 C 는표현식을많이사용함 표현식은변수와상수와연산자로구성됨 C 에는연산자의종류가다양함 1. arithmetic operators ( 수식연산자 ) 2. relational operators ( 관계연산자 ) 3. logical

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

More information

Microsoft PowerPoint 세션.ppt

Microsoft PowerPoint 세션.ppt 웹프로그래밍 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 세션변수 (Session Variable) (1/2) 쇼핑몰장바구니 장바구니에서는사용자가페이지를이동하더라도장바구니의구매물품리스트의내용을유지하고있어야함 PHP 에서사용하는일반적인변수는스크립트의수행이끝나면모두없어지기때문에페이지이동시변수의값을유지할수없음 이러한문제점을해결하기위해서 PHP 에서는세션 (session)

More information

PowerPoint Presentation

PowerPoint Presentation #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

Microsoft PowerPoint UNIX Shell.ppt

Microsoft PowerPoint UNIX Shell.ppt 컴퓨터특강 () 2006 년봄학기 문양세강원대학교컴퓨터과학과 Shell? Shell이란명령어해석기 (Command Processor or Command Interpreter): 사용자가입력하는명령을읽고해석하는프로그램프로그래밍언어 : Shell이해석할수있는스크립트 (shell script) 라는프로그램을작성유닉스를사용하는데있어주요한인터페이스 Page 2 1 Shell

More information

C 프로그램의 기본

C 프로그램의 기본 C 프로그램의기본 목차 C 프로그램의구성요소 주석 main 함수 출력 C 언어의입력과출력 변수 printf 함수 scanf 함수 2 예제 2-1 : 첫번째 C 프로그램 3 2.1.1 주석 주석의용도 프로그램에대한설명 프로그램전체에대한대략적인정보를제공 프로그램수행에영향을미치지않는요소 4 2.1.1 주석 주석사용방법 /* 과 */ 을이용한여러줄주석 // 을이용한한줄주석

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (I) Contents 변수와상수 블록과변수의범위 수식과연산자 제어문과반복문 문자와문자열 배열, 포인터, 메모리관리 구조체 디버거 (gdb) 사용법 2/17 Reference The C Programming language, Brian W. Kernighan, Dennis M. Ritchie, Prentice-Hall

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 1,..... @ 1 Green Project 1991 Oak Java 1995. 5 December '90 by Patrick Naughton, Mike Sheridan and James Gosling Embedded in various consumer electronic device 1992. 9. 3 Star 7 1993 www portability

More information

PowerPoint Presentation

PowerPoint Presentation 컴퓨터프로그래밍 Computer Programming 08 포인터기초 목차 1. 포인터변수와선언 2. 간접연산자 * 와포인터연산 3. 포인터형변환과다중포인터 컴퓨터프로그래밍 (Computer Programming) - 08 포인터기초 3 1. 포인터변수와선언 주소개념 주소 address 메모리공간은 8비트인 1 바이트마다순차적인고유한번호 메모리주소는저장장소인변수이름과함께기억장소를참조하는또다른방법

More information

Tcl의 문법

Tcl의 문법 월, 01/28/2008-20:50 admin 은 상당히 단순하고, 커맨드의 인자를 스페이스(공백)로 단락을 짓고 나열하는 정도입니다. command arg1 arg2 arg3... 한행에 여러개의 커맨드를 나열할때는, 세미콜론( ; )으로 구분을 짓습니다. command arg1 arg2 arg3... ; command arg1 arg2 arg3... 한행이

More information

KNK_C02_form_IO_kor

KNK_C02_form_IO_kor Formatted Input/Output adopted from KNK C Programming : A Modern Approach The printf Function (1/3) printf 함수는출력될문자열과해당문자열에포함되어야할값들로구성되어있음 printf(format_string, expr1, expr2, ); 출력될문자열은일반글자들과 % 로시작되는형식지정자가포함될수있음

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 Power Java 제 7 장클래스와객체 이번장에서학습할내용 객체지향이란? 객체 메시지 클래스 객체지향의장점 String 클래스 객체지향개념을완벽하게이해해야만객체지향설계의이점을활용할수있다. 실제세계는객체로이루어진다. 객체지향이란? 실제세계를모델링하여소프트웨어를개발하는방법 절차지향과객체지향 절차지향프로그래밍 (procedural programming): 문제를해결하는절차를중요하게생각하는방법

More information

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과

임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수

More information

Microsoft Word - Lab_080104A.docx

Microsoft Word - Lab_080104A.docx BASH Shell Script 3rd Lab 1. 쉘스크립트 간단한쉘스크립트 $ vi hello.sh (hello.sh) echo hello world $ chmod 755 hello.sh $./hello.sh hello world #! 은쉘에게이프로그램을실행하기위해서 #! 다음에오는아규먼트를실행프로그램으로사용한다는것을알려주기위해서사용된다. Unix/Linux

More information

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint 웹 연동 기술.pptx 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우

More information

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Microsoft PowerPoint - chap03-변수와데이터형.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 학습목표 의 개념에 대해 알아본다.

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

Microsoft PowerPoint - 02-Shell-Programming

Microsoft PowerPoint - 02-Shell-Programming 2. 쉘프로그래밍 상명대학교소프트웨어학부 쉘 (Shell) 쉘 : 명령어해석기 단말기나파일로부터입력된명령을해석하여적절한명령을실행 시스템환경변경, 명령어입력편의를제공 쉘의종류 Bourne Shell(sh) /bin/sh Korn Shell(ksh) /bin/ksh C Shell(csh) /bin/csh Bourne Again Shell(bash) /bin/bash

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

TEST BANK & SOLUTION

TEST BANK & SOLUTION TEST BANK & SOLUTION 어서와자바는처음이지!" 를강의교재로채택해주셔서감사드립니다. 본문제집을만드는데나름대로노력을기울였으나제가가진지식의한계로말미암아잘못된부분이있을것으로사료됩니다. 잘못된부분을발견하시면 chunik@sch.ac.kr로연락주시면더좋은책을만드는데소중하게사용하겠습니다. 다시한번감사드립니다. 1. 자바언어에서지원되는 8 가지의기초자료형은무엇인가?

More information

PowerPoint Template

PowerPoint Template JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Lecture 02 프로그램구조및문법 Kwang-Man Ko kkmam@sangji.ac.kr, compiler.sangji.ac.kr Department of Computer Engineering Sang Ji University 2018 자바프로그램기본구조 Hello 프로그램구조 sec01/hello.java 2/40 자바프로그램기본구조 Hello 프로그램구조

More information

<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770>

<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770> 25 강. 수열의극한참거짓 2 두수열 { }, {b n } 의극한에대한 < 보기 > 의설명중옳은것을모두고르면? Ⅰ. < b n 이고 lim = 이면 lim b n =이다. Ⅱ. 두수열 { }, {b n } 이수렴할때 < b n 이면 lim < lim b n 이다. Ⅲ. lim b n =0이면 lim =0또는 lim b n =0이다. Ⅰ 2Ⅱ 3Ⅲ 4Ⅰ,Ⅱ 5Ⅰ,Ⅲ

More information

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 6 장선택과반복 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break문 continue문 지금까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 3 가지의제어구조 조건문 문장이실행되는순서에영향을주는문장 조건에따라서여러개의실행경로가운데하나를선택

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

Microsoft PowerPoint UNIX Shell.pptx

Microsoft PowerPoint UNIX Shell.pptx UNIX SHELL 문양세강원대학교 IT 특성화대학컴퓨터과학전공 Shell? Shell 이란명령어해석기 (Command Processor or Command Interpreter): 사용자가입력하는명령을읽고해석하는프로그램 프로그래밍언어 : Shell 이해석할수있는스크립트 (shell script) 라는프로그램을작성 유닉스를사용하는데있어주요한인터페이스 Page

More information

Modern Javascript

Modern Javascript ES6 - Arrow Function Class Template String Destructuring Default, Rest, Spread let, const for..of Promises Module System Map, Set * Generator * Symbol * * https://babeljs.io/ Babel is a JavaScript compiler.

More information

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770>

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770> 예약어(reserved word) : 프로그래밍 언어에서 특별한 용도로 사용하고자 미리 지정한 단어 - 프로그램의 구성요소를 구별하게 해주는 역할 => 라벨, 서브 프로그램 이름, 변수에 연관되어 다른 변수나 서브 프로그램 등과 구별 - 식별자의 최대길이는 언어마다 각각 다르며 허용길이를 넘어서면 나머지 문자열은 무시됨 - FORTRAN, COBOL, HTML

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

Design Issues

Design Issues 11 COMPUTER PROGRAMMING INHERIATANCE CONTENTS OVERVIEW OF INHERITANCE INHERITANCE OF MEMBER VARIABLE RESERVED WORD SUPER METHOD INHERITANCE and OVERRIDING INHERITANCE and CONSTRUCTOR 2 Overview of Inheritance

More information

프로그래밍 Company 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 ( 1

프로그래밍 Company 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 (  1 프로그래밍 Compay Logo @ 서울대학교통계학과 2010년 2학기컴퓨터의개념및실습 (http://dcom10.ez.ro/) 1 프로그래밍 프로그래밍의개념소개 주요프로그래밍언어소개 C, C++ Java 전공수업에서다룰전용프로그램의 스크립트 프로그래밍소개 Matlab, R SAS, S-Plus, SPSS Maple, Mathematica 기타전공과목별전용통계프로그램

More information

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770> IT OOKOOK 87 이론, 실습, 시뮬레이션 디지털논리회로 ( 개정 3 판 ) (Problem Solutions of hapter 7) . 반감산기와전감산기를설계 반감산기반감산기는한비트의 2진수 에서 를빼는회로이며, 두수의차 (difference, ) 와빌림수 (barrow, ) 를계산하는뺄셈회로이다. 에서 를뺄수없으면윗자리에서빌려와빼야하며, 이때빌려오는수는윗자리에서가져오므로

More information

중간고사

중간고사 중간고사 예제 1 사용자로부터받은두개의숫자 x, y 중에서큰수를찾는알고리즘을의사코드로작성하시오. Step 1: Input x, y Step 2: if (x > y) then MAX

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

4장.문장

4장.문장 문장 1 배정문 혼합문 제어문 조건문반복문분기문 표준입출력 입출력 형식화된출력 [2/33] ANSI C 언어와유사 문장의종류 [3/33] 값을변수에저장하는데사용 형태 : < 변수 > = < 식 > ; remainder = dividend % divisor; i = j = k = 0; x *= y; 형변환 광역화 (widening) 형변환 : 컴파일러에의해자동적으로변환

More information