[해결] java 질문 드립니다.

   조회 3268   추천 0    

java 관련하여 아이 과제인데

애가 너무 힘들어 하는데 저도 java는 모르다보니 도와 줄수가 없네요.


혹시 아시는분 계시면 힌트라도 부탁드립니다....ㅠㅠ


4x4 크기의 정수 배열 src를 만들고 이곳에 사용자로부터 16개의 정수를 입력받으라. 

그리고 4x4 크기의 정수 배열 binary를 만들고 배열 src의 각 원소에 대해 5보다 작으면 0 으로 5보다 크거나 같으면 1로 binary 배열을 구성하라.



한 줄에 4개씩 총 16개의 양수를 입력하세요 

1 5 8 20 

9 2 6 3 

5 5 10 13 

6 2 2 9 

변형한 binary 배열을 출력합니다. 

0 1 1 1 

1 0 1 0 

1 1 1 1 

1 0 0 1 

* 초록색은 사용자가 입력한 16개의 정수입니다.

- by inoree.com -
짧은글 일수록 신중하게.
언젠가는 2021-09
요새 자바를 많이 안써서... 근데 대충 이정도면 될겁니다.

int[][] src = new int[4][4];
boolean[][] binary = boolean int[4][4];
Scanner in = new Scanner(System.in);

System.out.println("Type the digit:");

for (int i = 0; i < src.length; i++) {
    for (int j = 0; j < src[i].length; j++) {
        int srcin = in.nextInt();
        src[i][j] = srcin;
        if (srcin < 5) {
            binary[i][j] = 0;
        } else {
            binary[i][j] = 1;
        }
    }
}

for (int i = 0; i < binary.length; i++) {
    for (int j = 0; j < binary[i].length; j++) {
        System.out.print(binary[i][j] + " ");
    }
    System.out.println("\n");
}
     
새옹지마아 2021-09
실행해보진 않았지만 NullPointerException 날거 같네요.
두 개의 중첩 loop에서
outer loop(변수 i) 와 inner loop(변수 j)사이에
  src[i] = new int[4] ;

  binary[i] = new int[4] ;
를 각각 넣어줘야 에러 없이 돌 것 같은데요?
          
김황중 2021-09
너무너무 감사합니다...!!!
12시간동안 끙끙대던것을 덕분에 바로 해결할수 있었네요

살짝 에러가 있어서 이 부분 수정하느라 바로 감사 말씀을 못드렸네요...^^;;
최종 완성해 본 소스코드 올려 봅니다.
다행이 이상없이 잘 나오더라고요....헤헤


import java.util.Scanner;

public class Arrangement {
public static void main(String[] args) {


int[][] src = new int[4][4];
int[][] binary = new int[4][4];
Scanner in = new Scanner(System.in);

System.out.println("한 줄에 4개씩 총 16개의 양수를 입력하세요");

for (int i = 0; i < src.length; i++) {
    for (int j = 0; j < src[i].length; j++) {
        int srcin = in.nextInt();
        src[i][j] = srcin;
        if (srcin < 5) {
            binary[i][j] = 0;
        } else {
            binary[i][j] = 1;
        }
    }
}

System.out.println("변형한 binary 배열을 출력합니다.");
for (int i = 0; i < binary.length; i++) {
    for (int j = 0; j < binary[i].length; j++) {
        System.out.print(binary[i][j] + " ");
    }
    System.out.println("");
}
}
}
          
언젠가는 2021-09
c++ 2중 dynamic array는 int**이고 pointer of pointer라 그렇게 하셔야 합니다.
c++ 2중 static array는 int[][]이고 스택에 잡히면 안해도 됩니다.
c++ 2중 mixed(?) array는 *int[]이고... 보통 잘안씁니다..
java는 어차피 [][]밖에 없고 안해도 됩니다.
제온프로 2021-09
멋지군요...
저도 해볼겁니다....

다음 문제 더 주세요..

얼마던지......

혼자만 해 볼겁니다..

위의 두분 코맨트 참고하여 해 볼게요..

4개씩, 4개씩 나눠서 입력받는 코드도 넣어주세요..
     
언젠가는 2021-09
코딩 문제 필요하시면 여기 가시면 됩니다. 학교 다닐때 하루에 하나씩 풀면서 졸업할때까지 다 푸는걸 목표로 삼았는데, 결국 1/4 정도 풀고 졸업했네요
https://projecteuler.net/archives
          
제온프로 2021-09
감사합니다..
문제들이 어렵네요.. 수학자들이 하는 문제들이네요..
DB 하고 연동하는 쪽을 배워야 하는데..
오일러가 논문 쓴 주제들 아닌가요?
               
언젠가는 2021-09
네 말씀대로 알고리즘이랑 수치해석학 공부할때 좋습니다. 오일러가 특히 해석학으로 유명해서 이름을 그렇게 지었을 거에요.
DB 연동이면, 파이선 flask + sqlalchemy가 가장 접근하기 좋습니다. django도 좋은데 사이즈가 좀더 커집니다.


QnA
제목Page 4834/5722
2014-05   5226440   정은준1
2015-12   1753890   백메가
2020-04   3089   keros
2017-05   3089   Ness
2022-07   3089   흰털너부리
2022-10   3089   김동혁1
2023-02   3089   수입산한우
2021-06   3089   먹짱이
2019-10   3089   제라드TN
2019-10   3089   나비z
2018-10   3089   늘파란
2020-10   3089   Psychophysi…
2021-04   3088   꾸띠웍
2017-05   3088   승후니도쿄
2021-09   3088   안이
2019-07   3088   kevin2
2022-05   3088   yummy
2019-06   3088   진영진서
2019-08   3088   김건우
2017-06   3087   바램쓰
2019-04   3087   행아범
2020-02   3087   캔위드