본문 바로가기

FALL in

[C프로그래밍] - 구조체 구조체 정의와 선언 구조체도 배열처럼 여러개의 데이터를 그룹으로 묶어서 하나의 자료형으로 정의하고 사용하는 자료형이다. 배열과 구조체가 다른점이 있다면, 배열은 같은타입의 데이터만 그룹으로 묶을수있고, 구조체는 다른타입의 데이터도 그룹으로 묶을수 있다는 것이다.예를 들어, 학생수가 30명인 어떤 반의 학생들의 수학성적을 저장하고 싶다면 int score_math[30]; 와 같이 배열을 선언하고 사용할수 있다. 하지만, 그 반 학생의 이름, 번호, 수학성적, 영어성적를 저장하고 싶다면 아래와 같이 구조체를 정의하여 사용하면 편리하다. //학생 구조체 정의struct Student //구조체 이름{//구조체에 들어갈 항목 선언char name[20];int number;int score_math;int s.. 더보기
[C프로그래밍] - 배열 배열(Array) 배열은 같은 자료형(data type)을 가진 변수들의 나열이라고 생각하면된다. 배열은 나누어서 할당 될 수 없고 메모리에 연속적으로 저장된다. (메모리에 연속된 공간이 필요하다 ) 인덱스(index) : 배열의 요소를 구별하기위해 사용하는 번호이다. C에서 인덱스는 항상 0부터 시작한다. 1차원 배열 1차원 배열의 선언 형식은 아래와 같다. 데이터타입 배열이름[배열요소(변수)개수]; 예들들어, 정수변수가 10개 들어갈 수 있는 배열 arr라는 배열을 선언하려 하면 아래와 같이 선언하면 된다.int arr[10];int형 배열요소 10개로 구성된 배열 arr이라는 뜻이다.배열요소는 arr[0]부터 arr[9]까지이고 메모리 할당크기는 int가 4byte이므로 4byte X 10 = 40.. 더보기
[파이썬 클래스] 클래스(classes) >>> class Gma(object):... def __init__(self,name):... self.name = name... def hello(self,loud = False):... if loud:... print 'HELLO,%s!' % self.name.upper()... else:... print 'Hello,%s' % self.name... >>> >>> g = Gma('JiYeon') >>> g.hello()Hello,JiYeon >>> g.hello(loud = True)HELLO,JIYEON! >>> 파이썬에서는 클래스 내부에 선언되는 함수는 self를 첫번째 인자로 가져야한다. self는 자기자신 인스턴스를 의미한다. __init__는 생성자를 의미한다. 객.. 더보기
[파이썬 함수] 함수(Functions) >>> def gma(x): ... if x == 0:... return 'zero'... elif x == 1:... return 'one'... else:... return 'two'... >>> for x in range(3): # range(3) -> [0,1,2]... print gma(x)... zeroone two함수 정의할때는 ' def ' 키워드를 사용한다. >>> def hello(name,loud = False): ... if loud:... print 'HELLO,%s!' % name.upper()... else:... print 'Hello,%s' % name... >>> hello('JiYeon')Hello,JiYeon>>> hello('G.ma',lou.. 더보기
[파이썬 Containers] - 튜플 튜플(Tuples) 튜플은 변하지않는(immutable) 값들의 순서있는 리스트이다. 튜플은 리스트와 유사하지만, 중요한 차이점은 튜플은 딕셔너리의 '키(key)'로 사용될수 있다. 키 값은 변할수 없으므로 리스트는 키로 사용될수 없다. >>> dic = {(x,x+1):x for x in range(10)} # 튜플을 키로한 딕셔너리를 만든다. >>> print dic{(0, 1): 0, (1, 2): 1, (6, 7): 6, (5, 6): 5, (7, 8): 7, (8, 9): 8, (4, 5): 4, (2, 3): 2, (9, 10): 9, (3, 4): 3} >>> tup = (6,7) # 튜플을 생성한다.>>> print type(tup) >>> print dic[tup] # (6,7)을 키로한.. 더보기
[안드로이드 위젯] - Java 코드에서 xml 위젯 참조하기 activity_main.xml([res]->[layout]) MainActivity.java([src]->패키지)package com.example.androidtest;import android.support.v7.app.ActionBarActivity;public class MainActivity extends ActionBarActivity {TextView gma_tv; //위젯객체를 선언한다. @Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);gma_tv = (TextView)findViewById(R.i.. 더보기
[안드로이드 위젯] - 위젯 속성 뷰 앱을 실행하고 화면에 표시되는 최상위 클래스가 뷰이다. 뷰를 상속받은 버튼, 텍스트뷰, 라디오 버튼, 체크 박스 등을 위젯이라고한다. 기본 위젯 속성 - id : 위젯의 아이디를 나타낸다. xml에서 만든 위젯을 java코드에서 참조가능하다. - layout_width , layout_height : 크기를 지정한다. wrap_content는 내용물에 맞게 크기를 맞추라는것이다. - background : 위젯이 배경색을 지정한다. RGB값으로 변경할수 있다. - padding : 위젯과 그 위젯내용물의 거리가 설정된다. 따라서 내용물인 "G.ma" 문자열과 위젯의 거리가 50dp로 설정된다. - layout_margin : 위젯과 위젯사이의 거리가 설정된다. - visibility : 위젯을 화면에.. 더보기
[파이썬 Containers] - 집합 집합 (Sets) 집합은 순서가 없고, 중복되면 안된다. >>> fruits = {'apple','orange'} # 집합 초기화 >>> print 'apple' in fruits # fruits집합안에 'apple'이 있으면 True를 리턴.True >>> print 'banana' in fruitsFalse >>> fruits.add('banana') # fruits집합에 banana를 추가한다.>>> print 'banana' in fruitsTrue >>> print len(fruits) # 집합의 길이 반환.3 >>> fruits.remove('apple') # fruits집합에서 'apple'를 제거한다.>>> print len(fruits)2 -집합 루프(loops)>>> fruits = {.. 더보기
[파이썬 Containers] - 딕셔너리 딕셔너리 (Dictionaries) 딕셔너리는 (key, value)를 저장하는데 key는 구분자이고 value는 내용이다. 예를들어 사전에서 apple을 찾는다고하자. apple은 key가 되는것이고 apple에 대한 설명이 value 가 되는것이다. >>> dic = {'G.ma':'blog','Jiyeon':'person'} # 딕셔너리 초기화 >>> print dic['Jiyeon'] # dic에서 'Jiyeon' 인 키를 찾아 value를 출력한다.person >>> print 'Jiyeon' in dic # dic안에 'Jiyeon'이라는 키가 있는지 찾는다. 있으면 True 출력True >>> dic['cat'] = 'animal' # dic에 key와 value를 추가한다.>>> print.. 더보기
[파이썬 Containers] - 리스트 리스트 (List) 리스트는 파이썬의 배열이라고 보면 된다. 하지만 재크기 조정이 가능하고 다른타입의 원소를 가질수 있다. >>> xs = [1,2,3] # 리스트를 초기화 한다. >>> print xs, xs[2] # xs리스트와 xs리스트의 2번째 인덱스 원소를 출력한다.[1, 2, 3] 3 >>> print xs[-2] # xs리스트의 끝에서 두번째 원소를 출력한다.2 >>> xs[2] = 'G.ma' # xs리스트의 2번째 인덱스에 3대신 'G.ma'를 넣는다.(다른타입 들어감)>>> print xs[1, 2, 'G.ma'] >>> xs.append('jiyeon') # xs리스트 마지막에 'jiyeon'을 추가해준다.(스택의 push와 비슷)>>> print xs[1, 2, 'G.ma', 'ji.. 더보기