Define bioinformatics and give an example of the data used in medical research.
Outline one feature of fuzzy logic which makes it suitable for medical diagnosis.
A game for very young children is played on a board, which is represented by a 4 × 4 square. The game requires two players The aim of the game is to be the first player to reach HOME which is the bottom right square. The players take turns to move between squares. Players can move to an adjacent square which, from their current position, is: - vertically down
List the possible squares to which player A is able to move.
For each of the moves that player A could now take, suggest and justify the best move that player B could then take.
Outline one way of representing player A and player B, and their positions, in memory.
Using your structure from part (i), state the current positions of player A and player B, as shown in the diagram in part (b).
Using your answer to part (i), outline how each possible move from the player's current position could be identified.
Suggest how a best move could be selected from the possible moves.
Outline the effect that changing to a much larger board would have on running the game on a computer.
A number of devices in and around the home can be operated by control systems.
A home owner wishes to install automatic lights to illuminate a water fountain in her garden. These lights will automatically turn on at sunset and turn off at sunrise.
Describe two hardware components that would be an essential part of this control system.
Explain the concept of feedback, with respect to computer control systems in general.
The home owner has also installed a control system that waters the flowerbeds in the garden. This system aims to maintain the water content of the flowerbeds between a minimum and a maximum value. However, the system is only activated when the light intensity is below a certain level.
Outline the algorithm involved in controlling the watering system described above.
A company has 600 employees whose names are currently stored using a collection called NAMES
. The names are stored as surname, first name. For example: Smith, Jane, Uysal, Rafael, Ahmed, Ishmael, Jonsonn, Sara, …
The names in the collection are kept in a random order. However, it would be more useful if they were kept in alphabetical order.
The company’s staff list is now organized in the arrays in alphabetical order.
A binary search was used to find a specific name in the array.
Construct a pseudocode algorithm that will store the surnames in one array and first names in another.
Construct a pseudocode algorithm that will sort the surnames into alphabetical order using the bubble sort method. The order of the first names must also be changed so that they keep the same index as their corresponding surname.
Describe the process a binary search would follow to find a record in the surname array.
Outline one benefit of using sub-programmes to implement your algorithms from parts (a) and (b).
For an identified application, explain why a binary search would be preferred to a linear search.
A delivery company uses trains in its operations. It uses an object-oriented program to keep track of its trains and the parcels that it carries. The company has many objects in their program; here are some of them. | Object | Description | | :--- | :--- | | Train | Each Train is made up of RollingStock objects, each of which is either a Wagon or an Engine. | | RollingStock | A RollingStock object can be an Engine (that can pull) or a Wagon (that needs to be pulled). Each RollingStock has a unique ID number and a weight. | | Engine | A variety of RollingStock. Each Engine has a maximum weight that it can pull. | | Wagon | A variety of RollingStock. Each Wagon has a maximum cargo weight. | | Parcel | Each Parcel is tagged with a tracking number, the addresses from where it came (origin) and to where it is going (destination) and its weight. | The code on the following pages implements the Train class used in this program.
Define the function of a constructor.
Outline the advantages of polymorphism, using the RollingStock class as an example.
Construct a unified modelling language (UML) diagram of the Train class.
Construct a method getNumberOfWagons(), part of the Train class, that returns the number of wagons currently coupled to the train.
Construct the removeWagon() method that will remove one wagon from a train and return the removed object. Include appropriate error checking.
Identify two characteristics of a genetic algorithm.
Outline what is meant by the term "elitism".
A company is using a prototyping approach as part of their software development process.
Outline one advantage of prototyping.
Outline one situation in which the use of a prototype is not the best approach.
A self-driving car relies on a series of lasers and cameras that combine with high definition maps to give a three-dimensional (3D) view of the environment. Rules are programmed into the system so that the car drives at an optimum speed, keeps a safe distance from any vehicle in front, uses fuel economically and follows the traffic regulations.
Outline the need for high definition maps held in memory.
Outline how analysing successive 3D images in memory helps the car to drive safely.
Outline the time and memory needs of 3D visualization in this situation.
Discuss the social implications of self-driving cars.
Describe the steps involved in using the bubble sort algorithm to sort an array.