<?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[Matrix]]></title><description><![CDATA[<p>Ich soll eine methode schreiben die aus einer textdatei eine matrix einliest , die sieht ungefähr so aus:</p>
<p>3<br />
324<br />
123<br />
256</p>
<p>die erste zahl gibt dabei(3) , die zeile und spaltengröße an.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;

using namespace std;

int main()
{

ifstream file( &quot;Dateieinlesen.txt&quot;) ;

if (!file)
    {
        cerr &lt;&lt; &quot;Datei existiert nicht\n&quot; &lt;&lt; endl;
        exit(-1);
    }

// wie lese ich die datei so ein , dass ich die Matrix ins Array bekomme?

double matrix [n][n];

 return 0;

}
</code></pre>
<p>wie lese ich die datei so ein , dass ich die Matrix ins Array bekomme?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/258914/matrix</link><generator>RSS for Node</generator><lastBuildDate>Wed, 09 Sep 2026 02:16:50 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/258914.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 16 Jan 2010 20:37:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Matrix on Sat, 16 Jan 2010 20:37:25 GMT]]></title><description><![CDATA[<p>Ich soll eine methode schreiben die aus einer textdatei eine matrix einliest , die sieht ungefähr so aus:</p>
<p>3<br />
324<br />
123<br />
256</p>
<p>die erste zahl gibt dabei(3) , die zeile und spaltengröße an.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;fstream&gt;

using namespace std;

int main()
{

ifstream file( &quot;Dateieinlesen.txt&quot;) ;

if (!file)
    {
        cerr &lt;&lt; &quot;Datei existiert nicht\n&quot; &lt;&lt; endl;
        exit(-1);
    }

// wie lese ich die datei so ein , dass ich die Matrix ins Array bekomme?

double matrix [n][n];

 return 0;

}
</code></pre>
<p>wie lese ich die datei so ein , dass ich die Matrix ins Array bekomme?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839934</guid><dc:creator><![CDATA[claudia_vw]]></dc:creator><pubDate>Sat, 16 Jan 2010 20:37:25 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sat, 16 Jan 2010 21:03:57 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;

using namespace std;

int main()
{
  ifstream file(&quot;Dateieinlesen.txt&quot;);
  if (!file) {
    cerr &lt;&lt; &quot;Datei existiert nicht\n&quot; &lt;&lt; endl;
    return -1; // Wo hast du denn exit(-1) her?    
  }

  int size;
  file &gt;&gt; size; // Matrixgröße einlesen
  // Matrix vorbereiten
  vector&lt; vector&lt;int&gt; &gt; matrix(3, vector&lt;int&gt;(3));

  // Einlesen
  int row = 0, col = 0;
  while (col != size) {
    while (row != size) {
      file &gt;&gt; matrix[col][row];
      ++row;
    }
    row = 0;
    ++col;
  }
}
</code></pre>
<p>Das sollte funktionieren.</p>
<p>bnz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839947</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839947</guid><dc:creator><![CDATA[bnz]]></dc:creator><pubDate>Sat, 16 Jan 2010 21:03:57 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sat, 16 Jan 2010 21:17:21 GMT]]></title><description><![CDATA[<p>Ach komm, etwas Grundlagen solltest du doch schon mal gelernt haben.</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;stdexcept&gt;

int main() {
   std::ifstream ifs(&quot;Dateieinlesen.txt&quot;, ios_base::binary);
   if(!ifs)
      throw std::runtime_error(&quot;Konnte die Datei nicht öffnen!&quot;);
   std::string line;
   std::size_t size = ifs.get() - 0x30; // Zahlenwert = ASCII-Code - ASCII-Code von 0
   int** matrix;
   std::size_t n;
   try { // Matrix erstellen
      matrix = new int*[size];
      for(n = 0; n &lt; size; n++) {
         matrix[n] = new int;
      }
   }
   catch(const std::bad_alloc&amp; e) { // Nicht genug Speicher vorhanden
      std::cerr &lt;&lt; e.what() &lt;&lt; '\n';
      for(std::size_t i = 0; i &lt; n; i++)
         delete [] matrix[i]; // Bis jetzt erzeugte Array löschen
      delete [] matrix; // Matrix löschen
   }
   unsigned count = 0;
   while(std::getline(ifs, line)) {
      for(n = 0; n &lt; line.length(); n++)
         matrix[count][n] = line[n] - 0x30;
      ++count;
   }
   for(n = 0; n &lt; size; n++)
      delete [] matrix[n];
   delete [] matrix;
}
</code></pre>
<p>Hier würde sich auch viel bequemer mit der Standardlibrary arbeiten. (vector etc.)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1839950</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1839950</guid><dc:creator><![CDATA[Ad aCTa]]></dc:creator><pubDate>Sat, 16 Jan 2010 21:17:21 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sun, 17 Jan 2010 09:30:06 GMT]]></title><description><![CDATA[<p>danke ich werds mal ausprobieren <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/1840036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1840036</guid><dc:creator><![CDATA[claudia_vw]]></dc:creator><pubDate>Sun, 17 Jan 2010 09:30:06 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sun, 17 Jan 2010 13:33:46 GMT]]></title><description><![CDATA[<p>ich hätte noch eine Frage. die nächste aufgabe ist die determinate nach dem<br />
emtwicklungsatz von Laplace zu erreichenen. Die Matrix ist eine R n*n matrix</p>
<p>3<br />
123<br />
145<br />
555</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;iostream&gt;
using namespace std; 

int main(void)
{
int s;
cout &lt;&lt;&quot;Wir lesen jetzt dein Matrix ein&quot; &lt;&lt; endl;// endl = Zeilenumbruch

ifstream datei(&quot;Dateieinlesen.txt&quot;);

datei &gt;&gt; s; // nur das erste Int in datei 
            // springt in die nächste Zeile 
int m[s][s];
            // liest Matrix ein
for( int i=0; i&lt;s; i++)
{
for(int j=0; j&lt;s; j++){
datei &gt;&gt; m[i][j];} 
}
datei.close(); 
               // gibt Matrix aus
for( int i=0; i&lt;s; i++){ 
for(int j=0; j&lt;s; j++){
cout &lt;&lt; m[i][j] &lt;&lt; &quot; &quot;;    // &lt;&lt; wie + in Java
} 
cout &lt;&lt; endl; // damit die Ausgabe stimmt

} 
ofstream dateiausgeben(&quot;Datei&quot;);// gibt datei aus
for(int i=0 ; i&lt;s; i++){
for( int j=0; j&lt;s; j++){
dateiausgeben &lt;&lt; m[i][j]&lt;&lt; &quot; &quot; ;// ausgabe schön
}
dateiausgeben &lt;&lt; endl; // ausgabe schön
} 

}
</code></pre>
<p>ich habe mir Überlegt das ich mir die Werte der 1. &gt;Spalte in der Matix in ein extra array zu schreiben.</p>
<p>jetzt muss ich für die brechenung immer verschiebenden zeilen der matrix verwenden. wie kann ich das umsetzen?<br />
und wie beachte ich die passenden vorzeichen? <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/1840158</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1840158</guid><dc:creator><![CDATA[claudia_vw]]></dc:creator><pubDate>Sun, 17 Jan 2010 13:33:46 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sun, 17 Jan 2010 14:02:30 GMT]]></title><description><![CDATA[<p>also soweit bin ich</p>
<p>ich hab den Fall spalten und zeilen = 2 extra gemacht</p>
<pre><code class="language-cpp">int det(int m[][]){ // rekursiv berechnen????
int antwort;

if(s==2)
{
   antwort=m[0][0]*m[1][1]-m[0][1]*m[1][0]; //deterimate berechenen
        for(int i=0; i&lt;s; i++)

        m[i][0]     // rekursiv berechnen?????
        }

return det(m[][]) ; // rekursiv
}

return antwort;
}

}
</code></pre>
<p>hier fehlt jez noch das den werte der 1. spalte mal die determinate und das vorzeichen. außerdem ist mir der rekurive weg nicht ganz klar</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1840181</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1840181</guid><dc:creator><![CDATA[claudia_vw]]></dc:creator><pubDate>Sun, 17 Jan 2010 14:02:30 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sun, 17 Jan 2010 14:06:29 GMT]]></title><description><![CDATA[<p>Das hier macht dein Compiler vielleicht mit, aber das ist kein gültiges C++:</p>
<pre><code class="language-cpp">int m[s][s];
</code></pre>
<p>Mach das lieber so wie Ad aCTa es vormacht, dann bist du auf der ganz sicheren Seite.</p>
<p>Außerdem hilft es, etwas Eigeninitiative zu zeigen, dann bekommt man auch nützliche Antworten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1840184</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1840184</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sun, 17 Jan 2010 14:06:29 GMT</pubDate></item><item><title><![CDATA[Reply to Matrix on Sun, 17 Jan 2010 15:27:13 GMT]]></title><description><![CDATA[<p>Nimm diesen Code:</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;
#include &lt;stdexcept&gt;
#include &lt;vector&gt;
#include &lt;sstream&gt;

int main() {
	std::ifstream ifs(&quot;Dateieinlesen.txt&quot;, std::ios_base::binary);
	if(!ifs)
		throw std::runtime_error(&quot;Fehler: Konnte Dateieinlesen.txt nicht oeffnen!&quot;);
	std::size_t size = 0, count = 0;
	ifs &gt;&gt; size;
	ifs.ignore(2);
	std::vector&lt;std::vector&lt;int&gt; &gt; matrix(size, std::vector&lt;int&gt;(size));
	std::string temp;
	while(std::getline(ifs, temp)) {
		std::stringstream ss(temp);
		for(std::size_t n = 0; n &lt; size; n++)
			ss &gt;&gt; matrix[count][n];
		++count;
	}
}
</code></pre>
<p>Damit hast du dann die Zahlen bequem in deinem vector und kannst wie auf ein Array darauf zugreifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1840225</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1840225</guid><dc:creator><![CDATA[Ad aCTa]]></dc:creator><pubDate>Sun, 17 Jan 2010 15:27:13 GMT</pubDate></item></channel></rss>