現在MATLABについて勉強しているのですが、y=3*x^2+4*x+2のような任意の1変数多項式において、
最高次の係数で規格化(y=3/3x^2+4/3*x+2/3)したく、cf=coeffs(y)で係数の行列([2 4 3])を返し、
最高次の係数の要素(cf(end))で、多項式を割った式(y/cf(end))を求めたのですが、
上記のように係数の行列要素が次数の低い順にいつでもなっていると最高次の係数の要素はcf(end)で良いのですが、
与える多項式によって、係数行列要素の順序が変わってしまいます([2 3 4]、[3 4 2]のように)。
任意の1次多項式において規格化できるようにしたいのです。
どなたか初心者でも理解できるようご教授お願い致します。
No.2ベストアンサー
- 回答日時:
A No.1のKulesです。
>3 2
>x +2*x +1のような形で2行にわたって出力してしまいます…
2行で出てくるならむしろ好都合ですよね?
1行目に必ず次数が出てくるんですから。
これは文字列で出てくるんですかね?
まあ10次以上出てくるならちょっと面倒ですが、0次~9次までなら
1文字ずつstr2numで数値かしてやって最大値を探すとかでしょうか?(多分転置すれば1発でいける気がしますが)
10次以上が出てくるならsscanfで地道に読み込むか、
(私の記憶ではスペース文字をstr2numにするとnanか0になります)
あるいは数値が連続していることを検出して10進法で変換していくかですかね?
参考になれば幸いです。
ご回答ありがとうございます。
返信遅れてすいません。。
いろいろやってみたのですが、sym2polyが最も簡単で扱いやすいようでした。
何度もありがとうございました。
No.1
- 回答日時:
私自身Symbolic Math Toolboxは使ってないんですが…
http://www.mathworks.co.jp/help/ja_JP/toolbox/sy …
を見ると、
[C, T] = coeffs(p,x)
とすることでTに各項のリストが返されるらしいです。
Tが文字列なのかセルなのかはわかりませんが、
t =[ x^2, x]
みたいな形になるんで、sscanfで^の後にある数字を取り出して、
一番大きいものを選ぶ…というのは上手くないですかね?
参考になれば幸いです。
この回答への補足
いつもご回答ありがとうございます。
返信遅くなってすいません。
Symbolic Math Toolboxではなく、MapleをToolboxとして使用しており、結果が
x^3+2*x^2+1のような出力ではなく、
3 2
x +2*x +1のような形で2行にわたって出力してしまいます…
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 環論 1 2022/04/12 14:08
- 数学 2次以上の多項式g(x)であって, 任意の無理数に対して無理数の値を取るものは存在しないことを示せ. 8 2022/06/27 11:28
- その他(プログラミング・Web制作) パイソンのプログラミングについての質問です 2 2023/05/22 12:39
- 数学 多項式の性質と無理数・有理数 2 2022/06/21 06:50
- 数学 『因数に分解するということ』 9 2022/06/27 06:14
- 大学・短大 大学 統計学 2 2022/09/18 15:06
- 数学 数2Bの数列の問題です。 自分は、 まず数列 an=ar^(n-1)と置き こちらの問題の、y= の 1 2022/07/07 16:26
- 数学 上三角行列のn乗の証明 2 2023/07/23 21:45
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- 数学 順序集合における「反射律」の役割について 9 2022/05/09 23:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelはなんで先頭の0を消すん...
-
VBAでの Replace関数で、ワイル...
-
エクセルでアルファベットか数...
-
文字列からタブコードを取り除...
-
EXCELで=より左の文字を一括で...
-
excel vba 17桁の数字が表示で...
-
[C言語]fputsとfprintfの違い
-
GASに文字列として関数を入れる...
-
googleスプレッドシートでカッ...
-
php言語の脆弱性について
-
マクロ処理でのループの記述に...
-
VBA2005 16進を2桁で表示したい。
-
Excelで指数表現しないようにす...
-
“丸(〇/○/◯)”に似た文字…
-
Access2000 (VBA) ' & "など...
-
Windowsでファイルのリネームで...
-
Left関数とRight関数を合わせた...
-
【VB.NET】for each文からのINS...
-
C言語でファイルから特定の文字...
-
変数内に入った文字列の結合 UWSC
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでアルファベットか数...
-
EXCELで=より左の文字を一括で...
-
文字列からタブコードを取り除...
-
Excelで3E8を3.00E+8にしない方...
-
VBAでの Replace関数で、ワイル...
-
Excelで指数表現しないようにす...
-
[C言語]fputsとfprintfの違い
-
エクセルで文字列をtxtファイル...
-
同一セル内に関数と文字列を同...
-
エクセルで文字列の最大値を抽...
-
Excelはなんで先頭の0を消すん...
-
MS SQLServer のSQLで文字列の...
-
エクセル 数値データを桁をそ...
-
Left関数とRight関数を合わせた...
-
VBA2005 16進を2桁で表示したい。
-
VBの「As String * 128」とは?
-
Msgboxの×が押されたとき
-
sedなどで、特定の文字列の後の...
-
【Excel VBA】複数ある特定の文...
-
OnTime 使用時のプロシージャへ...
おすすめ情報