top of page

Search CSNewbs

290 results found with an empty search

  • 5.1 - Data Structures - Eduqas GCSE (2020 Spec) | CSNewbs

    Learn about different data structures such as arrays, lists and records. Also, the difference between static and dynamic data structures and how to design files. Based on the 2020 Eduqas (WJEC) GCSE specification. 5.1: Data Structures & File Design Exam Board: Eduqas / WJEC Specification: 2020 + What is a Data Structure? A data structure is a way of efficiently organising data . There are two general forms of data structures: Static Data Structures The size of a static data structure cannot change e.g. if a data structure has 20 elements, no additional elements can be added or removed. The values of the data elements can be changed, but memory size is fixed when allocated at compile time. Because a static data structure holds a certain number of data elements they are easier to program because the size of the structure and the number of elements never change. An array is an example of a static data structure. Examples: A static data structure could be an array of teams in the Premier League. The data elements will change each year when teams are relegated and promoted but there will always be 20 teams. Dynamic Data Structures The size of a dynamic data structure can change as the program is being run , it is possible to add or remove data elements. Dynamic data structures make the most efficient use of memory but are more difficult to program , as you have to check the size of the data structure and the location of the data items each time you use the data. A list is an example of a dynamic data structure. A dynamic data structure could be a list of all teams in the Premier League that won their last match. Data elements (teams) will be added or removed across the season. Types of Data Structures List A list is a dynamic data structure that has the data elements stored in the order they were originally added to memory . Every data structure starts at 0, not 1 . Lists store data elements in the order they were added, so the first doctor is 0 and the most recent doctor is 12. An example list of the main Doctor Who actors Array An array is a static data structure that can hold a fixed number of data elements . Each data element must be of the same data type i.e. real, integer, string. The elements in an array are identified by a number that indicates their position in the array. This number is known as the index. The first element in an array always has an index of 0 . You should know how to write pseudo code that manipulates arrays to traverse, add, remove and search data. The following steps uses Python as an example. Traversing an Array To traverse (' move through ') an array a for loop can be used to display each data element in order. 'Inserting' a value In an array the size is fixed so you cannot insert new values, but you can change the value of elements that already exist. Overwriting the fourth element (Daphne) with a new value (Laura) will change it from Daphne to Laura. Example code for traversing: Example code for inserting: Output: Output: 'Deleting' a value In an array the size is fixed so you cannot delete values, but you can overwrite them as blank . Overwriting the second element (Shaggy) with a blank space makes it appear deleted. Example code for deleting: Output: Searching an Array For large arrays a for loop is needed to search through each element for a specific value . This example checks each name to see if it is equal to Velma. Example code for searching: Output: Two-Dimensional Array Often the data we want to process comes in the form of a table . The data in a two dimensional array must still all be of the same data type , but can have multiple rows and columns . The two-dimensional array to the right shows the characters from Scooby Doo along with their associated colour and their species. Each value in the array is represented by an index still, but now the index has two values . For example [3] [0] is 'Daphne'. We measure row first , then column . Searching a two-dimensional array: To print a specific data element you can just use the index number like Daphne above. To search for a specific value you will need two for loops, one for the row and another for the values of each row. The example to the right is looking for the value of 'Velma' and when it is round it prints the associated data from the whole row. Example code for printing: Output: Example code for searching: Output: Records Unlike arrays, records can store data of different data types . Each record is made up of information about one person or thing. Each piece of information in the record is called a field (each row name). Records should have a key field - this is unique data that identifies each record . For example Student ID is a good key field for a record on students as no two students can have the same Student ID. Data files are made up of records with the same structure. It would be most efficient for the fields in a record to be stored next to each other so that the data can be read into the record data structure in memory for processing by the CPU. In an exam you may be asked to state and design a data structure for a given scenario. If the data structure can hold values of the same data type you should draw an array , usually a 2D array for multiple rows and columns. Remember that a record is required to store values of different data types . Example questions: "A video gamer has recorded their three lap times in four Mario Kart courses." " State and design the most suitable data structure for this data." A two-dimensional array is most suitable because only one data type ( real ) is stored. "A vet surgery stores data on all dogs and cats including the animal's name, age (in years), weight (in kg) and whether or not it has been vaccinated." " State and design the most suitable data structure for this data for four animals ." A record is most suitable because the data structure requires different data types . Q uesto's Q uestions 5.1 - Data Structures: 1. Give two differences between static and dynamic data structures . [ 4 ] 2. Describe the differences between a list , array and record . [ 3 ] 3. A one-dimensional array looks like this: TigerBreeds("Sumatran","Indian","Malayan,"Amur") Write the code to: a. Print the element with the index of 3. [ 2 ] b. Change Indian to South China. [ 2 ] c. Remove the Amur element. [ 2 ] d. Search through the array for 'Malayan'. [ 2 ] 4. State and design the most suitable data structure for these scenarios: a. For each book in a bookshop, the staff need to record the title, author, number of pages and whether or not it is a signed copy. Include data for three books. [ 3 ] b. Four dieters are recording how many kilograms they have lost each month for 5 months. [ 4 ] 5. Design a file that stores the first initial, surname, age and hair colour of each member of a family. [ 8 ] Designing Data Structures Data is stored in files when it needs to be kept after the program has stopped running . To learn how to write code for file handling (e.g. opening, writing to, reading from and closing files) in Python click here . Designing a file requires more than just the field name (e.g. Name) and data values (e.g. Rebecca). The data type (e.g. string) and any validation checks (e.g. format check) should also be considered. Below is an example file design for a bakery. Designing Files 4.8 Compression Theory Topics 6.1 - Operating Systems

  • Python | 8c - Dictionaries | CSNewbs

    Learn how to create and use dictionaries in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 8C - Dictionaries Creating a Dictionary Dictionaries are used in Python to link items of data together . The example on this page uses a footballer dictionary which links a player with a team they played for. To define a dictionary, use curly brackets { } and separate linked data with a colon . A dictionary can be written on one line but the method below makes it easier to read: Printing Data from a Dictionary The first part of the linked data in a dictionary is called the key (e.g. each footballer in my example above). The second part of the linked data in a dictionary is called the value (e.g. each team). Example: key : value "Harry Kane" : "Tottenham Hotspur" A for loop can be used to cycle through each set of keys and values in the dictionary: Practice Task 1 a) Create a dictionary of your teachers and the subject they teach. b) Print their name and the subject they teach on each line. Example solution: Adding and Removing Data from a Dictionary Data can be added to a dictionary by stating the new key and value . You must use square brackets - [ ] The new data will be added to the end of the dictionary. You can print the whole dictionary to see any changes - e.g. print(playerdictionary) Data can be removed from a dictionary by stating the new key to remove in a pop command. You can print the whole dictionary to see any changes - e.g. print(playerdictionary) The whole dictionary can be cleared (reset to blank) using the clear command. Practice Task 2 a) Ask the user to enter a new teacher and their subject. b) Ask the user to remove a teacher. c) Print the list of teachers and check the new teacher has been added and the other one removed. Example solution: Searching Through a Dictionary An if statement can be used to check if a specific key is in a dictionary. If the key is in the dictionary then a message can be displayed using the key and the value . Otherwise, an else statement can output an appropriate response. To search for a value in a dictionary a for loop should be used to cycle through each key . If the value of each key matches the value that is being searched for then it will be printed. Practice Task 3 a) Create a search that allows a user to enter a teacher's name and prints the subject that they teach. b) Include an else statement to print a response if a teacher is not in the dictionary. Example solution: Changing Data & Copying a Dictionary The way to change values is similar to adding new data. The first input below is to determine the key and the second input determines the new value to be changed to. The copy command is used to make a duplicate of a dictionary . Practice Task 4 a) Create a copy of your teacher dictionary. b) Allow the user to enter a teacher and a new subject that they teach. c) Print the copy of the dictionary with the new values. Example solution: Using a Dictionary to Make a Game The code below is used to make a puzzle game where the user has to type in a footballer and the team they played for. I have added comments to explain the different parts of the code. A separate list has been created at the start to store the names of keys (players) that been correctly guessed . A while loop is used to constantly ask the user for players and teams. When they have guessed all 10 players (and the correct list reaches 10 ) the loop breaks and the game end. Instead of a further practice task here, Task 6 of the Section 8 Practice tasks page challenges you to make a similar game using a dictionary. ⬅ 8b - 2D Lists Section 8 Practice Tasks ➡

  • 1.2 - Types of Processor | OCR A-Level | CSNewbs

    Learn about the differences between CISC and RISC processors, GPUs and multicore and parallel systems. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 1.2 - Types of Processor Specification: Computer Science H446 Watch on YouTube : CISC and RISC GPUs Multicore & parallel systems Instruction Sets An instruction set is the complete list of machine code instructions a CPU is designed to execute as part of the FDE cycle . CISC (Complex Instruction Set Computer ) CPUs have a large set of complex instructions , so tasks can be achieved in fewer lines of code , but some instructions take multiple clock cycles . RISC (Reduced Instruction Set Computer ) CPUs use a smaller set of simple instructions , each designed to execute in a single clock cycle , making execution faster but sometimes requiring more instructions overall . GPUs A GPU (Graphics Processing Unit ) is a co-processor with thousands of smaller cores designed for parallel processing . This is in contrast to the CPU , which has fewer but more powerful cores . GPUs are used for rendering images , animations and video for fast , realistic graphics in games and multimedia . Because of their ability to handle many calculations at once , GPUs are widely used for non-graphical purposes too, such as machine learning , scientific simulations , data analysis and cryptocurrency mining . Multicore & Parallel Systems A multicore processor has multiple independent cores on a single CPU chip . Each core can carry out its own FDE cycle , so tasks can be split up , enabling multitasking and faster processing . However, only software designed to use multiple cores will benefit from this increased performance . A parallel system uses multiple processors (or cores ) working together on the same problem at the same time . This may involve multiple cores within one CPU or multiple CPUs in a single machine . Parallel processing greatly improves performance for tasks that can be divided into smaller sub-tasks , such as simulations and graphics rendering . However, some problems cannot be parallelised because they must be executed sequentially . Q uesto's K ey T erms Instruction Sets: instruction set, complex instruction set computer (CISC) , reduced instruction set computer (RISC) GPUs: graphics processing unit (GPU) Multicore Systems: multicore systems, parallel processing D id Y ou K now? Sony coined the term ' GPU ' for the PlayStation (1994), making it one of the first home consoles with a dedicated graphics processor . The term was later popularised further by NVIDIA in 1999 with the GeForce 256 . 1.1 - The Processor A-Level Topics 1.3 - Input, Output & Storage

  • Python | 5c - Date & Time | CSNewbs

    Learn how to use time commands to display the current date and time in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 5c - Time & Date ctime() The easiest way to output the current time and date is to use the ctime() command. Import the ctime command from the time library before you use and print it: from time import ctime print ( "Current time:" , ctime()) = Current time: Wed Sep 13 16:07:20 2023 This will print the time and date, but it looks rather unprofessional, and the exact format depends on the type of system that you are currently running so it may vary for different users. Date / Time Task 1 ( Dentist Surgery) Print a greeting for a dentist surgery with the current date and time. Example solution: Welcome to Greenvale Dentist Surgery, it is currently: Wed Sep 13 16:16:24 2023 strftime() A better alternative to the ctime() command is to use strftime() which stands for str ing f rom time as you can select specific parts of the date and time to display. This command requires a directive to be written with a percentage symbol as a string in the brackets . For example, the current hour (%H ), minute (%M ) and second (%S ) can be printed between colons to show the time . from time import strftime print ( "The current time is" , strftime( "%H:%M:%S" )) = The current time is 13:18:57 There are many different directives that you can use to display exactly what you are looking for, such as: from time import strftime day = strftime( "%A" ) print ( "The current day is" , day) month = strftime( "%B" ) print ( "The current month is" , month) year = strftime( "%Y" ) print ( "The current year is" , year) = The current day is Thursday The current month is September The current year is 2023 The following directives can be used with strftime(). Don't forget that directives must be typed within speech marks . Date - Weekday: %a – Current day of the week abbreviated (e.g. Sun, Mon) %A – Current day of the week in full (e.g. Sunday, Monday) %w – Current day of the week in chronological order (0 is Sunday and 6 is Saturday) %W – Current week number (e.g. 01, 26, 52) Month: %d – Current day of the month (e.g. 01, 11, 31) %m – Current month as a number (e.g. 01, 06, 12) %b – Current month abbreviated (e.g. Jan, Jun, Dec) %B – Current month in full (e.g. January, December) Year: %y – Current year abbreviated (e.g. 16, 17) %Y – Current year in full (e.g. 2016, 2017) %j – Current day of the year (e.g. 001, 150, 365) Time - Hour: %H – Current hour in 24-hour clock (e.g. 00, 12, 20) %I – Current hour in 12-hour clock (e.g. 01, 08, 12) %p – Whether it is currently AM or PM Minute: %M – Current minute (e.g. 00, 30, 59) Second: %S – Current second (e.g. 00, 30, 59) More Directives - %z – Current time difference from UTC (Co-ordinated Universal Time) (e.g. +0000, -0500, +1100) %Z – Current time zone (e.g. GMT Standard Time, EST, CST) Just looking for a quick date or time display and not bothered about customisation? Try these: %c – Current date and time in full (e.g. Tue Feb 19 13:35:20 2016) %x – Current date (e.g. 19/02/16) %X – Current time (13:36:20) Date / Time Task 2 ( Calendar App ) Create a program that asks the user if they want to see the current date , the current time or 'other '. Use the strfftime directives above to show what the user asks for. It's up to you which directives you use for the 'other' option , such as displaying the current day of the year (%j ) or current week of the year (%W ). Example solutions: Type TIME for the current time, DATE for the current date or OTHER: TIME The current time is 13:46PM Type TIME for the current time, DATE for the current date or OTHER: DATE The date today is Thursday 14 September 2023 Type TIME for the current time, DATE for the current date or OTHER: OTHER Did you know today is day number 257 of 2023? Between Dates You may want to work out the number of days between two dates . This can be done by importing the date command from the timedate library. Below is a simple example: from datetime import date date1 = date(2021,9,15) date2 = date(2022,1,20) difference = date2 - date1 print ( "There are" , difference.days , "days between" , date1 , "and" , date2) Make sure the date is entered in the format of year, month, day . The .days code removes the difference in hours and seconds to just display the number of days difference. There are 127 days between 2021-09-15 and 2022-01-20 Today's Date The program here uses strftime to check the current year, month and day and organise it into the date format . This can then be used together with code similar to the program above to check the number of days between one specific date and the current date. from datetime import date from time import strftime thisyear = int (strftime( "%Y" )) thismonth = int (strftime( "%m" )) thisday = int (strftime( "%d" )) todaysdate = date(thisyear,thismonth,thisday) print ( "The date today is" , todaysdate ) The date today is 2023-09-14 Input a Date The program here shows how to input a date into a format that can then be used by Python to work out the difference between two dates . from datetime import date year = int ( input ( "Enter a year: " ) month = int ( input ( "Enter a month: " ) day = int ( input ( "Enter a day: " ) chosendate = date(year,month,day) print ( "The chosen date is" , chosendate ) Enter a year: 1964 Enter a month: 5 Enter a day: 13 The chosen date is 1964-05-13 Date / Time Task 3 ( Days Alive) Create a program that works out how long the user has been alive for . Use the examples above to automatically make today's date and then allow the user to input their year , month and day of birth. Get Python to work out the difference between today and their date of birth. Example solutions: Enter a year: 1998 Enter a month: 3 Enter a day: 29 You have been alive for 9300 days! Enter a year: 2007 Enter a month: 12 Enter a day: 25 You have been alive for 5742 days! ⬅ 5b - Sleep 5d - Colorama ➡

  • 4.1 - Gathering Client Requirements | F160 | Cambridge Advanced National in Computing AAQ

    Learn about the methods of gathering client requirements such as document analysis, focus groups, interviews, meetings, observation, problem reports, questionnaires, shadowing and suggestion analysis. Based on Unit F160 (Fundamentals of Application Development) for the OCR Cambridge Advanced National in Computing (H029 / H129) (AAQ - Alternative Academic Qualification). Qualification: Cambridge Advanced National in Computing (AAQ) Unit: F160: Fundamentals of Application Development Certificate: Computing: Application Development (H029 / H129) 4.1 - Methods of Gathering Client Requirements Watch on YouTube : Gathering Client Requirements For each of the nine methods of gathering client requirements , you need to know : Its purpose and when it would be used . The type of information and data that can be collected using it. The advantages and disadvantages of using it. How client requirements determine if it would be used. Gathering Client Requirements Methods of Gathering Client Requirements T here are nine methods of gathering client requirements you need to know : Reviewing existing documents (e.g. manuals and reports ) to understand the current system and requirements . Gathering a small group of users or stakeholders to discuss needs , expectations and ideas . Asking stakeholders structured or open-ended questions to collect detailed requirements . Bringing together clients and developers to share information , clarify requirements , and make decisions . Watching users perform tasks to see how they interact with the current system . Using logged issues or complaints from an existing system to identify new requirements . Distributing structured forms with questions to gather requirements from a wide group quickly . Following a user during their normal tasks to gain deeper insights into workflows and needs . Reviewing client or user-submitted ideas and feedback to shape requirements . Q uesto's Q uestions 4.1 - Methods of Gathering Client Requirements: 1. Explain what document analysis , problem reports , shadowing and suggestion analysis are. [8 ] 2. Give two advantages and two disadvantages of two other methods not mentioned in Q1 . [8 ] 3. The video game company that makes the ' Age of the Dragon ' series faced a letdown in their previous release , ' The Guard of the Veil '. They need to ensure that their next game sells a lot of copies and meets user requirements . Justify which methods they should use to gather client requirements and why . [ 5 ] The original 2010 movie version of ' Scott Pilgrim vs. the World ' had Scott end up with Knives Chau instead of Ramona Flowers , but focus groups disliked that he spent the whole movie fighting for her for nothing , so it was changed . D id Y ou K now? 3.2 - Project Planning Tools Topic List 4.2 - Client Requirement Specifications

  • 3.5 - Data Analysis Tools | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about different types of tools used in the data analysis process including data visualisation, data cleaning and GIS. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.5 - Data Analysis Tools Exam Board: OCR Specification: 2016 - Unit 2 The fifth stage of data analysis is to select the most appropriate tools to analyse the collected data. The method(s) selected will depend on the type of project and the established objectives. Data Tables Databases are often split into tables to be easier to update , view and manipulate . For example, a supermarket database may include a table of product information, another table of suppliers and another for actual stock levels. Separating the data into tables allows for simpler editing and also allows for the display of basic patterns . For example, looking at a table of stock levels in a supermarket can quickly show which products need to be ordered in as they are close to selling out. Data tables allow for the most simple form of pattern discovery and are a good method of speedy, short-term data analysis . However they present data in its current format and cannot show change or trends over time - a product may have a high stock level because it is popular and has just been ordered in, rather than because no-one is buying it. A simplified data table for a supermarket. Visualisation of Data Visualising data (by producing a chart or graph of collected data for example) makes it easier for an audience to see trends and patterns . Visualising data, like the bar chart to the right of the supermarket table from the tool above, makes it easier to understand and quicker to interpret . In this example, It is easier to see using the chart that steak pies are low in stock and should be re-ordered soon. A bar chart of the supermarket data table. Trend & Pattern Identification This tool links heavily to visualisation of data in allowing trends and patterns to be viewed as a visual format - such as producing a line graph of last year’s stock sales. Statistical analysis allows data analysts to examine numerical data and, if done correctly, can highlight relationships between different data elements - such as the price of a product and how many have been sold. Discovering links between variables is known as regression analysis . Data Cleaning Data cleaning ensures that any stored data is up-to-date and accurate , in accordance with the Data Protection Act ( 2018 ). Forms of data cleaning include removing customers who have not made a purchase in a certain amount of time (e.g. two years) and periodically checking that user addresses are up to date. Data cleaning would reduce the size of any data table by removing redundant, incorrect or unnecessary data . This would make it easier to work with the data table and would improve the data quality by removing erroneous and irrelevant data. GIS / Location Mapping Geographic Information Systems (GIS ) can be used to add geographic data to any analysis. For example, an organisation can track the geographical location of items or staff e.g. tracking the movement of shipping containers around the world to see production flow. This also works for courier services to see delays and delivery times in real-time . Q uesto's Q uestions 3.5 - Data Analysis Tools: 1. Describe how Fresh Food UK, from the question in 3.4 , could use each of the data analysis tools when trying to determine and present the most profitable stores across the country in the past year . a. Data Tables [3 ] b. Visualisation of Data [3 ] c. Trend & Pattern Identification [3 ] d. Data Cleaning [3 ] e. GIS / Location Mapping [3 ] 3.4 - Stages of Data Analysis Topic List 3.6 - Information Systems

  • HTML Guide | CSNewbs

    Learn how to create your own web page in HTML. The guide features 10 easy to follow steps from setting up the basic tags to adding images, videos and more pages. When you see the checklist icon, complete the task in order to make your own HTML web page. HTML Guide 1. Setting up the web page 2. Essential tags 3. Text tags 4. Hyperlinks 5. Images 6. Organisation tags 7. Head tags 8. Videos 9. Colours & Fonts 10. More pages Watch on YouTube: These steps will show you how to make a HTML fanpage so get thinking of an appropriate topic - maybe your favourite book, movie or sports team? Download Notepad++ at home

  • Eduqas GCSE Topic List | CSNewbs

    The list of topics in the 2020 Eduqas / WJEC GCSE Computer Science specification. Eduqas / WJEC GCSE Computer Science These pages are based on the Eduqas GCSE Computer Science 2020 specification . The content can also be used by students studying WJEC GCSE Computer Science in Wales . This website is in no way affiliated with Eduqas / WJEC . 1. Hardware 1.1 - The Central Processing Unit (CPU) 1.2 - The FDE Cycle 1.3 - Primary Storage 1.4 - Secondary Storage 1.5 - Performance 1.6 - Additional Hardware 2. Logical Operators & Boolean 2.1 - Logical Operators 2.2 - Boolean Algebra 3. Networks & Security 3.1 - Network Characteristics 3.2 - Data Packets & Switching 3.3 - Network Topology 3.4 - Network Hardware & Routing 3.5 - Protocols 3.6 - 7-Layer OSI Model 3.7 - The Internet 3.8 - Cyber Threats 3.9 - Protection Against Threats 4. Data 4.1 - Number Systems 4.2 - Signed Binary 4.3 - Binary Calculations 4.4 - Arithmetic Shift 4.5 - Character Sets & Data Types 4.6 - Graphical Representation 4.7 - Sound Representation 4.8 - Compression 5. Data Organisation 5.1 - Data Structures & File Design 6. Operating Systems 6.1 - Operating Systems 6.2 - Utility Software 7. Principles of Programming 7.1 - Language Levels 8. Algorithms & Constructs 8.1 - Programming Principles 8.2 - Understanding Algorithms 8.3 - Writing Algorithms 8.4 - Sorting & Searching Algorithms 8.5 - Validation & Verification 9. Software Development 9.1 - IDE Tools 10. Program Construction 10.1 - Translators 10.2 - Stages of Compilation 10.3 - Programming Errors 11. Technological Issues 11.1 - Impacts of Technology 11.2 - Legislation Component 2 (Programming Exam) Python Removed content from the 2016 Specification

  • Python | 7b - Functions | CSNewbs

    Learn how to create and use functions in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 7b - Functions What is a Function? A function is a subroutine that takes one or more values from the main program and returns a value back. For example, transferring over a sphere’s radius from the main program for the function to calculate a surface area and then return that value to the main program. The two key differences between procedures and functions are: A function uses parameters to transfer data from the main program into the function. A function returns a value to the main program. Writing Functions A function is written the same way as a procedure but it uses parameters . In the example below the parameters are num1 and num2 which are sent from the main program to be used in the function . The return command is used to send a value back to the main program . Below is another example of a function that takes the radius of a sphere and works out the area in a separate function . The area is returned to the main program and printed. Subroutines can be reused and called with different parameters . The program below repeatedly takes an integer input and adds it to a total in a function that is then returned and printed. Practice Task Create a program similar to the sphere example above, this time to work out the volume of a cylinder. In the main program ask the user to enter the cylinder's radius and then its height. The actual calculation should be done in a function and returned to the main program. The calculation for a cylinder's volume is: pi x (radius x radius) x height Extension: Use the round command from section 9b to round the number to 2 decimal places. Example solution: Using Subroutines as a Menu Subroutines are often used to split programs up and give users a selection of options . Subroutines are used for this purpose because they are separate , making it easier to code and manage a program . The example below for a simplified online banking system uses separate subroutines accessible within a while true loop . Depending on the option chosen by the user, the appropriate subroutine will be called . Instead of a further practice task here, Task 4 of the Section 7 Practice tasks page challenges you to make a similar program using multiple subroutines. ⬅ 7a - Proced ures Section 7 Practice Tasks ➡

  • 11.2 - Legislation - Eduqas GCSE (2020 Spec) | CSNewbs

    Learn about key computing laws including the Data Protection Act (2018) (GDPR), Computer Misuse Act (1990), Copyright Designs and Patents Act (1988), Creative Commons and the Regulation of Investigatory Powers Act. Based on the 2020 Eduqas (WJEC) GCSE specification. 11.2: Legislation Exam Board: Eduqas / WJEC Specification: 2020 + Data Protection Act (2018) In 2018 the European Union introduced GDPR (General Data Protection Regulation ) to protect the privacy of data for people in the EU. The UK matched this by updating the Data Protection Act introduced in 1998 to become the Data Protection Act (2018) . This act protects the data of individuals that is stored on computers and processed by organisations. How the Data Protection Act works: Each person who has their data stored is known as a data subject . An employee within an organisation must be appointed as a data controller and it is they who are responsible for registering with the Information Commissioner . The Information Commissioner is the person in the UK who is responsible for managing several laws , most significantly the Data Protection Act. When registering with the Information Commissioner, the organisation's data controller must be clear on exactly: What information they are collecting, Why it is being collected, What the data will be used for . The six principles of the Data Protection Act state that data must be: 1. Collected lawfully and processed fairly. 2. Only used for the reasons specified. 3. Data must be relevant and not excessive. 4. Data must be accurate and up-to-date. 5. Data must not be stored for longer than necessary, 6. Data must be stored and processed securely. Computer Misuse Act (1990) This act was introduced as computers became cheaper and more common at home and work . The act attempts to stop and punish those who use computers inappropriately . Breaking any of the three principles could result in fines and a jail sentence but only if it can be proved it was done on purpose and not by accident. The Computer Misuse Act (1990 ) includes three main principles : 1. No unauthorised access to data. Example: Hacking a computer system. 2. No unauthorised access to data that could be used for further illegal activities. Example: Accessing personal data to use as blackmail or identity theft. 3. No unauthorised modification of data. Example: Spreading a virus to change data. Freedom of Information Act (2000) This act allows people to request public authorities to release information . Public authorities include local councils , government departments , universities and hospitals . A freedom of information request must be formally submitted in a letter or email and a reply from the organisation is required within twenty days of receiving the request. A simple freedom of information request might be the average response times of the local ambulance service in the past year. Certain requests will not be accepted , such as if processing the request would be too expensive or if it involves sensitive information protected by the Data Protection Act (2018 ). Regulation of Investigatory Powers Act (2000) This act (often shortened to RIPA ) was introduced in response to the increase in both criminal and terrorist activities on the internet, it is used to monitor and access online communication of suspected criminals . If criminal activity is suspected by an individual then this act grants the following powers : Internet Service Providers (ISPs) must provide access to the suspect's online communication , such as emails or social media. Locked or encrypted data may be accessed such as online messages. ISPs could install surveillance equipment or software to track the suspect's online activity . Surveillance may take place to physically track the suspect , e.g. in private vans or by undercover officers in public spaces. Access must be granted to personal information . This act became controversial as its use widened and local councils were using it for minor offences - a Scottish council used the act to monitor dog barking and a council in Cumbria gathered video evidence about who was feeding pigeons . The act has since been changed to only allow the surveillance of crime suspects . Copyright, Designs & Patents Act (1988) This act makes it a criminal offence to copy work that is not your own without the permission of the creator or the copyright holder. This can refer to text, images, music, videos or software. Owning the copyright of an image might not prevent others from copying and using it but this act means that the owner can bring legal proceedings in court to those who have stolen their work . However, it is difficult to trace who has stolen work once it has been uploaded to the internet and copies can easily spread, especially television shows and movies. This act specifically prohibits the following actions: Making copies of copyrighted material to sell to others . Importing and downloading illegally copied material (except for personal use). Distributing enough copyrighted material to have a noticeable effect on the copyright holder . Possessing equipment used to copy copyrighted material , as part of a business. Creative Commons (CC) Licensing A CC licence allows people to share their copyrighted work while still retaining rights to the material . There are different types of licence that specify exactly what can and can't be done to the copyrighted material. For example: An attribution licence allows copyrighted material to be edited and distributed but the original owner must be credited . A non-commercial licence allows copyrighted material to be shared and edited but no profit must be gained through its distribution. CC licences are not automatically given , they must be granted by the copyright owner . To ensure you are not illegally using copyrighted work change the Tools and Licence setting when using Google Images to filter work with CC licenses applied . Telecommunications Regulation Act (2000) This act allows organisations to lawfully monitor communications made online and on the phone by employees while at work . All users of the network should be aware that their communication is being monitored when they are using emails , the internet or telephone calls . The act was introduced to ensure that employees are using the computer systems for the correct purpose , to prevent illegal activity and to monitor staff performance . Codes of Conduct One way that organisations try to ensure that staff are held to professional standards and display appropriate behaviour is to create a code of conduct . This is a set of rules or requirements that employees must follow or they may be punished, such as a temporary ban from the network or being fired. There are two types of codes of conduct: Formal codes of conduct are a set of written rules that clearly state expected behaviour , such as what employees can access online at work . Schools may have this too, and you might have to sign a document at the start of the year before you can use the computers. Informal codes of conduct are used by small organisations where there might not be a written set of rules , but newer employees follow the habits and expectations of senior members of staff. This is harder to monitor but provides a more relaxed working environment. Q uesto's Q uestions 11.2 - Legislation: 1a. State the 6 principles of the Data Protection Act (2018) . [ 6 ] 1b. Explain how the Data Protection Act works . In your answer, you should include definitions of a data subject , the data controller and the Data Commissioner . [ 6 ] 2. Describe the 4 principles of the Computer Misuse Act (1990) . [3 ] 3. Describe the purpose of the Freedom of Information Act (1990) and state an example of a freedom request . [ 3 ] 4a. What is the purpose of RIPA (2000) ? [ 2 ] 4b. Describe 3 actions that RIPA (2000) allows the government / police to do . [ 3 ] 5a. What is the purpose of the Copyright, Designs & Patents Act (1988) ? [ 2 ] 5b. Describe 3 actions that CDPA (1988) prohibits . [ 3 ] 6a. What is a Creative Commons ( CC ) licence ? [ 2 ] 6b. Describe 2 types of CC licence . [ 4 ] 7a. What is the purpose of the Telecommunications Regulation Act (2003) ? [ 2 ] 7b. Describe 3 reasons why this act was introduced . [ 3 ] 8a. What is the purpose of a code of conduct ? [ 2 ] 8b. Describe the difference between formal and informal codes of conduct . [ 2 ] 11.1 - Impacts of Technology Theory Topics

  • Python Editor| CSNewbs

    A simple HTML and CSS editor using Code Minrror libraries. Learn how to create simple web pages using HTML. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. Simple HTML & CSS Editor This page is under active development.

  • Python | Section 8 Practice Tasks | CSNewbs

    Test your understanding of data structures such as lists (one-dimensional and two-dimensional) and dictionaries. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python - Section 8 Practice Tasks Task One Write a program with a blank list. Use the .append() command to add your three favourite ice-cream flavours to this list and then print the list. Example solution: Task Two Write a program with a list of any 5 numbers. Print the list. Delete the first and third numbers. Print the list. Example solution: Task Three Write a program with a list of three different animals. Write an input line that lets the user type an animal. Add what the user has written to the list and print the list. Example solution: Task Four Sort your list from task two into order. Then print the list. Example solution: Task Five Copy the text on the right and put it into a list named countries. Count the number of countries in the list. Print the longest country. Use a for loop to work out the length of each country. "Egypt", "Angola", " Eritrea " , "Mozambique" , "Ghana" , "Chad" , "Somalia" , "Namibia" , "Sudan" , "Libya" , "Algeria", "Morocco" , "Cameroon" Example solution: Task Six Create a dictionary (see 8c ) that asks users questions about yourself, such as first name, favourite colour or birthday. Let the user answer each question and display the answer if they get it correct. Use the 'Using a Dictionary to Make a Game ' section of 8c to help you. Example solution: ⬅ 8c - Dictionar ies 9a - String Handling ➡

© CSNewbs 2025

The written, video and visual content of CSNewbs is protected by copyright. © 2025
bottom of page