<?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[Logikfehler im Quellcode]]></title><description><![CDATA[<p>Hallo Leute</p>
<p>Ich muss für ein Projekt eine Auszugsimulation machen und bin dabei den quellcode zu schreiben. ich hatte ihn schon einmal, jedoch war er da zu ausführlich. nun habe ich in der neueren version irgend einen logikfehler, den weder ich noch ein kumpel von mir finden.</p>
<p>ziel des programm ist es, einen aufzug simuliert durch panels hoch und runter fahren zu lassen. mein problem: der aufzug bewegt sich nicht vom fleck.</p>
<p>hier ist der quellcode:</p>
<p>//---------------------------------------------------------------------------</p>
<p>#include &lt;vcl.h&gt;<br />
#pragma hdrstop</p>
<p>#include &quot;Test_u.h&quot;<br />
//---------------------------------------------------------------------------<br />
#pragma package(smart_init)<br />
#pragma resource &quot;*.dfm&quot;<br />
TForm1 *Form1;<br />
int z, p; //Position und Ziel des Aufzugs</p>
<p>//---------------------------------------------------------------------------<br />
__fastcall TForm1::TForm1(TComponent* Owner)<br />
: TForm(Owner)<br />
{<br />
z = 1; //Damit der Aufzug im EG anfängt<br />
p = 1; //Damit der Aufzug im EG anfängt<br />
}<br />
//---------------------------------------------------------------------------<br />
int plus_eins(int p)<br />
{<br />
p = p + 1; //Funktion, die den fahrstuhl eins abwärts fahren<br />
return p; //lässt.<br />
}<br />
//---------------------------------------------------------------------------<br />
int minus_eins(int p)<br />
{<br />
p = p - 1; //Funktion, die den fahrstuhl eins aufwärts fahren<br />
return p; //lässt.<br />
}<br />
//---------------------------------------------------------------------------<br />
void __fastcall TForm1::timerFahrtTimer(TObject *Sender)<br />
{<br />
if (z = p) {<br />
timerFahrt-&gt;Enabled = false;<br />
}<br />
else<br />
if (z &gt; p) {<br />
p = plus_eins(p);<br />
}<br />
else<br />
p = minus_eins(p);<br />
}</p>
<p>//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::timerAnzeigeTimer(TObject *Sender)<br />
{<br />
pnlUG-&gt;Visible = false;<br />
pnlEG-&gt;Visible = false;<br />
pnl1-&gt;Visible = false;<br />
pnl2-&gt;Visible = false;<br />
pnl3-&gt;Visible = false;<br />
pnl4-&gt;Visible = false;</p>
<p>switch ((p)) {<br />
case 0: pnlUG-&gt;Visible = true;<br />
break;<br />
case 1: pnlEG-&gt;Visible = true;<br />
break;<br />
case 2: pnl1-&gt;Visible = true;<br />
break;<br />
case 3: pnl2-&gt;Visible = true;<br />
break;<br />
case 4: pnl3-&gt;Visible = true;<br />
break;<br />
case 5: pnl4-&gt;Visible = true;<br />
break;<br />
default:<br />
break;<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btnUGClick(TObject *Sender)<br />
{<br />
z = 0;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btnEGClick(TObject *Sender)<br />
{<br />
z = 1;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn1Click(TObject *Sender)<br />
{<br />
z = 2;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn2Click(TObject *Sender)<br />
{<br />
z = 3;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn3Click(TObject *Sender)<br />
{<br />
z = 4;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn4Click(TObject *Sender)<br />
{<br />
z = 5;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>Ich glaube, der fehler liegt im &quot;timerFahrt&quot;!<br />
geschrieben hab ich dass alles in Turbo C++.</p>
<p>bitte helft mir</p>
<p>Barnibas</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/314719/logikfehler-im-quellcode</link><generator>RSS for Node</generator><lastBuildDate>Sat, 01 Aug 2026 05:59:18 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/314719.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 11 Mar 2013 20:55:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 20:55:33 GMT]]></title><description><![CDATA[<p>Hallo Leute</p>
<p>Ich muss für ein Projekt eine Auszugsimulation machen und bin dabei den quellcode zu schreiben. ich hatte ihn schon einmal, jedoch war er da zu ausführlich. nun habe ich in der neueren version irgend einen logikfehler, den weder ich noch ein kumpel von mir finden.</p>
<p>ziel des programm ist es, einen aufzug simuliert durch panels hoch und runter fahren zu lassen. mein problem: der aufzug bewegt sich nicht vom fleck.</p>
<p>hier ist der quellcode:</p>
<p>//---------------------------------------------------------------------------</p>
<p>#include &lt;vcl.h&gt;<br />
#pragma hdrstop</p>
<p>#include &quot;Test_u.h&quot;<br />
//---------------------------------------------------------------------------<br />
#pragma package(smart_init)<br />
#pragma resource &quot;*.dfm&quot;<br />
TForm1 *Form1;<br />
int z, p; //Position und Ziel des Aufzugs</p>
<p>//---------------------------------------------------------------------------<br />
__fastcall TForm1::TForm1(TComponent* Owner)<br />
: TForm(Owner)<br />
{<br />
z = 1; //Damit der Aufzug im EG anfängt<br />
p = 1; //Damit der Aufzug im EG anfängt<br />
}<br />
//---------------------------------------------------------------------------<br />
int plus_eins(int p)<br />
{<br />
p = p + 1; //Funktion, die den fahrstuhl eins abwärts fahren<br />
return p; //lässt.<br />
}<br />
//---------------------------------------------------------------------------<br />
int minus_eins(int p)<br />
{<br />
p = p - 1; //Funktion, die den fahrstuhl eins aufwärts fahren<br />
return p; //lässt.<br />
}<br />
//---------------------------------------------------------------------------<br />
void __fastcall TForm1::timerFahrtTimer(TObject *Sender)<br />
{<br />
if (z = p) {<br />
timerFahrt-&gt;Enabled = false;<br />
}<br />
else<br />
if (z &gt; p) {<br />
p = plus_eins(p);<br />
}<br />
else<br />
p = minus_eins(p);<br />
}</p>
<p>//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::timerAnzeigeTimer(TObject *Sender)<br />
{<br />
pnlUG-&gt;Visible = false;<br />
pnlEG-&gt;Visible = false;<br />
pnl1-&gt;Visible = false;<br />
pnl2-&gt;Visible = false;<br />
pnl3-&gt;Visible = false;<br />
pnl4-&gt;Visible = false;</p>
<p>switch ((p)) {<br />
case 0: pnlUG-&gt;Visible = true;<br />
break;<br />
case 1: pnlEG-&gt;Visible = true;<br />
break;<br />
case 2: pnl1-&gt;Visible = true;<br />
break;<br />
case 3: pnl2-&gt;Visible = true;<br />
break;<br />
case 4: pnl3-&gt;Visible = true;<br />
break;<br />
case 5: pnl4-&gt;Visible = true;<br />
break;<br />
default:<br />
break;<br />
}<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btnUGClick(TObject *Sender)<br />
{<br />
z = 0;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btnEGClick(TObject *Sender)<br />
{<br />
z = 1;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn1Click(TObject *Sender)<br />
{<br />
z = 2;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn2Click(TObject *Sender)<br />
{<br />
z = 3;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn3Click(TObject *Sender)<br />
{<br />
z = 4;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>void __fastcall TForm1::btn4Click(TObject *Sender)<br />
{<br />
z = 5;<br />
timerFahrt-&gt;Enabled = true;<br />
}<br />
//---------------------------------------------------------------------------</p>
<p>Ich glaube, der fehler liegt im &quot;timerFahrt&quot;!<br />
geschrieben hab ich dass alles in Turbo C++.</p>
<p>bitte helft mir</p>
<p>Barnibas</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305928</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305928</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 20:55:33 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:02:04 GMT]]></title><description><![CDATA[<p>Spontan fällt mir auf, dass</p>
<pre><code class="language-cpp">f (z = p) {
</code></pre>
<p>wohl ein == sein soll.</p>
<p>Übrigens...</p>
<pre><code class="language-cpp">int plus_eins(int p)
{
    p = p + 1;
    return p;
}
</code></pre>
<p>Hier kann man ++p statt p = p + 1 schreiben. Oder direkt:</p>
<pre><code class="language-cpp">int plus_eins(int p)
{
    return p + 1;
}
</code></pre>
<p>Oder noch besser statt irgendwo im Code zu schreiben:</p>
<pre><code class="language-cpp">p = plus_eins(p);
</code></pre>
<p>direkt:</p>
<pre><code class="language-cpp">++p;
</code></pre>
<p>Kurz:<br />
Eine Funktion, die um 1 erhöht, ergibt keinen Sinn.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305931</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305931</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:02:04 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:03:37 GMT]]></title><description><![CDATA[<p>hast du shcon mal deinen debugger bemüht ? und nimm das nächste mal die c++ tags, um den code zu zeigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305932</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305932</guid><dc:creator><![CDATA[vario-500]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:03:37 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:08:35 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>wohl ein == sein soll.</p>
</blockquote>
<p>diesen fehler machen in meiner klasse regelmäßig 11 schüler! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>aber danke fürs errinner <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/2305935</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305935</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:08:35 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:09:25 GMT]]></title><description><![CDATA[<p>vario-500 schrieb:</p>
<blockquote>
<p>hast du shcon mal deinen debugger bemüht ? und nimm das nächste mal die c++ tags, um den code zu zeigen.</p>
</blockquote>
<p>ich hab leider weder ahnung, wie der debugger funktioniert, noch was c++ tags sind <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305936</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305936</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:09:25 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:11:50 GMT]]></title><description><![CDATA[<p>Du hast wahrscheinlich eh alles im Debugmode. Du kannst Haltepunkte setzen (findest Du sicherlich irgendwo), dann stoppt der Code dort und du kannst z.B. zeilenweise vorgehen, um zu sehen, wo genau der Code herspringt und was so ausgeführt wird. Damit kannst Du sehen, wo der Code genau herläuft und was da passiert, sogar Variablenwerte kannst Du auslesen! Auf diese Weise siehst Du, wie sich die Werte verändern, kannst den Logikfehler eingrenzen und glorreich beheben.</p>
<p>C++-Tags sind Codetags hier im Forum, die Code lesbarer machen.<br />
[cpp]<br />
Hier den Code hinschreiben<br />
[/cpp]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305937</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305937</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:11:50 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:16:56 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Du kannst Haltepunkte setzen (findest Du sicherlich irgendwo), dann stoppt der Code dort und du kannst z.B. zeilenweise vorgehen, um zu sehen, wo genau der Code herspringt und was so ausgeführt wird.</p>
</blockquote>
<p>Das hat unser Lehrer uns mal gezeigt, aber noch nicht erklärt wie man es benutzt.</p>
<p>Eisflamme schrieb:</p>
<blockquote>
<p>C++-Tags sind Codetags hier im Forum, die Code lesbarer machen.</p>
</blockquote>
<p>danke das merk ich mir!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305940</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305940</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:16:56 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:34:08 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Oder noch besser statt irgendwo im Code zu schreiben:</p>
<pre><code class="language-cpp">p = plus_eins(p);
</code></pre>
<p>direkt:</p>
<pre><code class="language-cpp">++p;
</code></pre>
</blockquote>
<p>heist das, ich soll die Zeile</p>
<pre><code class="language-cpp">p = plus_eins(p);
</code></pre>
<p>komplett weglassen oder so schreiben</p>
<pre><code class="language-cpp">p = ++p;
</code></pre>
<p>??</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305946</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305946</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:34:08 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:40:24 GMT]]></title><description><![CDATA[<p>Nein, nur</p>
<pre><code class="language-cpp">++p;
</code></pre>
<p>Aber jetzt ab in's Bett!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305947</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305947</guid><dc:creator><![CDATA[mapper]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:40:24 GMT</pubDate></item><item><title><![CDATA[Reply to Logikfehler im Quellcode on Mon, 11 Mar 2013 21:41:35 GMT]]></title><description><![CDATA[<p>mapper schrieb:</p>
<blockquote>
<p>Aber jetzt ab in's Bett!</p>
</blockquote>
<p>wie kommst du darauf, dass ich ins bett sollte? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";D"
      alt="😉"
    /></p>
<p>aber danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2305948</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2305948</guid><dc:creator><![CDATA[Barnibas]]></dc:creator><pubDate>Mon, 11 Mar 2013 21:41:35 GMT</pubDate></item></channel></rss>