예를 들어 모든 요소에 4x 빼기가있는 2 차원 테이블 3x2가 있습니다. "----". 예를 들어 32 번 프로그램에 글을 쓰면 첫 번째 숫자는 숫자가 무엇인지, 두 번째 숫자는 연속적으로 나타납니다.2 차원 테이블에 숫자 추가
가이처럼 내 테이블 (32)하게됩니다: 다음
---- ---- 33-- ----
---- ---- -> ---- ----
---- ---- ---- ----
을 우리는 또 다른 하나 (53) 쓸 때 :이 표를 확인됩니다 [0] [0] 비어하고 있는지 경우 두 테이블 모두 비어 있으면 테이블 [1] [0]과 테이블 [0] [1]이 아닌 테이블 [0] [1]을 선택합니다. 이
33-- ---- 33-- 555-
---- ---- -> ---- ----
---- ---- ---- ----
우리는 다른 숫자를 넣을 수 있습니다 :
33-- 555- 33-- 555-
---- ---- -> 444- 22--
---- ---- 333- 222-
우리가 빈 장소 -에 번호를 삽입 모든 곳이 비어 있지 더 여기서 우리가 숫자가 삽입 할 때 "-"기호 - 우리가 숫자를 취할 42 33-- 변화가
33-- 555- 3344 555-
444- 22-- -> 444- 22--
333- 222- 333- 222-
우리가 장소에서 더 많은 수를 삽입하려면 3344에 충분하지 않다가 "-"-이 프로그램은
을 종료3210나는 다음과 같이 시작 :
import java.util.Scanner;
import java.lang.Math.*;
public class Skladisce2
{
public static int dolzina;
public static int sirina;
public static int enote;
public static int tabela[][][];
////////////////////////////////////
//// PREGLED VRSTIC
////////////////////////////////////
public static boolean Vstavi(int barva, int visina) {
int pozdolzina = 0;
int pozsirina = 0;
int najbolProsto = 0;
for(int j=0; j<dolzina; j++) {
for(int i=0; i<sirina; i++) {
int prosto=0;
for(int k=0;k<enote;k++) {
if(tabela[j][i][k]==0){
prosto++;
}
if(prosto>najbolProsto) {
pozdolzina = i;
pozsirina = j;
najbolProsto = prosto;
for (int l=enote-najbolProsto; ((l<enote) &&(visina>0)); l++) {
tabela[pozdolzina][pozsirina][l] = barva;
visina--;}
continue;
}k++;
}
}
}
return true;
}
/////////////////////////////////////
//// IZPIS TABELE
//////////////////////////////////////
public static void Izpis() {
for (int i=0; i<dolzina; i++){
for (int j=0; j<sirina; j++){
for (int k=0; k<enote; k++) {
if(tabela[i][j][k] == 0) {
System.out.print("-");
}
else{
System.out.print(tabela[i][j][k]);
}
}
System.out.print(" ");
}
System.out.println();
}
}
public static void main (String[] args) {
Scanner vnos_stevila = new Scanner(System.in);
System.out.print("Insert dimension: ");
int vnos = vnos_stevila.nextInt();
// int vnos razdeli na podenote - prva številka je dolžina, druga širina in tretja enota
dolzina = Integer.parseInt(Integer.toString(vnos).substring(0,1));
sirina = Integer.parseInt(Integer.toString(vnos).substring(1,2));
enote = Integer.parseInt(Integer.toString(vnos).substring(2,3));
// izpis tabele s črtami
tabela= new int[dolzina][sirina][enote];
// izriše črtice
Izpis();
// VPIS SODOV
while (true){
System.out.print("Insert color and number");
int sod = vnos_stevila.nextInt();
int dolzinaIzpisa = (int)(Math.log10(sod)+1);
int barva = Integer.parseInt(Integer.toString(sod).substring(0,1));
int visina = Integer.parseInt(Integer.toString(sod).substring(1,2));
Vstavi(barva,visina);
Izpis();
}}
}
하지만 숫자 32을 삽입 할 때 쓰기 :
33-- 33--
33-- 33--
33-- 33--
어떻게 가장 낮은 테이블을 확인하고 번호를 삽입합니다 프로그램을 만들 수 있습니까?
숙제가 있습니까? – aglassman