-
October 17th, 2006, 11:50 PM
#1
Fun C++ Problem
Hey guys!
This is not a homework assignment or anything.
A buddy of mine who works for a software company in Michigan sent me this problem.
He said it was on their yearly technical tests that they give programmers.
I only could figure out two ways to do this... and that took me a LONG time.
As far as the third solution goes, I have no idea, and neither does my friend. I can give you the first two though later on.
take the following code:
int i, n = 20;
for (i=0; i<n; i--)
{
cout << "x" << endl;
}
by changing only ONE character in the above code, meaning you cannot change 20 to 31, because you will have changed two characters, you can change 20 to 21, because you only changed the 0, do the following:
find 3 ways to make the above code print x 20 times (by changing only one character).
And, according to my friend, he said his boss has been giving this problem yearly since about 1999, and no one has figured out all three ways to do it.
Good luck, this drove me nuts for a while!
Last edited by dcjr84; October 18th, 2006 at 12:18 AM.
Please rate my post if you felt it was helpful
-
October 18th, 2006, 12:10 AM
#2
Re: Fun C++ Problem
I can get two also but a 3rd is hard! I'd be fairly certain that we are probably stumped on the same thing now.
Windows XP, Visual Studio 2008, SVN
-
October 18th, 2006, 12:16 AM
#3
Re: Fun C++ Problem
Don't post any solutions yet if you have them.
I want to see how many people can actually figure out all three ways , but not until everyone has had a chance to read the problem.
Plus, it's fun to watch people "sweat" a little over a fun problem like this
Please rate my post if you felt it was helpful
-
October 18th, 2006, 01:53 AM
#4
Re: Fun C++ Problem
I have three!
Can you help me with my homework assignment?, Before you post!, Use code tags, How to post!, Codeguru technical FAQs, C++ FAQ Lite, Stroustrup: C++ Style and Technique FAQ, Guru of the Week, Comeau C and C++ FAQs, Comeau C++ Templates FAQs, CUJ @ DDJ, Spam threshold
My Blogs : Learning C++ is fun | Abnegator's reflections
Open Threads : C++ Aha! Moments | Nature of work in C++?
-
October 18th, 2006, 01:58 AM
#5
Re: Fun C++ Problem
Can you insert a character? or is it only replace.
-
October 18th, 2006, 02:01 AM
#6
Re: Fun C++ Problem
Can you insert a character? or is it only replace.
You can only change (replace ) existing characters in the code.
Nothing can be added.
Please rate my post if you felt it was helpful
-
October 18th, 2006, 02:30 AM
#7
Re: Fun C++ Problem
This is one of the trick questions a friend of mine was asked in the interview for his job at our current companies. I remember that I needed 2 minutes to find the first two, and more than 10 minutes to find the 3rd. It's a good one!
-
October 18th, 2006, 02:59 AM
#8
Re: Fun C++ Problem
Originally Posted by *io*
Can you insert a character? or is it only replace.
Well, I guess replacing a whitespace is inserting and since you want to insert - insert where there is a whitespace, it is replacing not inserting
Can you help me with my homework assignment?, Before you post!, Use code tags, How to post!, Codeguru technical FAQs, C++ FAQ Lite, Stroustrup: C++ Style and Technique FAQ, Guru of the Week, Comeau C and C++ FAQs, Comeau C++ Templates FAQs, CUJ @ DDJ, Spam threshold
My Blogs : Learning C++ is fun | Abnegator's reflections
Open Threads : C++ Aha! Moments | Nature of work in C++?
-
October 18th, 2006, 03:07 AM
#9
Re: Fun C++ Problem
Originally Posted by exterminator
Well, I guess replacing a whitespace is inserting and since you want to insert - insert where there is a whitespace, it is replacing not inserting
Ouch, my head hurts.
Reminds me of "how much wood could a woodchuck chuck if a woodchuck could chuck wood?"
Please rate my post if you felt it was helpful
-
October 18th, 2006, 11:59 AM
#10
Re: Fun C++ Problem
Got two in a few minutes. But the third one took me 30 minutes!!!
-
October 19th, 2006, 05:12 AM
#11
Re: Fun C++ Problem
Hi,
A nice one, it took me about 3 minutes to get first solution, then it was easy, I could get all the three in 5 mintes.
How is it going for others?
-
October 19th, 2006, 03:54 PM
#12
Re: Fun C++ Problem
I got all three of them in a few minutes, because I thought about the loop terminating with an answer that is not Boolean.
I really need to point out that such a puzzle is a bad interview question. Such puzzles are fun, but they are not a good indication of programming ability. More importantly, as Joel Spolsky says it, it doesn't show if the candidate is smart and gets things done. I highly recommend his article:
The Guerrilla Guide to Interviewing
Finally, avoid brain teaser questions like the one where you have to arrange 6 equal length matches to make exactly 4 identical perfect triangles. If it's an "aha!" question, you don't get any information about "smart/get things done" by figuring out if they happen to make the mental leap or not.
A great read. The puzzles are fun, no doubt. I love them. Just don't judge people based on how quickly they can solve it...
-
October 19th, 2006, 05:36 PM
#13
Re: Fun C++ Problem
Originally Posted by JasonD
I really need to point out that such a puzzle is a bad interview question. Such puzzles are fun, but they are not a good indication of programming ability. More importantly, as Joel Spolsky says it, it doesn't show if the candidate is smart and gets things done.
The puzzles are fun, no doubt. I love them. Just don't judge people based on how quickly they can solve it...
Well put. I couldn't agree with you more.
-
October 20th, 2006, 02:48 AM
#14
Re: Fun C++ Problem
Yes, it's a strange interview question.
-
October 20th, 2006, 07:54 AM
#15
Re: Fun C++ Problem
I found the first solution in the first minute, then I thought 'what a pointless exercise' and went off and did something more interesting instead.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|