Login | Register
Enrol now for our new online tutoring program. Learn from the best tutors. Get amazing results. Learn more.

Welcome, Guest. Please login or register.

December 05, 2021, 09:53:52 am

Author Topic: HSC Software Design and Development Question Thread  (Read 14804 times)  Share 

0 Members and 1 Guest are viewing this topic.

Justin_L

  • MOTM: July 20
  • Moderator
  • Trendsetter
  • *****
  • Posts: 183
  • Puzzlequest!
  • Respect: +235
Re: HSC Software Design and Development Question Thread
« Reply #45 on: July 17, 2021, 04:58:39 pm »
+2
What is the best way to finding logic errors in algorithms?
Also, are there any places to find preliminary papers? I have looked everywhere and there seems to be nothing

Logic errors are a tough one - the first issue is even knowing that a logic error exists. there's no certain way to find a logic error without testing the code or desk checking every single step of the algorithm.

That being said, if you wrote the algorithm yourself, you should have a good idea of what the expected outputs are and where the program is diverging, which narrows down the scope of an error. You can then check the parts where the relevant variable is used see whether it's behaving as expected.

If it's an exam question, you might not have that luxury and you'll be limited to whatever information you're given. In that case, you should get a clear idea of what the algorithm is doing and how you expect it to behave. You can then do a quick desk check to confirm your theories, which should either confirm or deny that a logic error exists. The fact that something works is also valuable information, since it tells you that the error isn't in that part of the algorithm.

The most common error you'll see by far is an off by one error, where a counter or index is off by one. These often occur due to variables being initialized at 1 or 0, and when the wrong comparison operator (> versus >=) is used, as well as when accessing arrays. (array[1] actually refers to the second element of an array when indexed from 0). Check for these first, then move onto more through debugging methods. Over time as you write more algorithms, you'll also naturally gain a sense for where these logic errors commonly happen as you develop as a programmer.

Hope this helps!  :)

Да здравствует революция государственного модератора

smokeybatscore

  • Fresh Poster
  • *
  • Posts: 3
  • Respect: 0
Re: HSC Software Design and Development Question Thread
« Reply #46 on: September 30, 2021, 07:00:25 pm »
0
A quick question, I'm confused as to what exactly we will be assessed upon in our HSC for SDD. My trials had content from the preliminary syllabus (actual questions, not assumed knowledge), is that the case for HSC as well?

Justin_L

  • MOTM: July 20
  • Moderator
  • Trendsetter
  • *****
  • Posts: 183
  • Puzzlequest!
  • Respect: +235
Re: HSC Software Design and Development Question Thread
« Reply #47 on: October 01, 2021, 11:24:22 pm »
+1
A quick question, I'm confused as to what exactly we will be assessed upon in our HSC for SDD. My trials had content from the preliminary syllabus (actual questions, not assumed knowledge), is that the case for HSC as well?

For the HSC, no - you'll only be assessed on content in the HSC syllabus. However, the SDD course is one particular course that has a large amount of overlap between prelim and HSC content. Particularly for skills such as pseudocode and EBNF, you'll be first introduced to them in the prelim course and expected to develop and use them over the HSC course as well.

In terms of pure content, you may also find that topics such as the software development lifecycle and different development approaches (eg. Prototyping, End User, Waterfall, Agile) have significant overlap between the prelim and HSC components. While you won't be tested on prelim content directly, it can often feel like you are if you're getting questions on these topics.

tldr; is that you'll only ever be assessed on what's on the HSC syllabus for the HSC

Hope this helps!
Да здравствует революция государственного модератора