목록전체 글 (72)
이우의 개발일지
stringsteam은 언제 사용해야할까? 프로그래머스 문제 중 가장 많이 받은 선물이란 문제가 있다.여기서 누가 누구에게 선물을 줬는지 입력을 받을 때 ["a b", "b a", "c a", "a c", "a c", "c a"] 이런식으로 "a b" 이면, a가 b에게 선물을 줬다. 라는 입력이다.이 입력을 처리할려면 a와 b를 따로 구분하는 코드를 짜야하는데, 이 역할을 stringstream이 해준다. for(int i = 0; i > from >> to; int fromIdx = m[from], toIdx = m[to]; count[fromIdx][toIdx]++; point[fromIdx]++; point[toIdx]--; } 위 코드를 ..
동적할당이란?동적 할당, 본래의 의미로는 동적 메모리 할당으로 사용자가 임의로 원하는 영역(Size) 만큼 메모리에 할당(Allocation)하는 기법을 말한다.지역적으로도, 전역적으로 접근이 가능하며 변동적(런타임 상황에 따라 변경이 됨)이기 때문에 메모리의 힙 영역에 적재된다. 동적할당을 이용한 문자열 복사하기 #include #include #include#include #include using namespace std;const int kMaxstr = 100; // 전역변수 설정 bool IsEqual(const char st1[], const char str2[]) { for (int i = 0; i 동적할당하는 방법 char *dynamic_char = new char[kMaxstr];이..
문자열 비교 함수 만들기내가 지정한 문자와 입력한 문자가 같으면 종료, 다르면 계속하는 함수 #include #include #include#include using namespace std;const int kMaxstr = 100; // 전역변수 설정 bool IsEqual(const char st1[], const char str2[]) { for (int i = 0; i > str2; if (IsEqual(str1, str2)) { cout ※주의할 점은 bool IsEqual 함수에서 if(st1[i] == str2[i])는 어차피 같으면 넘어가니깐, 굳이 안넣어줘도되는데 처음에 했을 때 안됐던 이유가else if (st1[i] == '\0') return true; else if (st..
포인터 정의 포인터는 C++ 프로그래밍의 핵심적인 부분으로, 변수의 메모리 주소를 저장하는 변수이다. 포인터를 이해하고 사용하는 것은 C++ 프로그래밍의 중요한 측면 중 하나이다.int a = 123;cout 포인터 변수에 *를 붙여줘야 그 주소값 안에 있는 값을 불러온다. 포인터 배열int arr[3] = {1,2,3};int *p = arr; // arr[0]을 가리키고 있는 상태배열의 이름은 이미 배열의 첫번째를 가르키는 포인터로 &를 안붙여줘도 사용할 수 있다.
보간법이란? 연속적 변수 가운데 어느 간격을 둔 두 개 이상의 값을 알고, 그것들을 만족시키는 어느 함수의 형을 정하며 그 사이의 변숫값에 대한 함수의 값을 구하는 근사 계산법. 즉, 우리가 주어진 값으로 임의의 값을 예측할 때 쓰는 방법을 보간법이라고 합니다. 가장 단순하게 알려진 것이 바로 '선형 보간법'인데요. 선형보간법이란? 선형 보간법(線型補間法, linear interpolation)은 끝점의 값이 주어졌을 때 그 사이에 위치한 값을 추정하기 위하여 직선 거리에 따라 선형적으로 계산하는 방법이다. 다항식 보간법이란? 2차 이상의 다항식을 보간법을 이용해서 찾는 것인데, (n+1)개의 점을 지나는 다항식은 n차 이하의 유일한 다항식으로 표시가 가능하다. 미정계수법 다항식을 찾아내는 가장 보편적인..
안드로이드 스튜디오를 통해 앱을 만들면 사용자가 볼 수 있는 View에 관련한 것들을 만들어야 합니다. 그래서, 이번에는 View에 관련된 내용을 다뤄보도록 하겠습니다. View class View class는 이런식으로 세분화 됩니다. 화면에 보이는 요소를 View라고 하고 그 요소들을 배치하는 레이아웃을 ViewGroup이라고 생각하면 됩니다. 그 외에 TextView, ImageView, ProgressBar 등이 존재합니다. UI XML resource XML 코딩을 할 때 button이든 textView이든 꼭 들어가는 부분이 있습니다. resource를 쓸 때 꼭 추가해줘야하는 4가지 구문입니다. 4가지 중 1가지는 꼭 써줘야한다는 말이죠. 그럼, 여기서 궁금증이 생길 수 있습니다. 아직, X..
안드로이드 스튜디오 Toast class Toast class란? Toast class는 짧은 메세지를 사용자에게 표시할 때는 클래스이다. 일종의 팝업 메세지 같은 것이라고 생각하면 된다. Toast.makeText(getApplicationContext(), "안녕, Toast!", Toast.LENGTH_SHORT).show(); 이렇게 쓰면 "안녕, Toast!"라는 메세지를 Toast를 통해 화면에 표시된다. 전체 코드는 이렇게 된다. import android.widget.Toast; class MainActivity extends AppCompatActivity { protected void someMethod() { String text = “Sending message...”; int du..
안드로이드 스튜디오를 공부하던 중 java를 쓰는 java 파일 이외에 존재하는 activity_main.xml의 역할이 궁금해서 조사를 해봤다. 안드로이드 스튜디오 xml 역할 간단하게 xml의 역할은 이러하다. - UI 디자인 및 레이아웃 - 리소스 정의 - 메뉴 및 대화상자 정의 - 애니메이션 및 트랜지션 정의 - 매니페스트 파일 - 설정 및 자원 관리 - 데이터 포맷 - 웹 서비스 통합 아직 이 모든 요소들이 xml 역할로 와닿지 않지만, 확실한건 앱을 구성할 때 쓰는 UI로 xml의 역할이 중요하다는 것이다. 예제코드 EX) AndroidMainFest.xml 1. 요소: 앱의 매니페스트 파일의 루트 요소로, 앱의 기본 정보를 정의합니다. xmlns:android: XML 네임스페이스를 정의하며..