실제로 전체 코드의 목적은 배열에서 입력 값 (0 또는 1)을 얻은 다음 6 개의 연속 0에 대해 입력 된 배열을 확인하고 각 6 개의 연속 된 후 '1'을 삽입하는 것입니다. 0이야. 이 블록을 찾았습니다변수 j의 값이 6으로 증가하는 방법
if(j>5){
shift(i+6);
bits[i+6] = 1;
count+=1;
System.out.println(count);
}
입력 된 배열에 6 개의 연속 된 0이 없더라도 실행됩니다. 그런 다음 문제를 확인하십시오. I는 여기 문
System.out.println("ABHINAV " + j);
추가 출력 : - (6) 따라서 '가'블록은 입력되는 변수 'J'단위 -
Entered Bits are:
1
0
1
0
1
0
1
0
1
0
ABHINAV 0
ABHINAV 1
ABHINAV 0
ABHINAV 1
ABHINAV 0
ABHINAV 1
ABHINAV 0
ABHINAV 1
ABHINAV 0
ABHINAV 6
I 문제점을 발견했다. 내 질문 : -
'j'가 6으로 증가하는 방법 (출력 스냅의 마지막 줄을 볼 수 있음).
이 문제를 해결할 수있는 방법. 내가 뭘 잘못하고있어. 여기
는class Stuff{
public static final int LENGTH=6;
public int count=0;
int n;
public int bits[] = new int[40];
Scanner inputs = new Scanner(System.in);
Stuff(int x){
n=x;
}
public void input(){
for(int i=0 ; i<n ; i++){
bits[i] = inputs.nextInt();
}
}
public void len_check(){
int j=0;
for(int i = 0 ; i< n ; i++){
j=0;
while(bits[i+j] == 0 && j<LENGTH){
j+=1;
}
System.out.println("ABHINAV " + j);
if(j>5){
shift(i+6);
bits[i+6] = 1;
count+=1;
System.out.println(count);
}
}
}
public void shift(int u){
for(int i=n ; i>= u ;i--){
bits[i+1] = bits[i];
}
}
public void display(){
for(int i=0 ; i<n+count ; i++){
System.out.println(" " + bits[i]);
}
}
}
class Problem{
public static void main(String args[]){
int n;
Scanner inputs = new Scanner(System.in);
System.out.println("\nEnter bit stream length");
n = inputs.nextInt();
Stuff stuff = new Stuff(n);
System.out.println("Now Enter the bits: ");
stuff.input(); // Enter the bit stream
System.out.println("Entered Bits are: ");
stuff.display();
stuff.len_check();
System.out.println("Altered Bits are: ");
stuff.display();
}
}
텍스트로 ** 출력 ** 아닌 이미지 –
을 포함하세요 이미 해결 한 문제에 대해서는 말하지 마십시오. ** 진짜 ** 문제에 집중하십시오. 왜 우리는 스스로 해결 한 문제에 대해 읽는 데 시간을 낭비해야합니까? – GhostCat
@GhostCat 문제가 해결되지 않았습니다. 나는 그 질문을 굵은 글씨로 언급했다. –