PDA

Tam Sürümünü Görmek İçin : yardım


hayal
31/10/2004, 21:47
Benim bir sorum var.Yardım ederseniz sevinirim.

Klavyeden kullanıcı bir veya çok değişkenli bir fonksiyon girecek.Örneğin;

f(x,y)=x**2+3*x*y+tanx/(1+tanx**2)

(bilerek tan(x) yerine tanx yazdım.Kullanıcının yazım kurallarını bilmediğini varsayıyorum)

raw_input() ile giriş yaptığım için bu ifade karakter tipinde.herhangi x ve y değeri için bu fonksiyonun değerini istiyorum.Bu ifadeyi nasıl sayısal bir ifadeye çevire bilirim.Ayrıca x ve y önceden tanımlanmadığından sorun çıkıyor.

Şimdiden teşekkür ediyorum.


laucian
01/11/2004, 03:32
umarım sorunu doğru anlamışımdır..

>>> s=raw_input()
8
>>> s
'8' #değer burada String
>>> int(s) #Int fonksiyonu,argumanını int değerine taşır
8 #s değişkenin yeni "int" değeri
>>>

hayal
01/11/2004, 17:18
umarım sorunu doğru anlamışımdır..

>>> s=raw_input()
8
>>> s
'8' #değer burada String
>>> int(s) #Int fonksiyonu,argumanını int değerine taşır
8 #s değişkenin yeni "int" değeri
>>>
************************************************** ********
Sorumu biraz açayım.

f=raw_input(x**2+2*x*y**2+1) #fonksiyon girildi.Sabit sayıdan oluşmuyor
x=3
y=6
#Bu arada f karakter tipinden dönüştürülecek.x ve y için f hesaplanacak
#f=x**2+2*x*y**2+1 bağıntısı hesaplanacak.
#Ara dönüşüm nasıl olacak
f=226.0 #float sayı olarak sonucu alacağım.

Burada gerek fonksiyon gerekse x,y gibi değişkenler kullanıcı tarafından giriliyor.önceden belli değiller.
Teşekkür ederim.

acemi
01/11/2004, 20:27
def f(x, y):
return x**2+2*x*y**2+1

x = raw_input()
y = raw_input()

a = f(float(x), float(y))
print a


python'u sheel'den acip buna benzer birsey yazip yapabilir.

anov
02/11/2004, 16:08
merhaba hayal;
eval()
senin istediğin şeyi yapar sanırım.

x=1;
y=3;
print eval('x+y'); # çıktı olarak 4 verecek.


tabii yazım kurallarına aykırı olabilir kullanıcının girdiği o zaman try...except bloğu içine almak lazım.
iyi niyet ve yardım seninle olsun.