Kezdőoldal » Számítástechnika » Programozás » Lehet olyan csinálni hogy egy...

Lehet olyan csinálni hogy egy string be beírjuk hogy (x+15) *2 és át konvertálja egy számmá?

Figyelt kérdés

Pl.:

string s = "(x+5)*2";

int x = 30;

int a = ? //35*2=70



2013. márc. 9. 20:56
1 2
 1/14 anonim ***** válasza:
Így közvetlenül nem, de stringműveletekkel összehozható. Illetve láttam már rá libraryt valahol.
2013. márc. 9. 21:32
Hasznos számodra ez a válasz?
 2/14 anonim ***** válasza:
Nézz utána a lengyel formának. Azt felhasználva könnyen írhatsz erre egy algoritmust.
2013. márc. 9. 21:37
Hasznos számodra ez a válasz?
 3/14 anonim válasza:
vagy keress függvényeket erre, lehet, hogy már van! Pascalban tudom, hogy sysutils nevű unitban van két függvény pont erre. StrToInt(x) illetve az IntToStr(x).
2013. márc. 10. 11:31
Hasznos számodra ez a válasz?
 4/14 anonim ***** válasza:
Az előző válaszoló teljesen hülyeséget írt, semmi köze a kérdéshez. A fenti 2 függvénnyel intet lehet stringgé alakítnani, vagy visszaparse-olni. Neked 2 lehetőséged van. Vagy magad írsz egy algoritmust, ami a stringből előállítja a kifejezésfát, utána pedig végrehajtod műveleteket. Ez a bonyulultabb. Vagy pedig használsz egy már meglévő függvénykönyvtárat, ami megcsinálja a fentit helyetted. Pl ha C#-ban kell, akkor elég csak dinamikusan lefordítani a fenti kódot, és meghívni a függvényt, amibe becsomagolod. Keress rá erre: "c# compile source code runtime"
2013. márc. 10. 13:15
Hasznos számodra ez a válasz?
 5/14 A kérdező kommentje:
megtaláltam de nem tudom bele tenni az x-et
2013. márc. 10. 18:19
 6/14 anonim ***** válasza:
Akkor tényleg inkább érdemes sajátot írni.
2013. márc. 10. 19:28
Hasznos számodra ez a válasz?
 7/14 anonim ***** válasza:

Az x-et paraméterként kell beletenned, tehát pl egy ilyen osztályt raksz össze:

"class ExprEvalClass:" + typeof (ExprEvalClassBase).FullName +

"{" +

"public ExprEvalClass(){}" +

"public override double Eval(double x)" +

"{" +

"return " + expr + ";" +

"}" +

"}";


De tényleg érdemesebb sajátot írni, akkor tanulsz egys kicsit.

2013. márc. 11. 06:48
Hasznos számodra ez a válasz?
 8/14 A kérdező kommentje:

köszönöm segítségeket

sikerült megcsinálnom compile-vel

de ha át küldöm át küldöm egy másik gépre akkor nem fut le

ezt írja ki:

[link]

2013. márc. 13. 21:35
 9/14 anonim ***** válasza:
Fel tudnád tölteni valahova a telejs forrást?
2013. márc. 13. 22:19
Hasznos számodra ez a válasz?
 10/14 A kérdező kommentje:
privátban átküldöm
2013. márc. 13. 22:30
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!