<?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[Permutation]]></title><description><![CDATA[<p>Guten Morgen,<br />
ich hätte eine Frage bezüglich Permutation.<br />
Aus Langeweile hatte ich gerade was versucht, doch dann hab ich gedacht &quot;Hmm...&quot;.<br />
Erstmal der Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;algorithm&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;

int main()
{
    std::string name = &quot;peter&quot;;
    std::vector&lt;std::string&gt; all_names;
    std::ofstream datei(&quot;Peter.txt&quot;);
    do
    {
        std::next_permutation(name.begin(), name.end());
        all_names.push_back(name);
    }
    while(name != &quot;peter&quot;);
    for(int i = 0; i &lt; all_names.size(); i++)
    {
        datei &lt;&lt; all_names[i] &lt;&lt; std::endl;
    }
    datei.close();
}
</code></pre>
<p>So damit kann ich peter in allen Schreibformen herausbekommen. Jetzt möchte ich aber noch, dass es nicht nur klein bleibt, sondern statt das dieser Code nur</p>
<blockquote>
<p>peter<br />
petre<br />
perte<br />
...</p>
</blockquote>
<p>macht, soll er auch das hier können:</p>
<blockquote>
<p>peter<br />
petre<br />
perte<br />
...<br />
Peter<br />
PeteR<br />
PetRe<br />
...<br />
PeTER<br />
PeTRE<br />
...</p>
</blockquote>
<p>Ich denke ich müsste mit toupper arbeiten, aber ich wüsste nicht wie.<br />
Hat jemand einen Ansatz oder Code?</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/241952/permutation</link><generator>RSS for Node</generator><lastBuildDate>Mon, 21 Sep 2026 05:19:38 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/241952.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 28 May 2009 01:20:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Permutation on Thu, 28 May 2009 01:20:56 GMT]]></title><description><![CDATA[<p>Guten Morgen,<br />
ich hätte eine Frage bezüglich Permutation.<br />
Aus Langeweile hatte ich gerade was versucht, doch dann hab ich gedacht &quot;Hmm...&quot;.<br />
Erstmal der Code:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;algorithm&gt;
#include &lt;vector&gt;
#include &lt;fstream&gt;

int main()
{
    std::string name = &quot;peter&quot;;
    std::vector&lt;std::string&gt; all_names;
    std::ofstream datei(&quot;Peter.txt&quot;);
    do
    {
        std::next_permutation(name.begin(), name.end());
        all_names.push_back(name);
    }
    while(name != &quot;peter&quot;);
    for(int i = 0; i &lt; all_names.size(); i++)
    {
        datei &lt;&lt; all_names[i] &lt;&lt; std::endl;
    }
    datei.close();
}
</code></pre>
<p>So damit kann ich peter in allen Schreibformen herausbekommen. Jetzt möchte ich aber noch, dass es nicht nur klein bleibt, sondern statt das dieser Code nur</p>
<blockquote>
<p>peter<br />
petre<br />
perte<br />
...</p>
</blockquote>
<p>macht, soll er auch das hier können:</p>
<blockquote>
<p>peter<br />
petre<br />
perte<br />
...<br />
Peter<br />
PeteR<br />
PetRe<br />
...<br />
PeTER<br />
PeTRE<br />
...</p>
</blockquote>
<p>Ich denke ich müsste mit toupper arbeiten, aber ich wüsste nicht wie.<br />
Hat jemand einen Ansatz oder Code?</p>
<p>mfg</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1716992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1716992</guid><dc:creator><![CDATA[freaky]]></dc:creator><pubDate>Thu, 28 May 2009 01:20:56 GMT</pubDate></item><item><title><![CDATA[Reply to Permutation on Thu, 28 May 2009 13:10:27 GMT]]></title><description><![CDATA[<p>Idee für einen Algorithmus:</p>
<pre><code>ersetzte ggfs. alle Großbuchstaben im Eingabestring durch Kleinbuchstaben
size_t len = Länge Eingabestring;
for (i = 0; i &lt;= len; ++i)
{
  erzeuge einen String der Länge len mit i '1'en am Anfang und fülle ggfs. den Rest mit '0'en auf;
  mit allen Permutationen dieses Strings gehe auf den kleingeschriebenen Originalstring los und setze alle Stellen, wo eine '1' steht den Großbuchstaben ein;
  diesen String setzte Deinem bisherigen Algorithmus vor;
}
</code></pre>
<p>Der erste Durchlauf hätte nur '0'en im String und würde demzufolge alles mit Kleinbuchstaben bringen, der letzte hat nur '1'en im String und bringt dann alle Permutionen in Großbuchstaben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1717007</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1717007</guid><dc:creator><![CDATA[jencas]]></dc:creator><pubDate>Thu, 28 May 2009 13:10:27 GMT</pubDate></item><item><title><![CDATA[Reply to Permutation on Thu, 28 May 2009 09:47:42 GMT]]></title><description><![CDATA[<p>Okay danke, ich werde mal schauen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1717135</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1717135</guid><dc:creator><![CDATA[freaky]]></dc:creator><pubDate>Thu, 28 May 2009 09:47:42 GMT</pubDate></item></channel></rss>