<?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[Werte in Martix vergleichen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bräuchte einen anderen Ideenansatz.</p>
<p>Ich will Werte einer Martix vergleichen, aber nur jedes Paar 1x.</p>
<p>Beispiel Matrix<br />
3 5<br />
2 1</p>
<p>Verglichen soll so<br />
3 &lt; 5<br />
3 =&gt; 2<br />
3 =&gt; 1<br />
5 =&gt; 2<br />
5 =&gt; 1<br />
2 &lt; 1</p>
<p>danach soll ein Verhähltnis ausgegeben werden 1/6</p>
<p>Die Martix ist aber größer als bei dem simplen Beispiel.</p>
<p>Mein Ansatz war der hier<br />
(ist nur ein Auszug)</p>
<pre><code>int Zaehler = 0;
                                    int Nenner = 0;

                        if(zeilen%2==0 &amp;&amp; spalten%2==0){
                            for(unsigned int x = 0; x != zeilen; x++) {
                                for(unsigned int y = 0; y != spalten; y++) {

                                   while (Bild[x][y] != Bild[x][y]){

                                        if(Bild[x][y]&lt;Bild[x][y+1]){
                                            Zaehler ++;

                                            if(Bild[x][y]&lt;Bild[x+1][y+1]){
                                                Zaehler ++;

                                                if(Bild[x][y]&lt;Bild[x+1][y]){
                                                    Zaehler ++;

                                                }else {Nenner ++;}
                                            }else {Nenner ++;}
                                        }else {Nenner ++;}

                                        cout &lt;&lt; Zaehler &lt;&lt; &quot;/&quot; &lt;&lt; Nenner;
                                    }
                                    fp &lt;&lt; Zaehler &lt;&lt;&quot;/&quot;&lt;&lt; Nenner; //in eine Datei speichern
                                }
                            }

                        }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/323891/werte-in-martix-vergleichen</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 03:00:06 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/323891.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 21 Feb 2014 16:35:33 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Werte in Martix vergleichen on Fri, 21 Feb 2014 17:11:11 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich bräuchte einen anderen Ideenansatz.</p>
<p>Ich will Werte einer Martix vergleichen, aber nur jedes Paar 1x.</p>
<p>Beispiel Matrix<br />
3 5<br />
2 1</p>
<p>Verglichen soll so<br />
3 &lt; 5<br />
3 =&gt; 2<br />
3 =&gt; 1<br />
5 =&gt; 2<br />
5 =&gt; 1<br />
2 &lt; 1</p>
<p>danach soll ein Verhähltnis ausgegeben werden 1/6</p>
<p>Die Martix ist aber größer als bei dem simplen Beispiel.</p>
<p>Mein Ansatz war der hier<br />
(ist nur ein Auszug)</p>
<pre><code>int Zaehler = 0;
                                    int Nenner = 0;

                        if(zeilen%2==0 &amp;&amp; spalten%2==0){
                            for(unsigned int x = 0; x != zeilen; x++) {
                                for(unsigned int y = 0; y != spalten; y++) {

                                   while (Bild[x][y] != Bild[x][y]){

                                        if(Bild[x][y]&lt;Bild[x][y+1]){
                                            Zaehler ++;

                                            if(Bild[x][y]&lt;Bild[x+1][y+1]){
                                                Zaehler ++;

                                                if(Bild[x][y]&lt;Bild[x+1][y]){
                                                    Zaehler ++;

                                                }else {Nenner ++;}
                                            }else {Nenner ++;}
                                        }else {Nenner ++;}

                                        cout &lt;&lt; Zaehler &lt;&lt; &quot;/&quot; &lt;&lt; Nenner;
                                    }
                                    fp &lt;&lt; Zaehler &lt;&lt;&quot;/&quot;&lt;&lt; Nenner; //in eine Datei speichern
                                }
                            }

                        }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2384467</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2384467</guid><dc:creator><![CDATA[Anfaenger_braucht_Hilfe]]></dc:creator><pubDate>Fri, 21 Feb 2014 17:11:11 GMT</pubDate></item><item><title><![CDATA[Reply to Werte in Martix vergleichen on Fri, 21 Feb 2014 16:45:03 GMT]]></title><description><![CDATA[<p>Was genau soll getan werden? Soll festgestellt werden, ob die Spirale von innen nach außen eine monoton steigende Folge ist? Beschreibe den Algorithmus genauer, dann ist die Implementierung wahrscheinlich trivial.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2384468</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2384468</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 21 Feb 2014 16:45:03 GMT</pubDate></item><item><title><![CDATA[Reply to Werte in Martix vergleichen on Fri, 21 Feb 2014 17:10:46 GMT]]></title><description><![CDATA[<p>hmm genauer beschreiben...</p>
<p>vielleicht durch ein größeres Beispiel?!</p>
<p>Matrix<br />
2 3 4 1<br />
4 2 8 8<br />
6 1 3 9</p>
<p>Vergleich<br />
2&lt;3 2&lt;4 2&gt;1 2&lt;4 2=2 2&lt;8 2&lt;8 2&lt;6 2&gt;1 2&lt;3 2&lt;9<br />
3&lt;4 3&gt;1 3&lt;4 3&gt;2 3&lt;8 3&lt;8 3&lt;6 3&gt;1 3=3 3&lt;9<br />
4&gt;1 4=4 4&gt;2 4&lt;8 4&lt;8 4&lt;6 4&gt;1 4&gt;3 4&lt;9<br />
1&lt;4 1&lt;2 1&lt;8 1&lt;8 1&lt;6 1=1 1&lt;3 1&lt;9<br />
4&gt;2 4&lt;8 4&lt;8 4&lt;6 4&gt;1 4&gt;3 4&lt;9<br />
2&lt;8 2&lt;8 2&lt;6 2&gt;1 2&lt;3 2&lt;9<br />
8=8 8&gt;6 8&gt;1 8&gt;3 8&lt;9<br />
6&gt;1 6&gt;3 6&gt;9<br />
1&lt;3 1&lt;9<br />
3&lt;9</p>
<p>mich interessieren nur alle Paare die tatsächlich kleiner sind.<br />
38 sind kleiner<br />
Das Verhältnis wäre hierbei<br />
38/66 , wenn ich mich nicht verzählt habe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Ich weiß nicht wie ich es genauer beschreiben soll <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="😞"
    /> <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/2384473</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2384473</guid><dc:creator><![CDATA[Anfaenger_braucht_Hilfe]]></dc:creator><pubDate>Fri, 21 Feb 2014 17:10:46 GMT</pubDate></item><item><title><![CDATA[Reply to Werte in Martix vergleichen on Sat, 22 Feb 2014 14:26:03 GMT]]></title><description><![CDATA[<p>Anfaenger_braucht_Hilfe schrieb:</p>
<blockquote>
<p>mich interessieren nur alle Paare die tatsächlich kleiner sind.<br />
38 sind kleiner<br />
Das Verhältnis wäre hierbei<br />
38/66 , wenn ich mich nicht verzählt habe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Ich weiß nicht wie ich es genauer beschreiben soll <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="😞"
    /> <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>
</blockquote>
<p>Irgendwo ist da der Wurm drin... 40 sind kleiner, oder? <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>
<pre><code class="language-cpp">#include &lt;algorithm&gt;
#include &lt;functional&gt;
#include &lt;iostream&gt;

#include &lt;boost/math/special_functions/binomial.hpp&gt;

int main(){
  using namespace std;
  using namespace std::placeholders;
  using namespace boost::math;
  int arr[] = {
    2, 3, 4, 1,
    4, 2, 8, 8,
    6, 1, 3, 9,
  };
  int n=0;
  for(auto first=begin(arr), last=end(arr); first!=last; ++first)
    n+=count_if(first, last, bind(less&lt;int&gt;(), *first, _1));
  const auto pairs = binomial_coefficient&lt;double&gt;(distance(begin(arr), end(arr)), 2);
  cout &lt;&lt; n &lt;&lt; &quot; / &quot; &lt;&lt; pairs &lt;&lt; '\n';
}
</code></pre>
<p>Da ist jetzt gar keine Magie in dem Code: ich gucke mir alle Pärchen an und zähle mit.</p>
<p>Mag erstmal komisch aussehen - evtl. wäre ein Lambda sogar lesbarer (bei <code>count_if()</code> ) - aber es ist zu verstehen, wenn Du <code>count_if(), bind(), less&lt;T&gt;</code> in der C++ Dokumentation Deiner wahl nachschaust.</p>
<p>C++ ist ja kein Ponyhof. <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/2384602</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2384602</guid><dc:creator><![CDATA[Furble Wurble]]></dc:creator><pubDate>Sat, 22 Feb 2014 14:26:03 GMT</pubDate></item><item><title><![CDATA[Reply to Werte in Martix vergleichen on Sun, 23 Feb 2014 09:32:52 GMT]]></title><description><![CDATA[<pre><code>//uber alle startpunkte
for(unsigned int x = 0; x != zeilen; x++) {
    for(unsigned int y = 0; y != spalten; y++) {
    //ueber alle Paare des Punktes
        for(unsigned int x1 = x; x1 != zeilen; x1++) {
            for(unsigned int y1 = y+1; y1 != spalten; y1++) {
                if(Bild[x][y] &lt; Bild[x1][y1]){
                    zaehler++;
                }
            }
        }
    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2384704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2384704</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Sun, 23 Feb 2014 09:32:52 GMT</pubDate></item></channel></rss>