프로그래밍

형들 자바 2차배열 응용문제 풀어본건데 좀 봐주라

ㅅㅂ..왤케 어렵냐...2차배열을 0~8까지를 출력할떄 랜덤하게 나오는데 중복된 수가 안나오게 만드는건데

왤케 어려운거야..?비전공에다 프로그래머 지식이 없으니까 아무리 생각해도 답이 안나오네

1차원 배열로 할떈 되는데 2차원으로 하려니까 ..ㅅㅂ..ㅠㅠ 중 값 제거하는 반복문을 써도

자꾸 수가 몇개씩 중복되서나옴.. 제거가 안되고 걍 0~8까지 랜덤하게 막나오는거 같은데

하.. 내가 짠건데 잘못짠거야?? 다 엎고 처음부터 짜야됨??

오늘 아침부터 생각해보고 이것저것 짜보다 안되서 검색해봤는데

비슷한 문제풀이 밖에 없어서 보고 내가 생각해서 넣어봤는데..

 Random 랜덤 = new Random();
    int[][] 배열 = new int[3][3];
   
    for(int i=0;i<3;i++)
    {
    for(int j=0;j<3;j++)
     {
     배열[i][j] =랜덤.nextInt(9);
      for(int k=0; k<j;k++)
      {
       if(배열[i][j] ==배열[i][k])
       {
        j--;
        break;
       }
      }
      }
      
    }
    for(int i=0;i<3;i++)
    {
     for(int j=0;j<3;j++)
     {
      System.out.println(배열[i][j]);
     }
    }
   
 }

19개의 댓글

2019.03.20

같은줄에 대해서만 중복값 제거인거 같은데

0
2019.03.21
@8AiTNaVl

헐 진짜?? ㅠㅠ 초보라 제대로 읽을 줄도 모르네 다시 봐애겠다

0
2019.03.20

5번째줄 배열[i][j] =랜덤.nextInt(9); 에서 assign 하기 전에

 

막 지금까지 사용한 숫자들 담을 어레이 만들어서

 

랜덤으로 뽑은 숫자가 그 어레이에 없으면 assign 하고 아니면 다시 랜덤 뽑은 방법으로 하면 되지 않을까?

0
2019.03.21
@명의 애들엄마

내가 아직 전문용어 익숙지 않아서..존 더 순화해서 말해줄 수 있을까여

0
2019.03.21
@최지로

랜덤 뽑은 숫자가 배열에 없으면 입력하고 없으면 다시 랜덤 돌리라는 소리

array = 배열

assign = 할당

0
2019.03.20

저 k 도 0 1만 검사한다아님??? 소스코드로 짜기전에 숫자부터 체크해봐야하는거아녀

아 그건 상관없긋네

아무리 생각해도 배열 하나 더 만들고 비교해가며 걍 출력하면 안됨? 저방법 너무 비효율적이고 되긴되는건가?

0
2019.03.21
@ayahyahyah

꼭 이 방법만 있는건 아닌데 내 대가리로는 2차 배열로 하려면 저거밖에 모르겠어서..

코드 자체가 이상한가?ㅠ

0
2019.03.21
@최지로

저건 단순히 1차원 배열을 2차원배열에 집어넣은거. ij ik 비교할게 아니라 ij tk 이런식으로 비교해야할걸 단순히 생각해도 11 - 11 12 13 이거 비교하고 11 21 22 23 이런거랑은 비교를 안하는거니께

0
2019.03.21
@ayahyahyah

아..맞아 ㅠㅠ

대가리가 딸려서 1차원에서 했던거만 생각나서 일단 집어넣어 봤는데..하..

너무 복잡하다..

0
2019.03.21

그냥 편하게 0~8까지 저장된 배열을 만들고 2차원 배열에 넣을때마다 아까 0~8까지 저장된 배열을 매번 셔플 하면 안됨?

배열 셔플은 Collections.shuffle(Arrays.asList(1차원배열)); 이런식으로 가능

0
2019.03.21
@잉텔

아..한번해볼게

근데 저 코드가 초보떄도 쓰는거야??

처음 보는 코드라..

0
2019.03.21
@최지로

보통 배열배울때쯤 Arrays라던지 System.arraycopy 이런거 다 알려주지 않나?

0
2019.03.21

흠... 자바는 뭔가 기본적으로 중복 제거 될 것 같은데...

 

나도 랜덤은 자주 안쓰는데 지금 대충 만들어보니 되네.

 

int main()

{

int randomNum[3][3];

int comp = 0;

int i,j,temp;

for(i = 0; i < 3; i++)

{

for(j = 0; j < 3; j++)

{

while(1)

{

temp = rand() % 9;

if(!(comp & (1

0
2019.03.21
@센타까

뭐야 왜 짤려

0
2019.03.21
@센타까

와..되게 나도 이렇게 금방금방 생각나면 좋을텐데

솔직히 지금 정답을 본다고 해도 하나도 이해가 안되서 미치겠다

0
2019.03.21
@최지로

아 댓글 자체가 안달린다. 저거 comp & 뒤쪽에 비트 시프트 들어있는데 그거만 들어가면 두줄이라도 짤리네 ㅋ

자바로 해볼라고 인텔리j깔았는데 프로젝트 만들줄 몰라서 답답하다 ㅋㅋ

0
2019.03.21
@센타까

계속 지우고 쓰고 지우고 쓰고 반복중

이래 어려운게 맞나..ㅠㅠ

대충 느낌이라도 알아야지 질문을 제대로해서 도움이라도 받을텐데

0
2019.03.21
@최지로

C로 만든거라도 참고하려면 짤림테스트 게시물 보렴. 댓글로는 < 두개 넣으면 뒤로 다 짤리드라

0
2019.03.21

[0,8] boolean 배열을 만들고

 

임의의 수를 뽑았을 때 boolean[random.nextint()]가 true면 continue, false면 해당값 true로 바꾸고

 

배열끝까지가면 종료

 

 

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
180576 [컴퓨터] 13900k 시네벤치 R23 돌리면 오류창뜨던거 전력제한 240w 거... 6 ravvit 0 3 시간 전 88
180575 [잡담] 그래픽카드 고주파소리 질문. 4 내일까지 0 3 시간 전 56
180574 [견적] 콤퓨타 하나도 모르는데 견적 좀,, 7 아이마이미마인 0 3 시간 전 68
180573 [컴퓨터] 회사에서 쓸 무소음 or 저소음 기계식 키보드 추천좀.. 11 냥드리퍼 0 4 시간 전 104
180572 [컴퓨터] 컴퓨터 파워 몇w짜리 사는게 좋음? 9 룽니 0 4 시간 전 113
180571 [잡담] 인텔 13,14세대 순정 가이드라인 188W로 잡힘 1 GNStout 2 5 시간 전 139
180570 [컴퓨터] 엔비디아 그래픽카드로 원격 플레이 하려면 컴터 사양 어느정... 1 어중E 0 6 시간 전 95
180569 [잡담] 아직 컴퓨터 1년 더 써야하는데 명조땜에 업글 계획 잡는중 10 손씨네원조비빔밥 0 6 시간 전 80
180568 [견적] 요즘 게이밍 PC 얼마 들어? 7 불타는밀밭 0 8 시간 전 201
180567 [잡담] 키보드 사진 두 개 리밍 2 9 시간 전 139
180566 [컴퓨터] 13년된 컴을 보내주려 합니다. 던파 원활히 돌아가는 견적 8 긍정축재 1 22 시간 전 386
180565 [잡담] 스피커 고민 개붕이 이어서.. 18 배프고다배파고 0 23 시간 전 238
180564 [잡담] 트랙패드 편하냐?? 5 fhana 0 23 시간 전 187
180563 [컴퓨터] 7800x3d로 롤 돌리는 사람 있음? 6 보거 0 23 시간 전 301
180562 [컴퓨터] 윈도우 부팅오류 도움!ㅠㅠ 3 qop 0 1 일 전 90
180561 [컴퓨터] 윈10 인터넷 순간 끊김 문제 해결법 좀 5 해물잠봉 0 1 일 전 140
180560 [컴퓨터] 요새 그래픽카드 어디꺼가 좋음? 11 trader2 0 1 일 전 312
180559 [잡담] 님들 보통 마우스 얼마나 오래 씀 ?? 17 말릭스 0 1 일 전 236
180558 [컴퓨터] 윈도우10 노트북 화면 밝기가 자꾸 변하는데 해결 방법 좀 알... 4 두번하세요 0 1 일 전 84
180557 [프로그래밍] 공통코드테이블은 대체 왜 만드냐 9 잠적자 0 1 일 전 331