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

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

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

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

Q&A

解決済

2回答

1846閲覧

1 - 100 までのうち、3 の倍数を全て出力して、さらにその個数・合計を出力したい。

tanakakei

総合スコア17

Java

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

0グッド

0クリップ

投稿2023/03/04 08:39

実現したいこと(要件)

1 - 100 までのうち、3 の倍数を全て出力して、さらにその個数・合計を出力したい。

問題

以下のコードを作成したのですが、出力すると「[I@5ca881b5」が1行に大量に記載された文章が表示されてしまいます。

解決したいこと

どうすれば要件を適切に満たせるコードを作成できるでしょうか?

該当するソースコード

Java

1package chapter13; 2 3public class Problem2 { 4 5 public static void main(String[] args) { 6 7 int[] numbers = new int[100]; 8 int count = 0; 9 10 for (int i = 0; i < 100; i++) { 11 if (numbers[i] % 3 == 0) { 12 System.out.print(numbers); 13 count++; 14 } 15 } 16 17 System.out.println("個数: " + numbers); 18 System.out.println("合計: "+count); 19 20 21 } 22 23}

補足情報(FW/ツールのバージョンなど)

言語:Java
開発環境:Eclipse
Version : 2022-12 (4.26.0)

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

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

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

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

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

1T2R3M4

2023/03/04 08:43

デバッグしていないのでしょうか。
dodox86

2023/03/04 09:40 編集

何となくコードを書いても要望通りには動きませんよ。1から100の数字はどこにあるのでしょうか。1行1行意識しましょう。
otn

2023/03/04 09:46

変数 numbers は何だと思っていますか?
jimbe

2023/03/04 10:45 編集

>どうすれば要件を適切に満たせるコードを作成できるでしょうか java と要件を理解してアルゴリズムを構築してコード化することでしょう。 少なくとも、なぜこの要件に配列が必要なのか、 java で配列はどう使うのかについて、アルゴリズム共々出来ていないものと思います。
episteme

2023/03/13 06:00

10日ほどほったらかしになってますが、何が解決してないんですか?
guest

回答2

0

int[] numbers = new int[100];

配列を使用する必要はないと思いますが、使用したい場合は「1 - 100 までの」数値を格納するように初期化処理を追加してください。

System.out.print(numbers)

上記はSystem.out.println(numbers[i])で良いかと思います。

System.out.println("個数: " + numbers);

System.out.println("個数: " + count);の書き間違いでしょう。

「合計」の値を格納する変数・処理は書かれていないので追加しましょう。

投稿2023/03/04 11:06

meg_

総合スコア10579

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

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

0

ベストアンサー

Java

1package chapter13; 2 3public class Problem2 { 4 public static void main(String[] args) { 5 6 int[] numbers = new int[100]; // この時点で numbers[0]~numbers[99] の各値は1~100になってない 7 int count = 0; 8 9 for (int i = 0; i < 100; i++) { 10 if (numbers[i] % 3 == 0) { 11 System.out.print(numbers); // printしたいのは numbers[i] ではないの? 12 count++; 13 } 14 } 15 System.out.println("個数: " + numbers); // 個数は numbers じゃなくて countではないの? 16 System.out.println("合計: "+count); // 合計をどこで求めたの? 求めていないんじゃない? 17 } 18}

投稿2023/03/04 10:50

episteme

総合スコア16614

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問