<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MaxoTech Blog &#187; Recreational Mathematics</title>
	<atom:link href="http://maxotek.net/blog/category/fun/recreational-mathematics/feed" rel="self" type="application/rss+xml" />
	<link>http://maxotek.net/blog</link>
	<description>Technology Blog</description>
	<lastBuildDate>Mon, 19 Jul 2010 07:38:06 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The Necklace Problem</title>
		<link>http://maxotek.net/blog/the-necklace-problem-t51.html</link>
		<comments>http://maxotek.net/blog/the-necklace-problem-t51.html#comments</comments>
		<pubDate>Thu, 04 Oct 2007 13:10:00 +0000</pubDate>
		<dc:creator>partho</dc:creator>
				<category><![CDATA[Recreational Mathematics]]></category>

		<guid isPermaLink="false">http://maxotek.net/blog/?p=51</guid>
		<description><![CDATA[
An interesting problem in number theory is sometimes called the Necklace Problem. This problem begins with two single-digit numbers. The next number is obtained by adding the first two numbers together and saving only the ones digit. This process is repeated until the necklace closes by returning to the original two numbers. For example, if [...]]]></description>
			<content:encoded><![CDATA[<blockquote><p>
An interesting problem in number theory is sometimes called the <b>Necklace Problem</b>. This problem begins with two single-digit numbers. The next number is obtained by adding the first two numbers together and saving only the ones digit. This process is repeated until the <b>necklace</b> closes by returning to the original two numbers. For example, if the starting two numbers are 1 and 8, twelve steps are required to close the necklace: 1 8 9 7 6 3 9 2 1 3 4 7 1 8.</p>
<p>Create a Necklace application that prompts the user for two single-digit integers and then displays the sequence and the number of steps taken.
</p></blockquote>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
</pre></td><td class="code"><pre class="csharp"><span style="color: #0600FF;">using</span> <span style="color: #008080;">System</span><span style="color: #008000;">;</span>
&nbsp;
<span style="color: #0600FF;">namespace</span> Necklace_Problem
<span style="color: #000000;">&#123;</span>
    <span style="color: #FF0000;">class</span> Program
    <span style="color: #000000;">&#123;</span>
        <span style="color: #0600FF;">static</span> <span style="color: #0600FF;">void</span> Main<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">string</span><span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span> args<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            Console.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Enter the First Number:&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> Num1 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Console.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Enter the Second Number:&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> Num2 <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Console.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #666666;">&quot;Output = {0}&quot;</span>, Necklace<span style="color: #000000;">&#40;</span>Num1, Num2<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
            Console.<span style="color: #0000FF;">Read</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
&nbsp;
        <span style="color: #0600FF;">private</span> <span style="color: #0600FF;">static</span> <span style="color: #FF0000;">string</span> Necklace<span style="color: #000000;">&#40;</span><span style="color: #FF0000;">int</span> OrigFirstNum, <span style="color: #FF0000;">int</span> OrigSecNum<span style="color: #000000;">&#41;</span>
        <span style="color: #000000;">&#123;</span>
            <span style="color: #FF0000;">string</span> Output <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #FF0000;">int</span> FirstNum <span style="color: #008000;">=</span> OrigFirstNum<span style="color: #008000;">;</span>
            <span style="color: #FF0000;">int</span> SecondNum <span style="color: #008000;">=</span> OrigSecNum<span style="color: #008000;">;</span>
&nbsp;
            Output <span style="color: #008000;">=</span> OrigFirstNum <span style="color: #008000;">+</span> <span style="color: #666666;">&quot; &quot;</span> <span style="color: #008000;">+</span> OrigSecNum <span style="color: #008000;">+</span> <span style="color: #666666;">&quot; &quot;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF;">do</span>
            <span style="color: #000000;">&#123;</span>
                <span style="color: #FF0000;">int</span> Result <span style="color: #008000;">=</span> FirstNum <span style="color: #008000;">+</span> SecondNum<span style="color: #008000;">;</span>
                <span style="color: #FF0000;">int</span> LastDigit <span style="color: #008000;">=</span> Result <span style="color: #008000;">%</span> <span style="color: #FF0000;">10</span><span style="color: #008000;">;</span>
                FirstNum <span style="color: #008000;">=</span> SecondNum<span style="color: #008000;">;</span>
                SecondNum <span style="color: #008000;">=</span> LastDigit<span style="color: #008000;">;</span>
                Output <span style="color: #008000;">+=</span> SecondNum <span style="color: #008000;">+</span> <span style="color: #666666;">&quot; &quot;</span><span style="color: #008000;">;</span>
            <span style="color: #000000;">&#125;</span> <span style="color: #0600FF;">while</span> <span style="color: #000000;">&#40;</span><span style="color: #008000;">!</span><span style="color: #000000;">&#40;</span>FirstNum <span style="color: #008000;">==</span> OrigFirstNum <span style="color: #008000;">&amp;&amp;</span> SecondNum <span style="color: #008000;">==</span> OrigSecNum<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF;">return</span> Output<span style="color: #008000;">;</span>
        <span style="color: #000000;">&#125;</span>
    <span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>


<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>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
</pre></td><td class="code"><pre class="vbnet"><span style="color: #0600FF;">Namespace</span> Necklace_Problem
    <span style="color: #0600FF;">Class</span> Program
        <span style="color: #FF8000;">Private</span> <span style="color: #FF8000;">Shared</span> <span style="color: #0600FF;">Sub</span> Main<span style="color: #000000;">&#40;</span><span style="color: #FF8000;">ByVal</span> args <span style="color: #FF8000;">As</span> <span style="color: #FF8000;">String</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            Console.<span style="color: #0600FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;Enter the First Number:&quot;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #0600FF;">Dim</span> Num1 <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Console.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
&nbsp;
            Console.<span style="color: #0600FF;">Write</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;Enter the Second Number:&quot;</span><span style="color: #000000;">&#41;</span>
            <span style="color: #0600FF;">Dim</span> Num2 <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> Convert.<span style="color: #0000FF;">ToInt32</span><span style="color: #000000;">&#40;</span>Console.<span style="color: #0000FF;">ReadLine</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
&nbsp;
            Console.<span style="color: #0000FF;">WriteLine</span><span style="color: #000000;">&#40;</span><span style="color: #808080;">&quot;Output = {0}&quot;</span>, Necklace<span style="color: #000000;">&#40;</span>Num1, Num2<span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span>
            Console.<span style="color: #0000FF;">Read</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>
        <span style="color: #0600FF;">End</span> <span style="color: #0600FF;">Sub</span>
&nbsp;
        <span style="color: #FF8000;">Private</span> <span style="color: #FF8000;">Shared</span> <span style="color: #0600FF;">Function</span> Necklace<span style="color: #000000;">&#40;</span><span style="color: #FF8000;">ByVal</span> OrigFirstNum <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span>, <span style="color: #FF8000;">ByVal</span> OrigSecNum <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span><span style="color: #000000;">&#41;</span> <span style="color: #FF8000;">As</span> <span style="color: #FF8000;">String</span>
            <span style="color: #0600FF;">Dim</span> Output <span style="color: #FF8000;">As</span> <span style="color: #FF8000;">String</span> <span style="color: #008000;">=</span> <span style="color: #808080;">&quot;&quot;</span>
&nbsp;
            <span style="color: #0600FF;">Dim</span> FirstNum <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> OrigFirstNum
            <span style="color: #0600FF;">Dim</span> SecondNum <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> OrigSecNum
&nbsp;
            Output <span style="color: #008000;">=</span> OrigFirstNum <span style="color: #008000;">+</span> <span style="color: #808080;">&quot; &quot;</span> <span style="color: #008000;">+</span> OrigSecNum <span style="color: #008000;">+</span> <span style="color: #808080;">&quot; &quot;</span>
            <span style="color: #0600FF;">Do</span>
                <span style="color: #0600FF;">Dim</span> Result <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> FirstNum <span style="color: #008000;">+</span> SecondNum
                <span style="color: #0600FF;">Dim</span> LastDigit <span style="color: #FF8000;">As</span> <span style="color: #FF0000;">Integer</span> <span style="color: #008000;">=</span> Result <span style="color: #804040;">Mod</span> <span style="color: #FF0000;">10</span>
                FirstNum <span style="color: #008000;">=</span> SecondNum
                SecondNum <span style="color: #008000;">=</span> LastDigit
                Output <span style="color: #008000;">+=</span> SecondNum <span style="color: #008000;">+</span> <span style="color: #808080;">&quot; &quot;</span>
            <span style="color: #0600FF;">Loop</span> <span style="color: #0600FF;">While</span> <span style="color: #804040;">Not</span> <span style="color: #000000;">&#40;</span>FirstNum <span style="color: #008000;">=</span> OrigFirstNum <span style="color: #FF8000;">AndAlso</span> SecondNum <span style="color: #008000;">=</span> OrigSecNum<span style="color: #000000;">&#41;</span>
&nbsp;
            <span style="color: #FF8000;">Return</span> Output
        <span style="color: #0600FF;">End</span> <span style="color: #0600FF;">Function</span>
    <span style="color: #0600FF;">End</span> <span style="color: #0600FF;">Class</span>
<span style="color: #0600FF;">End</span> <span style="color: #0600FF;">Namespace</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://maxotek.net/blog/the-necklace-problem-t51.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
