SEARCH
You are in browse mode. You must login to use MEMORY

   Log in to start

comp sci paper 2 ALL


🇬🇧
In English
Created:


Public
Created by:
sazin ali


0 / 5  (0 ratings)



» To start learning, click login

1 / 25

[Front]


what is abstraction by generalization
[Back]


s grouping together similarities within a problem to identify what kind of problem

Practice Known Questions

Stay up to date with your due questions

Complete 5 questions to enable practice

Exams

Exam: Test your skills

Test your skills in exam mode

Learn New Questions

Dynamic Modes

SmartIntelligent mix of all modes
CustomUse settings to weight dynamic modes

Manual Mode [BETA]

Select your own question and answer types
Specific modes

Learn with flashcards
Complete the sentence
Listening & SpellingSpelling: Type what you hear
multiple choiceMultiple choice mode
SpeakingAnswer with voice
Speaking & ListeningPractice pronunciation
TypingTyping only mode

comp sci paper 2 ALL - Leaderboard

1 user has completed this course

No users have played this course yet, be the first


comp sci paper 2 ALL - Details

Levels:

Questions:

67 questions
🇬🇧🇬🇧
What is abstraction by generalization
S grouping together similarities within a problem to identify what kind of problem
What are precondtions
Requirements which must be met before a program can be executed
Caching adv
This also means images and text do not have to be downloaded again multiple times, freeing up bandwidth
Prefetching
Algorithms predict which instructions are likely to soon be fetched. The instructions and data which are likely to be used, loaded and stored in cache before they are fetched
Adv of prefetching
Less time is spent waiting for instructions to be loaded into RAM from the hard disk
What is the downside to prefetching
Accuracy of the algorithms used in prefetching, as they can only provide an informed prediction Larger caches still take a long time to search and so cache size limits how much data can be stored
Why are resuable program compnents amazing
More reliable already been tested and any bugs dealt wiv saves time, money and resources.
Why are vey bad resuable)
May not always be possible to integrate existing components due to compatibility issues with the rest of the software. This may mean these components need to be modified to work - more costly and time-consuming
What is , thinking procedurally
Makes the task of writing a program a lot simpler by breaking a problem down into smaller parts which are easier to understand and design
Problem decomposition
A large, complex problem is continually broken down into smaller subproblems which can be solved more easily
Why is problem decomposition an adv
Separating the problem into sections, it becomes more feasible to manage and can be divided between a group of people according to the skill sets of different individuals
Why is it good to use top-down design
Subproblem can be represented as a single task and ideally a self-contained module or subroutine
What is concurrent processing
When each task is given a slice of processor time to make it look like the tasks are being completed simultaneously when in reality they are executed sequentially
Benefits of concurrent processing
● The number of tasks completed in a given time is increased. ● Less time is wasted waiting for an input or user interaction, as other tasks can be completed.
Drawbacks of concurrent processing
● Concurrent processing can take longer to complete when large numbers of users or tasks are involved as processes cannot be completed at once. ● There is an overhead in coordinating and switching between processes, which reduces program throughput. ● Just as with parallel processing, not all tasks are suited to being broken up and performed concurrently.
What is concurrent thinking doe
G is the mindset that allows you to spot patterns and parts of problems where concurrency can be applied aka multitasking
What is a sequence in terms of programming u filthy animal
Code is executed line-by-line, from top to bottom
Branching
Certain block of code is run if a specific condition is met, using IF statements. This is also known as ‘selection
Iteration
A block of code is executed a certain number of times or while a condition is met. Iteration uses FOR, WHILE or REPEAT UNTIL loops
What is Count-controlled iteration
Repeated a given number of times
What is Condition-controlled iteration
Iteration continues until a given condition is met.
What is recursion
In which a subroutine calls itself during its execution
When does the recursion stop?
Continues until a certain condition - called the stopping condition - is met
What is an advatage to recursion rather than iteration?
They can be represented in fewer lines of code, which makes them less prone to errors
What is a disadvantage of recursion
Inefficient use of memory. If the subroutine calls itself too many times it is prone to stack overflow, which is when the call stack runs out of memory & program crashes difficult to trace,
What are Local variables
Can only be accessed within the block of code in which they were defined multiple local variables with the same name can exist in different subroutines and will remain unaffected by each other
Why are local variables an advantage
Ensures subroutines are self-contained, with no danger of variables being affected by code outside of the subroutine
What are Global variables
Can be accessed across the whole program. All variables used in the main body of a program are automatically declared to be global
What are an adv of global varibles
Useful for running in multiple parts of the program
Why is using global variables not recommended
They can be unintentionally overwritten and edited. global variables aren't deleted until the program terminates so they require more memory than local variables which are deleted once the subroutine has been completed
What is modular programming
E used to split large, complex programs into smaller, self-contained modules
What is an adv of modular programming
Modular design also makes it easier to divide tasks between a team and manage, simplifies the process of testing and maintenance, as each component can be dealt with individually improves the reusability of components, as once a module has been tested, it can be reused
What is the top down approach when it comes to modular programming
Problem is continually broken down into sub-problems, until each can be represented as an individual, self-contained blackbox which performs a certain task
What are procedures and fuctions
Named blocks of code that perform a specific task
What is the difference between a procedure and a function
Procedures do not have to return a value, functions must always return a value. Procedures can return multiple values whereas a function must return one, single value functions commonly make use of local variables
What is passed by value?
Treated as a local variable; a copy of the value is passed to the subroutine and discarded at the end therefore its value outside of the subroutine will not be affected
What is passed by reference?
Address of the parameter is given to the subroutine, so the value of the parameter will be updated at the given address
What is an IDE?
A program which provides a set of tools to make it easier for programmers to write, develop and debug code
Give me the features of an ide
Stepping Variable watch Breakpoint Source code editor Debugging tools
What is stepping (IDE)
Monitor the effect of each individual line of code by executing a single line at a time
What is variable watch (IDE)
Used to pinpoint errors, this is a useful feature to observe how the contents of a variable change in real-time through the execution of a program
What is breakpoint?
Set a point in the program at which the program will stop based on a condition or set to occur at a specific line - This can help to pinpoint where an error is occurring
Source code editor
Make the coding process easier by providing features such as autocompletion of words, indentation, syntax highlighting and automatic bracket completion
Debugging tools
Provide run-time detection of errors
What makes a task solvable via computational methods
Problem that can be solved using an algorithm a finite, realistic amount of time involves inputs outputs and calculations
Problem recognition
Stakeholders​ state what they require from the finished product and this information is used to​ clearly define the problem​ and the ​system requirements​.
Problem decomposition
When a problem is broken down until a self contained sub routine
Why is problem decompositiion an adv
Reduces the complexity of a problem by splitting it up​ into smaller sections which are more easy to understand programmers may find that certain sections of the program can be implemented using ​pre-coded modules​ or ​libraries​ which saves time which would otherwise have been spent on coding and testing
Give me more adv of problem decomposition
​easier to manage these can be ​individually designed, developed and tested​ before being combined to produce a working piece of software at the end allows project to be produced in parallel easier to identify, locate and mitigate errors​
Divide and conquer
Strategy can be broken down into three parts: ​divide, conquer and merge
Divide
Involves​ halving the size of the problem with every iteration​
Conquer
Each individual subproblem is solved recursively
Merge
Solutions to the subproblems are then recombined ​to form the final solution to the problem
What is adv of divide and conquer
Simplifies very complex problems time complexity of algorithms that use divide and conquer is of the order O(logn)
Disadvantage of divide and conquer
As divide and conquer makes use of recursion, it faces the same problems as recursion does such as stack overflow and large problems are difficult to trace
Abstraction by generalisation
Group together different sections of the problem with ​similar underlying functionality​ allows for segments to be coded together and ​reused​, so ​saves time​.
Data mining
Used to identify patterns or outliers in​ large sets of data​, termed big data​.Data mining is used in software designed to ​spot trends or identify correlations​ between data which are​ not immediately obvious.
Why is it useful
Can be used to make ​predictions about the future based on previous trends​. This makes data mining a useful tool in ​assisting business and marketing decisions​. used to reveal insights about people’s shopping habits and preferences based on their personal information. These insights can be used to inform marketing techniques.
Why must be careful for data mining
It is crucial that it is dealt with in accordance with the present legislation regarding data protection as it often deals with handling of personal data
Heuristics
​non-optimal, ‘rule-of-thumb’ approach to problem-solving​ which are used to find an ​approximate solution​ to a problem when the ​standard solution is unreasonably time-consuming or resource-intensive​ to find. solution found through using heuristics is ​not perfectly accurate or complete​ estimated solution for intractable problems​ used in machine learning
Performance modelling
Eliminates the need for true performance testing by providing mathematical methods​ to ​test a variety of loads on different operating systems​. provides a ​cheaper​, ​less time-consuming​ or ​safer ​method of testing applications. t​.
What is performance operating useful for and why
Safety-critical computer systems, such as those used on an airplane, it is not safe to do a real trial run before the system can be implemented. results can help companies judge the capabilities of a system​, how it will cope in different environments and assess whether it is safe to implement
Pipelining
Modules are divided into individual tasks, with ​different tasks being developed in parallel​. Traditionally, the ​output of one process in pipelining becomes the input of another​,
Visualisation
Data can be​ presented in a way that is easier for us to understand makes it possible to ​identify trends that were not otherwise obvious​, particularly amongst statistical data
Why is visualisation an adv
Data may be represented as ​graphs, trees, charts and tables​. Visualisation is another technique that is used by businesses to pick up on patterns which can maximise decisions