質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

3903閲覧

表示を10桁ごとに改行したい

Mudrock-_.

総合スコア22

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2021/07/26 06:21

編集2021/07/26 06:31

2から1000000までの素数を求めると、どのくらい計算時間がかかるかのコードなんですが、NetBeansで実行すると、「行が長すぎます、折り返しモードに切り替えて行全体を表示してください。」
とでます。
実行結果を10桁ごとに表示したいです。

java

1 2 3import java.util.ArrayList; 4 5public class Main { 6 static ArrayList<Integer> diPrime_Catalog = new ArrayList<Integer>(); 7 8 public static void main(String[] args) { 9 int min, max, n; 10 n = 1000000; 11 long start, stop, elapsed; 12 start = System.currentTimeMillis(); 13 MakePrime(n); 14 stop = System.currentTimeMillis(); 15 elapsed = stop-start; 16 int iTimeMS, iTimeSec, iTimeMinutes, iTimeHours; 17 iTimeMS = (int)elapsed; 18 iTimeSec = (int)Math.floor(iTimeMS / 1000); 19 iTimeMS = iTimeMS % 1000; 20 iTimeMinutes = (int)Math.floor(iTimeSec / 60); 21 iTimeSec = iTimeSec % 60; 22 iTimeHours = (int)Math.floor(iTimeMinutes / 60); 23 iTimeMinutes = iTimeMinutes % 60; 24 System.out.printf("処理時間 %d時間 %d分 %d秒 %dミリ秒%n", 25 iTimeHours, iTimeMinutes, iTimeSec, iTimeMS); 26 System.out.println(diPrime_Catalog); 27 } 28 29 public static void MakePrime(int max) { 30 int sqrt, srp, min; 31 boolean prm; 32 min = 2; 33 if (min <= 2 && 2 <= max) { 34 // SetPrime(2); 35 diPrime_Catalog.add(2); 36 } 37 min = min + (min % 2 == 0 ? 1 : 0); 38 int i; 39 for (int n = min; n <= max; n += 2) { 40 sqrt = (int) Math.sqrt(n); 41 prm = true; // false; // 42 i = 0; 43 while (diPrime_Catalog.get(i) <= sqrt) { 44 srp = n % diPrime_Catalog.get(i); 45 if (srp == 0) { 46 prm = false; // true; // 47 break; 48 } 49 i++; 50 } 51 if (prm) { 52 // SetPrime(n); 53 diPrime_Catalog.add(n); 54 } 55 } 56 } 57} 58

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2021/07/26 06:22

このままではコードが読みづらいので、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
m.ts10806

2021/07/26 06:34 編集

同じ指摘するのは面倒なので下記のコメント参照。 https://teratail.com/questions/350252 それに二度と質問しないというご自身の決意はどこへ? いずれにしても未解決のまま放置では応えたいと思う人が減るだけです。
m.ts10806

2021/07/26 06:36

コミュニティにはルールがあるので「知らなかった」ではすまされませんし、「初心者だから守らなくていい」という理屈も通りません。 技術的な初心者の質問はウェルカムですが、明記されているルールを守らない自己主張のみ繰り返す無法者は論外ですよ。
guest

回答1

0

System.out.println(diPrime_Catalog); が 1行で出しているんですよね。
diPrime_Catalog の要素を 1個ずつ出して、10個出したら改行するだけのことです。

Java

1 int k = 0; 2 for (Integer e : diPrime_Catalog) { 3 System.out.print(" " + e); 4 if (++k == 10) { System.out.println(); k = 0; } 5 } 6 if (k != 0) System.out.println();

どこが難しいと思ったのかを説明してください。
for文ですか?
改行する printlnメソッドの代わりに改行しない printメソッドを使うところですか?
引数無しの println() で改行だけをするところですか?
10個数える変数 k を用意することですか?

投稿2021/07/26 08:02

kazuma-s

総合スコア8224

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問