0

次のコードでは、非常に長い 1 行の魚が表示されます。

<#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< (....up to 43 fish )


{
 for (int i=0; i<10; i++)
 { 

 for (int j=0; j<10; j++)
 { 
    if ( (i*10+j) < 43) 
    {
    System.out.print(" <#><");
    }

    else{
    System.out.print("     ");

   }

魚を10 x 10のフィールドに制限して、次のように見えるようにする方法を見つけようとしています:

<#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#><
<#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#><
<#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#><
<#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#>< <#><
<#>< <#>< <#>< <#><
4

5 に答える 5

3
for (int i=0; i<43; i++)
{ 
    if (i > 0 && i%10 == 0) 
        System.out.println();
    System.out.print(" <#><");
}

i % 10モジュロ演算です。で割り、割り算の余りを返しますi10例: if iis 17then 結果は7because 17 / 10 = 1with restになり7ます。残りは の0場合にのみ発生しi ます0,10,20,30,40

静止しているi > 0ときにループの最初から余分な行を印刷しないようにするための追加のチェックですi00 / 10 = rest 0

( &&if all they have to be で 複数の条件をまとめることができますtrue。if one of them must be で複数の条件をまとめることができます。)
||true

于 2012-07-10T05:01:06.203 に答える
1

System.out.println();外側のループの最後にを追加します。

于 2012-07-10T05:01:49.187 に答える
1

不足しているのはSystem.out.printlnです。printlnは印刷行を指します。何かを印刷した後、カーソルは次の行に移動します。

  for (int i=0; i<10; i++) { 
      for (int j=0; j<10; j++) { 
          if ( (i*10+j) < 43)  {
             System.out.print(" <#><");
          }
          else {
             System.out.println("     ");
          }
      }
  }
于 2012-07-10T05:08:20.287 に答える
1

同じコードで次の変更を行うと、期待どおりの出力が得られます。

for (int i=0; i<10; i++)
{ 
 for (int j=0; j<10; j++)
 { 
    if ( (i*10+j) < 43) 
    {
       System.out.print(" <#><");
    }

    else
    {
       System.exit(0);//if fishes exceeds 47 Exit
    }
 }
 System.out.println();//for new line after 10 fishes
}
于 2012-07-10T07:17:42.200 に答える
1

これを試して....

public class hi {

    public static void main(String[] args){
        int i=0;
        while (i<43){

              for (int j=0 ; j<10 ; j++){

               System.out.print(" <#><");

               }
              System.out.println();
              i++;
             }
    }
}
于 2012-07-10T05:14:16.503 に答える