Search CSNewbs
Search this site
304 results found with an empty search
- Key Stage 3 Python | Turtle | CSNewbs
The final part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about importing turtle to command a moving object. Python - #6 - Turtle Import the Turtle The turtle library stores all of the code to create and move an object called a turtle . The turtle library must be imported into your Python program before you can use it to draw lines, shapes and colours . Create a new Python program and save the file as PythonTurtle . Write import turtle as the first line of code. Basic Shapes The turtle can be controlled by writing how many pixels it should travel forward and the angle it should point left or right . Moving Forwards turtle.forward(100) will move the turtle forward by 100 pixels. turtle.forward(200) will move the turtle forward by 200 pixels. When using the left command or the right command, the turtle won't actually move , but it will rotate by the number of degrees that you state. For example, typing turtle.left(90) will point the turtle upwards . Rotating Left & Right Copy the code to the right to make the turtle draw a square. Then try to make: A Rectangle A Triangle A Pentagon A Hexagon Square Rectangle Triangle Pentagon Hexagon Hint: To work out the angles, divide 360 by the number of sides. Using Loops You can use a for loop to repeat code . This is especially helpfully with intricate shapes with many sides. The code below will print a square but in only 3 lines instead of the 8 lines from task 2. This is the number of times the code underneath will be repeated . Change it to a higher number to repeat it more often . Each line after the 'for num in range' line must be indented . Press the tab key once on your keyboard to indent your code. Task 3 - Copy the code above to make the turtle draw a square using a loop. Then try to make: A Heptagon An Octagon A Circle A Pentagram (5-sided Star) Square Heptagon Octagon Circle Pentagram Hint: To work out the angles, divide 360 by the number of sides. Advanced Features Choose a background colour turtle .bgcolor("red") Choose the line size and colour turtle.pensize(6) turtle.color("green") Fill a shape turtle.color("yellow") turtle.begin_fill() (put your turtle's directions in here) turtle.end_fill() Lift the pen turtle.penup() turtle.pendown() Speed up/Slow down the turtle turtle.speed(speed=10) Change the turtle's appearance turtle.shape("turtle") Other options include "circle" and "arrow". Task 4 - Use the code above to make: A blue square on a red background. A yellow triangle on a pink background. Two different coloured circles - not touching each other. Three different shapes of three different colours - not touching each other. Complex Shapes Use everything that you have learned on this page to help you create more complex shapes. You could try: A Flower A Word (like your name - you will need to use the penup() and pendown() commands. A Christmas tree A Landscape (green ground, blue sky, yellow sun) <<< Selection
- 2.4a - Number Systems - OCR GCSE (J277 Spec) | CSNewbs
Learn about how to convert between the denary (decimal), binary and hexadecimal number systems. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). Exam Board: OCR 2.4a: Number Systems Specification: J277 Watch on YouTube : Binary and Denary Hexadecimal Number System Ranges Binary to Denary Denary to Binary Binary to Hexadecimal Hexadecimal to Binary Denary to Hexadecimal Hexadecimal to Denary What is binary? By now you should know that computer systems process data and communicate entirely in binary . Topic 2.3 explained different binary storage units such as bits (a single 0 or 1), nibbles (4 bits) and bytes (8 bits). Binary is a base 2 number system. This means that it only has 2 possible values - 0 or 1 . What is denary? Denary (also known as decimal ) is the number system that you've been using since primary school. Denary is a base 10 number system. This means that it has 10 possible values - 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9 . Binary & Denary Convert from binary to denary: Convert from denary to binary: Hexadecimal What is hexadecimal? Hexadecimal is a base 16 number system. This means that it has 16 possible values - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E and F . Hexadecimal is used as a shorthand for binary because it uses fewer characters to write the same value . This makes hexadecimal less prone to errors when reading or writing it , compared to binary. For example, 100111101011 in binary is 9EB in hexadecimal. Hexadecimal only uses single-character values. Double-digit numbers are converted into letters - use the table on the right to help you understand. Binary to hexadecimal: Hexadecimal to binary: Converting from denary to hexadecimal / hexadecimal to denary To convert from denary to hexadecimal or from hexadecimal to denary , it is easiest to convert to binary first . However, it is possible to convert directly from denary to hexadecimal or directly from hexadecimal to denary . The videos below explain both methods . Denary to hexadecimal: Hexadecimal to denary: Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Watch on YouTube Q uesto's Q uestions 2.4a - Number Systems: 1. Explain why hexadecimal numbers are used as an alternative to binary . Use an example . [ 3 ] 2. Convert the following values from binary to denary : a. 00101010 b. 11011011 c. 01011101 d. 11101110 e. 01011111 [1 each ] 3. Convert the following values from denary to binary : a. 35 b. 79 c. 101 d. 203 e. 250 [1 each ] 4. Convert the following values from binary to hexadecimal : a. 11110101 b. 01100111 c. 10111010 d. 10010000 e. 11101001 [1 each ] 5. Convert the following values from hexadecimal to binary : a. C2 b. 8A c. DE d. 54 e. F7 [1 each ] 6. Convert the following values from denary to hexadecimal : a. 134 b. 201 c. 57 d. 224 e. 101 [1 each ] 7. Convert the following values from hexadecimal to denary : a. 32 b. A5 c. 88 d. C0 e. BE [1 each ] Click the banners below to try self-marking quizzes (Google Forms) on these topics. Binary to Denary: Denary to Binary: Binary to Hexadecimal: Hexadecimal to Binary: 2.3 - Data Units Theory Topics 2.4b - Binary Addition & Shifts
- All Programming Topics | CSNewbs
A list of programming topics including HTML, Greenfoot, Python. All Programming Topics Python HTML Greenfoot Assembly Language App Inventor 2
- 1.3.3 - Application Software Types | F160 | Cambridge Advanced National in Computing | AAQ
Learn about the purpose, characteristics, advantages, disadvantages, examples and client requirements of application software types, including off-the-shelf, custom off-the-shelf and bespoke 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.3 - Application Software Types Watch on YouTube : Off-the-Shelf Software Custom Off-the-Shelf Software Bespoke Software There are three application software types you need to know : Off-the-shelf software Custom off-the-shelf software Bespoke software For each software type , you need to know : Its purpose and common characteristics . The advantages and disadvantages of using the software. How client requirements affect the selection of that software. Application Software Types Off-the-Shelf Software Off-the-shelf software is pre-made and available for anyone to buy and use . It is designed for general users and common tasks . It is pre-developed and ready-made with standard features for a wide audience , not custom-built for a specific user. Its purpose is to provide a cost-effective , quick-to-deploy solution for popular applications . Custom Off-the-Shelf Software Custom off-the-shelf software is pre-built like regular off-the-shelf software , but can be slightly customised to meet specific user needs . It offers a balance between quick setup and limited personalisation . It supports configurable features such as add-ons , plugins or modules to extend or adapt functionality while the base software remains maintained and updated by the original developer . Bespoke Software Bespoke software is designed and built specifically for one organisation or user . It fits their exact needs but usually costs more and takes longer to develop . An example is a bespoke system developed for a specific bank with custom software to handle financial regulations , unique products and security needs . Other examples include government systems , hospital patient management and air traffic control . Q uesto's Q uestions 1.3.3 - Application Software Types: 1. Explain the differences in purpose and characteristics between off-the-shelf and custom off-the-shelf software. [4 ] 2. A dental surgery needs new software to manage its customer bookings . Justify which application software type they should use and why . [4 ] 3. Describe two advantages and two disadvantages of the three application software types on this page. [ 12 ] Off-the-shelf software gets its name from the days when software like Microsoft Word was sold on physical discs in shops , for customers to take off the shelf and install at home . D id Y ou K now? 1.3.2 - Software Categories Topic List 2.1 - Software Development Models
- 1.2 - Operating Systems | F160 | Cambridge Advanced National in Computing | AAQ
Learn about network operating systems, open source operating systems and proprietary operating systems. Resources based on Unit F160 (Fundamentals of Application Development) for the OCR Cambridge Advanced Nationals 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.2 - Operating Systems Watch on YouTube : Network Operating System Open Operating System Proprietary Operating System An operating system is software that manages the resources of a computer system , such as memory , users and files . It also provides a user interface so that humans can interact with the device's hardware . An operating system allows application software to be opened and run . There are three types of operating system that you need to know - network , open and proprietary . Operating Systems Network Operating System (NOS) A network operating system (NOS ) is software that manages network resources and allows computers to communicate over a network . Windows Server , developed by Microsoft , is an example of a network operating system . Characteristics of a Network Operating System Allows for the centralised management of users , data and security across multiple devices on a network . Enables resources such as files , applications and printers to be shared over the network . Manages user authentication and permissions control . Oversees remote access and system monitoring tools . The main type of device that uses a NOS is a server . Other devices, such as desktops or laptops , connect to the server to access shared resources . Windows Server is an example of a popular NOS . Advantages of a Network Operating System Administrators can manage users , files and security on a network from one central location . Resources such as files , printer access and applications can be shared across the network . Access levels can be controlled and user authentication helps protect data . An NOS is scalable - more devices and users can be added as needed . Central servers managed by a NOS make it easier to back up and restore important files . Disadvantages of a Network Operating System Purchasing a NOS and maintaining the servers it runs on can be expensive . Setup and management is complex and may require skilled administrators . If the main server running the NOS fails , connected computers may lose access to resources . Heavy traffic or poor configuration could slow the network down . Who uses a Network Operating System? Application developers can use a NOS to build , test and manage apps that work across networks , such as web applications , multiplayer games or cloud tools . This type of operating system is also used by organisations that need to manage multiple devices , users and resources efficiently across a network , such as a small business or a school . Open Operating System An open operating system is open-source , meaning its source code is freely available for anyone to view , modify and distribute . Source code is the original set of instructions written by a programmer using a high-level language such as Python , Java or C++ . Characteristics of an Open Operating System Users have access to the source code and can see how the OS works . The source code can be modified to suit the specific needs of the user . Development and maintenance may be led by an online community . An open OS is usually free with no licensing costs for most versions. Linux is an example of an open operating system . Android is technically an open-source OS , but most commercial Android devices (like Google Pixel phones ) include proprietary components (like Google Docs or Gmail ), which makes the full system not completely open source . Advantages of an Open Operating System It is usually free to use , modify and distribute the source code . Because the source code can be seen and modified , this type of OS is flexible and customisable . There may be updates from an online community maintaining and improving the software . Promotes experimentation to learn how systems work and try new ideas . Disadvantages of an Open Operating System Programming knowledge and skills are required to modify the source code . There may be security risks if someone edits the source code and redistributes it with malicious code . There will be less official support compared to a proprietary operating system . Some proprietary applications (like Microsoft Access for databases) will only work on a proprietary OS (like Windows ). Who uses an Open Operating System? App developers would use an open OS when the device their application will be used on is not tied to a specific proprietary system (like Windows or MacOS ). For example, a charity making a free educational app for developing countries would choose an open OS so it can run on low-cost , older smartphones . It can be customised and tested on a range of devices . Applications for specific single-purpose systems would also use an open OS , such as an information terminal in a museum . Linux could be used to develop a simple user interface and remove unnecessary features . Proprietary Operating System A proprietary operating system is software that is owned by a company or individual and the source code is not accessible for users to view , modify or distribute . Users must typically buy a licence or agree to the terms of use . Characteristics of a Proprietary Operating System The source code is hidden from the user and cannot be legally modified . A paid licence or subscription is usually required to use the software . It may be maintained and updated by the developer(s) who own it . Only the developer controls updates and the features that are added or fixed . Examples include Microsoft Windows (e.g. Windows 11 ), macOS (for Apple desktops and MacBooks ), iOS (for iPhones ) and iPadOS for iPads ). Advantages of a Proprietary Operating System There is an expectation that it is user-friendly and has been well tested . There may be official support and regular updates for improvements and bug removal . A proprietary OS has a high compatibility with proprietary software such as Microsoft Office or Adobe editing apps . The OS is expected to be stable and secure , with access restricted to system files . Disadvantages of a Proprietary Operating System A paid licence to use the OS is often required , which may be expensive . There is limited customisation for users as the source code cannot be seen or modified . Users rely on the vendor (developer ) for updates and bug fixes . Some proprietary OS are designed to only work on specific hardware (such as iOS only working on iPhones ). Who uses a Proprietary Operating System? App developers will need to use a proprietary OS if they are developing applications for a device that requires a specific proprietary OS , for example if they are creating a game for iPhones , they will need to use iOS . A company designing a finance application on desktops with Microsoft Access and Microsoft Excel must use a proprietary OS like Windows so that it can be integrated with these other types of proprietary applications . Q uesto's Q uestions 1.2 - Operating Systems: 1. What is an operating system ? [2 ] 2. For each of the three types of operating systems , create a poster , information sheet or factfile which includes the following information : Characteristics Advantages Disadvantages Example of how it could be used [10 per OS ] Windows 11 is Microsoft's current operating system . Windows 1.0 was their first release, introduced in 1985 and included basic versions of Calculator , Notepad and Paint . D id Y ou K now? 1.1 - Programs & Applications Topic List 1.3.1 - Application Types
- 3.2 - Packets & Switching - Eduqas GCSE (2020 spec) | CSNewbs
Learn about the six parts of a data packet and how packet switching works. Based on the 2020 Eduqas (WJEC) GCSE specification. 3.2: Data Packets & Switching Exam Board: Eduqas Specification: 2020 What is a data packet? When sending data across a network, files are broken down into smaller parts called data packets . Whole files are too large to transfer as one unit so data packets allow data to be transferred across a network quickly . Each packet of data is redirected by routers across networks until it arrives at its destination. Data packets may split up and use alternative routes to reach the destination address. When all the packets have arrived at the destination address the data is reassembled back into the original file. Contents of a Data Packet Data packets contain six distinct pieces of data which are used to redirect the packets towards the destination address. Packet Switching vs. Circuit Switching The key difference is that a circuit-switched network sends data along the same route . A packet-switched network sends data packets along different routes . Packet Switching With a packet-switched network the data is split into packets . The data packets are transmitted over a network and may take different routes to its destination. When all the packets have arrived the data is reassembled . The Internet is an example of a packet-switching network. Advantages of Packet Switching: Transmission is more secure as it is harder for a hacker to intercept complete data because it can take different routes . If a network device fails the data packets can take an alternative route . Data packets can be sent efficiently and individually across less busy routes . Disadvantages of Packet Switching: Reassembling the data takes longer because packets may arrive out of order . It is less reliable than circuit switching as some data packets may not reach the destination (this is called packet loss ). Circuit Switching When data is transmitted over a circuit-switched network all of the data takes the same route to the destination address in one continuous stream . The data is quickly reassembled at the destination because it is already in the correct order . The old telephone system is an example of a circuit-switched network. Advantages of Circuit Switching: Reassembling the data is quick because the packets arrive in the order that they were sent. It is more reliable than packet-switching because data is sent in one continuous stream . The transmission is fast and should encounter fewer errors - once the connection has been securely established . Disadvantages of Circuit Switching: Less secure as hackers could intercept the data and more easily access the data as it all takes the same route. Establishing a connection takes time to set up. If any device fails on the route then the whole connection breaks and data transfer will be incomplete. Q uesto's Q uestions 3.2 - Data Packets & Switching: 1. Draw the data packet diagram and label all 6 pieces of information . [ 6 ] 2a. Describe how packet switching works . [3 ] 2b. Describe the advantages of packet switching . [3 ] 2c. Describe the disadvantages of packet switching . [2 ] 3a. Describe how circuit switching works . [3 ] 3b. Describe the advantages of circuit switching . [3 ] 3c. Describe the disadvantages of circuit switching . [3 ] 3.1 - Network Characteristics Theory Topics 3.3 - Network Topology
- 1.2 - The FDE Cycle - Eduqas GCSE (2020 spec) | CSNewbs
Learn about the seven steps of the fetch-decode-execute cycle and important registers in the CPU. Based on the 2020 Eduqas (WJEC) GCSE specification. 1.2: The FDE Cycle Exam Board: Eduqas Specification: 2020 The Fetch - Decode - Execute (FDE) cycle is performed by the CPU millions of times every second. This cycle is how the CPU processes data and instructions for each program or service that requires its attention. Important Registers A register is a small storage space for temporary data in the CPU . Each register has a specific role . There are five essential registers used in the FDE cycle : Program Counter (PC) A register that tracks the RAM address of the next instruction to be fetched . Memory Address Register (MAR) A register that tracks the RAM address of the instruction that is to be fetched . Memory Data Register (MDR) The MDR stores the instruction that has been transferred from RAM to the CPU . Current Instruction Register (CIR) A register that stores the instruction that has been fetched from RAM , and is about to be decoded or executed . Accumulator (ACC) The ACC stores the result of mathematical or logical calculations . Fetch - Decode - Execute Cycle The essential idea of the FDE cycle is that instructions are fetched from RAM , to be decoded (understood) and executed (processed) by the CPU . 1. The Program Counter (PC ) register displays the address in RAM of the next instruction to be processed . This value is copied into the Memory Address Register (MAR ). 0054 2. The PC register is increased by 1 . This prepares the CPU for the next instruction to be fetched. 0055 3. The CPU checks the address in RAM which matches the address held in the MAR . 0054 4. The instruction in RAM is transferred to the Memory Data Register (MDR ). 5. The instruction in the MDR is copied into the Current Instruction Register (CIR ). MDR MDR CIR 6. The instruction in the CIR is decoded (understood) and executed (processed). Any result of an execution is stored in the Accumulator (ACC ) register. CIR ACC 7. The cycle repeats by returning to the first step and checking the program counter for the address of the next instruction . Q uesto's Q uestions 1.2 - The Fetch - Decode - Execute (FDE) Cycle: 1 . What is the purpose of the registers ? [1 ] 2 . Describe the purpose of each register : a. The Program Counter (PC) [ 1 ] b. The Memory Address Register (MAR) [ 1 ] c. The Memory Data Register (MDR) [ 1 ] d. The Current Instruction Register (CIR) [ 1 ] e. The Accumulator (ACC) [ 1 ] 3. Draw a diagram of the seven steps of the Fetch - Decode - Execute cycle . [7 ] 1.1 - The CPU 1.3 - Primary Storage Theory Topics
- 1.6 - Information Formats | Unit 2 | OCR Cambridge Technicals | CSNewbs
Learn about different formats for presenting data on the internet including webpages, blogs, streamed video and audio, document stores and RSS feeds. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 1.6 - Information Formats Exam Board: OCR Specification: 2016 - Unit 2 The following formats are used to display information on the internet . Web Pages Web pages can be used for a diverse range of purposes including advertising products, reporting information , displaying images and eCommerce (online shopping). There are two types of web page: Static web page Static web pages contain content that is pre-built and remains the same each time the page is loaded . Static web pages are cheaper and easier to create and load quicker ; they use basic HTML. It can be changed by the site editor but will appear the same for everyone who has access to it, such as a classic promotional website for a small company. Dynamic web page Dynamic web pages are generated when they are loaded and can appear different to different users . Dynamic web pages are harder to code but they can be linked to databases to allow them to show personalised content to whoever is viewing the site; they are written in server-side languages like PHP. The Amazon homepage is an example of a dynamic web page as personalised deals based on previous user history will be shown if you are logged in with an account. Blogs Blogs are used to share information with like-minded individuals, such as those who enjoy the same hobbies or beliefs . Charities , game developers and other businesses also use blogs as a way of updating their customer base with what they have done or what they are working on. Blogs can feature multimedia such as text, images, videos and links to other sites. Advantages of Blogs Disadvantages of Blogs ✓ Share information with followers in the format of text, images and video . ✓ Blogs and vlogs can unite people with similar interests , such as a cookery blog or travel vlog. X Takes a lot of effort and time to create posts, especially if videos need to be edited before posting. Potential customers could be lost if blogs aren't updated regularly . X It can be difficult to build up a customer base directly from a blog. Posts must be engaging , researched and correct . Podcasts A podcast is a downloadable audio file , usually on a certain topic such as sports or gaming that can be listened to when convenient for the user. Spotify and Apple Music have a wide library of podcasts. Advantages of Podcasts Disadvantages of Podcasts ✓ Podcasts are not (usually) recorded live , so they can be edited and uploaded at a certain time each week. ✓ Podcasts can be listened to when convenient for the user, so they can't 'miss' it and can catch up when is best for them. ✓ Podcasts are becoming more and more popular , so the possible audience base is growing each year. Celebrity guests are one way to entice more listeners. X Takes time to record a podcast, especially if they need to be edited to add in music or sound effects or to remove mistakes . X It can be difficult to build up an audience directly from a podcast. Podcasts should be on a topic that interests people and spoken in an engaging way. Streamed Audio & Video Streaming is the process of receiving video / audio data in a continuous flow . This allows the user to access the video / audio immediately , without having to wait for the file to download entirely. For example, the BBC provide live radio streaming online for their radio shows and BBC iPlayer allows users to watch 'catch up' programs that previously aired. YouTube is a widely-used streamed video platform and Spotify is a popular streamed audio service. Advantages of Streamed Media Disadvantages of Streamed Media ✓ Streaming does not require data to be downloaded entirely before use - users can watch / listen as soon as the connection starts . ✓ Streaming is harder for users to share than downloading a file . Netflix uses this as a form of piracy protection . X Streaming requires high bandwidth so users may suffer performance issues on slower devices and networks . X Streaming requires a constant network connection compared to downloadable media which can be used when offline / outside. Social Media Channels Social media channels provide a huge amount of data on users in an informal space. Organisations can receive feedback through user posts and comments . Real-time statistics like views, likes and shares provide an insight to user opinion . Social media channels include traditional sites such as Facebook and Twitter as well as business and recruitment platforms such as LinkedIn . Discussion boards and forums , such as Reddit , are increasingly popular for users to discuss similar hobbies and interests such as politics, gaming and healthy eating. Advantages of Social Media Disadvantages of Social Media ✓ Social media can increase a business' online presence as it is online 24/7 for users to comment and interact with posts. ✓ Posts can be shared between users and their contacts, allowing a post to 'go viral' and be seen by potentially millions of viewers . ✓ Posts can be shared in different information styles such as text , images , video or hyperlinks to other websites. ✓ Businesses can use social media to communicate with their customer s , such as direct messages on Facebook if a customer is unhappy. X Businesses may need to hire a social media manager to interact with customers , update posts and remove spam. X Negative posts can be shared and spread very quickly , such as if a customer complains about how a business treated them poorly. X Businesses must be cautious about what they post , to not accidentally offend others and damage their reputation . Emails Emails can be used to provide information to a large amount of people almost instantly . A company may use an email to advertise new products , inform potential customers of a marketing promotion or target specific users based on previous interactions. Advantages of Emails Disadvantages of Emails ✓ Faster (almost instant) and cheaper (usually free) to send an email compared to traditional letters . ✓ Files can be attached to the email, such as images, videos or forms to complete. ✓ An audit trail can be kept, recording communication between the company and its customers. ✓ Emails can be sent, delivered and read at the user's convenience and to any internet-enabled device across the world . X An internet connection is required to open and read the email. Larger attachments may not open on mobile devices. X Malware can spread through email attachments. Phishers use emails to gain access to personal information and account details . X Some attachments sent via email may be unreadable on different devices / operating systems. X Emails may automatically go into the spam / junk folder and be deleted without being read . Document Stores Document stores allow users to store online files in cloud storage . Common services are Google Drive , Dropbox and Microsoft's OneDrive . Storing documents in the cloud allows users to edit and access them from any location with an internet connection and opens up opportunities for collaboration . Many organisations offer cloud storage space for free up to a certain amount before charging customers for more data. Document stores are very convenient for users and replace the need for portable storage devices like USB sticks. Teachers can use documents stores to share resources with other staff in a school . Documents stores can only be accessed with an internet connection so files will be unavailable during maintenance or network failure. Users rely on the cloud hosting provider, such as Microsoft and Google to keep the data secure and available . RSS Feeds RSS Feeds (short for Rich Site Summary ) allow users to subscribe to updates from their favourite websites. It is a web feed that updates whenever a subscribed site releases new information. For example, the BBC used to post updates for important news headlines which appeared in a subscribed user's RSS feed. As of 2020 most browsers no longer have built-in RSS functionality and it is rarely used . Q uesto's Q uestions 1.6 - Information Formats: 1. Describe the difference between static and dynamic web pages . [4 ] 2. For each type of information format describe its advantages and disadvantages . a. Blogs [8 ] b. Podcasts [8 ] c. Streamed Audio / Video [8 ] d. Social Media [8 ] e. Emails [8 ] 3. Explain how document stores could be used by organisations and individuals . [4 ] 4. Explain what an RSS feed is and how an organisation could use it . [3 ] 1.5 - WWW Technologies Topic List 1.7 & 1.8 - Internet Pros & Cons
- Assembly Language | CSNewbs
Learn about key mnemonics used in assembly language and how very simple programs can be created. Assembly Language Assembly language is a low-level programming language - it is closer to machine code (binary) than high-level programming languages like Python. Assembly language uses mnemonics (abbreviations of commands) to signify instructions; for example, input is written as INP and output is written as OUT . Little Man Computer is a representation of assembly language . This simulator will help you understand assembly language and allow you to check if your instructions are correct. Assembly Language Mnemonics INP (Input) INP is used to input a number . The number is temporarily stored in the accumulator . OUT (Output) OUT is used to output the number currently stored in the accumulator . STA (Store) STA stores the value that is currently in the accumulator . It can be used to assign a value to a variable. ADD (Addition) ADD is used to add a number to the value currently stored in the accumulator. SUB (Subtraction) SUB takes away a number from the value currently stored in the accumulator. LDA (Load) LDA is used to load the value of a stored variable back into the accumulator . BRZ (Branch if Zero) BRZ is used to loop only if the value in the accumulator is currently 0 . BRP (Branch if Positive) BRP is used to loop only if the value in the accumulator is currently positive (including 0). BRA (Branch Always) BRA is used to loop continuously . HLT (Halt) HLT will stop running the program . Every program MUST have a HLT command. DAT (Data Definition) DAT must be used to define a variable name (and / or set it with a starting value). Data definitions must be written at the end of the instructions . Peter Higginson's Little Man Computer simulation Examples of Simple Assembly Language Programs #1 - Input & Output Program Purpose: Input a number, store the number as a variable called Number1 and output the number. 1. Lets the user input a number 3. Outputs the value in the accumulator - which will be the number that was just inputted. 5. Defines a variable called 'Number1'. This has to be at the end of the program and you must write the variable name first, not the command first. INP STA Number1 OUT HLT Number1 DAT 2. Stores the number in a variable named 'Number1' - there must be no spaces in a variable name. 4. Halts (stops) the program. Type these instructions line by line into the Little Man Computer simulator to see how it works. #2 - Addition Program Purpose: Input and store two numbers. Add them together. Output the total. 1. Lets the user input a number 3. Lets the user input another number 5. Adds number1 to the value in the accumulator (which is currently number2 as you just inputted it). 7. Halts the program. Type these instructions line by line into the Little Man Computer simulator to see how it works. Then change the program to subtract the number instead. INP STA Number1 INP STA Number2 ADD Number1 OUT HLT Number1 DAT Number2 DAT 2. Stores the inputted number in a variable named 'Number1'. 4. Stores the inputted number in a variable named 'Number2'. 6. Outputs the value in the accumulator (which is now number1 added to number2. 8. & 9. The two variables Number1 and Number2 are defined on separate lines. #3 - Load in Order Program Purpose: Input and store three numbers. Load and output them in the order that they were entered. 1. - 6. Lets the user input three numbers and immediately stores each one as they are entered. 8. Now that Number1 has been loaded into the accumulator, this value is outputted. 13. Halts the program. Type these instructions line by line into the Little Man Computer simulator to see how it works. Let the user input a fourth number and output this fourth number last . INP STA Number1 INP STA Number2 INP STA Number3 LDA Number1 OUT LDA Number2 OUT LDA Number3 OUT HLT Number1 DAT Number2 DAT Number3 DAT 14. - 16. The three variables Number1, Number2 & Number3 are defined on separate lines. 9. - 12. Number2 is loaded and output then Number3 is loaded and output 7. Once all three numbers have been inputted and stored, the first number is loaded back into the accumulator. #4 - Branching Program Purpose: Input and store two numbers. Output the largest number. (Branching required). 1. - 4. Lets the user input two numbers and immediately stores each one as they are entered. 7. BRP is 'Branch is Positive'. If the result of Number1 - Number2 is positive then the program will jump to line 11. You can write any value instead of 'loop', such as 'jump' or 'break'. If the result is not positive it will continue to the next line. 11. - 13. The program will jump to line 11 if the result of Number1 - Number2 is positive. This means that Number1 is larger than Number2 so Number1 is loaded and output then the program is halted. INP STA Number1 INP STA Number2 LDA Number1 SUB Number2 BRP loop LDA Number2 OUT HLT loop LDA Number1 OUT HLT Number1 DAT Number2 DAT 5. & 6. Loads Number1 and subtracts Number2 from it. 8. - 10. The program will continue to line 8 if the result of Number1 - Number2 is not positive. Because the result is a negative number, this tells us that Number2 is larger than Number1. So we load Number2, output it because it is bigger, then halt the program. 14. - 15. The variables Number1 & Number2 are defined on separate lines. Type these instructions line by line into the Little Man Computer simulator to see how it works. Change the program so that the smallest number is output .
- 8.2 - Understanding Algorithms - Eduqas GCSE (2020 Spec) | CSNewbs
Learn about algorithms including pseudocode and flowcharts. Based on the 2020 Eduqas (WJEC) GCSE specification. 8.2: Understanding Algorithms Exam Board: Eduqas Specification: 2020 What is an algorithm? An algorithm is a set of instructions , presented in a logical sequence . In an exam you may be asked to read and understand an algorithm that has been written. To prove your understanding you may be asked to respond by actions such as listing the outputs of the algorithm, correcting errors or identifying an error within it. Programmers create algorithm designs as a method of planning a program before writing any code. This helps them to consider the potential problems of the program and makes it easier to start creating source code. There are two main methods of defining algorithms : Defining Algorithms - Pseudocode & Flowcharts Pseudocode Pseudocode is not a specific programming language but a more general method of describing instructions . It should be unambiguous, and it should not resemble any particular kind of programming language (e.g. Python or Java), so it can theoretically be turned into working code in any language. 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 Flowcharts A flowchart can be used to visually represent an algorithm. The flowchart symbols are: Algorithm Examples Below are two different methods for representing the same algorithm - a program to encourage people to buy items cheaply at a supermarket. The program allows the price of items in a supermarket to be entered until the total reaches 100. The total price and the number of items entered are tracked as the program loops. Once the total reaches 100 or more, an if statement checks how many items have been entered and a different message is printed if there are 20 or more items, 30 or more items or less than 20 items. Pseudocode Flowchart {This is a program to see how many items you can buy in a supermarket before you spend over £100} total is integer, itemsentered is integer, itemprice is integer set total = 0 set itemsentered = 0 while total < 100 output "enter the price of the next item" input itemprice total = total + itemprice itemsentered = itemsentered + 1 repeat if itemsentered >= 20 then output "You are on your way to saving money." elif itemsentered => 30 then output "You're a real money saver." else output "Look for better deals next time." end if Reading Algorithms In an exam you may be asked to read an algorithm and prove your understanding , most commonly by listing the outputs . Start from the first line and follow the program line by line , recording the value of variables as you go . When you encounter a for loop , repeat the indented code as many times as stated in the range . Example Algorithm: Start NewProgram i is integer maxvalue is integer input maxvalue for i = 1 to maxvalue output (i * i) ??????? output 'program finished' End NewProgram Example Questions: 1. List the outputs produced by the algorithm if the 'maxvalue' input is 5 . 2. State the code that has been replaced by '???????' and what the code's purpose is. Example Answers: 1. Outputs: 1 4 9 16 25 program finished 2. Missing Code: next i Purpose: Moves the loop to the next iteration. Watch on YouTube Q uesto's Q uestions 8.2 - Understanding Algorithms: 1a. Read the algorithm shown on the left and list all outputs in the correct order if the inputs are 2 for height and 72 for weight . 1b. Give the code that is missing from line 25 . 8.1 - Programming Principles Theory Topics 8.3 - Writing Algorithms
- Python | 5c - Date & Time | CSNewbs
Learn how to use time commands to display the current date and time in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 5c - Time & Date ctime() The easiest way to output the current time and date is to use the ctime() command. Import the ctime command from the time library before you use and print it: from time import ctime print ( "Current time:" , ctime()) = Current time: Wed Sep 13 16:07:20 2023 This will print the time and date, but it looks rather unprofessional, and the exact format depends on the type of system that you are currently running so it may vary for different users. Date / Time Task 1 ( Dentist Surgery) Print a greeting for a dentist surgery with the current date and time. Example solution: Welcome to Greenvale Dentist Surgery, it is currently: Wed Sep 13 16:16:24 2023 strftime() A better alternative to the ctime() command is to use strftime() which stands for str ing f rom time as you can select specific parts of the date and time to display. This command requires a directive to be written with a percentage symbol as a string in the brackets . For example, the current hour (%H ), minute (%M ) and second (%S ) can be printed between colons to show the time . from time import strftime print ( "The current time is" , strftime( "%H:%M:%S" )) = The current time is 13:18:57 There are many different directives that you can use to display exactly what you are looking for, such as: from time import strftime day = strftime( "%A" ) print ( "The current day is" , day) month = strftime( "%B" ) print ( "The current month is" , month) year = strftime( "%Y" ) print ( "The current year is" , year) = The current day is Thursday The current month is September The current year is 2023 The following directives can be used with strftime(). Don't forget that directives must be typed within speech marks . Date - Weekday: %a – Current day of the week abbreviated (e.g. Sun, Mon) %A – Current day of the week in full (e.g. Sunday, Monday) %w – Current day of the week in chronological order (0 is Sunday and 6 is Saturday) %W – Current week number (e.g. 01, 26, 52) Month: %d – Current day of the month (e.g. 01, 11, 31) %m – Current month as a number (e.g. 01, 06, 12) %b – Current month abbreviated (e.g. Jan, Jun, Dec) %B – Current month in full (e.g. January, December) Year: %y – Current year abbreviated (e.g. 16, 17) %Y – Current year in full (e.g. 2016, 2017) %j – Current day of the year (e.g. 001, 150, 365) Time - Hour: %H – Current hour in 24-hour clock (e.g. 00, 12, 20) %I – Current hour in 12-hour clock (e.g. 01, 08, 12) %p – Whether it is currently AM or PM Minute: %M – Current minute (e.g. 00, 30, 59) Second: %S – Current second (e.g. 00, 30, 59) More Directives - %z – Current time difference from UTC (Co-ordinated Universal Time) (e.g. +0000, -0500, +1100) %Z – Current time zone (e.g. GMT Standard Time, EST, CST) Just looking for a quick date or time display and not bothered about customisation? Try these: %c – Current date and time in full (e.g. Tue Feb 19 13:35:20 2016) %x – Current date (e.g. 19/02/16) %X – Current time (13:36:20) Date / Time Task 2 ( Calendar App ) Create a program that asks the user if they want to see the current date , the current time or 'other '. Use the strfftime directives above to show what the user asks for. It's up to you which directives you use for the 'other' option , such as displaying the current day of the year (%j ) or current week of the year (%W ). Example solutions: Type TIME for the current time, DATE for the current date or OTHER: TIME The current time is 13:46PM Type TIME for the current time, DATE for the current date or OTHER: DATE The date today is Thursday 14 September 2023 Type TIME for the current time, DATE for the current date or OTHER: OTHER Did you know today is day number 257 of 2023? Between Dates You may want to work out the number of days between two dates . This can be done by importing the date command from the timedate library. Below is a simple example: from datetime import date date1 = date(2021,9,15) date2 = date(2022,1,20) difference = date2 - date1 print ( "There are" , difference.days , "days between" , date1 , "and" , date2) Make sure the date is entered in the format of year, month, day . The .days code removes the difference in hours and seconds to just display the number of days difference. There are 127 days between 2021-09-15 and 2022-01-20 Today's Date The program here uses strftime to check the current year, month and day and organise it into the date format . This can then be used together with code similar to the program above to check the number of days between one specific date and the current date. from datetime import date from time import strftime thisyear = int (strftime( "%Y" )) thismonth = int (strftime( "%m" )) thisday = int (strftime( "%d" )) todaysdate = date(thisyear,thismonth,thisday) print ( "The date today is" , todaysdate ) The date today is 2023-09-14 Input a Date The program here shows how to input a date into a format that can then be used by Python to work out the difference between two dates . from datetime import date year = int ( input ( "Enter a year: " ) month = int ( input ( "Enter a month: " ) day = int ( input ( "Enter a day: " ) chosendate = date(year,month,day) print ( "The chosen date is" , chosendate ) Enter a year: 1964 Enter a month: 5 Enter a day: 13 The chosen date is 1964-05-13 Date / Time Task 3 ( Days Alive) Create a program that works out how long the user has been alive for . Use the examples above to automatically make today's date and then allow the user to input their year , month and day of birth. Get Python to work out the difference between today and their date of birth. Example solutions: Enter a year: 1998 Enter a month: 3 Enter a day: 29 You have been alive for 9300 days! Enter a year: 2007 Enter a month: 12 Enter a day: 25 You have been alive for 5742 days! ⬅ 5b - Sleep 5d - Colorama ➡
- 3.1 - Compression, Encryption & Hashing | OCR A-Level | CSNewbs
Learn about lossy and lossless compression and the lossless compression algorithms run-length encoding and dictionary coding. This topic also covers symmetric and asymmetric encryption and the uses of hashing. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 3.1 - Compression, Encryption and Hashing Specification: Computer Science H446 Watch on YouTube : Lossy & Lossless Compression Lossless Compression Algorithms Encryption Hashing Lossy vs Lossless Compression Compression is the process of reducing the size of a file so it takes up less storage space and can be transmitted more quickly over a network . It works by encoding data more efficiently or removing unnecessary information . Benefits of compression include faster file transfer speeds , reduced storage requirements and improved performance when streaming data . Lossy compression permanently removes some data that is less important to human perception , such as subtle sounds or image details , resulting in smaller file sizes but slightly lower quality . Lossless compression reduces file size without losing any data , allowing the original file to be perfectly restored after it is decompressed . Lossless Compression Algorithms There are two types of lossless compression that you need to know: Run-Length Encoding (RLE ) is a simple form of lossless compression that reduces file size by storing repeating data as a single value and a count . For example, a sequence like AAAAABBBCCCC could be stored as A5B3C4 , saving space in files with many repeated elements , such as pixels in images . Dictionary Encoding replaces repeating patterns of data with shorter codes that reference entries in a dictionary . The dictionary stores common sequences once , and each repetition is replaced by a shorter reference , making it efficient for text and other data with recurring patterns . Encryption Encryption is the process of converting readable data (plaintext ) into an unreadable form (ciphertext ) to prevent unauthorised access . It ensures the confidentiality and security of information during storage or transmission . Symmetric encryption uses the same key for both encryption and decryption , meaning the sender and receiver must share the key securely . It is fast and efficient, but key distribution is a major risk if the key is intercepted . Asymmetric encryption uses a pair of keys - a public key for encryption and a private key for decryption . It is more secure for communication and vital for confidential uses such as banking . Hashing Hashing is the process of applying a mathematical function (hash function ) to data to produce a fixed-size value , known as a hash . It is a one-way process , meaning the original data cannot be reconstructed from the hash . Hashing is commonly used for data integrity checks , password storage and digital signatures . Even a tiny change in the input data produces a completely different hash , making it useful for detecting tampering or corruption . Q uesto's K ey T erms D id Y ou K now? Compression: lossy compression, lossless compression, run-length encoding, dictionary encoding Encryption: plaintext, ciphertext, key, symmetric encryption, asymmetric encryption Hashing: hash function, hash Alan Turing and his team used pattern recognition to analyse recurring sequences in encrypted German messages , helping to break the Enigma code , which was a major factor in the Allies’ victory in World War II . 2.4 - Programming Languages A-Level Topics 3.2 - Databases








