dポイントプレゼントキャンペーン実施中!

こんにちは!!
JAVAでホーナー法を書け!!という課題がでました…
多項式はP(x)=x^7+234x^6-1234x^5+176x^4-3456x^3+2345x^2-234x+10047 と与えられています。
これを解くホーナー法を書けということでしょうか??
繰り返しや、配列を使って書いてみたのはいいのですが…
メソッドの部分に多項式の計算を書け!!っていわれて、さっぱり分かりません。returnとか使うみたいですが…全然分かりません。
分かる方は助けて下さい解答お願いします☆☆

A 回答 (2件)

 ホーナー法は、掛け算の回数を減らすように変形して高次の多項式の値を計算することです。


以下は、配列で計数を与え、指定された開始値から指定された間隔で10個の多項式の値を計算するサンプルです。
(例)java honaho 1,1,1,1 0 1

public class honaho {

static int Hona(int[] k, int x) {

int i, r = 0;

if (k.length >= 2) for (i = 0; i < k.length - 1 ; i ++) r = (r + k[i]) * x;

if (k.length >= 1) r += k[k.length - 1];

return(r);

};

public static void main(String args[]) {

int K[], X0, ST, x, i;

try {
String s[] = args[0].split(",");
K = new int[s.length];
for (i = 0; i < s.length; i ++) K[i] = Integer.parseInt(s[i]);
X0 = Integer.parseInt(args[1]);
ST = Integer.parseInt(args[2]);
} catch (Exception e) {
int k[] = {1, 234, -1234, 176, -3456, 2345, -234, 10047 };
K = k;
X0 = 0;
ST = 1;
};

for (i = 0, x = X0; i < 10; x += ST, i ++)
System.out.println("f(" + Integer.toString(x) + ")=" + Integer.toString(Hona(K, x)));

};

}
    • good
    • 0

こんにちは、



ここで、聞くより、検索した方が、早いと思いますが。

http://www.ie.u-ryukyu.ac.jp/~e035735/JavaReport …

学校で出るような問題は、検索した方が、早いですよ。
    • good
    • 0
この回答へのお礼

tom11さん、回答ありがとうございますww
早速見てみて考えて見ます☆

お礼日時:2008/05/16 21:38

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