<?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[Funktion Zeiger übergeben]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich bin ein Neuling in C++ und sitze nun schon Stunden an einer Aufgabe ohne wirklich weiter zu kommen. Vielleicht kann mir jemand auf die Sprünge helfen...</p>
<p>Zunächst soll der Flächeninhalt von Kreisen berechnet werden. Das hab ich noch hinbekommen.<br />
Dann soll mittels einer Funktion überprüft werden, ob die Kreise sich überschnieden. Die Funtkion bekommt Zeiger übergeben. Die vorgegeben Funktionsdeklaration steht unten.<br />
Wie mach ich das nun? Wie sollte die Funktionsanweisung und der Funktionsaufruf aussehen?<br />
Es ist bestimmt ganz simpel... doch ich krieg das nicht hin und verzweifel langsam...</p>
<p>Ich bin für jeden Tipp dankbar!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;math.h&gt;

using namespace std;

struct Punkt
    {
    double x;
    double y;
    };

struct Kreis
{
    Punkt mittelpunkt;
    double radius;
};

double area(Kreis &amp;k)
{
    double Inhalt=k.radius*k.radius*M_PI;
    cout &lt;&lt;&quot;Fläche: &quot;&lt;&lt;Inhalt&lt;&lt;endl;  
    return Inhalt;
}

bool intersect(Kreis *a, Kreis *b)
{

}

int main()
{

Punkt P1;
    P1.x=2;
    P1.y=8;

Kreis K1;
    K1.mittelpunkt=P1;
    K1.radius=3.5;

Punkt P2;
    P2.x=3;
    P2.y=-2;

Kreis K2;
    K2.mittelpunkt=P2;
    K2.radius=7;

area(K1);
area(K2);

intersect(&amp;K1,&amp;K2);

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/165715/funktion-zeiger-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Tue, 15 Sep 2026 00:45:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/165715.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 22 Nov 2006 13:06:31 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Funktion Zeiger übergeben on Wed, 22 Nov 2006 13:06:31 GMT]]></title><description><![CDATA[<p>Hallo zusammen!</p>
<p>Ich bin ein Neuling in C++ und sitze nun schon Stunden an einer Aufgabe ohne wirklich weiter zu kommen. Vielleicht kann mir jemand auf die Sprünge helfen...</p>
<p>Zunächst soll der Flächeninhalt von Kreisen berechnet werden. Das hab ich noch hinbekommen.<br />
Dann soll mittels einer Funktion überprüft werden, ob die Kreise sich überschnieden. Die Funtkion bekommt Zeiger übergeben. Die vorgegeben Funktionsdeklaration steht unten.<br />
Wie mach ich das nun? Wie sollte die Funktionsanweisung und der Funktionsaufruf aussehen?<br />
Es ist bestimmt ganz simpel... doch ich krieg das nicht hin und verzweifel langsam...</p>
<p>Ich bin für jeden Tipp dankbar!</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;math.h&gt;

using namespace std;

struct Punkt
    {
    double x;
    double y;
    };

struct Kreis
{
    Punkt mittelpunkt;
    double radius;
};

double area(Kreis &amp;k)
{
    double Inhalt=k.radius*k.radius*M_PI;
    cout &lt;&lt;&quot;Fläche: &quot;&lt;&lt;Inhalt&lt;&lt;endl;  
    return Inhalt;
}

bool intersect(Kreis *a, Kreis *b)
{

}

int main()
{

Punkt P1;
    P1.x=2;
    P1.y=8;

Kreis K1;
    K1.mittelpunkt=P1;
    K1.radius=3.5;

Punkt P2;
    P2.x=3;
    P2.y=-2;

Kreis K2;
    K2.mittelpunkt=P2;
    K2.radius=7;

area(K1);
area(K2);

intersect(&amp;K1,&amp;K2);

}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1179228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179228</guid><dc:creator><![CDATA[Free-Dee]]></dc:creator><pubDate>Wed, 22 Nov 2006 13:06:31 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion Zeiger übergeben on Wed, 22 Nov 2006 13:19:02 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">//bool intersect(Kreis *a, Kreis *b)
bool intersect(Kreis* a, Kreis* b) // ist (IMAO) in C++ sinnvoller, kommt aber auf's Gleiche raus
{
  // entweder &quot;pointer-to-member&quot;
  a-&gt;mittelpunkt;
  // oder pointer dereferenzieren, dann zugreifen
  (*a).mittelpunkt;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1179238</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179238</guid><dc:creator><![CDATA[finix]]></dc:creator><pubDate>Wed, 22 Nov 2006 13:19:02 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion Zeiger übergeben on Wed, 22 Nov 2006 13:21:46 GMT]]></title><description><![CDATA[<p>Erstens mußt du auch auswerten, was die Funktion zurückgegeben hat ( <code>bool erg=intersect(&amp;K1,&amp;K2);if(erg)...</code> ).</p>
<p>Zweitens brauchst du in C++ nur noch selten Zeiger zu übergeben - in deinem Fall dürfte eine Übergabe als Wert oder (const) Referenz günstiger sein.</p>
<p>Drittens: Wie bestimmst du, ob sich zwei Kreise schneiden? (Tip: Es hat etwas mit dem Abstand ihrer Mittelpunkte und ihren Radien zu tun; Bonustip: Pythagoras)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1179240</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1179240</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 22 Nov 2006 13:21:46 GMT</pubDate></item><item><title><![CDATA[Reply to Funktion Zeiger übergeben on Thu, 23 Nov 2006 14:40:18 GMT]]></title><description><![CDATA[<p>Gilt denn &quot;ein Kreis enthält den anderen&quot; auch als Überschneidung? (weil, wenn nicht, dann wird es schwieriger zu bestimmen...)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1180052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1180052</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Thu, 23 Nov 2006 14:40:18 GMT</pubDate></item></channel></rss>