<?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[Typecasting aka Caesar-Verschlüsselung!]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich schreibe ein C++ program was die Caeser-Verschlüsselung benutzt. Die Zeichen werden in Alpabet mit einem beliebigen Wert verschoben. Zusaetzlich ich wollte es so machen dass das Program macht eine zusatzliche Verschiebung um den Index des Zeichens.</p>
<p>Also z.B. für diese Zeichenkette: abc mit 1 Versciebwert siet das so aus :<br />
abc &gt; bcd und dann &gt; b(2) c(3) d(4) &gt; d f h</p>
<p>was ich schon habe:</p>
<p>#include &lt;iostream&gt;<br />
using namespace std;</p>
<p>void caesar(string);</p>
<p>void caesar(string kette)<br />
{<br />
int laenge, verschiebung;</p>
<p>//die Länge der ursprünglichen Zeichenkette ermitteln<br />
laenge = kette.length();<br />
cout &lt;&lt; &quot;Caesar-Verschluesselung&quot; &lt;&lt; endl;</p>
<p>//den Verschiebewert einlesen<br />
cout &lt;&lt; &quot;Bitte geben Sie den Verschiebewert ein: &quot;;<br />
cin &gt;&gt; verschiebung;</p>
<p>//jedes Zeichen um den angegebenen Wert verschieben<br />
for (int zaehler = 0; zaehler &lt; laenge; zaehler++)<br />
cout &lt;&lt; static_cast&lt;char&gt;(kette[zaehler] + verschiebung);</p>
<p>cout &lt;&lt; endl &lt;&lt; endl;<br />
}<br />
int main()<br />
{<br />
string eingabe;</p>
<p>//Die ursprüngliche Zeichenkette einlesen<br />
cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein (ohne Leerzeichen): &quot;;<br />
cin &gt;&gt; eingabe;<br />
cout &lt;&lt; &quot;Die urspruengliche Zeichenkette ist: &quot; &lt;&lt; eingabe &lt;&lt; endl &lt;&lt; endl;</p>
<p>caesar(eingabe);</p>
<p>return 0;<br />
}</p>
<p>aber weiss ich nicht wie ich noch eine zusaetzliche Verschiebung um den Index machen könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/317302/typecasting-aka-caesar-verschlüsselung</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 06:02:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/317302.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 03 Jun 2013 21:35:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Mon, 03 Jun 2013 21:35:56 GMT]]></title><description><![CDATA[<p>Hallo Leute!</p>
<p>Ich schreibe ein C++ program was die Caeser-Verschlüsselung benutzt. Die Zeichen werden in Alpabet mit einem beliebigen Wert verschoben. Zusaetzlich ich wollte es so machen dass das Program macht eine zusatzliche Verschiebung um den Index des Zeichens.</p>
<p>Also z.B. für diese Zeichenkette: abc mit 1 Versciebwert siet das so aus :<br />
abc &gt; bcd und dann &gt; b(2) c(3) d(4) &gt; d f h</p>
<p>was ich schon habe:</p>
<p>#include &lt;iostream&gt;<br />
using namespace std;</p>
<p>void caesar(string);</p>
<p>void caesar(string kette)<br />
{<br />
int laenge, verschiebung;</p>
<p>//die Länge der ursprünglichen Zeichenkette ermitteln<br />
laenge = kette.length();<br />
cout &lt;&lt; &quot;Caesar-Verschluesselung&quot; &lt;&lt; endl;</p>
<p>//den Verschiebewert einlesen<br />
cout &lt;&lt; &quot;Bitte geben Sie den Verschiebewert ein: &quot;;<br />
cin &gt;&gt; verschiebung;</p>
<p>//jedes Zeichen um den angegebenen Wert verschieben<br />
for (int zaehler = 0; zaehler &lt; laenge; zaehler++)<br />
cout &lt;&lt; static_cast&lt;char&gt;(kette[zaehler] + verschiebung);</p>
<p>cout &lt;&lt; endl &lt;&lt; endl;<br />
}<br />
int main()<br />
{<br />
string eingabe;</p>
<p>//Die ursprüngliche Zeichenkette einlesen<br />
cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein (ohne Leerzeichen): &quot;;<br />
cin &gt;&gt; eingabe;<br />
cout &lt;&lt; &quot;Die urspruengliche Zeichenkette ist: &quot; &lt;&lt; eingabe &lt;&lt; endl &lt;&lt; endl;</p>
<p>caesar(eingabe);</p>
<p>return 0;<br />
}</p>
<p>aber weiss ich nicht wie ich noch eine zusaetzliche Verschiebung um den Index machen könnte.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328413</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328413</guid><dc:creator><![CDATA[mywish]]></dc:creator><pubDate>Mon, 03 Jun 2013 21:35:56 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Mon, 03 Jun 2013 22:25:35 GMT]]></title><description><![CDATA[<pre><code>kette[zaehler] + verschiebung + (kette[zaehler]-'a'+1)
</code></pre>
<p>Allerdings musst du testen, ob kette[zaehler] ein Groß- oder Kleinbuchstabe ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328422</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Mon, 03 Jun 2013 22:25:35 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Mon, 03 Jun 2013 22:28:20 GMT]]></title><description><![CDATA[<p>Ach warte. Du willst es ja auf den verschlüsselten Text. Also dann nicht <code>(kette[zaehler]-'a'+1)</code> sondern <code>verschlüsseltes Zeichen - 'a' + 1</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328424</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Mon, 03 Jun 2013 22:28:20 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Mon, 03 Jun 2013 22:44:27 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<pre><code>kette[zaehler] + verschiebung + (kette[zaehler]-'a'+1)
</code></pre>
<p>Allerdings musst du testen, ob kette[zaehler] ein Groß- oder Kleinbuchstabe ist.</p>
</blockquote>
<p>perfekt danke</p>
<p>edit:</p>
<p>errr leider nicht gut. <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/2328425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328425</guid><dc:creator><![CDATA[mywish]]></dc:creator><pubDate>Mon, 03 Jun 2013 22:44:27 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 00:39:30 GMT]]></title><description><![CDATA[<p>mywish schrieb:</p>
<blockquote>
<p>out schrieb:</p>
<blockquote>
<pre><code>kette[zaehler] + verschiebung + (kette[zaehler]-'a'+1)
</code></pre>
<p>Allerdings musst du testen, ob kette[zaehler] ein Groß- oder Kleinbuchstabe ist.</p>
</blockquote>
<p>perfekt danke</p>
<p>edit:</p>
<p>errr leider nicht gut. <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>Nicht gut?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328437</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328437</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Tue, 04 Jun 2013 00:39:30 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 08:54:22 GMT]]></title><description><![CDATA[<p>nah okay aber wie kann ich mich auf die verschlüsseltes zeichen beziehen?</p>
<p>okay Ich glaube, ich habe es gefunden:</p>
<p>(kette[zaehler] + verschiebung + kette[zaehler] + verschiebung -'a' + 1)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328488</guid><dc:creator><![CDATA[mywish]]></dc:creator><pubDate>Tue, 04 Jun 2013 08:54:22 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 12:55:12 GMT]]></title><description><![CDATA[<p>Überleg dir mal lieber wie du das rückgängig machen willst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328556</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 04 Jun 2013 12:55:12 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 22:42:27 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Überleg dir mal lieber wie du das rückgängig machen willst.</p>
</blockquote>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Überleg dir mal lieber wie du das rückgängig machen willst.</p>
</blockquote>
<p>rückgangig geht shon aber einfach weiss ich nicht wie um den Index des Zeichens noch verschieben könnte.</p>
<p>also z.B. acd erste index a zweite c dritte d. soll so aussehen.<br />
erste index + 1 = b<br />
zweite + 2 = e<br />
d + 3 = g</p>
<p>BEG...</p>
<p>here ist Rückganging aber das hilft mir nix.</p>
<p>void caesarKnacken(string kette)<br />
{<br />
int laenge, verschiebung;</p>
<p>//die Länge der ursprünglichen Zeichenkette ermitteln<br />
laenge = kette.length();<br />
cout &lt;&lt; &quot;Durchprobieren der Caesar-Verschluesselungen&quot; &lt;&lt; endl;</p>
<p>//alle Verschiebewerte von 1 bis 255 durchgehen<br />
for (verschiebung = 1; verschiebung &lt;= 255; verschiebung++)<br />
{<br />
cout &lt;&lt; &quot;Mit der Verschiebezahl &quot; &lt;&lt; verschiebung &lt;&lt; &quot; ist das Ergebnis : &quot;;</p>
<p>//jedes Zeichen um den angegebenen Wert verschieben, diesmal aber nach links<br />
for (int zaehler = 0; zaehler &lt; laenge; zaehler++)<br />
cout &lt;&lt; static_cast&lt;char&gt;(kette[zaehler] - verschiebung);</p>
<p>cout &lt;&lt; endl;</p>
<p>//alle 10 Ausgaben auf eine Eingabe warten<br />
if (verschiebung % 10 == 0)<br />
getchar();<br />
}</p>
<p>cout &lt;&lt; endl &lt;&lt; endl;<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328670</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328670</guid><dc:creator><![CDATA[mywish]]></dc:creator><pubDate>Tue, 04 Jun 2013 22:42:27 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 22:54:29 GMT]]></title><description><![CDATA[<p>BEG? Nene, so geht das hier nicht. Kauderwelsch schaut sich niemand an. Du musst klare Probleme, klare Fragen formulieren, sodass man sich in deinen Beitrag verliebt. Außerdem sollst du C++-Code-Tags verwenden (unter den Smileys). Ich zumindest schaue unformatierte Quellcodes nicht an, da sind wir nämlich wieder beim Kauderwelsch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328672</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Tue, 04 Jun 2013 22:54:29 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Tue, 04 Jun 2013 23:06:14 GMT]]></title><description><![CDATA[<p>out schrieb:</p>
<blockquote>
<p>BEG</p>
</blockquote>
<p>mensch das war mein Beispiel ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328674</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328674</guid><dc:creator><![CDATA[mywish]]></dc:creator><pubDate>Tue, 04 Jun 2013 23:06:14 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Wed, 05 Jun 2013 02:02:49 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/30113">@mywish</a><br />
Meinst du auf's erste Zeichen 1 draufaddieren, aufs zweite 2 und so weiter?<br />
Ja, das könnte man dann rückgängig machen.</p>
<p>Ich dachte du willst auf das Zeichen den Index des Zeichens draufaddieren.<br />
Also z.B. C ist das 3. Zeichen im Alphabet = Index 3 = 3 draufaddieren.<br />
Was quasi einer Verdoppelung entspricht.<br />
Und wenn du <code>(x * 2) % N</code> rechnest, dann lässt sich das halt net rückgängig machen. Zumindest nicht wenn N gerade ist.</p>
<blockquote>
<p>aber weiss ich nicht wie ich noch eine zusaetzliche Verschiebung um den Index machen könnte.</p>
</blockquote>
<p>Das ist SO trivial, hier würde jeder noch so kleine Tip bedeuten dass wir deine Hausaufgaben machen, und dazu hab ich echt keine Lust.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2328681</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2328681</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 05 Jun 2013 02:02:49 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Wed, 18 Sep 2013 14:21:11 GMT]]></title><description><![CDATA[<p>[code=&quot;cpp&quot;]</p>
<p>mywish schrieb:</p>
<blockquote>
<p>nah okay aber wie kann ich mich auf die verschlüsseltes zeichen beziehen?</p>
<p>okay Ich glaube, ich habe es gefunden:</p>
<p>(kette[zaehler] + verschiebung + kette[zaehler] + verschiebung -'a' + 1)</p>
</blockquote>
<p>## Hallo mywish,</p>
<p>So wird das nicht funktionieren. Wie ermitellst du die Position von deine Zeichenkette? Stehe vor gleichen Problem. Hast du inzwischen dein Problem gelöst?</p>
<p>Gruß<br />
Andy<br />
<img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2353448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2353448</guid><dc:creator><![CDATA[anakhha]]></dc:creator><pubDate>Wed, 18 Sep 2013 14:21:11 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Sat, 21 Sep 2013 14:34:48 GMT]]></title><description><![CDATA[<p>Also falls immer noch Interesse besteht..</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

void caesar(string);

void caesar(string kette)
{
int laenge, verschiebung;

//die Länge der ursprünglichen Zeichenkette ermitteln
laenge = kette.length();
cout &lt;&lt; &quot;Caesar-Verschluesselung&quot; &lt;&lt; endl;

//den Verschiebewert einlesen
cout &lt;&lt; &quot;Bitte geben Sie den Verschiebewert ein: &quot;;
cin &gt;&gt; verschiebung;

//jedes Zeichen um den angegebenen Wert verschieben

for (int zaehler = 0 ; zaehler &lt; laenge; zaehler++)
cout &lt;&lt; static_cast&lt;char&gt;(kette[zaehler] + verschiebung + (zaehler + 1));
cout &lt;&lt; endl &lt;&lt; endl;
}
int main()
{
string eingabe;

//Die ursprüngliche Zeichenkette einlesen
cout &lt;&lt; &quot;Bitte geben Sie eine Zeichenkette ein (ohne Leerzeichen): &quot;;
cin &gt;&gt; eingabe;
cout &lt;&lt; &quot;Die urspruengliche Zeichenkette ist: &quot; &lt;&lt; eingabe &lt;&lt; endl &lt;&lt; endl;

caesar(eingabe);

return 0;
}
</code></pre>
<p>Oder halt nur:</p>
<pre><code>cout &lt;&lt; static_cast&lt;char&gt;(kette[zaehler] + verschiebung + (zaehler + 1));
</code></pre>
<p>Klappt problemlos.. <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/2354366</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354366</guid><dc:creator><![CDATA[anakhha]]></dc:creator><pubDate>Sat, 21 Sep 2013 14:34:48 GMT</pubDate></item><item><title><![CDATA[Reply to Typecasting aka Caesar-Verschlüsselung! on Sat, 21 Sep 2013 15:08:49 GMT]]></title><description><![CDATA[<pre><code>void caesar(string); 

void caesar(string kette) {...}
</code></pre>
<p>Wieso setzt du eine Deklaration vor die Definition, das ist doch völlig überflüssig... ? (Wie noch so einiges in deinem Code)</p>
<pre><code>cout &lt;&lt; endl &lt;&lt; endl;
</code></pre>
<p>So etwas gehört ebenfalls nicht in die Funktion hinein (und wenn, dann gibt man <code>&quot;\n\n&quot;</code> aus). Die Funktion sollte selbst überhaupt nichts ausgeben, idealerweise.</p>
<p>Die Funktion sollte eigentlich etwas verschlüsseltes zurückgeben oder irgendwo hinschreiben. Und auf keinen Fall selbst noch Parameter einlesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2354373</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2354373</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Sat, 21 Sep 2013 15:08:49 GMT</pubDate></item></channel></rss>