현 블로그는 모바일 환경이 아닌 PC환경에 최적화 되어있습니다.

 Mir의 운영환경



이번문제를 풀기전에 알아두어야할 함수(메소드)가 있다.

아직 함수파트에는 들어가지 않았지만 쉽게 이해할수 있으니 잠시 살펴보자


Math.random()

이 함수는 0이상 1미만(0 <= random < 1.0)중의 숫자를 무작위로 생성해 낸다.



int a = (int)(Math.random()*10)

int형 a라는 변수를 선언하였다.

math.radom()은 0이상 1미만까지의 숫자를 무작위로 생성해 내는 함수이니 

*10을 하면 0이상 10미만의 숫자를 무작위로 생성해 낼것이다. (소숫점까지 있을것이다.)

이것을 (int) int형으로 형변환을 한다는것이다.

인트형은 정수를 담는 공간이기때문에 정수 0이상 10미만만 담길것이다.



이러한 성질을 이용하여 만약 1~45까지의 숫자를 무작위로 뽑고싶으면


int a = (int)(Math.random()*44 + 1)


이렇게 식을 써주면 a에는 1~45까지의 숫자중 하나를 담게 될것이다.

자 그럼 문제를 보자.










1. 아래 공식은 0~9중에서 랜덤으로 하나의 값을 ran에 입력하는 공식이다.

아래 공식을 이용하여 10의 크기를 가진 배열안에 랜덤한 숫자를 반복문을 사용하여 집어 넣어라.


int ran = (int)(Math.random() * 10);

--tip. ran을 숫자로 생각하면 a[0]에서 a[10]까지 ran을 넣으면 된다. 








2. 1~10까지의 카드가 10장이 있다.  이카드를 섞어 보자.

tip.  temp = card[1]

   card[1] = card[2]

   card[2] = temp 

이렇게 되면 카드1 와 카드2가 바뀐다.

--tip. 섞는다라는것은 일정한 규칙이 있는것이 아니라 매번 프로그램을 실행할때마다

       순서가 다르게 나와야 되는것이다.






3.배열 a = {7,4,5,2,8,9,1,3,6,0} 으로 값을 넣었다.

이 배열을 a[0] = 0, a[1] = 1, a[2] = 2....처럼 순서대로 되도록 정렬하여라.


--tip 2번문제의 카드를 바꾸는 공식과 if문을 잘 사용해보자.






4.1~10범위의 10장의 랜덤한 숫자의 카드를 만들어서 낮은수부터 출력되게 정렬하여라.

  (카드의 숫자는 중복이 되어도 상관없다.)









3. 로또 번호생성기를 만들어보자.

(1) 6개의 랜덤한 숫자 생성하는 방법  -- 이건 매우 쉽다.

(2) 61개의 숫자가 섞여서 그중 6개 뽑아 낮은순으로 부터 출력해보자.




--- 죄송합니다 정신이 살짝 없어서 제가 문제를 제대로 낸건지도 잘 모르겠네요 ㅠㅠ

최대한 빨리 답&해석을 적어서 올리도록 하겠습니다. 이번주에 자격증 시험 2개를 쳐야되어서 ㅠㅠ

어제 모의고사가 평균 40점도 안나오는바람에.. 공부쪽에 더 신경써야 될거 같네요;;;



------------------------------------------------------------------------------------
본 블로그의 글을 퍼가실때 꼬릿말, 퍼가시는곳 주소를 꼭 남겨주세요.

출처 꼭 기재해주시고요. 상업적인 용도의 이용은 절대 금합니다.

혹 프린트를 할 경우 블로그주소와 함께 프린트 해주세요.
허락을 맡지 않고 무단도용을 할경우 법적인 제제가 있을수도 있습니다.
(전 분명히 경고했습니다. 합의같은거 안합니다.)
그리고 혹 무단도용한것을 보신분은 신고해주시면 사례금 챙겨 드리겠습니다.
-----------------------------------------------------------------------------------

+ Recent posts