実際には、コード全体の目的は、入力値(0または1)を配列に入れ、入力された配列を6つの連続した0でチェックしてから、 0の。私はこのブロックが見つかった変数の値が6増分する方法
入力された配列に6つの連続する0がなくても実行されます。次に、問題を確認します。私は、ここにこの文
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
私は問題を発見しました。私の質問は次のとおりです。 -
「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問題は解決されません。私はこの質問を大胆なテキストとして言及した。 –