mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-03-21 04:18:34 +08:00
321 lines
30 KiB
HTML
321 lines
30 KiB
HTML
<!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.12.0"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>Algorithms_in_C++: games/memory_game.cpp File Reference</title>
|
|
<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="../../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="../../resize.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/x-mathjax-config">
|
|
MathJax.Hub.Config({
|
|
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
|
|
jax: ["input/TeX","output/HTML-CSS"],
|
|
});
|
|
</script>
|
|
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
|
|
<link href="../../doxygen.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="projectalign">
|
|
<div id="projectname">Algorithms_in_C++<span id="projectnumber"> 1.0.0</span>
|
|
</div>
|
|
<div id="projectbrief">Set of algorithms implemented in C++.</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.12.0 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "../../search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(1); });
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="../../menudata.js"></script>
|
|
<script type="text/javascript" src="../../menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('../../',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</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">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){initNavTree('dd/d92/memory__game_8cpp.html','../../'); initResizable(true); });
|
|
/* @license-end */
|
|
</script>
|
|
<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="summary">
|
|
<a href="#namespaces">Namespaces</a> |
|
|
<a href="#func-members">Functions</a> </div>
|
|
<div class="headertitle"><div class="title">memory_game.cpp File Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>A simple <a href="https://en.wikipedia.org/wiki/Matching_game" target="_blank">Memory Game</a> with <b>3 different sizes</b> and multiple letters.
|
|
<a href="#details">More...</a></p>
|
|
<div class="textblock"><code>#include <algorithm></code><br />
|
|
<code>#include <cstdlib></code><br />
|
|
<code>#include <ctime></code><br />
|
|
<code>#include <iostream></code><br />
|
|
<code>#include <random></code><br />
|
|
<code>#include <vector></code><br />
|
|
<code>#include <unistd.h></code><br />
|
|
</div><div class="textblock"><div class="dynheader">
|
|
Include dependency graph for memory_game.cpp:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="../../da/d18/memory__game_8cpp__incl.svg" width="603" 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><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
|
|
Namespaces</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../da/d9c/namespacegames.html">games</a></td></tr>
|
|
<tr class="memdesc:da/d9c/namespacegames"><td class="mdescLeft"> </td><td class="mdescRight">(Mini)game implementations. <br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">namespace  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html">games::memory_game</a></td></tr>
|
|
<tr class="memdesc:d8/d41/namespacegames_1_1memory__game"><td class="mdescLeft"> </td><td class="mdescRight">Functions for the <a href="https://en.wikipedia.org/wiki/Matching_game" target="_blank">Memory Game</a> implementation. <br /></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
|
|
Functions</h2></td></tr>
|
|
<tr class="memitem:a5bdc30951221eae9c33413ff9eb574f6" id="r_a5bdc30951221eae9c33413ff9eb574f6"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:a5bdc30951221eae9c33413ff9eb574f6"><td class="memTemplItemLeft" align="right" valign="top">constexpr T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#a5bdc30951221eae9c33413ff9eb574f6">SLEEP</a> (T seconds)</td></tr>
|
|
<tr class="memdesc:a5bdc30951221eae9c33413ff9eb574f6"><td class="mdescLeft"> </td><td class="mdescRight">for sleep() <br /></td></tr>
|
|
<tr class="separator:a5bdc30951221eae9c33413ff9eb574f6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a33167bb9cce6d527b478b4f6ae8c3f59" id="r_a33167bb9cce6d527b478b4f6ae8c3f59"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:a33167bb9cce6d527b478b4f6ae8c3f59"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#a33167bb9cce6d527b478b4f6ae8c3f59">games::memory_game::is_number</a> (const T &input)</td></tr>
|
|
<tr class="memdesc:a33167bb9cce6d527b478b4f6ae8c3f59"><td class="mdescLeft"> </td><td class="mdescRight">Utility function to verify if the given input is a number or not. This is very useful to prevent the program being stuck in a loop. <br /></td></tr>
|
|
<tr class="separator:a33167bb9cce6d527b478b4f6ae8c3f59"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad573c8ae66ab66156d03e5e81bbba214" id="r_ad573c8ae66ab66156d03e5e81bbba214"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:ad573c8ae66ab66156d03e5e81bbba214"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#ad573c8ae66ab66156d03e5e81bbba214">games::memory_game::init</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > *table)</td></tr>
|
|
<tr class="memdesc:ad573c8ae66ab66156d03e5e81bbba214"><td class="mdescLeft"> </td><td class="mdescRight">Initializes the table with the letters. <br /></td></tr>
|
|
<tr class="separator:ad573c8ae66ab66156d03e5e81bbba214"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac589ef65abb0a6b9a7116ee0f9fd5280" id="r_ac589ef65abb0a6b9a7116ee0f9fd5280"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:ac589ef65abb0a6b9a7116ee0f9fd5280"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#ac589ef65abb0a6b9a7116ee0f9fd5280">games::memory_game::print_table</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > &table)</td></tr>
|
|
<tr class="memdesc:ac589ef65abb0a6b9a7116ee0f9fd5280"><td class="mdescLeft"> </td><td class="mdescRight">Utility function to print the table. <br /></td></tr>
|
|
<tr class="separator:ac589ef65abb0a6b9a7116ee0f9fd5280"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adc62ebb75853446656e24932bdc6dd6b" id="r_adc62ebb75853446656e24932bdc6dd6b"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:adc62ebb75853446656e24932bdc6dd6b"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#adc62ebb75853446656e24932bdc6dd6b">games::memory_game::reset_data</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > &table, int *answer, int *old_answer, int *memory_count)</td></tr>
|
|
<tr class="memdesc:adc62ebb75853446656e24932bdc6dd6b"><td class="mdescLeft"> </td><td class="mdescRight">Utility function that resets the data if the user enters an invalid value. <br /></td></tr>
|
|
<tr class="separator:adc62ebb75853446656e24932bdc6dd6b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5714d97649c0edd57b4fb449799676a3" id="r_a5714d97649c0edd57b4fb449799676a3"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:a5714d97649c0edd57b4fb449799676a3"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#a5714d97649c0edd57b4fb449799676a3">games::memory_game::ask_data</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > &table, int *answer, int *old_answer, int *memory_count)</td></tr>
|
|
<tr class="memdesc:a5714d97649c0edd57b4fb449799676a3"><td class="mdescLeft"> </td><td class="mdescRight">Function that asks the user for their input in the table they previously chose. <br /></td></tr>
|
|
<tr class="separator:a5714d97649c0edd57b4fb449799676a3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a370760f2b328ad341bcb77d82fa17b01" id="r_a370760f2b328ad341bcb77d82fa17b01"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:a370760f2b328ad341bcb77d82fa17b01"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#a370760f2b328ad341bcb77d82fa17b01">games::memory_game::match</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > &table, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > *table_empty, const int &answer, bool *first_time, int *old_answer, int *memory_count)</td></tr>
|
|
<tr class="memdesc:a370760f2b328ad341bcb77d82fa17b01"><td class="mdescLeft"> </td><td class="mdescRight">Checks if the two values given by the user match. <br /></td></tr>
|
|
<tr class="separator:a370760f2b328ad341bcb77d82fa17b01"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3ceeea62d8fa6c563e2c66359fd73413" id="r_a3ceeea62d8fa6c563e2c66359fd73413"><td class="memTemplParams" colspan="2">template<typename T > </td></tr>
|
|
<tr class="memitem:a3ceeea62d8fa6c563e2c66359fd73413"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="../../d8/d41/namespacegames_1_1memory__game.html#a3ceeea62d8fa6c563e2c66359fd73413">games::memory_game::assign_results</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > *table_empty, <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< T > *table, int *answer, bool *first_time, int *old_answer, int *memory_count)</td></tr>
|
|
<tr class="memdesc:a3ceeea62d8fa6c563e2c66359fd73413"><td class="mdescLeft"> </td><td class="mdescRight">Function to assign the results to the table. <br /></td></tr>
|
|
<tr class="separator:a3ceeea62d8fa6c563e2c66359fd73413"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4" id="r_ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
|
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft"> </td><td class="mdescRight">Main function. <br /></td></tr>
|
|
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>A simple <a href="https://en.wikipedia.org/wiki/Matching_game" target="_blank">Memory Game</a> with <b>3 different sizes</b> and multiple letters. </p>
|
|
<p>The game consists on finding <b>the pair</b> of all the given letters depending on the table size. Once all of the instances are all found, the game will end and will ask you if you'd like to play again or not.</p>
|
|
<p>It provides <b>3 different sizes</b> available that the user can choose (4x2, 5x2, 7x2). 7x2 being the biggest table size and hardest mode. The bigger the size, <b>the more letters are available</b>.</p>
|
|
<dl class="section author"><dt>Author</dt><dd><a href="https://github.com/Panquesito7" target="_blank">David Leal</a> </dd></dl>
|
|
</div><h2 class="groupheader">Function Documentation</h2>
|
|
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4" name="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </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>< Size of the table.</p>
|
|
<p>< Selection of the size (4x2, 5x2, 7x2).</p>
|
|
<p>< The answer (number index) that the user chose.</p>
|
|
<p>< Previous answer (number index).</p>
|
|
<p>< Counter to check if the user has already answered two values.</p>
|
|
<p>< Whether the user has answered 1 value or not (previous answered values do not count).</p>
|
|
<div class="fragment"><div class="line"><span class="lineno"> 360</span> {</div>
|
|
<div class="line"><span class="lineno"> 361</span> <span class="comment">// Start randomizer. This changes the values every time.</span></div>
|
|
<div class="line"><span class="lineno"> 362</span> <a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/srand.html">std::srand</a>(<a class="code hl_functionRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a>(<span class="keyword">nullptr</span>));</div>
|
|
<div class="line"><span class="lineno"> 363</span> </div>
|
|
<div class="line"><span class="lineno"> 364</span> <span class="keywordtype">int</span> size = 0; <span class="comment">///< Size of the table.</span></div>
|
|
<div class="line"><span class="lineno"> 365</span> <span class="keywordtype">int</span> selection = 0; <span class="comment">///< Selection of the size (4x2, 5x2, 7x2).</span></div>
|
|
<div class="line"><span class="lineno"> 366</span> </div>
|
|
<div class="line"><span class="lineno"> 367</span> <span class="keywordtype">int</span> response = 0; <span class="comment">///< The answer (number index) that the user chose.</span></div>
|
|
<div class="line"><span class="lineno"> 368</span> <span class="keywordtype">int</span> old_answer = 0; <span class="comment">///< Previous answer (number index).</span></div>
|
|
<div class="line"><span class="lineno"> 369</span> </div>
|
|
<div class="line"><span class="lineno"> 370</span> <span class="keywordtype">int</span> memory_count =</div>
|
|
<div class="line"><span class="lineno"> 371</span> 0; <span class="comment">///< Counter to check if the user has already answered two values.</span></div>
|
|
<div class="line"><span class="lineno"> 372</span> <span class="keywordtype">bool</span> first_time = <span class="keyword">true</span>; <span class="comment">///< Whether the user has answered 1 value or not</span><span class="comment"></span></div>
|
|
<div class="line"><span class="lineno"> 373</span><span class="comment"> ///< (previous answered values do not count).</span></div>
|
|
<div class="line"><span class="lineno"> 374</span><span class="comment"></span> </div>
|
|
<div class="line"><span class="lineno"> 375</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\tMEMORY GAME\n"</span>;</div>
|
|
<div class="line"><span class="lineno"> 376</span> </div>
|
|
<div class="line"><span class="lineno"> 377</span> <span class="keywordflow">do</span> {</div>
|
|
<div class="line"><span class="lineno"> 378</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\n1. 4x2 (1)"</span>;</div>
|
|
<div class="line"><span class="lineno"> 379</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\n2. 5x2 (2)"</span>;</div>
|
|
<div class="line"><span class="lineno"> 380</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\n3. 7x2 (3)\n"</span>;</div>
|
|
<div class="line"><span class="lineno"> 381</span> </div>
|
|
<div class="line"><span class="lineno"> 382</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\nChoose table size: "</span>;</div>
|
|
<div class="line"><span class="lineno"> 383</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a> >> selection;</div>
|
|
<div class="line"><span class="lineno"> 384</span> } <span class="keywordflow">while</span> ((selection < 1 || selection > 3) &&</div>
|
|
<div class="line"><span class="lineno"> 385</span> (!<a class="code hl_function" href="../../d8/d41/namespacegames_1_1memory__game.html#a33167bb9cce6d527b478b4f6ae8c3f59">games::memory_game::is_number</a>(selection)));</div>
|
|
<div class="line"><span class="lineno"> 386</span> </div>
|
|
<div class="line"><span class="lineno"> 387</span> <span class="keywordflow">switch</span> (selection) {</div>
|
|
<div class="line"><span class="lineno"> 388</span> <span class="keywordflow">case</span> 1:</div>
|
|
<div class="line"><span class="lineno"> 389</span> size = 8;</div>
|
|
<div class="line"><span class="lineno"> 390</span> <span class="keywordflow">break</span>;</div>
|
|
<div class="line"><span class="lineno"> 391</span> <span class="keywordflow">case</span> 2:</div>
|
|
<div class="line"><span class="lineno"> 392</span> size = 10;</div>
|
|
<div class="line"><span class="lineno"> 393</span> <span class="keywordflow">break</span>;</div>
|
|
<div class="line"><span class="lineno"> 394</span> <span class="keywordflow">case</span> 3:</div>
|
|
<div class="line"><span class="lineno"> 395</span> size = 14;</div>
|
|
<div class="line"><span class="lineno"> 396</span> <span class="keywordflow">break</span>;</div>
|
|
<div class="line"><span class="lineno"> 397</span> <span class="keywordflow">default</span>:</div>
|
|
<div class="line"><span class="lineno"> 398</span> size = 10;</div>
|
|
<div class="line"><span class="lineno"> 399</span> <span class="keywordflow">break</span>;</div>
|
|
<div class="line"><span class="lineno"> 400</span> }</div>
|
|
<div class="line"><span class="lineno"> 401</span> </div>
|
|
<div class="line"><span class="lineno"> 402</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<char></a> table(size);</div>
|
|
<div class="line"><span class="lineno"> 403</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<char></a> table_empty(size);</div>
|
|
<div class="line"><span class="lineno"> 404</span> </div>
|
|
<div class="line"><span class="lineno"> 405</span> <a class="code hl_classRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"\n"</span>;</div>
|
|
<div class="line"><span class="lineno"> 406</span> </div>
|
|
<div class="line"><span class="lineno"> 407</span> <a class="code hl_function" href="../../d8/d41/namespacegames_1_1memory__game.html#ad573c8ae66ab66156d03e5e81bbba214">games::memory_game::init</a>(&table);</div>
|
|
<div class="line"><span class="lineno"> 408</span> <a class="code hl_function" href="../../d8/d41/namespacegames_1_1memory__game.html#a5714d97649c0edd57b4fb449799676a3">games::memory_game::ask_data</a>(table_empty, &response, &old_answer,</div>
|
|
<div class="line"><span class="lineno"> 409</span> &memory_count);</div>
|
|
<div class="line"><span class="lineno"> 410</span> <a class="code hl_function" href="../../d8/d41/namespacegames_1_1memory__game.html#a3ceeea62d8fa6c563e2c66359fd73413">games::memory_game::assign_results</a>(&table_empty, &table, &response,</div>
|
|
<div class="line"><span class="lineno"> 411</span> &first_time, &old_answer, &memory_count);</div>
|
|
<div class="line"><span class="lineno"> 412</span> </div>
|
|
<div class="line"><span class="lineno"> 413</span> <span class="keywordflow">return</span> 0;</div>
|
|
<div class="line"><span class="lineno"> 414</span>}</div>
|
|
<div class="ttc" id="abasic_istream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_istream.html">std::cin</a></div></div>
|
|
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
|
|
<div class="ttc" id="anamespacegames_1_1memory__game_html_a33167bb9cce6d527b478b4f6ae8c3f59"><div class="ttname"><a href="../../d8/d41/namespacegames_1_1memory__game.html#a33167bb9cce6d527b478b4f6ae8c3f59">games::memory_game::is_number</a></div><div class="ttdeci">bool is_number(const T &input)</div><div class="ttdoc">Utility function to verify if the given input is a number or not. This is very useful to prevent the ...</div><div class="ttdef"><b>Definition</b> memory_game.cpp:62</div></div>
|
|
<div class="ttc" id="anamespacegames_1_1memory__game_html_a3ceeea62d8fa6c563e2c66359fd73413"><div class="ttname"><a href="../../d8/d41/namespacegames_1_1memory__game.html#a3ceeea62d8fa6c563e2c66359fd73413">games::memory_game::assign_results</a></div><div class="ttdeci">void assign_results(std::vector< T > *table_empty, std::vector< T > *table, int *answer, bool *first_time, int *old_answer, int *memory_count)</div><div class="ttdoc">Function to assign the results to the table.</div><div class="ttdef"><b>Definition</b> memory_game.cpp:289</div></div>
|
|
<div class="ttc" id="anamespacegames_1_1memory__game_html_a5714d97649c0edd57b4fb449799676a3"><div class="ttname"><a href="../../d8/d41/namespacegames_1_1memory__game.html#a5714d97649c0edd57b4fb449799676a3">games::memory_game::ask_data</a></div><div class="ttdeci">void ask_data(const std::vector< T > &table, int *answer, int *old_answer, int *memory_count)</div><div class="ttdoc">Function that asks the user for their input in the table they previously chose.</div><div class="ttdef"><b>Definition</b> memory_game.cpp:161</div></div>
|
|
<div class="ttc" id="anamespacegames_1_1memory__game_html_ad573c8ae66ab66156d03e5e81bbba214"><div class="ttname"><a href="../../d8/d41/namespacegames_1_1memory__game.html#ad573c8ae66ab66156d03e5e81bbba214">games::memory_game::init</a></div><div class="ttdeci">void init(std::vector< T > *table)</div><div class="ttdoc">Initializes the table with the letters.</div><div class="ttdef"><b>Definition</b> memory_game.cpp:80</div></div>
|
|
<div class="ttc" id="asrand_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/numeric/random/srand.html">std::srand</a></div><div class="ttdeci">T srand(T... args)</div></div>
|
|
<div class="ttc" id="atime_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a></div><div class="ttdeci">T time(T... args)</div></div>
|
|
<div class="ttc" id="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div></div>
|
|
</div><!-- fragment --><div class="dynheader">
|
|
Here is the call graph for this function:</div>
|
|
<div class="dyncontent">
|
|
<div class="center"><iframe scrolling="no" frameborder="0" src="../../dd/d92/memory__game_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="667" height="438"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5bdc30951221eae9c33413ff9eb574f6" name="a5bdc30951221eae9c33413ff9eb574f6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5bdc30951221eae9c33413ff9eb574f6">◆ </a></span>SLEEP()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T > </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">T SLEEP </td>
|
|
<td>(</td>
|
|
<td class="paramtype">T</td> <td class="paramname"><span class="paramname"><em>seconds</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">constexpr</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>for sleep() </p>
|
|
<p>for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/algorithm/random_shuffle.html">std::shuffle()</a> for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/srand.html">std::srand()</a> for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time()</a> for IO operations for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/numeric/random/mersenne_twister_engine.html">std::mt19937</a> for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a> </p>
|
|
<div class="fragment"><div class="line"><span class="lineno"> 36</span> {</div>
|
|
<div class="line"><span class="lineno"> 37</span> <span class="keywordflow">return</span> sleep(seconds);</div>
|
|
<div class="line"><span class="lineno"> 38</span>}</div>
|
|
</div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="../../dir_4b6f782e158b0b98da980a0e11a23a15.html">games</a></li><li class="navelem"><a class="el" href="../../dd/d92/memory__game_8cpp.html">memory_game.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.12.0 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|