기술 습관/개발 잡학지식 [프로그래머스] 타입스크립트로 함께하는 웹 풀 사이클 개발 10-2 - 반복문 (Break & Continue) break문과 continue문 break문의 기본 원리 반복문 while문 내부에서 특정 조건이 되면 break를 만나게 되는데, break문은 while문을 빠져나가게 된다.continue문의 기본 원리 반복문 while문 내부에서 특정 조건이 되면 continue문을 만나게 되는데 이 때 continue 문 이하의 수행은 무시하며 다시 반복의 시작점으로 간다. (skip) 평가 문제 구구단 출력하되 짝수단만 출력하는 프로그램을 작성. 단 continue문을 이용하여 작성 함수 함수의 목적 코드의 가독성 향상 코드의 유지 보수 및 확장 용이함수형 기반 언어의 동작 구조 대부분의 프로그래밍 언어는 함수의 집합체 함수들이 서로 연동하여 유기적으로 동작 함수의 종류 표준 함수 : 언어에서 기본적으로 제공해주는 함수 함수를 라이브러리화 시켜 편리하게 사용할 수 있게 한다. eg. printf 사용자 정의 함수 : 사용자가 자신이 원하는 기능 직접 만들 수 있다. 표준 함수의 기능에 한계가 있다. 정형화된 완구와 가변적인 레고같은 완구의 차이함수의 기본 형태 데이터타입 - 함수가 리턴하는 값의 타입 함수 이름 - 함수 기능과 밀접한 이름으로 만드는 것이 좋다. 인수 목록 - 함수에 필요한 값을 전달 시 사용 함수의 내용 - 중괄호 사이의 영역 안에서 작성 자료형 함수이름 (인수 목록){ 함수 내용 } void 타입 결과값을 리턴하지 않는 함수평가 문제 사각형의 넓이를 구하는 함수를 작성해보자. (가로X세로) 사용자로부터 두 정수를 입력받아 함수의 전달 인자로 전달하고, 사각형의 넓이를 출력하는 함수 작성 // 자바로 대체 void f (int a, int b) { System.out.println(a*b); } 사용자로부터 두 수를 입력받아 두 수를 비교하여 최대값과 최소값을 구하는 함수를 정의 void f (int a, int b) { System.out.println(Math.max(a,b)); System.out.println(Math.min(a,b)); } 커피자판기. 100원 -> 블랙커피 200원 -> 밀크커피. 인자값으로 받은 가격에 따라 다르게 출력되도록 구현 void f (int price) { if(price ==100){ System.out.println("블랙커피")); }else if(price == 200) { System.out.println("밀크커피"); } } 변수의 범위 지역 변수 스택 메모리에 존재하는 시간? - 언제 생성되고 언제 소멸되는가. -> 해당 함수의 시작과 함께 생성되고 종료시 소멸된다. 함수의 매개변수도 스택메모리에 할당되는 지역 변수이다.전역 변수 함수 바깥쪽에 선언된 변수 메모리 공간 중 데이터 영역에서 생성.(스택과 힙 영역이 아님) 전역변수는 프로그램 시작하자마자 메모리상에 올라가서 프로그램이 종료될 때 메모리상에서 소멸된다.static 변수 지역변수처럼 중괄호 영역에서 선언되지만 중괄호를 벗어나도 매모리상에 고정되어 소멸하지 않음. 메모리 생명주기 평가문제 매일의 읽은 책 페이지를 입력해 누적된 읽은 페이지를 출력하시오. (종료하려면 -1 입력, 전역변수로 구현 및 static 변수로도 구현) 배열1 같은 속성을 가진 것들을 나열 요소가 순서대로 여러개 모인 것 배열의 요소는 같은 속성을 지니고있어야 함 배열2 문자열에 이름을 붙여주면 변수로 사용 가능null문자 문자열 끝에는 null문자가 반드시 추가된다. 필요한 이유 사람은 문자와 쓰레기값을 구분하지만, 컴퓨터는 구분이 불가능 컴퓨터가 문자열의 끝을 인식하기 위해 null을 표시. 포인터 C언어의 통곡의 벽 메모리는 주소를 통해 메모리에 접근하여 값을 읽고 쓸 수 있다. 문자 타입 1바이트, 정수타입 4바이트, 실수타입 8바이트 포인터의 개념 포인터는 포인터 변수의 줄임말로 메모리의 주소값을 저장하고 있는 변수 보통 주소값을 저장한다는 표현을 반대로 해당 메모리를 가리킨다고도 표현. 어느 특정 메모리 주소를 가리키거나 향하고 있다는 뜻 포인터 사용방법 포인터 변수 선언시 일반 변수명 앞에 * 기호만 붙여주면 된다. 주소값만 저장하겠다는 의미. & 기호를 통해 변수의 주소값을 얻어올 수 있다. 포인터 변수 pB가 변수 b의 주소값을저장하고 가리킨다고도 표현 #include<stdio.h> int main(void){ int b = 100; int *pB = &b; printf("b= %d\n",b); printf("&b= %x\n",&b); printf("*pB= %d\n",*pB); printf("pB= %x\n",pb); return 0; } 포인터와 배열 배열의 이름은 해당 배열의 첫번째 요소의 주소값을 갖고있다. 즉 첫번째 요소의 주소값을 가리키는 포인터. arr == &arr[0] 배열의 이름은 주소값을 갖는 포인터지만 상수이므로 주소값을 변경할 수 없다. 함수와 포인터 값 복사 방법에는 값에의한 복사, 참조에 의한 복사 두가지가 있다. 값 복사시 메모리를 공유하지 않고 별도의 메모리를 할당받음 배열형의 인자는 포인터형으로 받는다.-> 참조에 의한 복사시 주소값을 복사 공유하기 URL 복사카카오톡 공유페이스북 공유엑스 공유 게시글 관리 구독하기기술 습관 Contents break문과continue문 break문의기본원리 평가문제 함수의목적 함수의종류 void타입 지역변수 메모리생명주기 평가문제 포인터의개념 당신이 좋아할만한 콘텐츠 [프로그래머스] 타입스크립트로 함께하는 웹 풀 사이클 개발 10-5 2024.05.05 [프로그래머스] 타입스크립트로 함께하는 웹 풀 사이클 개발 10-4 2024.05.04 [프로그래머스] 타입스크립트로 함께하는 웹 풀 사이클 개발 10-1 2024.04.29 [Docker] Windows에서 Docker를 사용하면 좋은 이유? 혹은 좋지 않은 이유? 2024.03.23 댓글 1 + 이전 댓글 더보기