Search CSNewbs
304 results found with an empty search
- 10.3 - Programming Errors - Eduqas (2020 Spec) | CSNewbs
Learn about the six programming errors - syntax, runtime (execution), linking, logical, rounding and truncation. Based on the 2020 Eduqas (WJEC) GCSE specification. 10.3: Programming Errors Exam Board: Eduqas / WJEC Specification: 2020 + Syntax Error A syntax error is a mistake in the grammar or spelling of the program. A syntax error will prevent the program from being compiled . Examples: Incorrect Spelling: pront ( "hello" ) Incorrect punctuation: print ( "hello" ( Execution (Runtime) Error An execution error is when the program unexpectedly stops as a result of an operation during execution . Examples: Dividing by zero: 400 / 0 Reading too far in a file: #There are 50 lines in the file line = file.readlines( ) print ( line [100] ) Logical Error Linking Error A logical error is a mistake made by the programmer - the program still works but displays the wrong output . Examples: Truncation Error Rounding Error A linking error occurs when a compiler can’t find a sub procedure (e.g. the random library in Python) that has been used. The programmer might have declared it incorrectly or forgotten to link (import) it . Examples: Spelling an import command incorrectly: import ramdon number = random.randint(1,10) Requesting a function without linking: number = random.randint(1,10) Incorrect calculation: total = num1 - num2 print (total) Incorrect variable printed: age = 16 name = "Steve" print ( "Nice to meet you" , age) A rounding error is when the program rounds a real number to a fixed number of decimal places. This results in losing some value as the number becomes less accurate . Examples: Rounding up: 80.87 = 80.9 (Inaccurate by 0.03) Rounding down: 63.4 = 63 (Inaccurate by 0.4) A truncation error is when the program truncates a real number to a fixed number of decimal places . This results in losing some value as the number becomes less accurate . Examples: Truncation to 2 decimal places: 92.13787 = 92.13 (Inaccurate by 0.00787) Truncation to 1 decimal place: 25.199876 = 25.1 (Inaccurate by 0.099876) Q uesto's Q uestions 10.3 - Programming Errors: 1. Describe and give an example of each type of error: a. Syntax Error [ 3 ] b. Execution (Runtime) Error [ 3 ] c. Logical Error [ 3 ] d. Linking Error [ 3 ] e. Rounding Error [ 3 ] f. Truncation Error [ 3 ] 2. State the error that will occur for each scenario: [1 each ] a. A command word (such as for or print) has been misspelt. b. The average speed is 120.3856 but only 120.3 is displayed. c. The cost of a meal is £47 but £40 is displayed. d. A program uses a subroutine that has not been imported. e. The height of a dog is 33.38cm but 33.4cm is displayed. f. The user wants to read line 9 of a file that only has 6 lines. g. The user's age is printed instead of their name. h. The programmer has typed print("hello"( i. A number is divided by 0. j. The program is asked to generate a random number but 'import random' has not be written. 10.2 - Stages of Compilation Theory Topics 11.1 - Impacts of Technology
- 4.2 - Global Legislation | Unit 2 | OCR Cambridge Technicals | CSNewbs
Learn about legislation that covers a wider geographic area including the UNCRPD. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 4.2 - Global Legislation Exam Board: OCR Specification: 2016 - Unit 2 Data Protection Outside of the UK Personal data should not be transferred outside of the UK unless the country receiving the data has adequate data protection laws that match the Data Protection Act (2018) / GDPR (General Data Protection Regulation ). GDPR was introduced in all European Union (EU ) countries in 2018. This set of regulations ensure that personal data is protected and can be sent between EU countries. However, many other countries only have partially adequate data protection laws (such as the USA and Canada) whilst many nations have inadequate or no laws regarding data protection. Click the map button to visit CNIL's website and see exactly which countries have adequate, inadequate and no data protection laws. UNCRPD UNCRPD stands for United Nations Convention on the Rights of Persons with Disabilities . This is a United Nations human right that states disabled people should be able to 'access information systems' (article 9) and 'use digital means to express their opinion' (article 21). Methods of complying with this convention include: Personal data can be sent between European countries (such as the UK) and the United States because of a protection scheme which was known as the 'Safe Harbour ' scheme (between 2000 and 2015) and the 'EU-US Privacy Shield ' (between 2015 and 2020). This provided protection to European data in the US and required both companies engaged in data transaction to sign up to the scheme before personal data could be transferred. The companies must have been assessed as responsible for the security of the data. The scheme was stopped in July 2020 because the European Court of Justice argued it did not adequately protect the personal data of Europeans from government access. Using < alt> text on images so that text-to-speech software can describe the image aloud, for the visually impaired . The tag can be added to the HTML code of an image on a website and will be audibly spoken by specialist reading software. This image contains alt text that can't be seen by a typical viewer but will be read aloud by screen reading software. Accessibility settings . Websites could allow users to change the font size and style or change the background colour to make text easier to read . Wikipedia presents some articles to be listened to if the user is unable to read them. Example Text Example Text Example Text Example Text Q uesto's Q uestions 4.2 - Global Legislation: 1a. What is the problem with transferring data outside of the UK ? [2 ] 1b. Why can personal data be transferred between European countries ? [2 ] 2. Open the CNIL map (use the link on this page and click on a specific country to see its name) and state: Four countries in the EU Two countries with partially adequate protection Two countries with an authority and law (dark purple) Two countries with laws only (light purple) Four countries with no data protection laws [7 ] 3a. What is UNCRPD and why is it important ? [3 ] 3b. Describe what alt text is used for. [2 ] 3c. State three accessibility settings that could affect how easy text is to read . [3 ] EU-US Privacy Shield 4.1 - UK Legislation Topic List 4.3 - Green IT
- 1.3.2 - Software Categories | F160 | Cambridge Advanced National in Computing | AAQ
Learn about the purpose, characteristics, advantages, disadvantages, examples and client requirements of application software categories including open, closed, shareware, freeware and embedded software. Resources 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) 1.3.2 - Application Software Categories Watch on YouTube : Open Software Closed Software Shareware Freeware Embedded Software There are five application software categories you need to know : Open Closed Shareware Freeware Embedded For each software category you need to know : Its purpose and common characteristics . The types of devices the software may be used on. The advantages and disadvantages of using the software. How client requirements affect the selection of that software. Application Categories Open Software Closed Software Open (usually known as open-source ) software is developed to be freely accessible and allow users to view , modify and distribute the source code . Its purpose is to promote collaboration and customisation when developing software . Closed (or closed-source or proprietary ) software is developed and distributed by a company or individual who owns the source code . The purpose is to maintain control , generate profit and ensure a consistent user experience . Shareware Shareware is closed software that is distributed for free on a trial basis , often with limited features or time restrictions . The purpose is to let users try before they buy , encouraging them to later purchase the full version . Freeware Freeware is closed software that is completely free to use , usually without restrictions like time limits or limited features , but still owned by a developer or company . The purpose is to provide software for free while retaining control over its code and distribution . Embedded Software Embedded software is designed to run on specific hardware and perform dedicated tasks . It is usually built into devices that are not traditional computers (like washing machines or microwaves ), allowing those devices to function efficiently and potentially automatically . Q uesto's Q uestions 1.3.2 - Application Software Categories: 1. Summarise the five categories of application software in two sentences each . [5 ] 2. An independent video game company has made a short game with just three levels. Justify which application software category they should use and why . [4 ] 3. Describe the advantages and disadvantages of using embedded software . [ 4 ] WinRAR is a shareware compression tool with a 40-day free trial , but it never actually locks users out. Since 1995 , WinRAR has been downloaded an estimated 500 million times . D id Y ou K now? 1.3.1 - Application Types Topic List 1.3.3 - Application Software Types
- Python | 6b - While Loops | CSNewbs
Learn how to create and use while loops in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 6B - While Loops Types of Loop The third construct of programming (after Sequence and Selection) is Iteration . If you iterate something, then you repeat it. There are two key loops to use in Python: for loops and while loops . A for loop is count controlled – e.g. “For 10 seconds I will jump up and down”. The loop will continue until the count (e.g. 10 seconds) has finished . A while loop is condition controlled – e.g. “While I am not out of breath, I will jump up and down.” The loop will continue as long as the condition remains true . Simple While Loops A while loop keeps repeating as long as the starting condition is true . If the condition of the while loop becomes false , the loop ends . In this example, the number variable is increased by 1 inside of the loop until it is no longer less than or equal to 10 . number = 1 while number <= 10: print (number) number = number + 1 1 2 3 4 5 6 7 8 9 10 Comparison Operators == equal to != not equal to < less than <= less than or equal to > greater than >= greater than or equal to It is important to give the variable a value before you start the while loop . I have assigned number as 1. The last line increases the number by 1 otherwise the number would stay at 1 and the loop would repeat forever . While Loops Task 1 (Countdown from 100 ) Example solution (shortened): Create a simple while loop that starts at 100 and prints each number down to 1 . Think about the comparison operator you will need to check you have reached 1. 100 99 98 ... ... 3 2 1 Inputs Inside While Loops If you want the user to keep entering an input until they give a certain answer then you need to put the input inside the while loop : age = 0 while age < 18: print ( "Only adults allowed to the casino." ) age = int ( input ( "Enter your age: " )) print ( "Welcome and enjoy your visit." ) Only adults allowed to the casino. Enter your age: 14 Only adults allowed to the casino. Enter your age: 18 Welcome and enjoy your visit. month = " " while month != "July" : month = input ( "Guess the month I'm thinking of: " ) print ( "Correct! It was July!" ) Guess the month I'm thinking of: August Guess the month I'm thinking of: June Guess the month I'm thinking of: July Correct! It was July! Notice that the variable in the condition (age or month in these examples) has to be given a value first before it can be used in a while condition. The program will crash if the variable is not declared and assigned a value - for example, the age cannot be checked to see if it less than 18 if there is no age variable! For string variables like month in the example above then a blank default value like " " can be used. For integer variables often 0 will be used. While Loops Task 2 (Guess the Colour ) Example solution: Use a variable named colour and a while loop that allows the user to keep entering colours until a specific one (your choice) has been input. Guess the colour: blue Guess the colour: purple Guess the colour: yellow Correct! It was yellow! While Loops Task 3 (Integer Trivia ) Use a while loop to ask a question that has an integer (whole number) as an answer , such as "How many James Bond films did Daniel Craig appear in?" or "In which year did Wigan Athletic win the FA Cup?". Remember that integers do not use speech marks , e.g. year = 0 Example solution: Which year was the first Iron Man movie? 2010 Which year was the first Iron Man movie? 2009 Which year was the first Iron Man movie? 2008 Correct! It was 2008! While True Loops A while True loop will repeat indefinitely , only stopping when the break command is used to end the loop . While True loops are often preferred because you do not need to set default values for any variables before the loop begins. while True : password = input ( "Enter the password: " ) if password == "icecream21" : print ( "Correct Password!" ) break Enter the password: vanilla32 Enter the password: chocolate83 Enter the password: strawberry100 Enter the password: icecream21 Correct Password! The program below has been adapted to record the number of attempts made . The value is increased by 1 each time the loop restarts. guesses = 0 while True : guesses = guesses + 1 password = input ( "Enter the password: " ) if password == "goat7" : print ( "Correct Password! It took" ,guesses, "attempts!" ) break else : print ( "Incorrect. Try again!" ) Enter the password: sheep3 Incorrect. Try again! Enter the password: cow4 Incorrect. Try again! Enter the password: horse5 Incorrect. Try again! Enter the password: goat7 Correct Password! It took 4 attempts! The continue command will move to the next iteration (it can be considered as starting the loop again ). The program below allows numbers to be entered and keeps track of a running total. Entering 1 inputs a number, 2 displays the total and 3 stops the program. total = 0 while True : choice = input ( "\nType 1 to enter, 2 for a total and 3 to stop: " ) if choice == "1" : number = int ( input ( "Enter a number: " )) total = total + number continue elif choice == "2" : print ( "The total is" , total) continue elif choice == "3" : break print ( "\nProgram finished." ) Type 1 to enter, 2 for the total and 3 to stop: 1 Enter a number: 40 Type 1 to enter, 2 for the total and 3 to stop: 1 Enter a number: 35 Type 1 to enter, 2 for the total and 3 to stop: 2 The total is 75 Type 1 to enter, 2 for the total and 3 to stop: 3 Program finished. While Loops Task 4 (Guess the Planet ) Example solution: Use a while True loop to keep asking a user to input a planet . Keep track of the number of guesses that have been made and output the total when they input the correct planet. Use the second example in the 'While True Loops ' section above to help you. Enter a planet: Mars Incorrect guess, try again! Enter a planet: Mercury Incorrect guess, try again! Enter a planet: Neptune Correct it was Neptune! While Loops Task 5 (Up to 100 ) Create a while True loop that asks the user to enter a number . Add the number to a total variable and print it. When the total reaches 100 or more , stop the program. Don't forget to set the total variable to 0 at the start and to add the number entered by the user to the total. Example solution: Enter a number: 34 The current total is: 34 Enter a number: 29 The current total is: 63 Enter a number: 18 The current total is: 81 Enter a number: 22 The current total is: 103 Over 100! ⬅ 6a - F or Loops Section 6 Practice Tasks ➡
- Python | Extended Task 4 | 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 4 Hi, Jacob Mortimer here from Cats & Dogs Veterinary Surgery . There was a flood last week, and our computer systems were totally destroyed . I need you to create a program , using a file , that allows my receptionist to: Add new animals to the file . Search through the file and print the details of a specific animal . Allow a specific animal to be removed from the file . Vet Surgery 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. Reminders for this task: You will need to create a selection of options for the user to choose from. Subroutines and a while true loop may help. Section 10 will help you to open, write and read from files . Section 10c shows how to edit data in a file. You will need to adapt this code and not write the line that has been selected, instead of writing a modified version of it. There are multiple ways to approach this program, and your solution might look different from the example. Break the problem down and focus on one part at a time. Example solution: Entering 1 allows the user to enter the details of a new animal which is saved into the file . Entering 4 will stop the loop and ends the program. Entering 2 allows the user to enter the details of an animal to search for . If the animal is in the file, their details are printed clearly on a new line. Entering 3 allows the user to enter the details of an animal to remove from the file . If the animal is in the file, all lines are transferred into a temporary file except for the line to be removed . ⬅ Extended Task 3 (Blackjack) Extended Task 5 (Colour Collection) ➡
- HTML Guide 4 - Hyperlinks | CSNewbs
Learn how to link to other websites by using the anchor tag. 4. Hyperlinks HTML Guide Watch on YouTube: A hyperlink is a link to another web page . In this section, you will link your page to a real website, like Wikipedia. Hyperlinks require the anchor tags and Copy a URL Firstly you need to copy the full web address of the web page that you would like to link your page to. Choose an appropriate web page that relates to your chosen topic. Create the Anchor Tag 4. Close the start of the tag . 1. Open the start of the tag . 2. Type href (stands for hypertext reference ). 3. Paste the URL inside speech marks . 5. Type the text you want the user to click on . 6. Time to close the tag . When you save your webpage and run it in a browser you will be able to click highlighted text to open the website you have chosen. Add at least three different hyperlinks to your webpage. Try to add the 2nd & 3rd links without looking at this page - practise makes perfect. Add a Hyperlink within a Sentence You can also create an anchor tag within a sentence. Hyperlinks are important to link webpages together. Next is time for adding pictures! Either change one of your previous hyperlinks to be in the middle of a sentence or create a new one. 3. Text Tags HTML Guide 5. Images
- 1.2 - Storage Media | Unit 2 | OCR Cambridge Technicals | CSNewbs
Learn about secondary storage types such as solid-state, magnetic, optical and paper. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 1.2 - Storage Media Exam Board: OCR Specification: 2016 - Unit 2 Data can be stored on a variety of storage media , each with its own benefits and drawbacks . Magnetic Storage Optical Storage A magnetic hard disk drive (HDD ) is the most common form of secondary storage within desktop computers. A read/write head moves nanometres above the disk platter and uses the magnetic field of the platter to read or edit data. Hard disk drives can also be external and connected through a USB port . An obsolete (no longer used) type of magnetic storage is a floppy disk but these have been replaced by solid state devices such as USB sticks which are much faster and have a much higher capacity. Another type of magnetic storage that is still used is magnetic tape . Magnetic tape has a high storage capacity but data has to be accessed in order (serial access ) so it is generally only used by companies to back up or archive large amounts of data . Optical storage uses a laser to project beams of light onto a spinning disc, allowing it to read data from a CD , DVD or Blu-Ray . This makes optical storage the slowest of the four types of secondary storage. Disc drives are traditionally internal but external disc drives can be bought for devices like laptops. Magnetic Storage Characteristics: ✓ - Large CAPACITY and cheaper per gigabyte than solid state . X - Not DURABLE and not very PORTABLE when powered on because moving it can damage the device. ✓ - Relatively quick ACCESS SPEED but slower than Solid State . Optical Storage Characteristics: X - Low CAPACITY : 700 MB (CD ), 4.7 GB (DVD ), 25 GB (Blu-ray ). X - Not DURABLE because discs are very fragile and can break or scratch easily. ✓ - Discs are thin and very PORTABLE . X - Optical discs have the Slowest ACCESS SPEED . Magnetic Disks are spelled with a k and Optical Discs have a c. Solid State Storage Paper Storage There are no moving parts in solid state storage. SSD s (Solid State Drives ) are replacing magnetic HDDs (Hard DIsk Drives) in modern computers and video game consoles because they are generally quieter , faster and use less power . SSDs can also be external . A USB flash drive ( USB stick ) is another type of solid state storage that is used to transport files easily because of its small size. Memory cards , like the SD card in a digital camera or a Micro SD card in a smartphone , are another example of solid state storage. Paper storage includes printed or hand-written documents, notes, forms, schedules and maps. Paper is relatively inexpensive in small quantities but it can take up a lot of space compared to small devices like USB sticks. Producing paper is environmentally damaging and requires physical security methods to keep safe. Paper, such as a timetable, can be written on if times change and easily carried on a person. However, paper in the form of an essay must be re-printed to add changes . Solid State Characteristics: ✓ - High CAPACITY but more expensive per gigabyte than magnetic . ✓ - Usually DURABLE but cheap USB sticks can snap or break . ✓ - The small size of USB sticks and memory cards mean they are very PORTABLE and can fit easily in a bag or pocket. ✓ - Solid State storage has the fastest ACCESS SPEED because they contain no moving parts . Paper Storage Characteristics: X - Low CAPACITY as each page can only hold a certain amount of information. Paper also takes up physical space . X - Poor DURABILITY as paper can easily tear and become damaged in rain. ✓ / X - PORTABILITY varies as single sheets of paper can be easily folded and placed in a pocket. However, large stacks of paper can be difficult and expensive to transport. X - Paper's ACCESS SPEED , in terms of searching for a specific item, is slow , especially if the paper storage has not been organised efficiently . Q uesto's Q uestions 1.2 - Storage Media: 1. State 3 examples of each type of storage media . For example, a CD for optical storage. [3 each ] 2. Compare each type of storage media in terms of capacity , durability , portability and access speed . You may decide to do this as a table or poster. [16 ] 3. Identify the most suitable device (not the media ) and justify its suitability for the following scenarios: a. Backing up a large database at the end of each day. [5 ] b. Keeping a copy of a cleaning schedule for hotel staff. [5 ] c. Making copies of a promotional video to hand out to audience members at a dancing event. [5 ] 1.1 - Holders of Information Topic List 1.3 - Access & Storage Devices
- 2.4b - Binary Addition & Shifts - OCR GCSE (J277 Spec) | CSNewbs
Learn about how to perform binary addition and binary shifts. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 2.4b: Binary Addition & Shifts Exam Board: OCR Specification: J277 Watch on YouTube : Binary Addition Overflow Errors Binary Shifts Issues with Shifts Binary Addition Binary addition is a method of adding binary values without having to convert them into denary. How to add binary numbers: What is an overflow error? An overflow error occurs when a binary value is too large to be stored in the bits available . With a byte (8 bits ) the largest number that can be held is 255 . Therefore any sum of two binary numbers that is greater than 255 will result in an overflow error as it is too large to be held in 8 bits . What is binary shift? Binary shift is used to multiply and divide binary numbers . The effect of shifting left is to multiply a binary number. The effect is doubled by each place that is shifted . x The effect of shifting right is to divide a binary number. ÷ Shifting by 1 has an effect of 2 . Shifting by 2 has an effect of 4 . Shifting by 3 has an effect of 8 . For example, shifting left by 2 places has an effect of multiplying by 4 . Another example: Shifting right by 3 places has an effect of diving by 8 . How to shift a binary number: Binary Shifts Watch on YouTube Watch on YouTube Q uesto's Q uestions Binary Addition: 1. Explain what an overflow error is. [ 2 ] 2. Add together the following binary values. If an overflow error occurs you must state one has occurred. a. 010110012 and 010001012 [2 ] b. 110110112 and 010111012 [2 ] c. 001101102 and 011010112 [2 ] d. 110110112 and 010101112 [2 ] e. 011011012 and 110101102 [2 ] Binary Shifts: 1a. Draw a diagram to show the effect of multiplying and dividing a binary number . [2 ] 1b. Draw a diagram or table to show the effect a shift has for each place from 1 to 4 . For example, a shift of 1 place has an effect of 2. [4 ] 2. State the effect of the following shifts: a. Shift right by 2 places. b. Shift left by 1 place. c. Shift left 3 places. d. Shift right by 4 places. [ 1 each ] 3. Shift the following binary numbers and state the effect of the shift: a. 10101011 : Shift left by 2 places. b. 11101100 : Shift right by 3 places. c. 00001011 : Shift right by 2 places. d. 01101110 : Shift left by 1 place. [ 2 each ] 2.4a - Number Systems Theory Topics 2.4c - Character Storage
- OCR CTech IT | Unit 1 | 3.4 Connection Methods | CSNewbs
Learn about the different types of LAN, MAN and WAN networks and how to draw network diagrams. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 3.4 - Connection Methods Exam Board: OCR Specification: 2016 - Unit 1 Local Area Network (LAN) A Local Area Network (LAN ) is a network in which the computer systems are all located geographically close to each other , for example, in the same building or on the same site , like a school or office . A type of LAN is a Wired Ethernet LAN ( technically Ethernet is a protocol that controls how data is transmitted over a LAN). Wired Ethernet LANs have a high bandwidth so data can be transferred quickly and because it uses cables the data is harder to intercept than a wireless network. Metropolitan Area Network (MAN) A Metropolitan Area Network (MAN ) connects several LANs together to cover the range of a town or city , for example a university campus network. MANs are usually very efficient at providing fast communication for cities , with high connection speeds through the use of fibre optic cables. Wide Area Network (WAN) A Wide Area Network (WAN ) is a network spanning a large geographical area , such as multiple cities or countries . The internet is the ultimate example of a WAN as it stretches across the entire world. Different types of WAN rules and standards are used: ADSL ADSL ( Asymmetric Digital Subscriber Line ) is a method of transferring data across copper wire telephone lines . ADSL is contended, which means that connection speeds are affected and slowed down by more systems that use the network at the same time . The old copper wires also affect data transfer over long distances and can cause data packet loss . Security is also an issue, as the line is shared with others, making data interception more likely . To improve security, a firewall and/or VPN (Virtual Private Network) may be used. Because ADSL uses the telephone system, a modem is require d at both the sending and receiving ends of the connection. A microfilter is also required to allow internet and telephone access at the same time . ADSL is contended - shared between sites. Internet Service Provider ADSL requires a modem Leased Line Leased Line is a method of providing an uncontended , fixed-bandwidth data connection . The user maintains a dedicated connection that is more secure and, because it is uncontended , will have the same speed all of the time , regardless of how busy the network is . Bandwidth is high , security is better , the connection speed is constant and the network is full-duplex (allowing for data transmission both ways simultaneously). These advantages come at a high cost - possibly hundreds of pounds per month - as well as an expensive installation that can take time to be put in place . As it is a complex configuration , a CSU/DSU (Channel Service Unit/Data Service Unit) device is required to properly terminate the leased line . Internet Service Provider Leased Line is dedicated. C A CSU/DSU is required for a leased line. ISDN ISDN (Integrated Services Digital Network ) transmits video and voice data simultaneously over traditional copper telephone wires . This method uses a circuit-switched network where all data packets take the same route between computer systems. Voice Networks Voice networks primarily transfer audio data using phones and telephone lines . PSTN PSTN (Public Switched Telephone Network ) is the global collection of wired public telephone networks that are used to transmit data over a long distance. PSTN is fixed into position using underground cables and therefore the connection quality is much more consistent than other voice networks. Using a wired connection like a PSTN is more reliable and communication will be clearer than alternatives such as cellular or satellite methods. Cellular Cellular networks require a cell tower (also called a transmitting tower ) to be in close proximity to the communication device. Cellular networks have a greater range than PSTN, but buildings and poor weather can disrupt this point-to-point communication method (where line of sight is necessary ). Each cell tower is also connected to the PSTN . Satellite Satellite networks use point-to-multipoint communication by using satellites above the Earth's atmosphere that receive a transmission and rebroadcast them back to Earth. Because of the distance between the communication device and the satellite (potentially thousands of miles ), there is a delay between data transmission and it being received . Satellite networks are beneficial in remote locations , such as natural disaster zones , where the cell tower may not be present or may be damaged. Transmitting large files using satellites may take longer , and it is not recommended for low-latency needs such as video gaming. There are different types of satellites used in communication and networking : Geostationary satellites are used for consistent communication over a specific region , such as TV broadcasts and weather monitoring . They can also be used to transfer data between remote locations . Low-Earth orbiting satellites are closer to the ground so they enable fast communication for internet services . Medium-Earth orbiting satellites are often used for GPS (Global Positioning System ) and other navigation systems . A global positioning satellite is an example of this type of satellite that provides time and geolocation data to GPS receivers back on Earth. Diagrammatical Representation In an exam, you may be asked to draw a diagram representing how networks are connected . This is different from drawing a network topology (e.g. ring or mesh) and refers to: Connection type (e.g. ADSL / Leased Line). Devices (e.g. router / modem), Security methods (e.g. firewall / VPN) Two LANs connected using a Leased line Two LANs connected using an ADSL line Rules for drawing a network diagram: Label each device and label your LANs . Use appropriate symbols and be neat . There are no set symbols, just be consistent (e.g. both modems are the same shape). ADSL must have a modem and VPN router + Firewall . (ADSL is not very secure so it needs to be protected with the VPN router and firewall. It also uses the telephone line across the internet so it requires a modem at both ends). Leased Line must have a router , a direct connection and CSU/DSU . (Leased line is a secure and direct connection - so it doesn’t need a firewall or VPN router and should be direct (not across the internet )). Q uesto's Q uestions 3.4 - Connection Methods: 1a. What is the definition of a LAN ? [ 2 ] 1b. Describe two benefits of using a wired Ethernet LAN . [ 4 ] 2. What is the definition of a MAN ? [ 2 ] 3a. What is the definition of a WAN ? [ 2 ] 3b. What is the difference between a contended and an uncontended network? [ 2 ] 3 c. Describe the differences between a leased line and ADSL . You should discuss security , connection speed and contention ( contended or uncontended ) . [6 ] 3d. Describe the use of any two network devices required for either a leased line and/or for ADSL . [ 4 ] 3e. Describe the purpose of ISDN . [ 2 ] 4a. Compare the use of PSTN and Cellular methods to make telephone calls . [ 4 ] 4b. Explain 1 way that a satellite network should be used and 1 way it shouldn't be used . [ 4 ] 5. Draw a diagram to show how a leased line or ADSL network can be set up between two existing LANs. [6 ] 3.3 - Network Characteristics Topic List 3.5 - Business Systems
- 11 Graphical User Interface | CSNewbs
Learn how to create and use a simple graphical user interface (GUI) in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. Python 11 - GUI Graphical User Interface In Python, you don’t have just to use a text display; you can create a GUI (Graphical User Interface ) to make programs that look professional. This page demonstrates the basic features of Python’s built-in GUI named tkinter . You can add images, labels, buttons and data entry boxes to develop interactive programs . Hyperlinked sections covered on this page: Setup: Title, Size & Background Creating Elements: Labels, Entry Boxes, Buttons, Images, Message Boxes Displaying Elements: Pack, Place, Grid Inputs & Outputs GUI Tasks Setup Setup: Title, Size & Background Firstly, import the tkinter command and set tkinter.Tk() to a variable such as window . GUI code can be quite complicated with multiple elements so it is sensible to use a comment for each section. Setting the title , size and background colour of your window is optional but can be easily set up at the start of your code. The .geometry() command sets the size of the window. The first number is the width , and the second number is the height . The .configure() command can be used to set the background colour . For a full list of compatible colours, check here . import tkinter #Setting up the Window window = tkinter.Tk() window.title( "Graphical User Interface" ) window.geometry( "400x400" ) window.configure(background = "lightblue" ) import tkinter #Setting up the Window window = tkinter.Tk() window.title( "Example Number Two" ) window.geometry( "300x400" ) window.configure(background = "darkorchid3" ) Creating Elements Creating Elements: Labels, Entry Boxes, Buttons, Radio Buttons, Images, Message Boxes Labels label1 = tkinter.Label(window, text = "Hello there" ) label1 = tkinter.Label(window, text = "Hello there" , fg = "black" , bg = "lightblue" , font = ( "Arial" , 12)) Simple label with default formatting: Label with custom formatting: No elements will appear in your window until you write code to put them there. See the 'Displaying Elements' section further down. Entry (Text) Boxes Simple entry box with default formatting: entry1 = tkinter.Entry(window ) Entry boxes will appear blank , the 'Example Text' shown in the images has been typed in. Entry box with custom formatting: entry1 = tkinter.Entry(window, fg = "blue" , bg = "gray90" , width = 12, font = ( "Arial" ,12)) Buttons The command property of a button is a subroutine that will be called when the button is pressed . The subroutine must be written above the button creation code. def ButtonPress (): #Code here runs when the button is pressed button1 = tkinter.Button(window, text = "Click Me" , fg = "black" , bg = "gold2" , command = ButtonPress) Radio Buttons The Radiobutton element is a multiple-choice option button . A variable needs to be created to track which option has been selected, in this example it is ‘choice ’. Each radio button needs to be linked to the variable and given a unique value (e.g. 0, 1, 2). The radio button with the the value of 0 will be automatically selected when the window opens . Although not shown below, the .set() command can also be used to select a specific radio button , e.g. choice.set(2) . choice = tkinter.IntVar() radio1 = tkinter.Radiobutton(window, text = "Breakfast" , variable = choice, value = 0) radio2 = tkinter.Radiobutton(window, text = "Lunch" , variable = choice, value = 1) radio3 = tkinter.Radiobutton(window, text = "Dinner" , variable = choice, value = 2) Message Boxes You need to import messagebox from tkinter before you can use message boxes . You only need to do this once in your program and it sensible to have it at the very start after you import tkinter (and any other libraries). from tkinter import messagebox tkinter.messagebox.showinfo( "Information" , "Welcome to the program!" ) tkinter.messagebox.showerror( "Error" , "There is a problem with the program." ) if (tkinter.messagebox.askyesno( "Warning" , "Have you understood the instructions?" )) == True : tkinter.messagebox.showinfo( "Warning" , "Thank you for understanding." ) else : tkinter.messagebox.showinfo( "Warning" , "Please read the instructions again." ) Yes / No Message Box Clicking Yes (True ) Clicking No (False ) Images Tkinter supports the image file types .png and .gif . The image file must be saved in the same folder that the .py file is. Resize the image in separate image editing software such as Paint to a specific size . Tkinter does not support all image file types, such as .jpg. Use an application like Microsoft Paint to save an image with a different extension like .png. photo1 = tkinter.PhotoImage(file = "hamster.png" ) photoLabel1 = tkinter.Label(window, image = photo1) An image can be turned into a clickable button rather than a label. def ButtonPress (): #Code here runs when the button is pressed photo1 = tkinter.PhotoImage(file = "hamster.png" ) button1 = tkinter.Button(window, image = photo1, command = ButtonPress) photo1 = tkinter.PhotoImage(file = "hamster.png" ) window.iconphoto( True , photo1) The icon of the window can be changed to an image . Displaying Elements: Pack, Place and Grid Pack .pack() puts the element in the centre of the window, with the next packed element immediately below. window.mainloop() should always be your last line of code in every program, after you have packed, placed or gridded your elements. Displaying Elements labelAdd.pack() buttonAdd.pack() labelMinus.pack() buttonMinus.pack() window.mainloop() Place The .place() command allows an element to be placed in specific coordinates , using x (horizontal ) and y (vertical ) axes. labelAdd.place(x = 25, y = 15) buttonAdd.place(x = 12, y = 35) labelMinus.place(x = 90, y = 15) buttonMinus.place(x = 83, y = 35) window.mainloop() Grid The .grid() command is used to create a grid system to set the row and column . Remember Python starts counting at 0 . You can use padx and pady to add extra space (x is horizontal , y is vertical ). labelAdd.grid(row = 0, column = 0, padx = 10, pady = 5) buttonAdd.grid(row = 1, column = 0, padx = 10) labelMinus.grid(row = 0, column = 1, padx = 10, pady = 5) buttonMinus.grid(row = 1, column = 1, padx = 10) window.mainloop() Inputs & Outputs Inputs and Outputs .config to Change an Element .config() overwrites the property of an element. It can be used with elements such as labels and buttons to change how they appear. label1.config(text = "Warning!" ) The example below (not showing setup and packing) adds 1 to a total variable when the button is pressed . Config is used in two ways: to display the updated total and to change the background of the label to green. def AddOne (): global total total = total + 1 labelTotal.config(text = total, bg = "green" ) total = 0 buttonAdd = tkinter.Button(window, text = "Add" , command = AddOne) Below is a similar program in full that increases or decreases and displays a total when the buttons are pressed . #Setup import tkinter window = tkinter.Tk() total = 0 #Button Presses def AddOne (): global total total = total + 1 labelTotal.config(text = total) def MinusOne (): global total total = total - 1 labelTotal.config(text = total) #Create Elements labelTotal = tkinter.Label(window, text = total, font = ( "Arial" ,14)) buttonAdd = tkinter.Button(window, text = "+" , width = 6, bg = "green" , command = AddOne) buttonMinus = tkinter.Button(window, text = "-" , width = 6, bg = "red" , command = MinusOne) #Display Elements buttonAdd.pack() buttonMinus.pack() labelTotal.pack() window.mainloop() .get to Input a Value .get() returns the value of an element such as an entry box , label or the choice variable if using radio buttons . The value of the element should be stored in a variable so it can be used elsewhere, for example: name = entryName.get() number = int (entryNumber.get()) Use int when getting a value that is an integer : The full program example below checks that the values typed into the username and password entry boxes are correct . Error Messages #Setup import tkinter from tkinter import messagebox window = tkinter.Tk() window.title( "Login" ) #Button Presses def CheckDetails (): username = entryUsername.get() password = entryPassword.get() if username == "Bob Bobson" and password == "cabbage123" : tkinter.messagebox.showinfo( "Success" , "Welcome " + username) else : tkinter.messagebox.showerror( "Invalid ", "Those details are incorrect." ) #Create Elements labelUsername = tkinter.Label(window, text = "Username:" ) labelPassword = tkinter.Label(window, text = "Password" ) entryUsername = tkinter.Entry(window) entryPassword = tkinter.Entry(window) buttonLogin = tkinter.Button(window, text = "Login" , command = CheckDetails) #Display Elements labelUsername.grid(row = 0, column = 0) entryUsername.grid(row = 0, column = 1) labelPassword.grid(row = 1, column = 0) entryPassword.grid(row = 1, column = 1) buttonLogin.grid(row = 2, column = 0) window.mainloop() .bind for Key Presses (& Close Window) .get() will run a specific function when a certain key is pressed. The name of the key must be surrounded by < > brackets and speechmarks . Any associated subroutine of a key bind will need a parameter : event has been chosen and set to None . The code below closes the window using the .destroy() command when the Esc key is pressed. def Close (event = None ): window.destroy() window.bind( "" , Close) The code below will activate the button (and display a message box) by clicking on it but also by pressing the Enter ( Return ) key . def ButtonPress (event = None ): tkinter.messagebox.showinfo( "Success" , "The button was activated" ) button1 = tkinter.Button(window, text = "Press Me" , command = ButtonPress) window.bind( "" , ButtonPress) GUI Tasks GUI Programs to Make Making a program using a GUI can be overwhelming and you must decompose the problem - take it step by step : Import tkinter and create the window (set the title, size and background colour). Create the elements you will need such as labels , buttons and entry boxes . Put the components in the window using pack , place or grid . Write the subroutines for any button presses . These are written at the top of the program after the window setup. Consider your variables - do any need to be set at the start ? Have you made them global if they’re needed within a subroutine ? Put window.mainloop() as the final line of code, only have it once. Use #comments in your code to break up the different sections, the key four sections are shown below. #Setup #Button Presses #Create Elements #Display Elements GUI Task 1 (Random Number Generator ) Generate a random number between 1 and 100 when the button is pressed and display it in a label. Extension idea: Use entry boxes to allow the user to manually input the minimum and maximum value. Example solution: GUI Task 2 (Currency Exchange ) Enter a decimal value and convert it from British pounds to American dollars. You can search for the current exchange rate. Extension idea: Show the conversion rate for other currencies such as Euros and Japanese Yen. Example solution: GUI Task 3 (Random Quote Generator ) Create a list of quotes and use the choice command from the random library to select one to be displayed in a label when the button is clicked. Extension idea: Have a separate text box and button to add more quotes to the list. Example solution: GUI Task 4 (Colour Changer ) When the button is clicked change the background colour of the button with .config to the RGB colour code in the entry box. This should be # followed by 6 hexadecimal values (0-9, A-F). Extension idea: Have an error pop up in a message box if the colour code is incorrect - it must be exactly 7 characters long and start with a hashtag. Example solutions: GUI Task 5 (Class Captain Votes ) Use radio buttons to vote for different candidates in a class vote. Use an if statement when the button is pressed to check which radio button is selected using .get() and the variable you've assigned to the radio buttons ('choice' if you've followed the code in the radio buttons section on this page). Use .config to overwrite a label's value. Remember any variables you want to use in subroutines must be globalised. Extension idea: Stop the count after a certain number - e.g. 30 votes recorded. Example solution: ⬅ Section 10 Practice Tasks 12 - Error Handling ➡
- OCR CTech IT | Unit 1 | 5.3 - Threats | CSNewbs
Learn about 7 key threats to avoid on the internet, including virus, worm, trojan interception, social engineering and eavesdropping. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 5.3 - Threats Exam Board: OCR Specification: 2016 - Unit 1 What are the 7 threats to computer systems? Phishing Misleading individuals or organisations into giving up sensitive information (such as passwords or bank details), often through the use of emails . Hacking Exploiting weaknesses in a system or network to create, view, modify or delete files without permission. Similar to data theft - illegally removing copies of personal or company data from computer systems. :( Trojan Appears to be a useful or well-known program but when downloaded and installed it secretly gives the attacker a ' backdoor ' to your system. Through this backdoor the attacker can access data without the user knowing. Football 2020 FREE Interception Data packets on a network are intercepted by a third party (e.g. hacker) and copied, edited or transferred to a different location than the intended destination. Eavesdropping Intercepting , in real-time , private communication traffic such as instant messages or video calls . Social Engineering Tricking individuals into giving sensitive information , e.g. by claiming to be from the IT department and asking for their password and username to check for viruses. Virus A virus can replicate itself and spread from system to system by attaching itself to infected files that are then downloaded and opened. Once activated, a virus can modify data or corrupt a system so that it stops working. Q uesto's Q uestions 5.3 - Threats: 1. An IT company is making an information booklet about the different types of online threats . Describe each type of threat: a. Phishing b. Hacking / Data Theft c. Trojan d. Interception e. Eavesdropping f. Social Engineering g. Virus [2 each ] 5.2 - Operational Issues Topic List 5.4 - Physical Security
- Python | Section 2 Practice Tasks | CSNewbs
Test your understanding of inputs in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python - Section 2 Practice Tasks Task One: Food & Colour Ask a user to input their favourite colour and their favourite food and then print a response using both answers. Requirements for a complete program: Use only one print line. Include both of the user's answers in the print line. Include capital letters, full stops and no irregular spacing in the printed line. Remember: Break up variables in a print line by using commas or plus signs between each part of the "sentence" . Example solutions: What is your favourite colour? green What is your favourite food? cheese Yum! I'll have green cheese for dinner tonight! What is your favourite colour? purple What is your favourite food? ice cream Let's have purple ice cream for breakfast! Task Two: Trivia Question Create a program that asks the user to input an answer to a trivia question of your choice then prints the correct answer with their response too. Requirements for a complete program: Only two lines. Include capital letters, full stops and no irregular spacing in the printed line. Example solution: What is the capital city of Botswana? Windhoek Correct answer: Gaborone. Your answer: Windhoek What is the closest planet to Earth? Mars Correct answer: Mars. Your answer: Mars Task Three: Getting to School Create a program that asks the user how they get to school and how many minutes it takes them (using int ). Then print an appropriate response that uses both variables . Requirements for a complete program: Use only one print line. Include both of the user's answers in the print line. Include capital letters, full stops and no irregular spacing in the printed line. Example solution: How do you get to school? car How many minutes does it take you? 45 Really? It takes you 45 minutes to get here by car? How do you get to school? walking How many minutes does it take you? 20 Really? It takes you 20 minutes to get here by walking? ⬅ 2b - Inputting Numbers 3a - Data Types ➡










