top of page

Search CSNewbs

282 results found with an empty search

  • 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.

  • 2.1 - Logical Operators - Eduqas GCSE (2020 spec) | CSNewbs

    Learn about the four logical operators - NOT, AND, OR and XOR - and truth tables. Based on the 2020 Eduqas (WJEC) GCSE specification. 2.1: Logical Operators & Truth Tables Exam Board: Eduqas / WJEC Specification: 2020 + What is a logical operator? Inside of each computer system are millions of transistors . These are tiny switches that can either be turned on (represented in binary by the number 1 ) or turned off (represented by 0 ). Logical operators are symbols used to represent circuits of transistors within a computer. The four most common operators are: NOT AND OR XOR What is a truth table? A truth table is a visual way of displaying all possible outcomes of a logical operator. The input and output values in a truth table must be a Boolean value - usually 0 or 1 but occasionally True or False. NOT A NOT logical operator will produce an output which is the opposite of the input . NOT is represented by a horizontal line . Boolean Algebra Notation written as NOT A A Truth Table AND An AND logical operator will output 1 only if both inputs are also 1 . AND is represented by a full stop. Boolean Algebra Notation written as A AND B A.B Truth Table OR An OR logical operator will output 1 if either input is 1 . OR is represented by a plus. Boolean Algebra Notation written as A OR B A+B Truth Table XOR An XOR (exclusive OR) logical operator will output 1 if the inputs are different and output 0 if the inputs are the same . XOR is represented by a circled plus. Boolean Algebra Notation written as A XOR B A B Truth Table Multiple Operations Exam questions will ask you complete truth tables that use more than one logical operator . Work out each column in turn from left to right and look carefully at which column you need to use. Simplification You may be asked to use a truth table to simplify an expression . This is actually really easy. Once you've completed the truth table see if any columns match the final expression . A+B and A+(A+B) both result in the same values , therefore: A+(A+B) can be simplified as just A+B. Q uesto's Q uestions 2.1 - Logical Operators: 1. Copy and complete the following truth tables: 1b. Simplify the expression in the second truth table. 2a. A cinema uses a computer system to monitor how many seats have been allocated for upcoming movies. If both the premium seats and the standard seats are sold out then the system will display a message. State the type of logical operator in this example. 2b. For the more popular movies, the cinema's computer system will also display a message if either the premium seats or the standard seats have exclusively been sold out. However, it will not output a message when both have been sold out. State the type of logical operator in this example. 1.6 - Additional Hardware 2.2 - Boolean Algebra Theory Topics

  • 8.3 - Writing Algorithms - Eduqas GCSE (2020 Spec) | CSNewbs

    Learn about how to write algorithms, including pseudocode and the different flowchart symbols. Based on the 2020 Eduqas (WJEC) GCSE specification. 8.3: Writing Algorithms Exam Board: Eduqas / WJEC Specification: 2020 + Pseudocode Reminder Generally, pseudocode can be written in any way that is readable and clearly shows its purpose. However, the Eduqas exam board advises that pseudocode for the programming exam should follow the conventions below : Annotation { Write your comment in curly brackets} Define data type price is integer firstname is string Declare a variable's value set price = 100 set firstname = "Marcella" Input / output output "Please enter your first name" input firstname Selection (must have indentation) if firstname = "Steven" then output "Hello" + firstname elif firstname = "Steve" then output "Please use full name" else output "Who are you?" end if Iteration (while loop) while firstname ! = "Steven" output "Guess my name." input firstname repeat Iteration (for loop) for i in range 10 input item next i Define a subroutine Declare Sub1 [Subroutine content indented] End Sub1 Call a subroutine call Sub1 Writing Algorithms In an exam you may be asked to write an algorithm using pseudocode . Previous exams have offered up to 10 marks for a single algorithm . While this may seem daunting, it means you can still gain marks for an incomplete program , so don't leave it blank no matter what! You must decompose the problem and break it down into more manageable chunks . Here's an example question : “A teacher is marking tests. Write an algorithm that allows the teacher to input the number of tests to mark and then the mark of each test. Output the average mark, highest mark and lowest mark. The tests are marked out of 100.” This specific algorithm can be broken down into pre-code and three main parts : Part 0: Declare and assign variables. Part 1: Input the number of tests to mark. Part 2: Input the mark of each test. Part 3: Output the average, lowest and highest marks. Part 0: Variables Read the question carefully and work out the variables you will need in your algorithm. I have highlighted them in blue below: “A teacher is marking tests. Write an algorithm that allows the teacher to input the number of tests to mark and then the mark of each test . Output the average mark , highest mark and lowest mark . The tests are marked out of 100.” There is an additional variable to track as the average mark can only be worked out if we also know the total marks . number_of_tests is integer test_mark is integer average_mark is real highest_mark is integer lowest_mark is integer total is integer number_of_tests = 0 test_mark = 0 average_mark = 0 highest_mark = -1 lowest_mark = 101 total = 0 Before you write the actual program, you must declare the variables you will need and assign values to them. Firstly, declare the data type of each variable . A whole number is an integer and a decimal number is a real . The average must be a real data type because it is the result of division (total ÷ number_of_tests) and could be a decimal number . When assigning values, most numerical variables will be 0 . Most string values would be " " . However this question is a bit more complicated - the highest mark must start as a really low value and the lowest mark must start as a really high value . This is ensure the first mark entered becomes the highest and lowest mark - this will make sense later. Part 1: Input Number of Tests output “Enter the number of tests to mark: ” input number_of_tests After declaring and assigning your variables the next parts will depend on the algorithm you need to write. This example requires the user to input the number of tests . Part 2: Input Each Mark (Loop) for i = 1 to number_of_tests output “Enter the test mark: ” input test_ mark For part 2 we need the teacher to enter each test’s mark . This is best done as a loop as we do not know how many tests the teacher has to mark until they have typed it in (part 1). All code within the loop must be indented . if test_mark > highest_mark then highest_mark = test_mark endif if test_mark < lowest_mark then lowest_mark = test_mark endif We also need to work out what the highest and lowest marks are. This must be done within the loop as the test marks are entered. The test mark is compared to the current highest and lowest marks . If it is higher than the current highest mark it becomes the new highest mark . If it is lower than the current lowest mark it becomes the new lowest mark . This is why we set the highest_mark and lowest_mark to extreme values at the start - so the first mark entered becomes the new highest and lowest . total = total + test_mark next i The final steps of part 2 are to update the total marks and to close the loop . The total is increased by the test mark that has been entered. The ‘next i ’ command states that the current iteration has ended . The indentation has now stopped. Part 3: Outputs average_mark = total / number_of_tests output “The average mark is:” , average_mark output “The highest mark is:” , highest_mark output “The lowest mark is:” , lowest_mark Before the average can be output, it must be calculated by dividing the total by the number of tests . Then the average , highest and lowest marks can be output . Full Answer number_of_tests is integer test_mark is integer average_mark is real highest_mark is integer lowest_mark is integer total is integer number_of_tests = 0 test_mark = 0 average_mark = 0 highest_mark = -1 lowest_mark = 101 total = 0 output “Enter the number of tests to mark: ” input number_of_tests for i = 1 to number_of_tests output “Enter the test mark: ” input test_ mark if test_mark > highest_mark then highest_mark = test_mark endif if test_mark < lowest_mark then lowest_mark = test_mark endif total = total + test_mark next i average_mark = total / number_of_tests output “The average mark is:” , average_mark output “The highest mark is:” , highest_mark output “The lowest mark is:” , lowest_mark This example is slightly more complicated than some of the recent previous exam questions for writing algorithms. Remember to decompose the problem by identifying the variables you need first. Q uesto's Q uestions 8.3 - Writing Algorithms: 1. A violin player performs a piece of music 8 times . They record a score out of 5 how well they think they performed after each attempt. Write an algorithm using pseudocode that allows the violinist to enter the 8 scores and displays the highest score , lowest score and average score . An example score is 3.7. [10 ] 2. A cyclist wants a program to be made that allows them to enter how many laps of a circuit they have made and the time in seconds for each lap . For example they may enter 3 laps, with times of 20.3 , 23.4 and 19.8 seconds . The program should output the quickest lap time , slowest lap time , total amount of time spent cycling and the average lap time . Create an algorithm using pseudocode for this scenario. [10 ] 8.2 - Understanding Algorithms Theory Topics 8.4 - Sorting & Searching

  • 1.3 - Input, Output & Storage | OCR A-Level | CSNewbs

    Learn about different input and output devices, RAM (random access memory) and ROM (read only memory) and storage devices, including solid state, magnetic and optical types. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 1.3 - Input, Output & Storage Specification: Computer Science H446 Watch on YouTube : Input & output devices Storage devices RAM & ROM Virtual storage This topic covers the internal and external devices required to input data into computer systems , output from them and store data for both temporary and long-term use . Input & Output Devices Input devices , such as a keyboard , mouse , microphone or sensor , allow data to be entered into a computer system for processing . Input can be manual (e.g. typing on a keyboard ) or automatic (e.g. a temperature sensor taking readings ). Output devices , such as monitors , printers and speakers , present the results of processing in a form understandable to humans . Input and output are not limited to text - they may also be visual , audio or tactile (e.g. braille displays or printed paper ). Storage Devices Secondary storage is non-volatile storage used to permanently hold programs and data when not in use by the CPU . There are three types : Magnetic storage uses magnetised patterns on a disk or tape (e.g. hard disk drives or magnetic tape ) to store large amounts of data for a low cost per gigabyte . Solid-state storage uses flash memory with no moving parts (e.g. SSDs and USB drives ), making it very fast , durable and portable . Because there are no moving parts, it is the fastest to access data . Optical storage uses lasers to read and write data as pits and lands on a disc surface (e.g. CDs, DVDs, Blu-ray). Discs are cheap to mass produce , but they are not durable , slow to access and have a low capacity . RAM & ROM Primary storage is low-capacity , internal storage that the CPU can directly access . There are two types: Random Access Memory (RAM ) is volatile storage that temporarily holds both programs and data currently in use , including the operating system . It can be read from and written to , but all contents are lost when the power is turned off . Read Only Memory (ROM ) is non-volatile storage that normally cannot be changed . The contents of ROM are saved when the power is turned off . ROM stores the BIOS and firmware , including the instructions needed to boot the computer when it is switched on . Virtual Storage Virtual storage is the separation of logical storage from physical storage , such as when data is stored remotely and accessed over a network instead of being kept locally . A common example is cloud storage , where data is held on remote servers and accessed via the internet . Benefits are that it is scalable , enables easy collaboration , provides automatic backup and saves local storage space . Drawbacks include that it relies on a stable internet connection , poses security risks and reduces user control over data . Q uesto's K ey T erms Input & Output Devices Secondary Storage: magnetic, solid state, optical, portability, capacity, cost (per GB), access speed, reliability, durability, power consumption Primary Storage: RAM, ROM, volatile, non-volatile Virtual Storage: cloud storage D id Y ou K now? The first commercial hard disk drive , the IBM 305 RAMAC (released in 1956 ), was the size of two fridges , weighed around a tonne , and stored just 5 MB of data - about the same as one .mp3 song . 1.2 - Types of Processor A-Level Topics 2.1 - Systems Software

  • Greenfoot | Common Errors | CSNewbs

    The most common errors made in Grennfoot when making a game and how to fix them, including when missing punctuation is expected or the end of file is reached while parsing. Common Greenfoot Errors Greenfoot Home If the world becomes greyed out and you can't click on anything then an error has occurred. The actor with the error will have red lines on it. When an error occurs, a red squiggly line will appear underneath the problem. Hover your mouse over the line and a helpful message will appear to help you solve the issue. Some of the more common errors (and how to fix them) are listed below: ; expected Every line with a white background must end in a semi colon ( ; ) ) expected You have missed a bracket . Count the number of open brackets and the number of closed brackets on a line and make sure you have an equal number of both. reached end of file while parsing You are missing at least one curly bracket ( } ) at the end of your program . Press enter to move onto a new line at the bottom; you must have a closed curly bracket with a yellow background and another closed curly bracket with a green background . cannot find symbol You have typed a command incorrectly . Greenfoot uses a system where commands have no spaces and each word after the first word is uppercase . Such as isKeyDown not IsKeyDown and not isKeydown. Check your spelling and capitals carefully. Stuck ? If you start typing but can't remember what commands come next, press Ctrl and Space together to show a list of all possible commands that you can use.

  • 3.3 - Networks | OCR A-Level | CSNewbs

    Learn about the characteristics of networks, protocols, standards, the internet, TCP/IP stack, DNS servers, protocol layering, LANs, WANs, packet and circuit switching, network security and threats, firewalls, proxies, encryption, network hardware, client-server and peer to peer networks. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 3.3 - Networks Specification: Computer Science H446 Watch on YouTube : Purpose of networks (LAN & WAN) Protocols & standards Protocol layering & TCP/IP stack Domain Name System (DNS) Packet & circuit switching Network security threats Network security protection Network hardware Client-server & peer-to-peer This topic looks at how data is transferred between computer systems on networks , including the required devices , protocols , network types and potential security threats . Purpose of Networks A network is a group of connected computers that can share data , resources and communicate with each other . The main purpose of a network is to allow users to share files , hardware (like printers ), internet connections and other services efficiently . A Local Area Network (LAN ) covers a small geographical area , such as a single building or school , and is usually owned and managed by one organisation . A Wide Area Network (WAN ) covers a large geographical area , connecting multiple LANs through public or leased communication lines such as the internet . YouTube video uploading soon Protocols & Standards Protocols are sets of rules that define how data is transmitted and received over a network , ensuring that devices can communicate reliably . Standards are agreed specifications that ensure different hardware and software systems are compatible and can work together . They are needed so that networks remain interoperable , secure and efficient , regardless of the devices or manufacturers involved . Common network protocols include: HTTP /HTTPS is used for transferring web pages over the internet . FTP aids the transfer of files across a network . SMTP is used to send emails and IMAP /POP receive emails . TCP/IP is the core suite of protocols that controls how data is packaged , addressed , transmitted and received across networks . YouTube video uploading soon Protocol Layering & TCP/IP Stack Protocol layering is used to divide complex networking tasks into manageable sections , making systems easier to design , understand and troubleshoot . It also allows different technologies or protocols to work together , as each layer only interacts with the ones directly above and below it. The four layers are: Application layer : Provides network services to end users , such as web browsing (HTTP ) or email (SMTP ). Transport layer : Manages data transmission between devices, ensuring it arrives reliably and in the correct order (e.g. TCP , UDP ). Internet layer : Handles addressing and routing of data packets between networks using IP (Internet Protocol ). Link layer : Manages the physical connection between devices and controls how data is transmitted over the network hardware . YouTube video uploading soon Domain Name System (DNS) The Domain Name System ( DNS ) translates human-readable domain names (like www.csnewbs.com ) into IP addresses that computers use to identify each other on a network . When a user enters a web address , the request is sent to a DNS server to find the matching IP address . If the server doesn’t have it stored locally , it queries other DNS servers higher in the hierarchy until it finds the correct address . The IP address is then returned to the user’s device , allowing it to connect to the correct web server to access the requested web page . YouTube video uploading soon Packet & Circuit Switching Packet switching and circuit switching are methods of data transmission , describing how data is sent across a network from one device to another . With packet switching , data is split into small packets , each sent independently across the network and reordered at the destination . This makes efficient use of network resources and allows many users to share the same connections . However, packets can arrive out of order or be delayed , causing variable performance . With circuit switching , a dedicated communication path is established between two devices for the duration of a session , as in traditional phone networks . It provides a reliable and consistent connection with guaranteed bandwidth . The drawback is that it wastes resources , as the dedicated line cannot be used by others . YouTube video uploading soon Network Security Threats There is a range of potential threats associated with network use to be aware of, including the following: Hackers can attempt to gain unauthorised access to computer systems or networks , often to steal , alter or destroy data . Viruses are malicious programs that attach themselves to other files and spread , potentially damaging or deleting data . Denial of Service ( DoS ) attacks overload a network or website with traffic , making it unavailable to legitimate users . Spyware secretly monitors user activity and collects information such as passwords or browsing habits . An SQL injection involves inserting malicious SQL code into a database query to access or alter sensitive data . Phishing uses fraudulent emails or messages to trick users into revealing personal information . Pharming redirects users from legitimate websites to fake ones designed to steal login details or financial information . YouTube video uploading soon Network Security Protection Minimising or preventing network threats is vital and can be achieved with the following measures : Firewalls monitor and control incoming and outgoing network traffic , blocking unauthorised access while allowing safe communication . Secure passwords help protect user accounts by making it difficult for attackers to guess or crack them, especially when they are long and complex . Anti-virus software scans and removes malicious programs , such as viruses and worms , before they can damage files or systems . Anti-spyware software detects and removes spyware , preventing it from secretly collecting personal or sensitive information from a user’s device . YouTube video uploading soon Network Hardware A range of network hardware is required for devices to transfer data to another location , including the following: A modem converts digital data into analogue signals and back , allowing internet access over phone or cable lines . A router directs data between networks and assigns IP addresses to connected devices . Cables provide the physical connections between devices . A Network Interface Card ( NIC ) enables a computer to connect to a network . A Wireless Access Point ( WAP ) allows wireless devices to join a wired network via WiFi . On a local area network ( LAN ), hubs broadcast data to all devices , whereas switches send data only to the intended destination , improving network efficiency . YouTube video uploading soon Client-Server & Peer-to-Peer A client–server network has a central server that provides resources and services to client computers . It allows for centralised management , making it easier to back up data and enforce security policies . However, it relies heavily on the server - if it fails , users may lose access to resources . A peer-to-peer (P2P ) network has no central server ; instead, each computer can act as both a client and a server , sharing resources directly . It is cheap and easy to set up , making it suitable for small networks . The drawback is that it can be less secure and harder to manage , as data and security depend on individual users . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Purpose of networks: local area network (LAN), wide area network (WAN) Protocols: protocol, standard, protocol layers, TCP/IP stack, application layer, transport layer, internet layer, link layer DNS: Domain Name System Switching: packet switching, circuit switching Network security: hackers, viruses, unauthorised access, denial of service, spyware, SQL injection, phishing, pharming, firewalls, secure passwords, anti-virus, anti-spyware Network hardware: modem, router, cable, NIC, Wireless Access Points, hub, switch Client-server & peer-to-peer D id Y ou K now? The first computer worm is considered to be Creeper (in 1971 ), which spread across ARPANET computers and displayed the message: “ I’m the creeper, catch me if you can! ”. A second program called Reaper was then created to delete Creeper , making it arguably the first antivirus . 3.2 - Databases A-Level Topics 3.4 - Web Technologies

  • 6.2 - Risks | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the risks of storing and processing data, including accidental deletion and hacking. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 6.2 - Risks Exam Board: OCR Specification: 2016 - Unit 2 Unauthorised Access to Data As part of the security principle of confidentiality , data should only be viewed by individuals with the authorisation to do so. There are two main reasons why data may be viewed by someone who shouldn't - espionage and poor information management . Espionage is the act of collecting data so that it can be used against an organisation - such as a competitor acquiring information about their rival's product before it is launched publicly. If a company has poor information management strategies in place and data is insecurely stored or too many people have access to sensitive information then it is more likely to be viewed by unauthorised persons. Not only would competitors benefit from unauthorised access, but the Data Protection Act (2018 ) would also be broken if personal data was accessed . Accidental Loss of Data Data loss refers to information being irretrievably lost - not just a copy of the file but the original version too so it cannot be accessed in any format . One reason for accidental data loss is equipment failure or a technical error that leads to data corruption , such as a database crash or hard drive failure. Human error is another reason for accidental data loss as an employee might accidentally delete a file or discard an important paper document without realising. If data is accidentally lost then it could mean that hours of data entry and collection will have been for nothing and might delay dependent processes such as analysis and trend recognition. Also, if it was personal data that was lost then the security principle of availability has been broken and the Data Protection Act ( 2018 ) has been breached . Intentional Destruction of Data This is the act of purposely damaging an organisation by deleting or denying access to data . Examples include viruses that corrupt data so that it can no longer be used and targeted malicious attacks such as DDOS (distributed denial of service) attacks or ransomware . Ransomware encrypts files so that they can only be accessed again when certain criteria have been met, usually the affected group having to pay an extortionate fee . When data is intentionally deleted the organisation in question can respond by replacing the data and any infected computer systems / devices or by ignoring the loss and not making the breach public - but having to re-collect / re-analyse the data. Data destruction will usually lead to a loss of reputation as customers won't want to have their information stored in a system they see as unreliable and insufficiently protected . This loss of reputation could lead to customer loss and a decrease in profits . If the loss is ignored and unreported then it could result in a huge loss of trust when it is eventually revealed - like Yahoo who only confirmed a massive data breach that happened in 2013, two years later in 2016. This breach affected all 3,000,000,000 Yahoo accounts and is the largest data breach in the history of the internet. Intentional Tampering with Data This is when data is changed and no longer accurate . This could occur through fraudulent activity such as hacking to change information displayed on a webpage. An example is if a student or a teacher changed exam answers for a better grade. A business example is if a company tampered with financial data to display larger profits and smaller losses than real figures, to boost investment or please stakeholders. If data tampering is found out then it can result in a loss of reputation as that organisation cannot be trusted to report data accurately . If personal data has been altered then the security principle of integrity will have been broken as the data is no longer accurate . Data security methods and protection systems will also need to be reviewed if data has been tampered with, especially if it was an external individual that accessed and changed the data. Employees that tamper with data will be fired and may face legal action . Q uesto's Q uestions 6.2 - Risks: 1. Describe two effects on an organisation for each of the four identified risks . [8 ] 2. Research at least one real-life example for each risk above and describe the consequences of that example, such as the Yahoo data breach. [12 ] 6.1 - Security Principles Topic List 6.3 - Impacts

  • 6.2 - Communication Skills | F160 | Cambridge Advanced National in Computing AAQ

    Learn about how communication skills contribute to software application development, including verbal, written and questioning techniques. 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) 6.2 - Communication Skills Watch on YouTube : Communication skills Developers working to create applications must be able to effectively communicate with team members , clients and users in a range of different ways . There are five communication skills you need to know: appropriate language , verbal , non-verbal , questioning techniques and written communication . You need to be aware of how each communication skill contributes to software application development and when they would be used appropriately by various job roles and in different stages of application development . Communication Skills Forms of Communication Appropriate language must be used to meet the needs of the audience by tailoring vocabulary , tone and technical detail to suit the client . Non-verbal communication includes body language , facial expressions , gestures , posture , eye contact and appearance . Question techniques have different goals , such as probing questions being used to explore detail and clarifying questions to check understanding . Verbal communication relates to spoken words and includes articulation , tone and pace , but also listening skills . Written communication is through emails , reports , documentation , messages and comments . It requires clarity , accuracy and professionalism . Q uesto's Q uestions 6.2 - Communication Skills: 1. Give examples of when written communication would be used in application development and by which job roles . [3 ] 2. Describe four different types of questions , with an example of each that relates to application development . [4 ] 3. Explain why effective non-verbal communication is important in application development . [ 3 ] Studies estimate that adults ask about 30 questions a day , whereas 4-year-olds ask on average 300 questions a day . D id Y ou K now? 6.1 - Job Roles Topic List

  • Python | CSNewbs

    Learn how to create simple programs in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. Formerly pynewbs.com. Follow the instructions in each section and try the practice tasks on every page . At the end of each section are larger problems to solve. Pyt hon Sections 0. Setting up Python Installing and Using Python 1. Printing and Variables a. Printing b. Comments c. Creating Variables d. Using Variables Section 1 Practice Tasks 2. Inputting Data a. Inputting Text b. Inputting Numbers Section 2 Practice Tasks 7. Subroutines a. Procedures b. Functions Section 7 Practice Tasks 8. Lists a. Using Lists b. 2D Lists c. Dictionaries Section 8 Practice Tasks 9. String Handling a. Basic String Handling b. Number Handling Section 9 Practice Tasks 3. Data Types & Calculations a. Data Types b. Simple Calculations Section 3 Practice Tasks 4. Selection a. If Statements b. Mathematical Operators ( & MOD / DIV) c. Logical Operators Section 4 Practice Tasks 5. Importing from Libraries a. Random b. Sleep c. Date & Time d. Colorama e. More Libraries (math) Section 5 Practice Tasks 6. Loops a. For Loops b. While Loops Section 6 Practice Tasks 10. File Handling a. Open & Write to Files b. Read & Search Files c. Remove & Edit Lines Section 10 Practice Tasks 11. User Interfaces a. Graphical User Interface 12. Authentication a. Error Handling Extended Tasks Extended Task 1 (Pork Pies) Extended Task 2 (Lottery) Extended Task 3 (Blackjack) Extended Task 4 (Vet Surgery) Extended Task 5 (Colour Collection) Extended Task 6 (Guess the Word) Extended Task 7 (Guess the Number)

  • 2.2 - Applications Generation | OCR A-Level | CSNewbs

    Learn about applications, utility software, open source and closed source, translators including interpreters, compilers and assemblers, stages of compilation (lexical analysis, syntax analysis, code generation and optimisation) and linkers, loaders and libraries. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 2.2 - Applications Generation Specification: Computer Science H446 Watch on YouTube : Application software Utilities Open & closed source Translators Stages of compilation This topic explores key types of software and how they support computer systems and users . It explains different kinds of applications , utilities , translators and compares open and closed source software . Another important concept is compilation , with knowledge required of its different stages , as well as linkers , loaders and software libraries . Applications Software Applications software allows users to carry out productive or creative activities such as document editing , data analysis , communication or media creation . Common examples include word processors (e.g. Microsoft Word or Google Docs ), spreadsheets (e.g. Excel or Sheets ), database management systems (e.g. Access ), web browsers (e.g. Chrome or Safari ) and graphics editors (e.g. Photoshop ). Applications can be general-purpose , serving many uses , or special-purpose , created for a specific function like payroll or medical record management . YouTube video uploading soon Utilities Utility software is system software designed to maintain , optimise and manage a computer’s performance , often running in the background to support the operating system . Examples include security tools like an antivirus , backup , compressors , disk management utilities and defragmenters . Defragmentation is the process of reorganising files on a hard drive so that parts of each file are stored together in contiguous blocks , improving access speed . YouTube video uploading soon Open Source & Closed Source Open source software has its source code (the actual code written by its developers ) made publicly available , allowing users to view , modify and share it freely . An open source licence encourages collaboration , transparency and community-driven improvement . However, it may lack official technical support or guaranteed updates . Closed source software has its source code private , restricting modification and redistribution . It is usually sold commercially with paid licences , regular updates and dedicated technical support . Bug fixes and quality assurance are out of the user's control , being managed by the developer . Support may end without warning . YouTube video uploading soon Translators Translators are programs that convert source code written in one programming language into another form that the computer's CPU can understand - typically machine code (binary ). An assembler translates assembly language into machine code that the CPU can execute directly . An interpreter translates and executes high-level code in a line-by-line method, stopping when an error occurs . A compiler translates the entire high-level program into machine code before execution , producing an executable file . YouTube video uploading soon Stages of Compilation Compilation is a complicated process to convert high-level program code into machine code . It consists of four key stages : Lexical analysis breaks the source code into tokens , such as keywords , identifiers and symbols . In this stage unnecessary characters like spaces or comments are removed . Syntax analysis checks that the token sequence follows the grammatical rules of the programming language , building an abstract syntax tree . Code generation converts the syntax tree or intermediate code into machine code the CPU can understand . Code optimisation improves the efficiency of the generated code , for example by reducing redundant instructions or improving execution speed . Compilation also requires additional programs such as a linker and loader and the use of libraries . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Applications: database, word processor, web browser, graphics manipulation, spreadsheet software, presentation software Utilities: defragmentation, system cleanup, file manager, device driver, security tools Open & Closed Source: source code, open source, closed source Translators: assembler, interpreters, compiler, machine code Stages of Compilation: lexical analysis, token, syntax analysis, abstract syntax tree, code generation, code optimisation, library, linker, static linking, dynamic linking, loader D id Y ou K now? Grace Hopper , a US Navy rear admiral , is credited with creating one of the first compilers in 1952 and coining the term ' compiler '. She also helped develop the languages FLOW-MATIC and later COBOL , which is still used today . 2.1 - Systems Software A-Level Topics 2.3 Software Development

  • Old Eduqas Topics (2016 Spec) | CSNewbs

    This page contains topics from the 2016 Eduqas / WJEC that are not included in the 2020 Eduqas / WJEC specification. Topics from the 2016 Eduqas Specification This page contains information from the 2016 Eduqas specification that was removed for the 2020 specification. Quick Links: Buses & Instruction Sets (RISC & CISC) Protocols (IMAP & POP3) Network Devices (Gateway) Human-Computer Interaction (Command-Line Interface, Touch-Sensitive Interface, Menu-Driven Interface, Voice-Driven Interface) Cyber Attacks (Dictionary Attack, Buffer Overflow, Human Weakness) Software Protection (Secure by Design, Too Many Permissions, Scripting Restrictions, Validation with Parameters) Data Policies (Acceptable Use Policy, Disaster Recovery, Cookies) Environmental Issues (Tips to Reduce Waste, Positive Impacts of Technology) Object Oriented Programming (Greenfoot and Java) Programming Topics (Assembly Language, HTML, Greenfoot) Buses Buses & Instruction Sets Buses Data is transferred within a computer system along pathways called buses . There are three types of bus: Address Bus Data Bus Control Bus Sends a memory address of where data is stored. The address is sent from the CPU to RAM in the FDE cycle. Transfers data between components. Data is sent both ways . Sends control signals from the control unit to other components of the system. Status signals are sent back to the CPU. An instruction set is a list of all the instructions that a CPU can process as part of the FDE cycle . CPUs can have different sets of instructions that they can perform based on their function. The two most common instruction sets are the simpler RISC (Reduced Instruction Set Computer ) and more complicated CISC (Complex Instruction Set Computer ). Instruction Sets Reduced Instruction Set Computer (RISC) Complex Instruction Set Computer (CISC) Complexity RISC has fewer instructions than CISC and is therefore slower for carrying out complex commands but quick for basic tasks . CISC has more complex instructions available and can therefore perform complicated tasks . Cost RISC is generally cheaper to mass produce because less circuitry is required for the smaller instruction set. CISC CPUs are generally more expensive because they require more circuitry to operate. Power RISC CPUs are designed to use less power and run without dedicated cooling systems (like fans) so that they can be used in devices like smartphones . Because CISC CPUs require more circuitry this means that they generate more heat and may require a fan . CISC CPUs therefore are commonly used in desktop computers . Clock Speed RISC CPUs run at lower clock speeds than CISC CPUs. They can perform simpler tasks more quickly than CISC, but are generally not used to carry out complex instructions . CISC CPUs run at higher clock speeds than RISC CPUs. They can perform complex tasks more quickly than RISC. Protocols Protocols POP3 ( Post Office Protocol 3 ) and IMAP (Internet Message Access Protocol ) are both protocols for receiving and storing emails from a mail server. Gateway Network Devices Gateway A gateway joins together two networks that use different base protocols . For example, a gateway could link together a LAN to a WAN . HCI Human - Computer Interaction Command-Line Interface Touch-Sensitive Interface Other types of user interface do exist, such as a command-line interface (CLI ). This type of interface is entirely text-based and requires users to interact with the system by typing commands . This is a complicated process and mistakes could easily accidentally delete data. There are many commands to learn so only experts who have been trained t o learn this interface will be able to efficiently make use of it. Another type of user interface is a touch-sensitive interface , used with smartphones and tablets . A human interacts with the device by pressing on a touchscreen , making it very intuitive and suitable for most users without training. Touch-sensitive interfaces may not work with dirty or wet fingers and it will take longer to write text compared to using a keyboard. Menu-Driven Interface A menu-driven interface displays data in a series of linked menus . Examples include cash machines (ATMs) and old iPods . This type of interface is generally user friendly and easy to use as commands do not need to be memorised. However it can be annoying to find specific data through a large number of menus without a search feature. Voice-Driven Interface A voice-driven interface can be controlled by speaking commands aloud to a listening device. Examples include Amazon's Alexa devices, Apple's Siri technology and Google Home . This interface is intuitive , can be used hands-free and helps to speed up processes . However commands may be misheard or limited in what can be performed. Cyber Attacks Cyber Attacks Dictionary Password Attack This uses a file containing every word in the dictionary and cycles through them all. This method is relatively easy to program but will only break the simplest passwords . Buffer Overflow Attack A buffer is a temporary storage location . A buffer overflow attack causes a program to try to store more data in a buffer than it can hold which can lead to adjacent memory locations being overwritten . An attacker can use the buffer overflow to insert malicious code to change data or steal confidential data . Human Weakness The biggest weakness in online security is often not the systems in place but carelessness or mistakes made by humans . Social engineering means to trick others into revealing their personal data by posing as a trusted source . For example, impersonating an IT technician via email and asking to send a username and password. Humans can accidentally compromise data by downloading malicious files or being unsafe online, like using the same password for multiple different accounts. Attackers can access unauthorised information in person by shoulder surfing and watching them as they enter sensitive data such as a PIN or password. Software Protection Software Protection The following methods of protection are considered in the design, testing and creation stages of developing software . Secure by Design This method puts security as the most important concept when creating and designing software . By focusing on security when designing software there should be less need for later updates and patches and attacks are less likely to succeed . Too Many Permissions Apps require permission to use device features (such as the camera or microphone of a smartphone) when they are downloaded. Programmers should only request permission for features that the software requires . Some malicious apps steal data or spy on users - and the worst part is that you've given permission for it to do it! Users can avoid suspicious apps by reading reviews, checking there are no unnecessary permission requests , only downloading the software you need / will use and uninstall apps if permissions change . Scripting Restrictions A script is a set of instructions executed on a website. For example, Facebook uses a JavaScript script to post a status and another to read your private messages. The Same Origin Policy (SOP) is a security precaution that prevents websites from using scripts on other sites that you have open . For example, if you are using JavaScript to post a status on Facebook then visit an infected site, that site can't also use JavaScript to access your Facebook data, because even though they both use JavaScript, they are from a different origin . Without SOP an infected website could access personal data or infect a computer with malware by maliciously using the same scripts as other websites you have used . Programmers should set scripting restrictions when creating websites. Validation with Parameters A parameter is a measure that is used when validating data , it is usually a range or limit. For example, the parameters of a length check may be whether the data is between 1 and 10 characters . Programmers must ensure validation is used on websites with suitable parameters to prevent attacks such as an SQL injection. Data Policies Data Policies Data policies are written documents that clearly define how data should be managed in an organisation. It is important that all employees stick to these policies and requirements so that data is kept safe and can be replaced if lost or corrupted. The following methods are examples of common data policies. Acceptable Use Policy (AUP) Workplaces and schools often require people to sign an acceptable use policy (AUP) before being allowed to use the network. It is a list of rules and expected behaviour that users must follow when using the computer systems. Typical rules include: Which websites are off-limits (such as social media or gambling sites), Download permissions (such as who can download and install software) Email communication (such as appropriate language). Punishments if rules of the AUP are broken. The AUP is sometimes known as a Code of Conduct . This is an example of a formal code of practice , with written rules and clear expectations . An informal code of practice would not be officially written down , such as personal habits and preferences (e.g. email layout or desk organisation). Disaster Recovery With important data often stored on a computer network, it is absolutely vital that a detailed and effective disaster recovery policy is in place in the event of data being lost due to an unexpected disaster. Disasters include natural disasters (e.g. fire, flood, lightning), hardware failure (e.g. power supply unit failing), software failure (e.g. virus damage) and malicious damage (e.g. hacking). There are three clear parts to a disaster recovery policy: Before the disaster: All of the possible risks should be analysed to spot if there are any weaknesses in preparation. Preventative measures should be taken after the analysis, such as making rooms flood-proof or storing important data at a different location . Staff training should take place to inform employees what should happen in the event of a disaster. During the disaster: The staff response is very important – employees should follow their training and ensure that data is protected and appropriate measures are put in place. Contingency plans should be implemented while the disaster is taking place, such as uploading recent data to cloud storage or securing backups in a safe room and using alternative equipment until the disaster is over. After the disaster: Recovery measures should be followed, such as using backups to repopulate computer systems. Replacement hardware needs to be purchased for equipment that is corrupted or destroyed. Software needs to be reinstalled on the new hardware. Disaster recovery policies should also be updated and improved . Cookies A cookie is a small piece of data that is stored by websites when you visit them. They allow the website to identify the user and are often used to speed up processes , such as: Automatic login (by saving account details) Save items into a basket (such as pizza delivery sites) Display adverts related to your previous search terms . Although they can be used to save time, some argue that cookies can be intrusive and store too much information. Environmental Issues Environmental Issues Tips to Reduce Waste Turn off computers , monitors and other connected devices when not in use . Adjust power options to help minimise power consumption. Devices with the Energy Star sticker use between 30% and 70% less electricity than usual. Repair older devices rather than throwing them away. Ink jet printers use up to 95% less energy than laser jets. Think twice about printing paper, don't waste ink and remember to recycle paper . Positive Environmental Impacts Communication advancements (such as video messengers) reduces pollution as people do not have to travel to speak to each other. This is especially beneficial in business - workers can talk from the office and do not need to catch a plane to speak. Smart devices can monitor usage and reduce energy waste - such as smart air conditioners and home security systems. Collaboration software (such as cloud-based technology and Google Docs) allows experts to work together and share data. The internet and research databases allows scientists to study the environment more efficiently. Documents can be viewed on a screen rather than printed out - books and newspaper articles can be read on kindles / tablets saving paper and ink . New materials and more environmentally-friendly processes have been developed thanks to increased technology and research. Object Oriented Programming Object-Oriented Programming (OOP) Java is an example of object-oriented programming (OOP) where a programmer is able to code objects that can be visually placed onto a background. Greenfoot is an IDE for Java . Superclass A class from which other 'subclasses' will inherit characteristics ; e.g. hippos, crocodiles and polar bears will inherit properties from the Animals superclass. Object A single object from a class ; e.g. one crocodile object from the Crocodile class. Class A set of objects which share the same properties ; e.g. all PolarBears will behave in a similar way. Comment Two / symbols will allow you to write a comment to explain the code . Method A series of instructions that an object will follow . The act() method will loop in Greenfoot when the play button is pressed. Programming Programming Topics Variable Scope & Lifetime The scope of a variable refers to the parts of the program where the variable can be viewed and used , e.g. a variable with global scope can be accessed anywhere in the program . The lifetime of a variable is the amount of time the variable is stored in memory and therefore can be used , e.g. local variables can only be accessed throughout the subroutine they are created in. Programming Languages: Assembly Language HTML Greenfoot Theory Topics

  • Python | Extended Task 2 | CSNewbs

    Test your ability to create a more complex program in Python based on a given scenario. Perfect for students learning GCSE Computer Science in UK schools. Extended Task 2 Lottery 17 8 4 13 20 Create a program to simulate a lottery draw. First, create an appropriate print line to welcome the user to your lottery draw. Then let the user enter five numbers between 1 and 20. Next, randomise five numbers between 1 and 20. Check to see how many numbers match and output an appropriate response for each scenario (e.g. “You have not matched any numbers, better luck next time!”) Once you have made the base program implement subroutines and lists . Make it as efficient as possible and professional-looking. Use pauses to reveal each number one at a time like a real lottery draw to build suspense. For this task, you will need to create a document and include the following sections (with screenshots where appropriate): An introduction to explain the Purpose of your program . A List of Requirements for a successful program. Screenshots of your code (with comments in your code to show understanding). Testing – Create a plan to show how you will test your program and then explanations of any errors that you found and how they were fixed . An Evaluation of what worked, what didn’t, and how you met each of your requirements from your original list. Also, discuss further improvements that you could have made to improve your program. Example solution: Helpful reminders for this task: Inputting Numbers Random Numbers Logical Operators Subroutines ⬅ Extended Task 1 (Pork Pies) Extended Task 3 (Blackjack) ➡

© CSNewbs 2025

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