アプリ版:「スタンプのみでお礼する」機能のリリースについて

Javaで、26408023 = A * B の正の整数A,Bを求めるプログラムを教えてください!
A,Bのうち、どちらかは1ではない、という条件付きです。

for文を使って考えたのですが、何度やっても上手く行きませんでした!
詳しい方、for文を使ったプログラムを教えてください!
お願いしますm(_ _)m

A 回答 (4件)

#1のご解答で、初めて求まった3457で割った商をnに


入れて、更にループの中に入るべきではないでしょうか。
今回は7639が素数であったから良いが、素数でない場合ならここで止めては、解がすべて出ないと思う。
    • good
    • 0

Javaは知らないので、Cですけど。


結果の表示(printf)のところさえ適当に書きかえれば、使えると思います。

int i,n=26408023;
for(i=2;i<=sqrt(n);i++){
 if(n%i==0) printf("%d %d \n",i,n/i);
}
    • good
    • 0

ありゃ、コードが抜けてた。



int n = 26408023;
int a = 2;
for ( a = 2; a < n; a++ ){ if ( n % a == 0 ){ break; } }

aは3457らしい。
    • good
    • 0

で、nじゃないaが答え。


まあ、この書き方だと60点ってところかなー。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!