Soru sorPolinom Katsayılarını Diziye Atamak
fm tarafından 7 yıl önce soruldu

Merhaba,
fonksiyon=input('Lütfen fonksiyonunuzu girin: ','s');
f=inline(fonksiyon);
komutu ile f'e atadığım herhangi dereceden bir polinom fonksiyonunda polinomun katsayılarını A[] gibi bir diziye nasıl atayabilirim?
 

4 Cevap
sayginer Yönetici tarafından 7 yıl önce cevaplandı

Fonksiyonunuzun değişkenlerini sembolik olarak tanıttıktan sonra coeffs veya sym2poly fonksiyonlarını kullanarak bir polinomun katsayılarını alabilirsiniz.
Örnek Kullanım:

syms x
A = coeffs(8*x^3 + 19*x + 11)
syms x
A = sym2poly(4x^3 - 12*x - 15)

Ancak ekrandan almak istediğiniz fonksiyonlar string olacağı için bunu yukarıdaki fonksiyonlarda kullanamayacaksınız. Size tavsiyem direk ektandan katsayıları almak veya .m dosyası üzerinden fonksiyonunuzu girmek olacaktır.

fm tarafından 7 yıl önce cevaplandı

Öncelikle cevap için teşekkür ederim. Peki bunu yapmanın bildiğiniz bir yöntemi var mı? Yani klavyeden girdiğim fonksiyonun katsayılarını bir diziye atama işleminin.

sayginer Yönetici tarafından 7 yıl önce cevaplandı

Ben daha önce benzer bir problemde direk katsayıların girilmesini sağlayarak yapmıştım. Belirttiğiniz şekilde yapmaya kalktığımızda ekrandan aldığımız fonksiyonu string olarak alıyoruz, ve yukarıdaki katsayı bulma fonksiyonlarının söz dizimi (syntax) ile uyuşmuyor. Yabancı kaynaklarda da sorunuza benzer bir şeyler bulamadım.

fm tarafından 7 yıl önce cevaplandı

Polinom derecesini ve katsayıları elle girerek, katsayıları bir dizi içine atadım. Devamında da polinom işlem fonksiyonlarını kullanarak bir şeyler yaptım. Şimdilik aradığım çözüme ulaşmış gibiyim.