<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Random Integer on Sobamemil</title>
    <link>https://blog.sobamemil.com/en/tags/random-integer/</link>
    <description>Recent content in Random Integer on Sobamemil</description>
    <image>
      <title>Sobamemil</title>
      <url>https://blog.sobamemil.com/images/og-image.png</url>
      <link>https://blog.sobamemil.com/images/og-image.png</link>
    </image>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Tue, 03 Mar 2020 16:44:34 +0900</lastBuildDate>
    <atom:link href="https://blog.sobamemil.com/en/tags/random-integer/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>C&#43;&#43; Programming Ch.3 Exercise 7 Solution</title>
      <link>https://blog.sobamemil.com/en/posts/049-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-3%EC%9E%A5-7%EB%B2%88/</link>
      <pubDate>Tue, 03 Mar 2020 16:44:34 +0900</pubDate>
      <guid>https://blog.sobamemil.com/en/posts/049-%EB%AA%85%ED%92%88-c-programming-%EC%8B%A4%EC%8A%B5-%EB%AC%B8%EC%A0%9C-3%EC%9E%A5-7%EB%B2%88/</guid>
      <description>&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;문제 5번을 참고하여 생성자를 이용하여 짝수 홀수를 선택할 수 있도록 SelectableRandom 클래스를 작성하고 짝수 10개, 홀수 10개를 랜덤하게 발생시키는 프로그램을 작성하라.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Objective &amp;amp; Hints:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;클래스 작성에서 매개 변수를 가진 생성자의 활용&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Execution Result:&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;img loading=&#34;lazy&#34; src=&#34;https://img.sobamemil.com/posts/49/img_1.png&#34;&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Code:&lt;/b&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;&lt;/th&gt;
          &lt;th&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57  58  59  60  61  62  63  64  65&lt;/td&gt;
          &lt;td&gt;#include&lt;iostream&gt;  #include&lt;cstdlib&gt;  #include&lt;ctime&gt;  using namespace std;    class SelectableRandom{  int num;  public:  SelectableRandom(int _num); // 매개변수로 짝수 혹은 홀수를 받는다  int next();  int nextInRange(int a, int b);  };  SelectableRandom::SelectableRandom(int _num){  num = _num;  srand((unsigned)time(0));  }    int SelectableRandom::next() {  int ran = rand();  if(num%2 == 0){ // 짝수 return  if(ran%2 == 0)  return ran;  else  return --ran;  }  else {  if(ran%2 == 0) // 홀수 return  return ++ran;  else  return ran;  }  }    int SelectableRandom::nextInRange(int a, int b){  int ran = rand()%(b-a+1) + a;  if(num%2 == 0) { // 짝수 return  if(ran%2 == 0)  return ran;  else  return ++ran;  }  else { // 홀수 return  if(ran%2 == 0)  return ++ran;  else  return ran;  }  }    int main() {  SelectableRandom r1(0); // 짝수 랜덤 정수 발생  cout &amp;lt;&amp;lt; &amp;quot;-- 0에서 &amp;quot; &amp;lt;&amp;lt; RAND_MAX &amp;lt;&amp;lt; &amp;quot;까지의 짝수 랜덤 정수 10 개--&amp;quot; &amp;lt;&amp;lt; endl;  for(int i=0; i&amp;lt;10; i++) {  int n = r1.next();  cout &amp;lt;&amp;lt; n &amp;lt;&amp;lt; &#39; &#39;;  }    SelectableRandom r2(1); // 홀수 랜덤 정수 발생  cout &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; endl &amp;lt;&amp;lt; &amp;quot;-- 2에서 &amp;quot; &amp;lt;&amp;lt; &amp;quot;9 까지의 랜덤 홀수  정수 10 개 --&amp;quot; &amp;lt;&amp;lt; endl;  for(int i=0; i&amp;lt;10; i++) {  int n = r2.nextInRange(2,9);  cout &amp;lt;&amp;lt; n &amp;lt;&amp;lt; &#39; &#39;;  }  cout &amp;lt;&amp;lt; endl;  }&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;b&gt;Explanation:&lt;/b&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
