Files
C-Plus-Plus/d8/d76/morse__code_8cpp.html
2025-07-09 10:53:16 +00:00

552 lines
50 KiB
HTML

<!-- HTML header for doxygen 1.12.0-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.14.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>TheAlgorithms/C++: ciphers/morse_code.cpp File Reference</title>
<link rel="icon" href="../../favicon.svg" type="image/x-icon" />
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@xpack-3rd-party/doxygen-awesome-css@2.2.0-1/doxygen-awesome-darkmode-toggle.js"></script>
<script type="text/javascript">
DoxygenAwesomeDarkModeToggle.init()
</script>
<script type="text/javascript" src="../../clipboard.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript" src="../../cookie.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<script type="text/javascript">
window.MathJax = {
options: {
ignoreHtmlClass: 'tex2jax_ignore',
processHtmlClass: 'tex2jax_process'
},
loader: {
load: ['[tex]/ams']
},
tex: {
macros: {},
packages: ['base','configmacros','ams']
}
};
</script>
<script type="text/javascript" id="MathJax-script" async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
<link href="../../doxygen-awesome.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="../../project_logo.png"/></td>
<td id="projectalign">
<div id="projectname">TheAlgorithms/C++<span id="projectnumber">&#160;1.0.0</span>
</div>
<div id="projectbrief">All the algorithms implemented in C++</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.14.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(function(){initNavTree('d8/d76/morse__code_8cpp.html','../../',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">morse_code.cpp File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Implementation of [Morse Code] (<a href="https://en.wikipedia.org/wiki/Morse_code">https://en.wikipedia.org/wiki/Morse_code</a>).
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;cassert&gt;</code><br />
<code>#include &lt;iostream&gt;</code><br />
<code>#include &lt;string&gt;</code><br />
<code>#include &lt;vector&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for morse_code.cpp:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="../../db/d93/morse__code_8cpp__incl.svg" width="331" height="111"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="../../d8/d76/morse__code_8cpp_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-namespaces" class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:ciphers" id="r_ciphers"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/d4e/namespaceciphers.html">ciphers</a></td></tr>
<tr class="memdesc:d6/d4e/namespaceciphers"><td class="mdescLeft">&#160;</td><td class="mdescRight">Algorithms for encryption and decryption. <br /></td></tr>
<tr class="memitem:morse" id="r_morse"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d6/d8d/namespacemorse.html">morse</a></td></tr>
<tr class="memdesc:d6/d8d/namespacemorse"><td class="mdescLeft">&#160;</td><td class="mdescRight">Functions for [Morse Code] (<a href="https://en.wikipedia.org/wiki/Morse_code">https://en.wikipedia.org/wiki/Morse_code</a>). <br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ab31773fd11555d21f70d6914138d9535" id="r_ab31773fd11555d21f70d6914138d9535"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab31773fd11555d21f70d6914138d9535">ciphers::morse::char_to_morse</a> (const char &amp;c)</td></tr>
<tr class="memitem:ac9f294b0dec08a4a11d477a32f9bd829" id="r_ac9f294b0dec08a4a11d477a32f9bd829"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac9f294b0dec08a4a11d477a32f9bd829">ciphers::morse::morse_to_char</a> (const std::string &amp;s)</td></tr>
<tr class="memitem:a0242e458904de8a242fcdaffe9e3ba1a" id="r_a0242e458904de8a242fcdaffe9e3ba1a"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0242e458904de8a242fcdaffe9e3ba1a">ciphers::morse::encrypt</a> (const std::string &amp;text)</td></tr>
<tr class="memitem:a15c66ec8cf4cef0a35c50cbab86965dc" id="r_a15c66ec8cf4cef0a35c50cbab86965dc"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a15c66ec8cf4cef0a35c50cbab86965dc">ciphers::morse::decrypt</a> (const std::string &amp;text)</td></tr>
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d" id="r_aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
<tr class="memdesc:aa8dca7b867074164d5f45b0f3851269d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Function to test above algorithm. <br /></td></tr>
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4" id="r_ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Main function. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of [Morse Code] (<a href="https://en.wikipedia.org/wiki/Morse_code">https://en.wikipedia.org/wiki/Morse_code</a>). </p>
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/imdeep2905" target="_blank">Deep Raval</a></dd></dl>
<p>Morse code is a method used in telecommunication to encode text characters as standardized sequences of two different signal durations, called dots and dashes or dits and dahs. Morse code is named after Samuel Morse, an inventor of the telegraph. </p>
<p class="definition">Definition in file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
</div><a name="doc-func-members" id="doc-func-members"></a><h2 id="header-doc-func-members" class="groupheader">Function Documentation</h2>
<a id="ab31773fd11555d21f70d6914138d9535" name="ab31773fd11555d21f70d6914138d9535"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab31773fd11555d21f70d6914138d9535">&#9670;&#160;</a></span>char_to_morse()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string ciphers::morse::char_to_morse </td>
<td>(</td>
<td class="paramtype">const char &amp;</td> <td class="paramname"><span class="paramname"><em>c</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the morse representation for given character. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">c</td><td>Character </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>morse representation string of character </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00033">33</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 33</span> {</div>
<div class="line"><span class="lineno"> 34</span> <span class="comment">// return corresponding morse code</span></div>
<div class="line"><span class="lineno"> 35</span> <span class="keywordflow">switch</span> (c) {</div>
<div class="line"><span class="lineno"> 36</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;a&#39;</span>:</div>
<div class="line"><span class="lineno"> 37</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.-&quot;</span>;</div>
<div class="line"><span class="lineno"> 38</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;b&#39;</span>:</div>
<div class="line"><span class="lineno"> 39</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-...&quot;</span>;</div>
<div class="line"><span class="lineno"> 40</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;c&#39;</span>:</div>
<div class="line"><span class="lineno"> 41</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-.-.&quot;</span>;</div>
<div class="line"><span class="lineno"> 42</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;d&#39;</span>:</div>
<div class="line"><span class="lineno"> 43</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-..&quot;</span>;</div>
<div class="line"><span class="lineno"> 44</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;e&#39;</span>:</div>
<div class="line"><span class="lineno"> 45</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.&quot;</span>;</div>
<div class="line"><span class="lineno"> 46</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;f&#39;</span>:</div>
<div class="line"><span class="lineno"> 47</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;..-.&quot;</span>;</div>
<div class="line"><span class="lineno"> 48</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;g&#39;</span>:</div>
<div class="line"><span class="lineno"> 49</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;--.&quot;</span>;</div>
<div class="line"><span class="lineno"> 50</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;h&#39;</span>:</div>
<div class="line"><span class="lineno"> 51</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;....&quot;</span>;</div>
<div class="line"><span class="lineno"> 52</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;i&#39;</span>:</div>
<div class="line"><span class="lineno"> 53</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;..&quot;</span>;</div>
<div class="line"><span class="lineno"> 54</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;j&#39;</span>:</div>
<div class="line"><span class="lineno"> 55</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.---&quot;</span>;</div>
<div class="line"><span class="lineno"> 56</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;k&#39;</span>:</div>
<div class="line"><span class="lineno"> 57</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-.-&quot;</span>;</div>
<div class="line"><span class="lineno"> 58</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;l&#39;</span>:</div>
<div class="line"><span class="lineno"> 59</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.-..&quot;</span>;</div>
<div class="line"><span class="lineno"> 60</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;m&#39;</span>:</div>
<div class="line"><span class="lineno"> 61</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;--&quot;</span>;</div>
<div class="line"><span class="lineno"> 62</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;n&#39;</span>:</div>
<div class="line"><span class="lineno"> 63</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-.&quot;</span>;</div>
<div class="line"><span class="lineno"> 64</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;o&#39;</span>:</div>
<div class="line"><span class="lineno"> 65</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;---&quot;</span>;</div>
<div class="line"><span class="lineno"> 66</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;p&#39;</span>:</div>
<div class="line"><span class="lineno"> 67</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.--.&quot;</span>;</div>
<div class="line"><span class="lineno"> 68</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;q&#39;</span>:</div>
<div class="line"><span class="lineno"> 69</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;--.-&quot;</span>;</div>
<div class="line"><span class="lineno"> 70</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;r&#39;</span>:</div>
<div class="line"><span class="lineno"> 71</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.-.&quot;</span>;</div>
<div class="line"><span class="lineno"> 72</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;s&#39;</span>:</div>
<div class="line"><span class="lineno"> 73</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;...&quot;</span>;</div>
<div class="line"><span class="lineno"> 74</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;t&#39;</span>:</div>
<div class="line"><span class="lineno"> 75</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-&quot;</span>;</div>
<div class="line"><span class="lineno"> 76</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;u&#39;</span>:</div>
<div class="line"><span class="lineno"> 77</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;..-&quot;</span>;</div>
<div class="line"><span class="lineno"> 78</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;v&#39;</span>:</div>
<div class="line"><span class="lineno"> 79</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;...-&quot;</span>;</div>
<div class="line"><span class="lineno"> 80</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;w&#39;</span>:</div>
<div class="line"><span class="lineno"> 81</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.--&quot;</span>;</div>
<div class="line"><span class="lineno"> 82</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;x&#39;</span>:</div>
<div class="line"><span class="lineno"> 83</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-..-&quot;</span>;</div>
<div class="line"><span class="lineno"> 84</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;y&#39;</span>:</div>
<div class="line"><span class="lineno"> 85</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-.--&quot;</span>;</div>
<div class="line"><span class="lineno"> 86</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;z&#39;</span>:</div>
<div class="line"><span class="lineno"> 87</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;--..&quot;</span>;</div>
<div class="line"><span class="lineno"> 88</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;1&#39;</span>:</div>
<div class="line"><span class="lineno"> 89</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.----&quot;</span>;</div>
<div class="line"><span class="lineno"> 90</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;2&#39;</span>:</div>
<div class="line"><span class="lineno"> 91</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;..---&quot;</span>;</div>
<div class="line"><span class="lineno"> 92</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;3&#39;</span>:</div>
<div class="line"><span class="lineno"> 93</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;...--&quot;</span>;</div>
<div class="line"><span class="lineno"> 94</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;4&#39;</span>:</div>
<div class="line"><span class="lineno"> 95</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;....-&quot;</span>;</div>
<div class="line"><span class="lineno"> 96</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;5&#39;</span>:</div>
<div class="line"><span class="lineno"> 97</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;.....&quot;</span>;</div>
<div class="line"><span class="lineno"> 98</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;6&#39;</span>:</div>
<div class="line"><span class="lineno"> 99</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-....&quot;</span>;</div>
<div class="line"><span class="lineno"> 100</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;7&#39;</span>:</div>
<div class="line"><span class="lineno"> 101</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;--...&quot;</span>;</div>
<div class="line"><span class="lineno"> 102</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;8&#39;</span>:</div>
<div class="line"><span class="lineno"> 103</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;---..&quot;</span>;</div>
<div class="line"><span class="lineno"> 104</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;9&#39;</span>:</div>
<div class="line"><span class="lineno"> 105</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;----.&quot;</span>;</div>
<div class="line"><span class="lineno"> 106</span> <span class="keywordflow">case</span> <span class="charliteral">&#39;0&#39;</span>:</div>
<div class="line"><span class="lineno"> 107</span> <span class="keywordflow">return</span> <span class="stringliteral">&quot;-----&quot;</span>;</div>
<div class="line"><span class="lineno"> 108</span> <span class="keywordflow">default</span>:</div>
<div class="line"><span class="lineno"> 109</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;Found invalid character: &quot;</span> &lt;&lt; c &lt;&lt; <span class="charliteral">&#39; &#39;</span> &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 110</span> std::exit(0);</div>
<div class="line"><span class="lineno"> 111</span> }</div>
<div class="line"><span class="lineno"> 112</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a15c66ec8cf4cef0a35c50cbab86965dc" name="a15c66ec8cf4cef0a35c50cbab86965dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15c66ec8cf4cef0a35c50cbab86965dc">&#9670;&#160;</a></span>decrypt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string ciphers::morse::decrypt </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>text</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decrypt given morse coded text. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">text</td><td>text to be decrypted </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>new decrypted text </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00216">216</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 216</span> {</div>
<div class="line"><span class="lineno"> 217</span> <span class="comment">// Going through each character of text and converting it</span></div>
<div class="line"><span class="lineno"> 218</span> <span class="comment">// back to normal representation.</span></div>
<div class="line"><span class="lineno"> 219</span> std::string decrypted_text = <span class="stringliteral">&quot;&quot;</span>; <span class="comment">// Empty string to store decrypted text</span></div>
<div class="line"><span class="lineno"> 220</span> <span class="comment">// Spliting string (with delimiter = &quot; &quot;) and storing it</span></div>
<div class="line"><span class="lineno"> 221</span> <span class="comment">// in vector</span></div>
<div class="line"><span class="lineno"> 222</span> std::size_t pos_start = 0, pos_end = 0, delim_len = 1;</div>
<div class="line"><span class="lineno"> 223</span> std::vector&lt;std::string&gt; splits;</div>
<div class="line"><span class="lineno"> 224</span> <span class="keywordflow">while</span> ((pos_end = text.find(<span class="charliteral">&#39; &#39;</span>, pos_start)) != std::string::npos) {</div>
<div class="line"><span class="lineno"> 225</span> std::string token = text.substr(pos_start, pos_end - pos_start);</div>
<div class="line"><span class="lineno"> 226</span> pos_start = pos_end + delim_len;</div>
<div class="line"><span class="lineno"> 227</span> splits.push_back(token);</div>
<div class="line"><span class="lineno"> 228</span> }</div>
<div class="line"><span class="lineno"> 229</span> </div>
<div class="line"><span class="lineno"> 230</span> <span class="comment">// Traversing through each morse code string</span></div>
<div class="line"><span class="lineno"> 231</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> std::string &amp;s : splits) {</div>
<div class="line"><span class="lineno"> 232</span> <span class="comment">// Add corresponding character</span></div>
<div class="line"><span class="lineno"> 233</span> decrypted_text += <a class="code hl_function" href="#ac9f294b0dec08a4a11d477a32f9bd829">ciphers::morse::morse_to_char</a>(s);</div>
<div class="line"><span class="lineno"> 234</span> }</div>
<div class="line"><span class="lineno"> 235</span> </div>
<div class="line"><span class="lineno"> 236</span> <span class="keywordflow">return</span> decrypted_text; <span class="comment">// Returning decrypted text</span></div>
<div class="line"><span class="lineno"> 237</span>}</div>
<div class="ttc" id="amorse__code_8cpp_html_ac9f294b0dec08a4a11d477a32f9bd829"><div class="ttname"><a href="#ac9f294b0dec08a4a11d477a32f9bd829">ciphers::morse::morse_to_char</a></div><div class="ttdeci">char morse_to_char(const std::string &amp;s)</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d76/morse__code_8cpp_source.html#l00118">morse_code.cpp:118</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a0242e458904de8a242fcdaffe9e3ba1a" name="a0242e458904de8a242fcdaffe9e3ba1a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0242e458904de8a242fcdaffe9e3ba1a">&#9670;&#160;</a></span>encrypt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::string ciphers::morse::encrypt </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>text</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Encrypt given text using morse code. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">text</td><td>text to be encrypted </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>new encrypted text </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00202">202</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 202</span> {</div>
<div class="line"><span class="lineno"> 203</span> std::string encrypted_text = <span class="stringliteral">&quot;&quot;</span>; <span class="comment">// Empty string to store encrypted text</span></div>
<div class="line"><span class="lineno"> 204</span> <span class="comment">// Going through each character of text and converting it</span></div>
<div class="line"><span class="lineno"> 205</span> <span class="comment">// to morse representation</span></div>
<div class="line"><span class="lineno"> 206</span> <span class="keywordflow">for</span> (<span class="keyword">const</span> <span class="keywordtype">char</span> &amp;c : text) {</div>
<div class="line"><span class="lineno"> 207</span> encrypted_text += <a class="code hl_function" href="#ab31773fd11555d21f70d6914138d9535">ciphers::morse::char_to_morse</a>(c) + <span class="stringliteral">&quot; &quot;</span>;</div>
<div class="line"><span class="lineno"> 208</span> }</div>
<div class="line"><span class="lineno"> 209</span> <span class="keywordflow">return</span> encrypted_text; <span class="comment">// Returning encrypted text</span></div>
<div class="line"><span class="lineno"> 210</span>}</div>
<div class="ttc" id="amorse__code_8cpp_html_ab31773fd11555d21f70d6914138d9535"><div class="ttname"><a href="#ab31773fd11555d21f70d6914138d9535">ciphers::morse::char_to_morse</a></div><div class="ttdeci">std::string char_to_morse(const char &amp;c)</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d76/morse__code_8cpp_source.html#l00033">morse_code.cpp:33</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">&#9670;&#160;</a></span>main()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int main </td>
<td>(</td>
<td class="paramtype">void</td> <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Main function. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00268">268</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 268</span> {</div>
<div class="line"><span class="lineno"> 269</span> <span class="comment">// Testing</span></div>
<div class="line"><span class="lineno"> 270</span> <a class="code hl_function" href="#aa8dca7b867074164d5f45b0f3851269d">test</a>();</div>
<div class="line"><span class="lineno"> 271</span> <span class="keywordflow">return</span> 0;</div>
<div class="line"><span class="lineno"> 272</span>}</div>
<div class="ttc" id="amorse__code_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdoc">Function to test above algorithm.</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d76/morse__code_8cpp_source.html#l00245">morse_code.cpp:245</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ac9f294b0dec08a4a11d477a32f9bd829" name="ac9f294b0dec08a4a11d477a32f9bd829"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac9f294b0dec08a4a11d477a32f9bd829">&#9670;&#160;</a></span>morse_to_char()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char ciphers::morse::morse_to_char </td>
<td>(</td>
<td class="paramtype">const std::string &amp;</td> <td class="paramname"><span class="paramname"><em>s</em></span></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get character from the morse representation. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">s</td><td>Morse representation </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>corresponding character </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00118">118</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 118</span> {</div>
<div class="line"><span class="lineno"> 119</span> <span class="comment">// return corresponding character</span></div>
<div class="line"><span class="lineno"> 120</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 121</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;a&#39;</span>;</div>
<div class="line"><span class="lineno"> 122</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-...&quot;</span>) {</div>
<div class="line"><span class="lineno"> 123</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;b&#39;</span>;</div>
<div class="line"><span class="lineno"> 124</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-.-.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 125</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;c&#39;</span>;</div>
<div class="line"><span class="lineno"> 126</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-..&quot;</span>) {</div>
<div class="line"><span class="lineno"> 127</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;d&#39;</span>;</div>
<div class="line"><span class="lineno"> 128</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 129</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;e&#39;</span>;</div>
<div class="line"><span class="lineno"> 130</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;..-.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 131</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;f&#39;</span>;</div>
<div class="line"><span class="lineno"> 132</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;--.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 133</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;g&#39;</span>;</div>
<div class="line"><span class="lineno"> 134</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;....&quot;</span>) {</div>
<div class="line"><span class="lineno"> 135</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;h&#39;</span>;</div>
<div class="line"><span class="lineno"> 136</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;..&quot;</span>) {</div>
<div class="line"><span class="lineno"> 137</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;i&#39;</span>;</div>
<div class="line"><span class="lineno"> 138</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.---&quot;</span>) {</div>
<div class="line"><span class="lineno"> 139</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;j&#39;</span>;</div>
<div class="line"><span class="lineno"> 140</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-.-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 141</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;k&#39;</span>;</div>
<div class="line"><span class="lineno"> 142</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.-..&quot;</span>) {</div>
<div class="line"><span class="lineno"> 143</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;l&#39;</span>;</div>
<div class="line"><span class="lineno"> 144</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;--&quot;</span>) {</div>
<div class="line"><span class="lineno"> 145</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;m&#39;</span>;</div>
<div class="line"><span class="lineno"> 146</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 147</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;n&#39;</span>;</div>
<div class="line"><span class="lineno"> 148</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;---&quot;</span>) {</div>
<div class="line"><span class="lineno"> 149</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;o&#39;</span>;</div>
<div class="line"><span class="lineno"> 150</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.--.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 151</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;p&#39;</span>;</div>
<div class="line"><span class="lineno"> 152</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;--.-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 153</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;q&#39;</span>;</div>
<div class="line"><span class="lineno"> 154</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.-.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 155</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;r&#39;</span>;</div>
<div class="line"><span class="lineno"> 156</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;...&quot;</span>) {</div>
<div class="line"><span class="lineno"> 157</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;s&#39;</span>;</div>
<div class="line"><span class="lineno"> 158</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 159</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;t&#39;</span>;</div>
<div class="line"><span class="lineno"> 160</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;..-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 161</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;u&#39;</span>;</div>
<div class="line"><span class="lineno"> 162</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;...-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 163</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;v&#39;</span>;</div>
<div class="line"><span class="lineno"> 164</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.--&quot;</span>) {</div>
<div class="line"><span class="lineno"> 165</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;w&#39;</span>;</div>
<div class="line"><span class="lineno"> 166</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-..-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 167</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;x&#39;</span>;</div>
<div class="line"><span class="lineno"> 168</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-.--&quot;</span>) {</div>
<div class="line"><span class="lineno"> 169</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;y&#39;</span>;</div>
<div class="line"><span class="lineno"> 170</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;--..&quot;</span>) {</div>
<div class="line"><span class="lineno"> 171</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;z&#39;</span>;</div>
<div class="line"><span class="lineno"> 172</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.----&quot;</span>) {</div>
<div class="line"><span class="lineno"> 173</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;1&#39;</span>;</div>
<div class="line"><span class="lineno"> 174</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;..---&quot;</span>) {</div>
<div class="line"><span class="lineno"> 175</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;2&#39;</span>;</div>
<div class="line"><span class="lineno"> 176</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;...--&quot;</span>) {</div>
<div class="line"><span class="lineno"> 177</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;3&#39;</span>;</div>
<div class="line"><span class="lineno"> 178</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;....-&quot;</span>) {</div>
<div class="line"><span class="lineno"> 179</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;4&#39;</span>;</div>
<div class="line"><span class="lineno"> 180</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;.....&quot;</span>) {</div>
<div class="line"><span class="lineno"> 181</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;5&#39;</span>;</div>
<div class="line"><span class="lineno"> 182</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-....&quot;</span>) {</div>
<div class="line"><span class="lineno"> 183</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;6&#39;</span>;</div>
<div class="line"><span class="lineno"> 184</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;--...&quot;</span>) {</div>
<div class="line"><span class="lineno"> 185</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;7&#39;</span>;</div>
<div class="line"><span class="lineno"> 186</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;---..&quot;</span>) {</div>
<div class="line"><span class="lineno"> 187</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;8&#39;</span>;</div>
<div class="line"><span class="lineno"> 188</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;----.&quot;</span>) {</div>
<div class="line"><span class="lineno"> 189</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;9&#39;</span>;</div>
<div class="line"><span class="lineno"> 190</span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (s == <span class="stringliteral">&quot;-----&quot;</span>) {</div>
<div class="line"><span class="lineno"> 191</span> <span class="keywordflow">return</span> <span class="charliteral">&#39;0&#39;</span>;</div>
<div class="line"><span class="lineno"> 192</span> } <span class="keywordflow">else</span> {</div>
<div class="line"><span class="lineno"> 193</span> std::cerr &lt;&lt; <span class="stringliteral">&quot;Found invalid Morse code: &quot;</span> &lt;&lt; s &lt;&lt; <span class="charliteral">&#39; &#39;</span> &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 194</span> std::exit(0);</div>
<div class="line"><span class="lineno"> 195</span> }</div>
<div class="line"><span class="lineno"> 196</span>}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa8dca7b867074164d5f45b0f3851269d" name="aa8dca7b867074164d5f45b0f3851269d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8dca7b867074164d5f45b0f3851269d">&#9670;&#160;</a></span>test()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void test </td>
<td>(</td>
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel static">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Function to test above algorithm. </p>
<dl class="section return"><dt>Returns</dt><dd>void </dd></dl>
<p class="definition">Definition at line <a class="el" href="../../d8/d76/morse__code_8cpp_source.html#l00245">245</a> of file <a class="el" href="../../d8/d76/morse__code_8cpp_source.html">morse_code.cpp</a>.</p>
<div class="fragment"><div class="line"><span class="lineno"> 245</span> {</div>
<div class="line"><span class="lineno"> 246</span> <span class="comment">// Test 1</span></div>
<div class="line"><span class="lineno"> 247</span> std::string text1 = <span class="stringliteral">&quot;01234567890&quot;</span>;</div>
<div class="line"><span class="lineno"> 248</span> std::string encrypted1 = <a class="code hl_function" href="#a0242e458904de8a242fcdaffe9e3ba1a">ciphers::morse::encrypt</a>(text1);</div>
<div class="line"><span class="lineno"> 249</span> std::string decrypted1 = <a class="code hl_function" href="#a15c66ec8cf4cef0a35c50cbab86965dc">ciphers::morse::decrypt</a>(encrypted1);</div>
<div class="line"><span class="lineno"> 250</span> assert(text1 == decrypted1);</div>
<div class="line"><span class="lineno"> 251</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Original text : &quot;</span> &lt;&lt; text1 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 252</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Encrypted text : &quot;</span> &lt;&lt; encrypted1 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 253</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Decrypted text : &quot;</span> &lt;&lt; decrypted1 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 254</span> <span class="comment">// Test 2</span></div>
<div class="line"><span class="lineno"> 255</span> std::string text2 = <span class="stringliteral">&quot;abcdefghijklmnopqrstuvwxyz&quot;</span>;</div>
<div class="line"><span class="lineno"> 256</span> std::string encrypted2 = <a class="code hl_function" href="#a0242e458904de8a242fcdaffe9e3ba1a">ciphers::morse::encrypt</a>(text2);</div>
<div class="line"><span class="lineno"> 257</span> std::string decrypted2 = <a class="code hl_function" href="#a15c66ec8cf4cef0a35c50cbab86965dc">ciphers::morse::decrypt</a>(encrypted2);</div>
<div class="line"><span class="lineno"> 258</span> assert(text2 == decrypted2);</div>
<div class="line"><span class="lineno"> 259</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Original text : &quot;</span> &lt;&lt; text2 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 260</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Encrypted text : &quot;</span> &lt;&lt; encrypted2 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 261</span> std::cout &lt;&lt; <span class="stringliteral">&quot;Decrypted text : &quot;</span> &lt;&lt; decrypted2 &lt;&lt; std::endl;</div>
<div class="line"><span class="lineno"> 262</span>}</div>
<div class="ttc" id="amorse__code_8cpp_html_a0242e458904de8a242fcdaffe9e3ba1a"><div class="ttname"><a href="#a0242e458904de8a242fcdaffe9e3ba1a">ciphers::morse::encrypt</a></div><div class="ttdeci">std::string encrypt(const std::string &amp;text)</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d76/morse__code_8cpp_source.html#l00202">morse_code.cpp:202</a></div></div>
<div class="ttc" id="amorse__code_8cpp_html_a15c66ec8cf4cef0a35c50cbab86965dc"><div class="ttname"><a href="#a15c66ec8cf4cef0a35c50cbab86965dc">ciphers::morse::decrypt</a></div><div class="ttdeci">std::string decrypt(const std::string &amp;text)</div><div class="ttdef"><b>Definition</b> <a href="../../d8/d76/morse__code_8cpp_source.html#l00216">morse_code.cpp:216</a></div></div>
</div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a href="../../dir_4d6e05837bf820fb089a8a8cdf2f42b7.html">ciphers</a></li><li class="navelem"><a href="../../d8/d76/morse__code_8cpp.html">morse_code.cpp</a></li>
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.14.0 </li>
</ul>
</div>
</body>
</html>