식별자(identifier)는 변수명이나 함수명 등을 만들때 사용된다. 루아의 식별자를 만드는 규칙은 다음과 같다. (C/C++과 동일하다.)


  1. 영어 대소문자(a~z, A~Z), 숫자(0~9), 언더바(_)로만 조합한다.

  2. 숫자로 시작하거나 공백문자를 포함할 수 없다.

  3. 미리 정의된 예약어(keyword)는 사용하면 안된다.


다른 언어에서와 마찬가지로 식별자는 대소문자를 구별한다. 즉, 대문자 A와 소문자 a는 서로 다른 것으로 구별된다. 식별자는 에를 들면 다음과 같은 것들이다.


x, vla, number, _hello, abc, id123, ch_4_5, name_of_that, _image, __sound


루아의 예약어는 프로그램에서 의미를 갖는 단어로서 다음과 같은 것들이 있다.


and, break, do, else, elseif, end, false, for, function, if, in local, nil, not, or, repeat, return, then, true, until, while


또한 예약어 외에 전역 함수(혹은 객체)에 사용되는 식별자도 사용하면 안되며 다음과 같은 것들이 있다.


_G, _VERSION, getmetatable, tostring, assert, io, rawlen, string, load, bit32, pairs, rawset, select, coroutine, tonumber, next, type, table, xpcall, error, utf8, debug, collectgarbage, math, rawget, os, pcall, ipairs, rawequal, print, setmetatable


이러한 규칙에 따라서 식별자를 만들어야 한다.



Posted by 살레시오
,

 식별자(identifier)라는 것은 이름을 말하는데 이 식별자를 변수나 함수의 이름으로 사용할 수 있다. Maxima에서 식별자를 만드는 데 사용될 수 있는 구성 요소는 아래와 같다.

  • 알파벳 대소문자 (A~Z, a~z)

  • 숫자 (0~9)

  • _ (under bar)

  • %

  • \(백슬래쉬)+(특수문자)

 다른 프로그래밍 언어와 달리 맥시마는 식별자를 만들 때 %나 \#, \$와 같은 특수문자 조합도 사용할 수 있다. 또한 식별자를 만들 때 주의할 점은 숫자로 시작하면 안 된다는 것이며 대소문자를 구별한다는 것이다. 올바른 식별자의 예는 다음과 같다.

mA, aa, AA, lstB, _abc, %number, \@myVar, is_this_\#var

 변수에 어떤 수치 값을 대입하려면 콜론(:)을 사용하며 등호(=)가 아님에 유의해야 한다. 처음에 wxMaxima를 사용하기 시작할 때 가장 하기 쉬운 실수 중에 하나가 바로 변수 값을 대입할 때 콜론(:)대신 등호(=)를 사용하는 것이다.



이제 입력과 출력 앞에 붙은 (%i53), (%o60)와 같은 표시를 주의 깊게 살펴보면 이것들이 식별자라는 것을 알 수 있다. 맥시마에서 새로운 명령을 입력하거나 결과가 산출될 때 그것들은 이 변수에 자동으로 저장이 된다. 따라서 차후에 이 변수를 가지고 과거의 입력이나 출력을 참조할 수 있으며 그것들도 일반 변수와 같이 사용할 수 있다.


 기호 _ 는 바로 직전의 입력, %는 바로 직전의 출력이다. 다음 예를 따라서 해보고 결과를 확인해 보자.



그리고 현재 정의된 모든 변수를 확인하려면 values 라는 명령어를 입력하면 된다. 특정한 변수를 삭제하려면 kill() 함수를, 정의된 모든 변수를 제거하려면 kill(all) 명령을 내리면 된다.



 변수명으로 써서는 안 되는 예약어들은 다음과 같은 것들이 있다. (매뉴얼 pp.87)


if, then, else, elseif, and, or, unless,
integrate, next, from, diff, in, at, limit, sum, for, do,
product, while, thru, step



Posted by 살레시오
,

대입문

 Scilab의 문법은 Matlab과 많이 유사하므로 MATLAB에 익숙하다면 기본적인 문법을 그대로 사용할 수 있다. 대입문은 = 연산자를 사용한다.


>> var_name = statement

 

좌변이 변수명이고 우변은 변수에 저장할 값이다. 한 줄에 여러 대입문을 사용할 경우에는  각각의 명령문을 콤마(,)나 세미콜론(;)으로 구분할 수 있다. 명령문 뒤에 세미콜론(;)을 붙이면 명령 수행 결과가 표시되지 않고 세미콜론이 없다면 결과가 화면에 표시된다. (matlab과 동일함)

위 그림에서 두 번째 명령은 세미콜론(;) 으로 끝났으므로 콘솔창에 결과가 표시되지 않으며 세 번째 명령줄의 d=4; 도 마찬가지로 표시되지 않는다.

 Scilab에서 한 줄 주석은 C언어와 마찬가지로 // 을 사용하며  // 뒤에 오는 것들은 모두 무시된다. 여러 줄 주석을 처리하는 기호는 없다. 단 Scinote의 Format > Comment selection 메뉴(단축키는 ctrl-D)를 이용하면 여러 줄 주석 처리를 편하게 할 수 있다.

 여러 줄에 걸쳐서 연속적인 명령을 입력하고 싶다면 줄 끝에 점을 두 개 (..) 이상 입력하고 엔터키를 입력하면 다음 줄에 계속 명령을 입력할 수 있다. 이 경우 다음 명령을 위한 프롬프트가 바로 다음 줄에 표시된다. 이와 대조적으로 실행이 필요한 완전한 문장(statement)이 입력되었다면 실행 후 한 줄 건너 뛰고 프롬프트가 나타나게 된다는 것을 눈으로 확인할 수 있다.


위에서 a=10; 이라는 명령은 실행이 필요한 완전한 문장이므로 실행 후 (*)와 같이 한 줄의 공백이 출력된다. 그러나 b=20, c=30, .. 은 연속된 명령이므로 줄 사이에 공백이 없다.

식별자

  식별자(identifier)는 변수명이나 함수명으로 사용되는 이름이다. 다른 프로그래밍 언어와 마찬가지로 숫자, 알파벳 대소문자와 밑줄 (_)을 조합해서 만들되 숫자로 시작하면 안된다는 것은 동일하다. 그런데 특이하게 Scilab에서는 식별자에 특수기호 %, #, !, $, ? 를 추가로 사용할 수 있으며 %는 사용될 경우 반드시 변수의 첫 문자여야만 된다. 보통 %로 시작하는 변수/함수는 내부적으로 기정의된 특수 상수/함수인 경우가 많다. 식별자는 24자까지만 사용된다. 아래 그림에서와 같이 식별자가 24자가 넘으면 경고가 발생되고 24자까지로 잘려진다. (아래에서 변수의 첫 글자는 숫자 1이 아니라 소문자 L 이다.)

식별자를 요약하면 다음과 같다.

❶ 숫자(0, 1, … 9), 알파벳 대소문자(a...z A...Z), 특수문자(_, %, #,$,!,?)를 조합한다.

❷ 숫자로 시작하면 안된다.

❸ %는 첫 문자로만 사용될 수 있으며 주로 내부 변수/함수명에 사용된다.

❹ 첫 24자까지만 사용된다.

❺ 대소문자를 구별한다.


객체의 이름을 지을 때 이러한 사항들을 고려해야 한다.



Posted by 살레시오
,

1.9 식별자와 예약어    [DOC]    [SMTS]

 식별자(identifier)는 변수나 함수 등의 이름을 지정할 때 사용된다. C언어에서사용되는 식별자를 만드는 데에는 다음과 같은 제약 사항이 있다.


❶ 알파벳 대소문자(a, b, …, z, A, B, …, Z), 숫자(0,1,2, …9), 밑줄(_)을 조합하여 만든다.

❷ 숫자로 시작해서는 안 된다.

❸ 예약어(keyword)는 식별자로 쓸 수 없다.


특수문자로는 유일하게 밑줄(_)문자가 식별자를 만드는데 사용이 되며 이외의 다른 특수문자는 식별자롤 사용할 수 없다. 아래의 예는 올바른 식별자이다.


ia  dbase  cStatus  iMotor10  i_AVR_Name  _reg  _123  For

아래의 예는 올바르지 않은 식별자이다.


123a  A$Bc  %pi  if

 한 가지 주의할 점은 C언어에서는 식별자를 사용할 때 대소문자를 구별한다는 점이다. 즉 다음 네 개의 식별자들은 모두 서로 다른 것으로 구별된다.


ab  Ab  aB  AB

이러한 특징은 거의 대부분의 프로그래밍 언어들에 있어서 공통적으로 해당된다.


 예약어(reserved word, keyword)라는 것은 C언어에서 미리 사용하겠다고 지정되어진 단어로서 식별자로 사용할 수 없는 단어들을 말한다. 몇 가지 예를 표 1.8.1에 기술하였다.


표 1.9.1 C언어의 예약어들

분류

예시

자료형 관련

void, char, int, short, long, float, double, signed, unsigned, enum, struct, union, volatile, static, const, extern, register, auto, sizeof, typedef 등

제어 명령 관련

if, else, for, do, while, switch, case, continue, break, goto, default, return 등

전처리 관련

define, include 등

이 예약어들은 식별자(즉 변수명이나 함수명)로 사용할 수 없으므로 필히 알고 있어야 하지만 C프로그램을 작성하는 경험이 많아지면 자연스럽게 알게 되고, 혹시 실수로 예약어를 변수명이나 함수명으로 사용한다 해도 컴파일러에서 에러를 발생시켜 주므로 크게 걱정할 필요는 없을 것이다.



Posted by 살레시오
,

 프로그램은 결국 자료(data)를 처리하는 일을 주로 하게 된다. 여기에서는 파이썬의 내장 자료형의 종류 대해서 알아보자. 가장 중요하고 사용 빈도가 높은 파이썬 자료형은 다음과 같은 것들이 있다.


  • 숫자 : 정수 (int), 실수 (float), 복소수 (complex)로 나뉜다.

  • 문자열 (str)


  • 리스트 (list)

  • 튜플 (tuple)

  • 딕셔너리(dictionary)

  • 집합 (set)


 변수명, 함수명, 클래스명 등으로 쓸 수 있는 식별자(identifier)를 만드는 방법은 다른 언어들과 거의 동일하다. 식별자를 만들 때 보통 사용되는 문자들은 다음과 같다.


  • 영문자 대소문자 (a,b … z A B … Z)

  • 숫자 (0 1 … 9)

  • 언더바(_)


이러한 문자들을 조합하되 숫자로 시작하면 안된다. 그리고 대소문자를 다른 문자로 구별한다. 그리고 python3에서는 유니코드 문자를 식별자로 사용할 수 있다. 즉, 한글로도 변수명을 지을 수 있지만 권장되지는 않는다.



'프로그래밍언어.Lib > 파이썬' 카테고리의 다른 글

파이썬의 산술 연산자  (0) 2015.05.23
파이썬의 숫자형  (0) 2015.05.23
파이썬(python) 소개  (0) 2015.05.23
파이썬의 math,cmath,numpy 모듈  (0) 2015.04.29
no pylab, thanks  (0) 2015.04.29
Posted by 살레시오
,

  여기에서는 C/C++언어에서 객체의 이름을 짓는 기본 규칙을 설명한다. 변수(variable), 함수(function), 그리고 클래스(class)의 이름을 지정하는데 사용되는 이름을 식별자(identifier)라고 한다. 변수란 어떤 데이터를 저장하는 그릇으로 이해하면 되며 함수나 클래스에 대해서는 뒤에서 자세히 설명할 것이다.


  식별자를 만드는 데에는 다음과 같은 제약 사항이 있다.


        ❶ 알파벳 대소문자(a, b, …, z, A, B, …, Z), 숫자(0,1,2, …9), 밑줄(_)을 조합하여 만든다.

        ❷ 숫자로 시작해서는 안 된다.

        ❸ 최대 길이는 32자이다.

        ❹ C/C++언어의 예약어는 식별자로 쓸 수 없다.


특수문자로는 유일하게 밑줄(_)문자가 식별자를 만드는데 사용이 되며 이외의 다른 특수문자는 식별자롤 사용할 수 없다. 아래의 예는 올바른 식별자이다.


------------------------------------------------------

  iA cStatus iMotor10 i_AVR_Name _reg For

------------------------------------------------------


아래의 예는 올바르지 않은 식별자이다.


------------------------------------------------------

  123a   : 숫자로 시작하면 안 됨

  A@Bc : 특수문자 @은 사용 불가

  %pi    : 특수문자 % 사용 불가

  for      : 키워드는 사용 불가

------------------------------------------------------


  한 가지 주의할 점은 C언어에서는 식별자를 사용할 때 대소문자를 구별한다는 점이다. 즉 다음 식별자들은 모두 서로 다른 것으로 구별된다.


------------------------------------------------------

  ia, iA, Ia, IA

------------------------------------------------------


이러한 특징은 거의 대부분의 프로그래밍 언어들에 있어서 공통적으로 해당된다.​

[#00070]


Posted by 살레시오
,