Short version: There is no correct answer – the test doesn’t give you enough information to come up with a single correct response. What matters most is that you applied a consistent set of rules.
The most likely (read: the ones that I, just about any programmer, and about 75% of you would give/gave) correct answers are (and the programmers will have to bear with me while I explain this in the simplest terms I can think of, and I apologise for patronising anyone):
Question 1: a=20, b=20
Question 2: a=7, b=7, c=3
Assuming that a, b and c are ‘containers’ that start out holding the number values given, and that ‘=’ means (approximately) ‘assign the value on the right, to the value on the left’, and that we execute each line in sequence, changing values as we go.
But, for example, these would also be completely reasonable answers (and was far and away the most common second choice):
Question 1: a=b, b=20;
Question 2: a=c, b=a, c=b;
If a, b and c are not ‘containers’, but values in and of themselves, and equals has the same meaning as above, and each line is executed in sequence..
Question 1: a=20, b=20
Question 2: a=7, b=5, c=3
a, b and c are ‘containers’, ‘=’ has the same meaning as before, but we execute each line as if ‘simultaneous’ – so changes wrought on line one have no relevance to anything further down.
Or hell, if you want to get really esoteric about it:
Question 1: a=10,b=a
Question 2: a=b,b=c,c=a
If a, b and c are not ‘containers’, and ‘=’ means ‘assign the value on the left, to the value on the right’.
My test isn’t close as useful as the original, which has 12 questions, all in that format. The original was multi-choice, with an optional “other” write-in for every question and provided the cue that the answers at least seemed to be expected to be numeric. I left that out on purpose, just to see what would happen. (And also because I couldn’t be arsed setting up the massive poll it would have been if I’d left the multi-choice in, and besides this test was designed to work even for children educated in modern schools, not the sparkling paragons of intellect on my friends list…)
Approximately 90% of the answers fell into answer set 1 or 2. I suspect had the numeric cue been present, it would almost all have been option 1.
So, what does this prove? Absolutely nothing, of course, but it certainly seems like most of the non-programmers gave answers that a programmer would, and in only about 6% of cases was I unable to work out what system had been used. Draw your own conclusions.