<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[String in Rechenzeichen]]></title><description><![CDATA[<p>hallo ich plane grad einen variablenrechner<br />
da soll man nen term eingeben (mit variablen(aber des is jetzt egal) und dann kann man den öfters ausrechnen</p>
<p>ich hab schon geschafft jedes zeichen des terms in nen einzelnen String zu packen, aber wie kann man wenn jetzt ein String in ein Rechenzeichen umwandeln, da gibts ja kein Format<br />
also wenn jetzt:</p>
<pre><code class="language-cpp">s[1] = &quot;1&quot;;
s[2] = &quot;+&quot;;
s[3] = &quot;2&quot;;
</code></pre>
<p>die s[1] und s[3] zu interger is ja gein problem aber was mach ich mit dem s[2] <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
also bye mollitz</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/116882/string-in-rechenzeichen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 02:11:01 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/116882.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 01 Aug 2005 08:10:52 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 08:10:52 GMT]]></title><description><![CDATA[<p>hallo ich plane grad einen variablenrechner<br />
da soll man nen term eingeben (mit variablen(aber des is jetzt egal) und dann kann man den öfters ausrechnen</p>
<p>ich hab schon geschafft jedes zeichen des terms in nen einzelnen String zu packen, aber wie kann man wenn jetzt ein String in ein Rechenzeichen umwandeln, da gibts ja kein Format<br />
also wenn jetzt:</p>
<pre><code class="language-cpp">s[1] = &quot;1&quot;;
s[2] = &quot;+&quot;;
s[3] = &quot;2&quot;;
</code></pre>
<p>die s[1] und s[3] zu interger is ja gein problem aber was mach ich mit dem s[2] <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /><br />
also bye mollitz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/843180</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843180</guid><dc:creator><![CDATA[mollitz]]></dc:creator><pubDate>Mon, 01 Aug 2005 08:10:52 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 08:20:59 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>du kannst nicht aus dem Zeichen einfach eine Rechenoperation machen. Das must du sozusagen per Hand auswählen</p>
<pre><code class="language-cpp">int Ergebnis;
int Zahl1,Zahl2;
char Zeichen = '+';
switch (Zeichen)
{
  '+' : Ergebnis = Zahl1 + Zahl2; break;
  '-' : Ergebnis = Zahl1 - Zahl2; break;
  ...
  }
</code></pre>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/843185</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843185</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 01 Aug 2005 08:20:59 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 08:24:19 GMT]]></title><description><![CDATA[<p>so hab ich's mir auch schon überlegt<br />
allerdings was ist wenn der term jetzt so ist:<br />
1+3+y+2*1/3-43+1<br />
bye mollitz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/843188</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843188</guid><dc:creator><![CDATA[mollitz]]></dc:creator><pubDate>Mon, 01 Aug 2005 08:24:19 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 08:31:33 GMT]]></title><description><![CDATA[<p>Dann mußt Du ein wenig mehr Gehirnschmalz einsetzen und zuerst feststellen, in welcher Reihenfolge die Operationen ausgeführt werden müssen (Punktrechnung vor Strichrechnung). Am Prinzip, das akari gezeigt hat, ändert sich dadurch nichts.<br />
Wenn Du akaris Code in eine Funktion packst und jeweils den Operator und die Werte übergibst und als Rückgabewert jeweils die Teilsumme erhälst, bist Du schon fast fertig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/843198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843198</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Mon, 01 Aug 2005 08:31:33 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 09:21:57 GMT]]></title><description><![CDATA[<p>sowas hab ich vor längerem zum Spaß mal programmiert, kann man natürlich noch<br />
beliebig erweitern hier nur die Variante mit +, -, *, /</p>
<pre><code class="language-cpp">ShowMessage(Calc(&quot;1 +5*6+4&quot;));
</code></pre>
<pre><code class="language-cpp">double __fastcall TForm1::Calc(AnsiString sF)
{
    double dReturn=0;
    sF = NoSpace(sF);

    char cOperator;

    int iPos = -1, iTempPos;

    iTempPos = sF.AnsiPos(&quot;*&quot;);
    if (iTempPos &gt; 0) iPos = iTempPos;

    iTempPos = sF.AnsiPos(&quot;/&quot;);
    if (iTempPos &gt; 0) iPos = iTempPos;

    iTempPos = sF.AnsiPos(&quot;+&quot;);
    if (iTempPos &gt; 0) iPos = iTempPos;

    iTempPos = sF.AnsiPos(&quot;-&quot;);
    if (iTempPos &gt; 0) iPos = iTempPos;

    if (iPos &gt; 0) {
        cOperator = sF.c_str()[iPos -1];
        AnsiString sLeft = sF.SubString(1, iPos -1);
        AnsiString sRight = sF.SubString(iPos +1, sF.Length());

        /*
        ShowMessage(&quot;Left: '&quot; + sLeft
                  + &quot;' Right: '&quot; + sRight + &quot;'&quot;);
        */

        switch (cOperator) {
            case '+':
                dReturn = Calc(sLeft) + Calc(sRight);
                break;
            case '-':
                dReturn = Calc(sLeft) - Calc(sRight);
                break;
            case '*':
                dReturn = Calc(sLeft) * Calc(sRight);
                break;
            case '/':
                dReturn = Calc(sLeft) / Calc(sRight);
                break;
        }
    } else {
        return sF.ToDouble();
    }

    return dReturn;
}

AnsiString __fastcall TForm1::NoSpace(AnsiString sIn)
{
    AnsiString sReturn = &quot;&quot;;
    for (int i = 0; i &lt; sIn.Length(); i++) {
        char cChar = sIn.c_str()[i];
        if (cChar != ' ') sReturn = sReturn + sIn.c_str()[i];
    }

    return sReturn;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/843252</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843252</guid><dc:creator><![CDATA[Acidmrp]]></dc:creator><pubDate>Mon, 01 Aug 2005 09:21:57 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Mon, 01 Aug 2005 11:37:11 GMT]]></title><description><![CDATA[<p>Hallo</p>
<p>außerdem ist im Forum zum Thema &quot;Taschenrechner&quot; auch einiges zu finden.</p>
<p>bis bald<br />
akari</p>
]]></description><link>https://www.c-plusplus.net/forum/post/843379</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843379</guid><dc:creator><![CDATA[akari]]></dc:creator><pubDate>Mon, 01 Aug 2005 11:37:11 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Tue, 02 Aug 2005 06:28:04 GMT]]></title><description><![CDATA[<p>was ist mit geklammerten ausdrücken? z.b. (1 + 2) * 3 = ? oder werden die nicht unterstützt? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/843953</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/843953</guid><dc:creator><![CDATA[Sunday]]></dc:creator><pubDate>Tue, 02 Aug 2005 06:28:04 GMT</pubDate></item><item><title><![CDATA[Reply to String in Rechenzeichen on Tue, 02 Aug 2005 08:07:46 GMT]]></title><description><![CDATA[<p>Am besten, man benutzt dafür einen Top-Down-Parser, anstatt selbst irgendwelche Pseudo-Parser-Routinen zu schreiben... (siehe auch EBNF-Grammatik)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/844044</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/844044</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Tue, 02 Aug 2005 08:07:46 GMT</pubDate></item></channel></rss>