<?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[error C3861]]></title><description><![CDATA[<p>Hi leute kann mir jemand helfen? ich hab dieser programm geschrieben, nur wenn ich es starte sprngt als fehler c3861 an der Bezeichner Lingl wurde net gefunden. Weiß jemand was ich vergessen hab??</p>
<p>#include &lt;iostream&gt;<br />
#include &lt;cmath&gt;<br />
using namespace std;<br />
#include&lt;string&gt;<br />
#include&lt;sstream&gt;<br />
#include&lt;iomanip&gt;</p>
<p>double Det(double a[3][3])<br />
{<br />
double ret;</p>
<p>ret=a[0][0]*a[1][1]*a[2][2] + a[0][1]*a[1][2]*a[2][0] + a[0][2]*a[1][0]*a[2][1] - a[0][2]*a[1][1]*a[2][0] - a[0][0]*a[1][2]*a[2][1] - a[0][1]*a[1][0]*a[2][2];</p>
<p>return ret;<br />
}</p>
<p>void main()</p>
<p>{<br />
int i,j;<br />
const double PI=3.14159;<br />
double g, d[3], l[4], a[3][3], b[3],f[3];</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
cout&lt;&lt;&quot;Eingabe von Winkel &quot;&lt;&lt;i+1&lt;&lt;&quot; in Grad&quot;&lt;&lt;endl; //Einlesen von Winkeln<br />
cin&gt;&gt;d[i];<br />
}</p>
<p>for(i=0;i&lt;4;i++)<br />
{<br />
cout&lt;&lt;&quot;Eingabe von Laenge &quot;&lt;&lt;i+1&lt;&lt;endl; //Einlesen von den Längen<br />
cin&gt;&gt;l[i];<br />
}</p>
<p>cout&lt;&lt;&quot;Geben sie die Gewichtskraft an &quot;&lt;&lt;endl; //Einlesen der Gewichtskraft<br />
cin&gt;&gt;g;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
d[i]=2*PI/360*d[i]; //Winkel in Bogenmaß umwandeln<br />
}</p>
<p>a[0][0]=cos(d[0]);<br />
a[0][1]=cos(d[1]);<br />
a[0][2]=-cos(d[2]);<br />
a[1][0]=sin(d[0]); //Berechnungen der Matrix<br />
a[1][1]=sin(d[1]);<br />
a[1][2]=sin(d[2]);<br />
a[2][0]=sin(d[0])*l[0];<br />
a[2][1]=sin(d[1])*l[1];<br />
a[2][2]=sin(d[2])*l[2];</p>
<p>b[0]=0;<br />
b[1]=g; //Berechnungen des Vektors<br />
b[2]=g*l[3];</p>
<p>cout&lt;&lt;&quot;Koeffizientenmatrix A: &quot;&lt;&lt;endl; //Ausgabe der Matrix</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
cout&lt;&lt;setprecision(4)&lt;&lt;fixed&lt;&lt;&quot;\t&quot;&lt;&lt;a[i][j]&lt;&lt;&quot;\t&quot;;<br />
}<br />
cout&lt;&lt;endl;<br />
}</p>
<p>cout&lt;&lt;&quot;Absolutglieder B:&quot;&lt;&lt;endl&lt;&lt;&quot;\t&quot;; //Ausgabe des Vektors<br />
for(i=0;i&lt;3;i++)<br />
{<br />
cout&lt;&lt;setprecision(4)&lt;&lt;fixed&lt;&lt;b[i]&lt;&lt;&quot;\t&quot;;</p>
<p>}</p>
<p>Lingl(a,b,f);<br />
for(i=0;i&lt;3;i++)<br />
cout&lt;&lt;&quot;Auflager kraft&quot;&lt;&lt;i+1&lt;&lt;&quot;=&quot;&lt;&lt;f[i]&lt;&lt;endl;</p>
<p>}</p>
<p>void Lingl(double a[3][3], double b [3], double f[3])<br />
{<br />
double deta;<br />
double m[3][3];<br />
int i,j;</p>
<p>deta=Det(a);</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][0]=b[0];<br />
m[1][0]=b[1];<br />
m[2][0]=b[2];<br />
}<br />
}</p>
<p>f[0]=Det(m)/deta;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][1]=b[0];<br />
m[1][1]=b[1];<br />
m[2][1]=b[2];<br />
}</p>
<p>}</p>
<p>f[1]=Det(m)/deta;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][2]=b[0];<br />
m[1][2]=b[1];<br />
m[2][2]=b[2];<br />
}</p>
<p>}</p>
<p>f[2]=Det(m)/deta;</p>
<p>}</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/311899/error-c3861</link><generator>RSS for Node</generator><lastBuildDate>Mon, 03 Aug 2026 06:35:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/311899.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 18 Dec 2012 06:56:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 06:56:18 GMT]]></title><description><![CDATA[<p>Hi leute kann mir jemand helfen? ich hab dieser programm geschrieben, nur wenn ich es starte sprngt als fehler c3861 an der Bezeichner Lingl wurde net gefunden. Weiß jemand was ich vergessen hab??</p>
<p>#include &lt;iostream&gt;<br />
#include &lt;cmath&gt;<br />
using namespace std;<br />
#include&lt;string&gt;<br />
#include&lt;sstream&gt;<br />
#include&lt;iomanip&gt;</p>
<p>double Det(double a[3][3])<br />
{<br />
double ret;</p>
<p>ret=a[0][0]*a[1][1]*a[2][2] + a[0][1]*a[1][2]*a[2][0] + a[0][2]*a[1][0]*a[2][1] - a[0][2]*a[1][1]*a[2][0] - a[0][0]*a[1][2]*a[2][1] - a[0][1]*a[1][0]*a[2][2];</p>
<p>return ret;<br />
}</p>
<p>void main()</p>
<p>{<br />
int i,j;<br />
const double PI=3.14159;<br />
double g, d[3], l[4], a[3][3], b[3],f[3];</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
cout&lt;&lt;&quot;Eingabe von Winkel &quot;&lt;&lt;i+1&lt;&lt;&quot; in Grad&quot;&lt;&lt;endl; //Einlesen von Winkeln<br />
cin&gt;&gt;d[i];<br />
}</p>
<p>for(i=0;i&lt;4;i++)<br />
{<br />
cout&lt;&lt;&quot;Eingabe von Laenge &quot;&lt;&lt;i+1&lt;&lt;endl; //Einlesen von den Längen<br />
cin&gt;&gt;l[i];<br />
}</p>
<p>cout&lt;&lt;&quot;Geben sie die Gewichtskraft an &quot;&lt;&lt;endl; //Einlesen der Gewichtskraft<br />
cin&gt;&gt;g;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
d[i]=2*PI/360*d[i]; //Winkel in Bogenmaß umwandeln<br />
}</p>
<p>a[0][0]=cos(d[0]);<br />
a[0][1]=cos(d[1]);<br />
a[0][2]=-cos(d[2]);<br />
a[1][0]=sin(d[0]); //Berechnungen der Matrix<br />
a[1][1]=sin(d[1]);<br />
a[1][2]=sin(d[2]);<br />
a[2][0]=sin(d[0])*l[0];<br />
a[2][1]=sin(d[1])*l[1];<br />
a[2][2]=sin(d[2])*l[2];</p>
<p>b[0]=0;<br />
b[1]=g; //Berechnungen des Vektors<br />
b[2]=g*l[3];</p>
<p>cout&lt;&lt;&quot;Koeffizientenmatrix A: &quot;&lt;&lt;endl; //Ausgabe der Matrix</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
cout&lt;&lt;setprecision(4)&lt;&lt;fixed&lt;&lt;&quot;\t&quot;&lt;&lt;a[i][j]&lt;&lt;&quot;\t&quot;;<br />
}<br />
cout&lt;&lt;endl;<br />
}</p>
<p>cout&lt;&lt;&quot;Absolutglieder B:&quot;&lt;&lt;endl&lt;&lt;&quot;\t&quot;; //Ausgabe des Vektors<br />
for(i=0;i&lt;3;i++)<br />
{<br />
cout&lt;&lt;setprecision(4)&lt;&lt;fixed&lt;&lt;b[i]&lt;&lt;&quot;\t&quot;;</p>
<p>}</p>
<p>Lingl(a,b,f);<br />
for(i=0;i&lt;3;i++)<br />
cout&lt;&lt;&quot;Auflager kraft&quot;&lt;&lt;i+1&lt;&lt;&quot;=&quot;&lt;&lt;f[i]&lt;&lt;endl;</p>
<p>}</p>
<p>void Lingl(double a[3][3], double b [3], double f[3])<br />
{<br />
double deta;<br />
double m[3][3];<br />
int i,j;</p>
<p>deta=Det(a);</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][0]=b[0];<br />
m[1][0]=b[1];<br />
m[2][0]=b[2];<br />
}<br />
}</p>
<p>f[0]=Det(m)/deta;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][1]=b[0];<br />
m[1][1]=b[1];<br />
m[2][1]=b[2];<br />
}</p>
<p>}</p>
<p>f[1]=Det(m)/deta;</p>
<p>for(i=0;i&lt;3;i++)<br />
{<br />
for(j=0;j&lt;3;j++)<br />
{<br />
m[i][j]=a[i][j];<br />
m[0][2]=b[0];<br />
m[1][2]=b[1];<br />
m[2][2]=b[2];<br />
}</p>
<p>}</p>
<p>f[2]=Det(m)/deta;</p>
<p>}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281043</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281043</guid><dc:creator><![CDATA[Higgi]]></dc:creator><pubDate>Tue, 18 Dec 2012 06:56:18 GMT</pubDate></item><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 07:14:42 GMT]]></title><description><![CDATA[<p>Du verwendest die Funktion bevor der Compiler sie kennt. Deklariere einen Funktionsprototypen für Lingl vor der Verwendung (z.B. nach den Includes oder in einen Header, den du dann inkludierst).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281048</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281048</guid><dc:creator><![CDATA[EinGast]]></dc:creator><pubDate>Tue, 18 Dec 2012 07:14:42 GMT</pubDate></item><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 07:15:20 GMT]]></title><description><![CDATA[<p>Higgi schrieb:</p>
<blockquote>
<p>Weiß jemand was ich vergessen hab??</p>
</blockquote>
<p>Code Tags und die Benutzung der Forensuche.<br />
Google hätte es auch getan.</p>
<p>Der Fehler kommt auch nicht von deinem Programm, sondern vom Compiler.</p>
<p>Eine Funktion muss vor der ersten Benutzung dem Compiler bekannt sein.<br />
Entweder die definierst sie vorher, indem du den Code vor der ersten Benutzung hinschreibst (so wie bei Det).</p>
<p>Oder du deklarierst sie vorher, indem du nur den Prototypen schreibst:</p>
<pre><code>void Lingl(double a[3][3], double b [3], double f[3]);
</code></pre>
<p>Diese Zeile machst du nach den #include.<br />
Achte auf das ; am Ende.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281049</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281049</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Tue, 18 Dec 2012 07:15:20 GMT</pubDate></item><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 07:24:57 GMT]]></title><description><![CDATA[<p>Dein komplettes Programm ist teilweise Blödsinn. Ich habe jetzt keine Zeit alle Macken aufzuzählen, aber schon das <code>void main()</code> heißt gar nichts gutes. Wie lernst du C++?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281052</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281052</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Tue, 18 Dec 2012 07:24:57 GMT</pubDate></item><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 09:28:56 GMT]]></title><description><![CDATA[<p>Soll da ein lineares Gleichungssystem A*x=b gelöst werden? Ich kann das nur erahnen, aber nicht wirklich in deinem Programm erkennen. Das sieht schon sehr komisch bis falsch aus, also Lingl.</p>
<p>Verwende lieber so etwas wie <a href="http://eigen.tuxfamily.org/index.php?title=Main_Page" rel="nofollow">Eigen</a> für lineare Algebra. Da kann das dann so aussehen:</p>
<pre><code class="language-cpp">#include &lt;Eigen/Dense&gt;

...

Eigen::Matrix3d A;  // 3x3 doubles
Eigen::Vector3d b;  // 3x1 doubles
A &lt;&lt; 1,2,3,
     4,5,6,
     9,8,9;
b &lt;&lt; 2,
     3,
     4;
Eigen::Vector3d x = A.fullPivLu().solve(b);
//                    ^^^^^^^^^   ^^^^^^^^
//               Faktorisierung   Mit Faktorisierung 
//              von A berechnen   A^-1 * b berechnen
</code></pre>
<p>fertig.</p>
<p>Vorteile:<br />
- Du hast gescheite Typen für Matrizen und Vektoren (Vektoren sind Matrizen mit einer Spalte bzw Zeile), die einem das Leben viel einfacher als double[3][3] machen.<br />
- Die implementierten Algorithmen wurden schon gut getestet.</p>
<p>Also, von 2x2 und 3x3 Matrizen kann man so, wie du es gemacht hast -- ich nehme an, das ist die Zeilen- oder Spaltenentwicklung -- die Determinante noch berechnen. Bei größeren Matrizen ist das allerdings eine ziemlich blöde Idee. Es sind schon Leute aus ihrem Job dafür gefeuert worden, weil sie eine Determinante einer größeren Matrix so berechnet haben. Die haben scheinbar in LinA und Numerik nicht ganz aufgepasst. Überlass die Algorithmen den Profis, vermeide die Berechnung von Determinanten und Inversen, löse Gleichungssysteme direkt oder iterativ.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281078</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281078</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Tue, 18 Dec 2012 09:28:56 GMT</pubDate></item><item><title><![CDATA[Reply to error C3861 on Tue, 18 Dec 2012 11:52:27 GMT]]></title><description><![CDATA[<p>Hi, thx an alle Beiträge hat mir geholfen. Ja ich weiß dass das net sehr professionell aussieht aber ich bin ja au kein informatik student. Ich studiere Maschinenbau und hab informatik nur dieses Semester, also bitte verzeiht mir wenn meine Programmierung etwas undurchsichtig ist</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2281157</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2281157</guid><dc:creator><![CDATA[Higgns]]></dc:creator><pubDate>Tue, 18 Dec 2012 11:52:27 GMT</pubDate></item></channel></rss>