<?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[Aufgabe mit Rechtecken]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe derzeit ein Problem mit einer Aufgabe und würde mich über ein paar Tipps freuen. Das folgende Bild demonstriert ein Beispiel.</p>
<p><a href="http://img90.imageshack.us/img90/9679/rechteckecs4.png" rel="nofollow">http://img90.imageshack.us/img90/9679/rechteckecs4.png</a></p>
<p>Man soll nun in einem Programm 4 Koordinatenpunkte übergeben. 2 Punkte spannen ein Rechteck auf. Und nun soll das Programm ausgeben ob sich beispielsweise die Rechtecke schneiden (R und E) oder an den Ecken berühren, so wie Rechteck R und C.</p>
<p>Ich möchte keinen Code haben, es geht mir nur um den besten Weg das zu erreichen ohne in eine if-else Manie zu verfallen. Freue mich über jeden Tipp. <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/topic/195133/aufgabe-mit-rechtecken</link><generator>RSS for Node</generator><lastBuildDate>Tue, 29 Sep 2026 20:18:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195133.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 14 Oct 2007 16:42:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 16:42:14 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich habe derzeit ein Problem mit einer Aufgabe und würde mich über ein paar Tipps freuen. Das folgende Bild demonstriert ein Beispiel.</p>
<p><a href="http://img90.imageshack.us/img90/9679/rechteckecs4.png" rel="nofollow">http://img90.imageshack.us/img90/9679/rechteckecs4.png</a></p>
<p>Man soll nun in einem Programm 4 Koordinatenpunkte übergeben. 2 Punkte spannen ein Rechteck auf. Und nun soll das Programm ausgeben ob sich beispielsweise die Rechtecke schneiden (R und E) oder an den Ecken berühren, so wie Rechteck R und C.</p>
<p>Ich möchte keinen Code haben, es geht mir nur um den besten Weg das zu erreichen ohne in eine if-else Manie zu verfallen. Freue mich über jeden Tipp. <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/1385024</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385024</guid><dc:creator><![CDATA[Bommeli]]></dc:creator><pubDate>Sun, 14 Oct 2007 16:42:14 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 17:30:35 GMT]]></title><description><![CDATA[<p>Naja erstmal halt ne Klasse anlegen ... so pseudocode:</p>
<pre><code class="language-cpp">class rectangle
{
    Point m_ptEdges[2];

public:
    rectangle(unsigned long x, unsigned long y, unsigned int width, unsigned int height);
    rectangle(const Point&amp; lefttop, const Point&amp; bottomright);

public:
    bool edge_collide(const rectangle&amp; rect)
    {
        Point edges[4];
        edges[0] = rect.m_ptEdges[0]; // top - left
        edges[1].x = rect.m_ptEdges[0].y; // top - right
        edges[1].y = rect.m_ptEdges[1].x;
        edges[2] = rect.m_ptEdges[1]; // bottom - right
        edges[3].x = rect.m_ptEdges[1].y; // bottom - left
        edges[3].y = rect.m_ptEdges[0].x;
        return (edges[0] == ...);
    }
};
</code></pre>
<p>usw. also sollte doch gehen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385068</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Sun, 14 Oct 2007 17:30:35 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 17:55:20 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>danke rstmal für den Beitrag! Klassen darf ich dafür noch nicht nutzen. Aber unabhängig davon interessiert mich vielmehr der Lösungsansatz, also wie ich am geschicktesten mit den Rechtecken arbeite?</p>
<p>Beispielsweise ob ich auf Vektoren zurückgreifen soll? Denn die Frage wie sich die zwei aufgespannten Rechtecke in die Quere kommen ist dabei die interessante.</p>
<p>Als Beispiel man die 4 Koordinaten.</p>
<p>P(2,2) Q(7,4) - S(2,2) T(0,0)</p>
<p>Die beiden Rechtecke berühren sich in einem Punkt, während sich</p>
<p>P(2,2) Q(7,4) - S(2,2) T(3,3)</p>
<p>nicht in einem Punkt berühren sondern das erste Rechteck das zweite vollkommen beinhaltet.</p>
<p>Meine Frage nun. Wie realisiere ich das mathematisch am besten? <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/1385091</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385091</guid><dc:creator><![CDATA[Bommeli]]></dc:creator><pubDate>Sun, 14 Oct 2007 17:55:20 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 18:04:42 GMT]]></title><description><![CDATA[<p>Viel Mathe brauchst du da nicht.</p>
<p>Brauchst nur ein paar if Bedingungen mit denen du prüfst, ob ein Eckpunkt zwischen den Punkten des anderen Rechtecks liegt.</p>
<p>if(P.x &gt; S.x &amp;&amp; P.x &lt; T.x ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385094</guid><dc:creator><![CDATA[ÜberraschungsKuh]]></dc:creator><pubDate>Sun, 14 Oct 2007 18:04:42 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 18:14:40 GMT]]></title><description><![CDATA[<p>wenn keine klasse verwenden drafst, nimm nen struct <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=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385103</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385103</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Sun, 14 Oct 2007 18:14:40 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 18:56:33 GMT]]></title><description><![CDATA[<p>Bommeli schrieb:</p>
<blockquote>
<p>Man soll nun in einem Programm 4 Koordinatenpunkte übergeben. 2 Punkte spannen ein Rechteck auf. Und nun soll das Programm ausgeben ob sich beispielsweise die Rechtecke schneiden (R und E) oder an den Ecken berühren, so wie Rechteck R und C.</p>
</blockquote>
<p>würd mir für so eine aufgabe ne c-typische signatur hernehmen</p>
<pre><code class="language-cpp">struct Point{ int x, y; };
struct Rect{ Point upperleft, lowerright; };
bool intersect(const Rect *r1, const Rect *r2, Rect *intersection);
</code></pre>
<p>die function intersect gibt dabei nen bool'schen wert zurück, der bestimmt, ob sich die beiden rechtecke r1 und r2 schneiden und im rect intersection wird das von den schnittpunkten aufgespannte rechteck gespeichert. wenns nur eine ecke ist, dann sind beide punkte von intersection halt identisch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385120</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Sun, 14 Oct 2007 18:56:33 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 19:19:02 GMT]]></title><description><![CDATA[<p>Ich darf auch keinen struct verwenden. <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=";)"
      alt="😉"
    /></p>
<p>Das alles soll mit ganz einfachen Kontrollstrukturen und Schleifen ablaufen. Keine Klassenobjekte, keine Arrays und keine STL.</p>
<p>@ÜberraschungsKuh:</p>
<p>Hmm, das klingt gut. Nur wie löse ich das am geschicktesten mit ein &quot;paar if Bedingungen&quot;?</p>
<p>Ein Beispiel in Pseudocode für den Fall das sich die Eckpunkte berühren wäre nicht schlecht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385137</guid><dc:creator><![CDATA[Bommeli]]></dc:creator><pubDate>Sun, 14 Oct 2007 19:19:02 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 19:21:10 GMT]]></title><description><![CDATA[<p>Bommeli schrieb:</p>
<blockquote>
<p>Ich darf auch keinen struct verwenden.</p>
</blockquote>
<p>halte ich zwar für hochgradig blödsinnig, aber dann machst aus den points und rects halt lauter ints.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385140</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Sun, 14 Oct 2007 19:21:10 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Sun, 14 Oct 2007 20:48:11 GMT]]></title><description><![CDATA[<p>thordk schrieb:</p>
<blockquote>
<p>Bommeli schrieb:</p>
<blockquote>
<p>Ich darf auch keinen struct verwenden.</p>
</blockquote>
<p>halte ich zwar für hochgradig blödsinnig, aber dann machst aus den points und rects halt lauter ints.</p>
</blockquote>
<p>Also noch einmal. Es geht mir nicht um die Darstellung! Ich weiß wie ich das löse.</p>
<p>Es geht mir um den bestmöglichen Lösungsansatz für die Aufgabe. Wie implementiere ich die Aufgabe am besten? Ob ich das nun objektorientiert oder prozedural mache spielt hier keine Rolle.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385186</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385186</guid><dc:creator><![CDATA[Bommeli]]></dc:creator><pubDate>Sun, 14 Oct 2007 20:48:11 GMT</pubDate></item><item><title><![CDATA[Reply to Aufgabe mit Rechtecken on Mon, 15 Oct 2007 04:01:57 GMT]]></title><description><![CDATA[<p>du hast ein Koordinaten system mit ein best . höhe und breite mit ensprechenden Raster.</p>
<p>deine Rechtecke haben 4 Attribute bzw. zwei Punkte(x/y) 1.(rechts/unten) und 2.(links/oben)</p>
<p>und wie Überraschungskuh schon sagte bruachst du nun mal ne if bedingungen um zu prüfen ob ein punkt in einem rechteck liegt!</p>
<pre><code class="language-cpp">Point target (x,y);
Rect rc(Point(x,y),Point(x,y));
if(target.x&gt;=rc.right &amp;&amp; target.x &lt;= rc.left &amp;&amp; target.y &gt;= rc.bottom &amp;&amp; target.y &lt;=rc.top)
 //im Rechteck
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1385270</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385270</guid><dc:creator><![CDATA[BorisDieKlinge]]></dc:creator><pubDate>Mon, 15 Oct 2007 04:01:57 GMT</pubDate></item></channel></rss>