The Student Room Group

AQA A-Level Computer Science Papers 1 & 2 - 3rd/11th June 2019 Exam Thread

This is the exam thread for AQA A-Level Computer Science

As the A-Level was only first examined in 2017 (I was the first year to sit it ), there aren't many specific resources. However, the papers and resources from the old specification can be re-used.

I'll link a few useful pages below. I have linked old specification papers (COMP1-COMP3) because they're still useful for the new A-Level specification.

I hope your projects are going well and I hope they're also finished or at least close to completion by now! Time's ticking folks!

----------------------------------------------------

Resources (Click):

Specification

New Specification Papers and Specimen Papers

COMP1, COMP2, and COMP3 Papers (Old Specification)

Semi-complete WikiBooks page for the new specification

Videos by justAlevel

----------------------------------------------------

Tips:

Make sure you familiarise yourself with the preliminary material. Your teacher should have distributed them by now. It was programmed in the OOP Paradigm last year for me so you better get used to it if you're used to procedural.

Be familiar with data structures and how to implement them in your programming language of choice.

TEST YOUR CODE!

Re-read the question!

Save the 2016/2017, 2017/2018, and Specimen papers til last. They are as closest to the real thing so try and do the old-spec papers as revision first!
(edited 5 years ago)

Scroll to see replies

Reply 1
any idea on what the 9 or 12 mark questions may be???
Original post by Blue_Cow
This is the exam thread for AQA A-Level Computer Science

As the A-Level was only first examined in 2017 (I was the first year to sit it ), there aren't many specific resources. However, the papers and resources from the old specification can be re-used.

I'll link a few useful pages below. I have linked old specification papers (COMP1-COMP3) because they're still useful for the new A-Level specification.

I hope your projects are going well and I hope they're also finished or at least close to completion by now! Time's ticking folks!

----------------------------------------------------

Resources (Click):

Specification

New Specification Papers and Specimen Papers

COMP1, COMP2, and COMP3 Papers (Old Specification)

Semi-complete WikiBooks page for the new specification

Videos by justAlevel

----------------------------------------------------

Tips:

Make sure you familiarise yourself with the preliminary material. Your teacher should have distributed them by now. It was programmed in the OOP Paradigm last year for me so you better get used to it if you're used to procedural.

Be familiar with data structures and how to implement them in your programming language of choice.

TEST YOUR CODE!

Re-read the question!

Save the 2016/2017, 2017/2018, and Specimen papers til last. They are as closest to the real thing so try and do the old-spec papers as revision first!
Last year's paper didn't really cover the Internet or computer architecture and either of these could probably make viable long answer questions.
Original post by kgyal
any idea on what the 9 or 12 mark questions may be???
For the coding paper, does anyone know if we need to know specific libraries for our programming language. For example, I'm using Python, and the skeleton program that I was given (AQA Text Adventures) has imported libraries like Pickle. Does anyone know if we will be asked to code using library functions outside of the normal programming language commands?
Thank you.
Looking at the specification I dont think we'll be asked to use the imported liberaries. The specification only mentions random number generation which is not a built in method in python, everything else in 4.1 - 4.2 are built in methods so just make sure you can do everything mentioned in there.
Just as a precaution I would look at pickle.dump() in case we are asked to save the game which is just the LoadGame() function with
object.attribute = pickle.load(f) replaced with pickle.dump(object.attribute, f)
Original post by Bazookatron21
For the coding paper, does anyone know if we need to know specific libraries for our programming language. For example, I'm using Python, and the skeleton program that I was given (AQA Text Adventures) has imported libraries like Pickle. Does anyone know if we will be asked to code using library functions outside of the normal programming language commands?
Thank you.
Anyone know what the table in question 2.1 in the EDA might be for?
I think it might be an adjacency matrix for a graph question. Don't know the side part is though.
Original post by atharvat
Anyone know what the table in question 2.1 in the EDA might be for?
My best guess would be a Turing machine tracing though an input tape with the side column being the "current state" column. I really hope its not tracing through an algorithm because I'm **** at those :frown:
Original post by CaptainCurry56
I think it might be an adjacency matrix for a graph question. Don't know the side part is though.
Yikes Paper 2 is gonna kill me
Original post by atharvat
My best guess would be a Turing machine tracing though an input tape with the side column being the "current state" column. I really hope its not tracing through an algorithm because I'm **** at those :frown:

Trace tables are fine for me but they take soo long to do, though it might just be due to me being a bit slow on things
Any guesses for what 3.1 might be? (3x3 grid)
i just wanted to confirm...

are BNF syntax, turing machines and FSM paper 1 questions?

(im just a little confused because we did alot of practice from old comp papers in class and in there paper 1 and 2 questions according to new spec were mixed)
Yes all of that is paper 1
Original post by Chez 01
i just wanted to confirm...

are BNF syntax, turing machines and FSM paper 1 questions?

(im just a little confused because we did alot of practice from old comp papers in class and in there paper 1 and 2 questions according to new spec were mixed)
can someone explain this loop please from extract command sub.

While Instruction.Length > 0 And Instruction(0) <> " "
Command &= Instruction(0)
Instruction = Instruction.Remove(0, 1)
End While
Original post by Chez 01
can someone explain this loop please from extract command sub.

While Instruction.Length > 0 And Instruction(0) <> " "
Command &= Instruction(0)
Instruction = Instruction.Remove(0, 1)
End While


Instruction looks like a List of Strings (or maybe an ArrayList, or something similar?). Command looks like a string.

The logic is as follows:

Repeat while the Instruction List is not empty and the first item in the instruction list is not blank:
Concatenate the first item in the instruction list to the end of the Command string
Update the Instruction list with one where the first item has been removed.


For example, if you have an a list like this:

Instruction = { "the ", "cat ", "sat ", "on ", "the ", "mat" }


Then that loop will essentially populate the Command string to look like this:

"the cat sat on the mat"


The syntax looks "slightly" off for VB.NET. Maybe this is VB6 instead? But here's one which works in VB.NET anyway: https://dotnetfiddle.net/y5f5RK
Original post by winterscoming
Instruction looks like a List of Strings (or maybe an ArrayList, or something similar?). Command looks like a string.

The logic is as follows:

Repeat while the Instruction List is not empty and the first item in the instruction list is not blank:
Concatenate the first item in the instruction list to the end of the Command string
Update the Instruction list with one where the first item has been removed.


For example, if you have an a list like this:

Instruction = { "the ", "cat ", "sat ", "on ", "the ", "mat" }


Then that loop will essentially populate the Command string to look like this:

"the cat sat on the mat"


The syntax looks "slightly" off for VB.NET. Maybe this is VB6 instead? But here's one which works in VB.NET anyway: https://dotnetfiddle.net/y5f5RK


ah okay, makes sense, thank you!
Hello guys , I was just wondering how you guys are practising for Section B and D the programming elements
can someone explain this sub too please


Sub ChangeLocationReference(ByVal Direction As String, ByVal NewLocationReference As Integer, ByVal Places As ArrayList, ByVal IndexOfCurrentLocation As Integer, ByVal Opposite As Boolean)
Dim ThisPlace As New Place
ThisPlace = Places(IndexOfCurrentLocation)
If Direction = "north" And Not Opposite Or Direction = "south" And Opposite Then
ThisPlace.North = NewLocationReference
ElseIf Direction = "east" And Not Opposite Or Direction = "west" And Opposite Then
ThisPlace.East = NewLocationReference
ElseIf Direction = "south" And Not Opposite Or Direction = "north" And Opposite Then
ThisPlace.South = NewLocationReference
ElseIf Direction = "west" And Not Opposite Or Direction = "east" And Opposite Then
ThisPlace.West = NewLocationReference
ElseIf Direction = "up" And Not Opposite Or Direction = "down" And Opposite Then
ThisPlace.Up = NewLocationReference
ElseIf Direction = "down" And Not Opposite Or Direction = "up" And Opposite Then
ThisPlace.Down = NewLocationReference
End If
Places(IndexOfCurrentLocation) = ThisPlace
End Sub
Original post by Chez 01
can someone explain this sub too please


Sub ChangeLocationReference(ByVal Direction As String, ByVal NewLocationReference As Integer, ByVal Places As ArrayList, ByVal IndexOfCurrentLocation As Integer, ByVal Opposite As Boolean)
Dim ThisPlace As New Place
ThisPlace = Places(IndexOfCurrentLocation)
If Direction = "north" And Not Opposite Or Direction = "south" And Opposite Then
ThisPlace.North = NewLocationReference
ElseIf Direction = "east" And Not Opposite Or Direction = "west" And Opposite Then
ThisPlace.East = NewLocationReference
ElseIf Direction = "south" And Not Opposite Or Direction = "north" And Opposite Then
ThisPlace.South = NewLocationReference
ElseIf Direction = "west" And Not Opposite Or Direction = "east" And Opposite Then
ThisPlace.West = NewLocationReference
ElseIf Direction = "up" And Not Opposite Or Direction = "down" And Opposite Then
ThisPlace.Up = NewLocationReference
ElseIf Direction = "down" And Not Opposite Or Direction = "up" And Opposite Then
ThisPlace.Down = NewLocationReference
End If
Places(IndexOfCurrentLocation) = ThisPlace
End Sub

I guess that 'NewLocationReference' means something elsewhere in the program in the context of 'Place' objects and its properties (North, South, East, West, Up, Down)

The subroutine is picking out a Place object from the Places ArrayList parameter, using the IndexOfCurrentLocation parameter to select the Place object from the ArrayList. (from its index/position)

After that, it's using the parameters Direction and Opposite to modify one of the properties on that Place object (North, South, East, West, Up, Down), and setting one of those properties to the value of NewLocationReference. You can see just from reading the logic of each of the conditionals what combination of Direction and Opposite causes each of those properties to change..


Not sure what you're trying to achieve here, but if you're trying to learn something by digging into some code you've found online, then try to set some debugger breakpoints in Visual Studio then run it with the debugger, it to see what it's doing and how it works:
https://docs.microsoft.com/en-us/visualstudio/debugger/using-breakpoints?view=vs-2019
(The example on that site is C#, but the visual studio debugger is exactly the same for VB.NET)

When you run the program with F5, that starts it in the debugger. That means it'll pause on lines which have those red dots, and you can use F10 to get visual studio to step over the program line-by-line - it'll let you see what's actually happening. Visual studio will also let you mouse-over variables when the program is paused to see what their contents are, and it should have a list of them at the bottom too, which you'll see changing as you press F10 to move over different lines.
(edited 4 years ago)
Original post by winterscoming
I guess that 'NewLocationReference' means something elsewhere in the program in the context of 'Place' objects and its properties (North, South, East, West, Up, Down)

The subroutine is picking out a Place object from the Places ArrayList parameter, using the IndexOfCurrentLocation parameter to select the Place object from the ArrayList. (from its index/position)

After that, it's using the parameters Direction and Opposite to modify one of the properties on that Place object (North, South, East, West, Up, Down), and setting one of those properties to the value of NewLocationReference. You can see just from reading the logic of each of the conditionals what combination of Direction and Opposite causes each of those properties to change..


Not sure what you're trying to achieve here, but if you're trying to learn something by digging into some code you've found online, then try to set some debugger breakpoints in Visual Studio then run it with the debugger, it to see what it's doing and how it works:
https://docs.microsoft.com/en-us/visualstudio/debugger/using-breakpoints?view=vs-2019
(The example on that site is C#, but the visual studio debugger is exactly the same for VB.NET)

When you run the program with F5, that starts it in the debugger. That means it'll pause on lines which have those red dots, and you can use F10 to get visual studio to step over the program line-by-line - it'll let you see what's actually happening. Visual studio will also let you mouse-over variables when the program is paused to see what their contents are, and it should have a list of them at the bottom too, which you'll see changing as you press F10 to move over different lines.


its a small chunk of code from the preliminary material for paper 1
Original post by Chez 01
its a small chunk of code from the preliminary material for paper 1

Ah ok, I guess the code they've given you must compile and run properly then? It's a really good idea to run it with the debugger really because reading code is always harder than just letting visual studio show you what it's doing line-by-line. The problem with trying to figure out code by staring at it is that you can spend hours and still end up missing things.

Quick Reply

Latest

Trending

Trending