Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialSean Flanagan
33,235 PointsNo good at challenges
Hi.
I can do the quizzes and code challenges but I'm not very good at challenges like this one, I'm ashamed to say.
I've made a start on my JS:
var quiz = [
['How many states does the USA have?', 50],
['How many legs does a spider have?', 8],
['How many continents are there?', 6]
];
function print(message) {
document.write(message);
}
I'd appreciate any input.
Sean :-)
Marcus Parsons
15,719 PointsSean, before you go any further, wrap those numbers in quotes so that they're strings otherwise you're going to end up having to parse the numbers from the string based prompt and you will limit yourself to only being able to have number based answers...
var quiz = [
['How many states does the USA have?', '50'],
['How many legs does a spider have?', '8'],
['How many continents are there?', '6']
];
function print(message) {
document.write(message);
}
Also, to show you how you can make the quiz game dynamic and accept more than one right answer, check out this codepen I made: http://codepen.io/anon/pen/WvppZX?editors=001
Sean Flanagan
33,235 PointsHi Jacob. Hi Marcus. Thank you both for your attempts to help. Sorry for the delay but I wanted to consider my answer very carefully. Marcus, I've converted the numbers to strings like you said.
Is the next step now to create all the variables?
Marcus Parsons
15,719 PointsIt all depends on your approach. Are you planning on outputting what they did wrong in addition to what they did right? Are you going to show the questions they got wrong and the questions they got right? These are questions to ask yourself to see how you're going to code the rest of this little program. And, don't worry about getting everything you need right then and there; you'll probably think of something you want to implement later on.
Have you ever written pseudo code before? If you've never heard of that, all pseudo code is writing out the steps you need to go through a program in your own terms, not specific to any language, so that you can build a program in whatever language you choose with the logical steps you put down.
For example, if I wanted to write a very quick program to add two numbers of a user's input:
//Receive first input from user and store in variable - num1
//Receive second input from user and store in variable - num2
//Add num1 to num2 and store in variable - total
//Tell user that num1 plus num2 equals total
That's just an example of how to write pseudo code because pseudo code is all about how you want to write your layout to the program, but it allows you to get a structured approach to your program without having to write specific code for it. It's a great technique for when you can't visualize how the code should go.
Jacob Mishkin
23,118 PointsSean, I agree with Marcus on using pseudo code to create a structure to the program you want to build. It's a great way to see what you want to do. I also highly recommend that if you're having issues on where to start write some pseudo code, then re-watch the videos and see what code you need to use first and so on to build this program. remember, the challenges are all based on what you know so far, its just the use of implementing it.
Sean Flanagan
33,235 PointsI think I'll watch the preceding videos again so I get the ideas down.
Thank you both
Sean :-)
Marcus Parsons
15,719 PointsYou're welcome, Sean. Be sure to practice writing pseudo code. It'll be a big help.
I also forgot to mention that using your print
function that way is slower than just using document.write()
by itself. There's no reason to override the default print
function in this way. The way Dave does it in his course is to use a custom print
function to output information to an element on the page, not to use document.write()
which should only be used for testing code.
Jacob Mishkin
23,118 PointsSean, That's a great idea! taking notes and re-watching videos is a solid way to go! I would suggest while watching the video take some handwritten notes and form a plan of how you want you program to run. It never hurts. Then before you code use the pseudo code as an outline of where/what code needs to go in order for the program to execute. if you have anymore questions after that, please post them on the forum. That's what its there for. Happy coding!
Marcus Parsons
15,719 PointsWhat Jacob said =]
Keith Greatz
4,377 PointsHi Sean, to give you a visual look at what's happening when trying to access parts or your 2 dimensional array I made a little reference for you
var abc = [
[1,2,3],
[4,5,6],
[7,8,9],
];
to access these particular values you would use
abc[0][0] This would = 1
abc[0][1] This would = 2
abc[0][2] This would = 3
abc[1][0] This would = 4
abc[1][1] This would = 5
abc[1][2] This would = 6
abc[2][0] This would = 7
abc[2][1] This would = 8
abc[2][2] This would = 9
This certainly helped me.
1 Answer
Sean Flanagan
33,235 PointsI've started watching earlier videos to brush up and I'm also taking notes.
Thank you all
Sean :-)
Jacob Mishkin
23,118 PointsJacob Mishkin
23,118 PointsSean, what are you trying to do? Your 2D array looks fine, and you have a print function. are you trying to create the quiz game? Or is there another aspect of the challenge that you are having trouble working with?