Back to marketplace

2.1 computational thinking

No description yet. This curated deck is ready for daily study.

Total cards: 24•Content version: v4•Public deck•Updated: 8/1/2026

Card preview (24)

#1
Front (Question)

deifine abstraction

Back (Answer)

abstraction is the act of removing unecessary details

#2
Front (Question)

why is abstraction implemented

Back (Answer)

because it can provide the same quality product while reducing the computational resources required focus on the purpose of the program reduce complexity fo the design reduce programming coplexity reduce memory requirements

#3
Front (Question)

define preconditions

Back (Answer)

Things to consider before creating the solution i.e budget, time frame, current solution, current hardware, skill set etc

#4
Front (Question)

what are the three main aspects of thinking ahead

Back (Answer)

specifying inputs specifying outputs preconditions

#5
Front (Question)

what are the pros of defining preconditions

Back (Answer)

makes program components reusable cutting out unecessary checks makes the program easier to maintain enhances modularity reduces errors

#6
Front (Question)

what are the main programming standards

Back (Answer)

function shouldnt be longer than a page of code variable identifiers must stick to a convention each function must have a single entry point variable must not be set up ouside the scope of the function (local variables)

#7
Front (Question)

how do operating systems utalise ‘Thinking ahead’

Back (Answer)

by caching frequently accessed data this can be done with prefetching where an algorithm predicts the next data to be fetched and places it in cache before it is fetchied into the CPU

#8
Front (Question)

pros of caching

Back (Answer)

faster access less bandwidth used

#9
Front (Question)

cons of caching and prefetching

Back (Answer)

disk thrashing may occur if used to often there is a chance that the algorithm is wrong and the data prefetched isnt needed next.

#10
Front (Question)

define decomposition

Back (Answer)

breaking up the problem into small more managable sub-problems

#11
Front (Question)

what are the benefits of modularisation

Back (Answer)

large problems broken down easier to solve subroutine can be tested individually modules can be resued in several programs frequently used modules can saved as libraries programmers can work concurrently programs have fewer errors easier to debug easier to maintain

#12
Front (Question)

what does a good algorithm include

Back (Answer)

clear set of steps to prodice the correct output is efficient and completed in as few steps as possible

#13
Front (Question)

how is concurrent processing done

Back (Answer)

multiple cores tasks broken down into subtasks

#14
Front (Question)

pros of concurrent processing

Back (Answer)

solution found faster increase program throughput (rate a system can complete a task)

#15
Front (Question)

cons of concurrent processing

Back (Answer)

more memory more difficult to program

#16
Front (Question)

difference between parallel processing and concurrent processing

Back (Answer)

concurrent not actually simultaneously swaps between subtasks quicky parallel

#17
Front (Question)

Describe the different ways a programmer could ensure that invalid data entries are not made by the user when selecting a venue and date for a cinema [4]

Back (Answer)

search box used to populate the venue drop down menu for all the valid venues calendar used for date raneg check to make sure no 13th months

#18
Front (Question)

when developing a set of applications (like word ppt and excel) why is it good for developers to reuse code [4]

Back (Answer)

Pre-tested pre-compiled saves time and money similar look quicker to learn more comfortable with products in this set user becomes more productive

#19
Front (Question)

what is caching

Back (Answer)

The Process of storing instructions or data in cache memory

#20
Front (Question)

what is prefetching

Back (Answer)

operating system predicts the next item that will be fetched and it is pre loaded into cache

#21
Front (Question)

What are the goals behind thinking abstractly meaning

Back (Answer)

identifying what does and doesnt matter identifying the variables and objects needed see levels of the problem (diff levels of abstraction)

#22
Front (Question)

What are the theoretical positives of thinking abstractly

Back (Answer)

simplifies the probelms/ interface (simplifies it for both the user and the developer) reduces the computational complexity of the solution easier to see how he solution could be applied to another problem

#23
Front (Question)

What are the cons of thinking abstractly

Back (Answer)

Models wont be as accurate

#24
Front (Question)

examples thinking abstractly

Back (Answer)

using icons and symbols putting data in a chart moving nodes on a graph to change how it looks