[kotlin] 안드로이드 코틀린 배열

일반적인 변수는 변수 하나당 값을 하나만 저장할 수 있습니다. 하지만 필요에따라 하나의 변수에 여러 값을 저장해야 하는 경우가 발생합니다. 이를 위해 코틀린 에서는 배열과 컬렉션 이라는 데이터 타입을 제공 합니다. 배열과 컬렉션의 차이는 배열은 저장해야 할 값의 갯수를 지정해서 사용하고 컬렉션은 저장해야 할 값의 갯수를 지정하지 않도 됩니다. 해당 포스팅은 배열에 대한 간단한 선언 방법과 값의 변경 그리고 값을 사용하는 방법을 설명합니다. 배열의 선언 방법 1. 배열의 선언 * 각 데이터 타입 별로 10개의 빈공간이 할당 됩니다. 2. 배열의 선언과 동시에 값을 저장 * 인덱스 0~9까지 차례대로 숫자 1~10의 값이 저장 됩니다. * 모든 생성된 배열의 첫번째 인덱스는 0부터 시작 됩니다. ex) 인덱..

C언어 로또번호 생성하기 (당첨확률높이기)

_C언어 로또번호 생성하기 핵심요소조건문, 반복문, 함수, 배열, 포인터, 구조체 사용정렬, 짝수&홀수 판별라이브러리 함수 이번 포스팅에서 로또 번호를 출력을 해보려 합니다.일반적인 1~45 사이의 숫자 6개를 랜덤하게 뽑아내는 것이 아니라 조건을 넣어 출력을 해봅시다.해당 조건을 넣음으로써 다양하게 프로그래밍을 연습 할 수 있습니다.(극악의 번호들이 나올 경우를 줄여 당첨 확률을 높일 수 있습니다.) 조건1) 원하는 만큼 출력 할 수 있어야 한다.조건2) 같은 줄에 중복된 숫자가 없어야 한다.조건3) 같은 줄에 숫자가 모두 홀수가 아니어야 한다.조건4) 같은 줄에 숫자가 모두 짝수가 아니어야 한다.조건5) "1-2-3-4-5-6" 과 같은 수열이 아니어야 한다. - 헤더 파일, 함수를 우선 선언 하여 ..

C언어 가위 바위 보 게임 만들기(Rock Paper Scissors GAME)

열혈강의 C 410p 도전5가위 바위 보 게임을 만들어 보자. 사용자로부터 가위 바위 보 중 하나를 입력받는다. 그리고 난수 생성 함수를 이용하여 컴퓨터는 가위 바위 보 중에서 하나를 선택하게 한다.그리고 이둘을 비교해 승자와 패자를 가려주는 프로그램을 만들어보자. 조건 1) 사용자가 질 때 까지 반복해야 한다.옵션 1) 결기결과를 출력하도록 해보자. #include#include#include#pragma warning(disable:4996) // scanf 보안 경고 제거용int fight(int n,int *r);int randnum(); int main(void) {int num;int chek = 0;int result[3]={0}; // 결과 저장용 배열while (result[2] < 1)..

C언어 배열 90도씩 회전시켜 출력하기

열혈강의 C 406p 도전1길이가 4x4인 int 형 2차원 배열을 선언하고 모든 요소를 아래 그림의 왼쪽에 있는 형태와 동일하게 초기화하자. 그리고 배열의 요소들을 오른쪽 방향으로 90˚씩 이동시켜서 그 결과를 출력하는 프로그램을 작성해 보자. 참고로 배열이 변경되는 형태는 다음과 같다. #include int main(void) {int array[][4] = {{ 1, 2, 3, 4 },{ 5, 6, 7, 8 },{ 9, 10, 11, 12 },{ 13, 14, 15, 16 }}; int i, j;for (i = 0; i < 4; i++) {for (j = 0; j < 4; j++)printf("%2d ", array[i][j]);printf("\n");}printf(" ▼\n"); for (i =..

C언어 '포인터 배열'과 '배열 포인터'의 차이점

주로 포인터와 배열에 처음 입문한 사람들미 많이들 힘들어 하는데 그중 하나가 '배열 포인터'와 '포인터 배열'이다.저 두개의 말만 보아도 머리가 아파온다 하지만 어떻게 보면 그리 어렵지도 않은 것들이다.아래의 문장들을 보자. int * who_a[4]; // 포인터 배열int (*who_b)[4]; // 배열 포인터 감이 오는가? who_a와 who_b의 유일한 차이점은 소괄호의 유무이다. 하지만 이 하나의 차이가 꾀나 다른 뜻을 가진다. 우선 who_a는 int형 포인터의 배열이다. 즉, 배열의 선언이 되는 것이다.who_b는 int형의 배열을 가리키는 포인터 변수이다. 이것은 포인터 변수의 선언이 된다. 아래의 소스코드를 참고하면 이제 완벽히 알 수 있을 것이다. #include int main(vo..

C언어 다차원 배열 - 3차원 배열

3차원 배열에 대한 설명을 하기에 앞서 몇가지의 사실을 알았으면 한다. 3차원배열은 흔히 사용되는 배열이 아니며, 여러분이 2차원 배열을 이해하고 있다면 3차원 배열도 이해하고 있다는 것이다. 따라서, 2차원 배열을 100%다 알고 있다면 3차원 배열에서 추가적으로 알아야할것은 많지가 않다. 하지만,만약 3차원 배열이 이해가 안된다면 다차원 배열에 대한 이해가 부족하거나 다차원 배열이 익숙치않은 것이다. 3차원 배열이란? 2차원 배열이 세로와 가로를 가진 사각형 형태의 모양이라 한다면 3차원 배열은 가로, 세로 그리고 높이가 추가 되었다고 볼 수 있다.이것은 직육면체와 같은 모습이며, 흔히들아는 장난감 큐브와 같다. 우선 아래의 코드를 실행하여 3차원 배열의 크기를 확인하자.그러면 3차원 배열의 구조를 ..

C언어 다차원 배열 - 2차원배열

다차원 배열이란? 기본적인 1차원 배열과 2차원 배열, 3차원 배열이라는 것들을 통틀어 다차원 배열이라한다.배열이란? - 바로가기 위의 링크를 클릭하여 배열을 살펴보면 알겟지만 1차원 배열은 논리적으로 1차원의 형태를 띤다.그럼 2차원 배열과 3차원 배열은 마찬가지로 논리적으로 2차원과 3차원의 형태를 띄고 있다.즉 2차원 배열은 가로와 세로을 가지는 평면구조의 사각형의 형태를 가지지만 3차원 배열은 가로와 세로, 높이를 가지는 직육면체의 구조를 가진다. 여기서 알아두어야 할것은 C언어에서는 문법적으로 4차원 5차원 또는 그이상을 허용을 하지만 불필요 하기도하고 논리적으로 이해하기힘들어 사용하지 않는다. 따라서 다차원 배열이라 하면 1차원, 2차원, 3차원 배열을 의미한다고 보면된다. 먼저 2차원 배열을..

C언어 배열(Array)에 숫자 10개 입력하여 홀수, 짝수 따로 출력하기

[윤성우의 열혈C프로그래밍 도전! 프로그래밍2 -도전1]길이가 10인 배열을 선언하고 총 10개의 정수를 입력 받아서, 홀수와 짝수를 구분 지어 출력하는 프로그램을 작성하여 보자. 일단 홀수부터 출력하고 나서 짝수를 출력하도록 하자. 단, 10개의 정수는 main 함수 내에서 입력 받도록 하고, 배열 내에 존재하는 홀수만 출력하는 함수와 배열 내에 존재하는 짝수만 출력하는 함수를 각각 정의해서 이 두 함수를 호출하는 방식으로 프로그램을 작성하여라. #include#pragma warning(disable:4996) // scanf 보안 경고 제거용#define SIZE 10 void odd_num(int n[]); // 홀수출력 함수선언void even_num(int n[]); // 짝수출력 함수 선언 ..

JAVA 배열(Arrays)의 활용과 팁(tip)

배열(Arrays)이란? - 바로가기 배열을 사용할때 사용자가 0이아닌 임의의 수로 초기화를 하고 싶을 때는 어떻게 하여야 할까?0을로 초기화를 하기 위해서는 그냥 객체를 생성해주면 자동으로 0으로 초기화가 이루어진다.하지만 사용자가 원하는 수로 초기화 하는 방법에는 약간의 차이가 있다 일반적인 배열의 선언과 객체생성 그리고 0으로 초기화int[] num = new int[10]; 사용자가 원하는 수로 초기화int[] num = new int[] {10,20,30,40,50,60};이렇게 작성할 수 있다.배열의 갯수를 적지않는 이유는 주어진 초기값의 갯수만큼 자동으로 배열을 생성해주기 때문이다. 한가지 팁이라면 저 문장에서 굳이 new를 사용하여 생성을 하지 않아도 된다. 모든것이 자동으로 생성이 된다...

JAVA 배열(Arrays)이란?

배열은 같은 타입의 변수들의 모임이며 배열은 하나의 이름을 공유한다.자바에서는 C언어와는 달리 배열은 하나의 객체이다. 따라서 객체들을 생성하고 선언하는 것과 유사한 절차를 거처야 한다.즉 먼저 참조변수를 선언하고 이어서 객체를 생성하여야 한다.- c언어 - 정적 배열- JAVA - 동적 배열c언어 배열 - 바로가기JAVA 객체 - 바로가기 그럼 배열을 사용하는 이유는 무엇일까?만약에 100명 학생의 점수를 입력해야 한다면 변수를 100개 선언해야할까?이작업은 너무나도 귀찮고 힘든 작업이다. 그래서 이러한 상황에 배열을 사용하는 것이다. 간단히 예제를 만들어 보겠다.학생 10명의 점수를 입력받아 합을 구해보자. public class Test {public static void main(String[] ..