URL: https://www.overclockers.at/coding-stuff/c_gt_formel_eingeben_17828/page_1 - zur Vollversion wechseln!
ok folgendes..
i schreib grad an am programm für die schule (argl .. und zwar tut des näherungsweise den flächeninhalt unter einer funktion berechnen (zwischen Xmin und Xmax werten)
soweit so gut.. geht auch alles... allerdings soll man die formel völlig unabhängig eingeben können
also den Y = <eingabe:formel>
das problem ist, das ich mit dem ja rechnen will... also das ich später echt sagen kann
X=1;
ergebnis = formel (die eingegeben wurde, mit X=1 berechnet)
also man gibt z.b. ein
(1/x²+4x)+6
und er kann dann später mit dem ganz normal ohne probleme rechnet...
also er bekommt einen wert und rechnet damit.. bekommt den nächsten etc...
wer hat ne idee?
thx
speicher einfach die formel in einen string, danach ersetzt du in dem string alle x durch das was du halt willst und dann rechnest du mit der formel die du im string abgelegt hast.
alles klar?
mfg twistn@z
aeh
meinst du das so?
string einlesen (string)
x einlesen (float)
y=string;
y ausgeben
?
zuerst musst du im string natürlich noch die x ersetzen durch den derzeitigen wert mit dem du rechnen willst
hm und wie macht ma des?
also du hast beispielsweise:
int i = 20, k; // i = max. länge der formel
double xwert; //was xwert haben sollte musst du wissen =)
char formel[i];
printf("formel: ");
scanf("%s", formel);
for (k=0;k<=i;k++)
{
if (formel[k] == 'x')
formel[k] = xwert;
}
noch fragen?
twistn@z
thx mal testen
also ich bin überzeugt von meinem code
twistn@z
Zitat von XeroXssoweit so gut.. geht auch alles... allerdings soll man die formel völlig unabhängig eingeben können
also den Y = <eingabe:formel>
wozu einen parser?
meine lösung funktioniert auch und ist einfacher.
twistn@z
Zitat von twistn@zwozu einen parser?
meine lösung funktioniert auch und ist einfacher.
@that: naja du hast schon recht, mit dem was mein code macht kann man nicht so ohne weiteres rechnen, aber du hättest immerhin die formel in der das x schon ersetzt wurde, was du dann machst ist was anderes
ich hab auch nie gesagt dass man zb: y = formel; schreiben kann sondern ich hab nur den code für das ersetzen von x geschrieben, und der funktioniert in jedem compiler (ich verwende vc++ 6.0 btw.)
twistn@z
jo oba jetzt muast die formel a no berechnen...
und mit an string rechnen dirft jo ned so afoch sei
das wird auch nicht gehen
ich will mir jetzt aber keine gedanken mehr darüber machen da ich noch andere (wichtigere) sachen zum coden hab
twistn@z
hm geht ned
was für ein wunder *lol*
mal das vom that anschaun... i meld mi
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025