zlacker

[parent] [thread] 1 comments
1. MrSton+(OP)[view] [source] 2019-11-11 15:37:14
Constraints are fine.

Blocking off a generic "anything you haven't been taught yet" is a hellfire of ambiguous egg shells.

Strictly speaking you might not have been taught to use division with loops. Maybe you haven't been taught about the log10 function, or you have but you haven't been taught about combining the log10 function with the round/ceil functions, are you sure you were taught about putting if's before these exact functions?

The issue is every programming question requires by its very nature that you use something you haven't been taught to solve it. So you have to know what the teacher counts as acceptable vs unacceptable, and this comes into weird edge cases where the logic behind why something would be considered part of the "you must be taught first" category vs the "you are to assume figuring this out is part of the question" category requires knowing an overview of how to teach computer science, something the students would not have.

I once got points taken off for using a recursive function as part of my solution because that wasn't taught until the next quarter. I didn't know the language before, nor did I have much experience with recursive functions as a formal concept. We knew how to make functions, call functions, do loops, and even do gotos.

I didn't even know at that time that recursive functions were a special thing that had to be taught to me, it just came to me as the way to solve the problem.

replies(1): >>em-bee+Ba
2. em-bee+Ba[view] [source] 2019-11-11 16:48:23
>>MrSton+(OP)
i agree, constraints and "anything you haven't been taught yet" are two different things.

constraints should be spelled out explicitly.

The issue is every programming question requires by its very nature that you use something you haven't been taught to solve it

that, i don't agree with. it's entirely possible to state programming questions in such a way that they only require things you have already been taught. (in its simplest form "being taught" means "being told about". most (if not all) freecodecamp exercises work like that.

[go to top]