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

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

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

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

4回答

4131閲覧

java問題 素数について

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

2クリップ

投稿2018/05/21 22:21

編集2018/05/21 23:25

1から1億までにあるすべての素数を足し算せよ。

この問題が解けないのですが、どう書いたらいいでしょうか。
(2日考えたのですが、思いつかず....)

よろしくお願いいたします。```ここに言語を入力
コードpackage Javakihonweb;
// 1から1億まであるすべての素数を足し算せよ。
//(こんな感じで書いているのですが...)
public class Mondai4 {
public static void main(String[] args) {
int n = 0, i;
int sum = 0;
for (i = 2; i < 100000000; i++) {

if (i == n) { sum += i; System.out.println("素数は" + sum); } } }

}

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2018/05/22 00:21 編集

Javaのintは符号付32bitで10進の有効桁数は9桁程度です。1億はこの中に納まりますが、少なくとも合計はlongにした方がよいと思います。
guest

回答4

0

・与えられた数値が素数かどうかを判定する関数を作る
・その関数を実行し、素数であるならその数値を結果変数に足す
・上の処理を1から1億まで繰り返す

これを実装すればバッチシ

投稿2018/05/21 22:50

編集2018/05/21 23:01
y_waiwai

総合スコア87849

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

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

退会済みユーザー

退会済みユーザー

2018/05/21 23:25

2 からな→素数
guest

0

今回であれば、素数の判定方法が分からないのでしょうか。(もしここがということであれば、プログラミングというよりは数学なので)
2日かけて考えた内容が少しでも書かれていれば、それに対してヒントはかけますが基本的には課題なので答えを記載するというわけにはいかないので。

投稿2018/05/22 00:13

YasuhiroMiyake

総合スコア1336

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

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

退会済みユーザー

退会済みユーザー

2018/05/22 00:16

ありがとうございます。朝の出勤の直前に投稿したため、コードを記載できず、すみませんでした! ご回答ありがとうございます。
guest

0

ベストアンサー

素数を判定する上では

2は素数
2以外の偶数は素数ではない
2以外の素数は奇数である

なんで外周のループは
ループ条件はm=3+2nで

素数判定のループはm/3回
※ 偶数(倍対象)は除外しているので奇数の最小値倍以上は判定不要

となる

投稿2018/05/21 23:46

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

退会済みユーザー

退会済みユーザー

2018/05/21 23:48

素数判定の方も偶数除外するからm/6か
guest

0

今はまだわからないかもしれませんが、こんなふうな方針もあることを紹介しておきます。

  • Javaでの素数判定&Streamを使ったエラトステネスの篩

https://yoshikiito.net/blog/archives/1737

指定した数以下の素数が湧き出てくるといった感じになります。
上の往路グラムでは、それを System.out.println しますが、
ここで足し算をしていくようにすれば、合計を検索することができます

投稿2018/05/23 13:25

katoy

総合スコア22324

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

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

swordone

2018/05/23 13:44

これ、エラトステネスの篩じゃなくてただ試し割りしているだけでは…?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.44%

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

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

質問する

関連した質問