これは私の最初の投稿ですのでDO私は何か愚かな書きました。 数字の約数のリスト
は私だけでITのクラス、そして今日を始めたループ「ながら」クラス私の教師は私達に、次の宿題与えた:1つのグラフィカル・ボックスの自然数nと、すべて表示さ読み込むプログラムを書きます区間からの除数[2; n-1]となる。問題は、ループがゼロの多くの配列、およびのスクリーンショットを埋めることである
import java.util.Arrays; import javax.swing.JOptionPane; public class Divisors { public static void main(String[] args) { String n = JOptionPane.showInputDialog(null, "Enter a natural number"); Integer i = Integer.parseInt(n); int d = i - 1; int x = 2; int[] dvr = new int[i]; // [i] because bigger numbers need more iterations while (x >= 2 && x <= d) { double y = i % x; if (y == 0) { dvr[x] = x; x = x + 1; } else { x = x + 1; } } JOptionPane.showMessageDialog(null, "The divisors of " + i + " are:\n" + Arrays.toString(dvr)); } }
:
は、これまでのところ私は動作しますが、結果は少し間違っているコードを思い付い家庭教師の結果には、除数のみをリストしたウィンドウが表示されます。
私はArrayListでこれをやろうとしましたが、それは私にとって今は黒い魔法です。私の教師は私のコードで使われているもの以外のものを使用する方法を教えていませんでした。
ご協力いただきありがとうございます。
にのArrayList varibleを取ります。 – azurefrog
問題はdvr [x] = xです。 xの位置に除数の値を設定する必要はありません。配列にインデックスを付けるためには、各除数を追加した後にのみインクリメントする2番目の変数が必要です。 – bhspencer
@bhspencerしかし、私はまだ配列のスロットの所定数を持っています – Shamanix