top of page

Search CSNewbs

Search this site

304 results found with an empty search

  • 2.2 - Computational Methods | OCR A-Level | CSNewbs

    Learn about computational methods including problem recognition, decomposition, divide and conquer, abstraction, backtracking, data mining, heuristics, performance modelling, pipelining and visualisation. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level Specification: Computer Science H446 2.2 - Computational Methods Watch on YouTube : Problem recognition Decomposition Divide and conquer Abstraction Backtracking Data mining Heuristics Performance modelling Pipelining Visualisation Computational methods are techniques to analyse problems and design efficient , effective solutions . Problem Recognition Problem recognition is the process of identifying that a problem exists and understanding its nature before attempting to solve it. It involves determining the aims of the task , identifying constraints and requirements , and clarifying what inputs , outputs and processes are expected from the solution . Effective problem recognition ensures the developer understands the real-world context and avoids solving the wrong problem or missing key details . It is the essential first step that guides all later stages of computational thinking and system design . YouTube video uploading soon Decomposition Decomposition involves breaking a complex system or task into smaller , more manageable components that are easier to design , implement and test . Each sub-problem should ideally be independent and solve a specific part of the overall task , which helps reduce complexity and supports modular program design . This approach enables different developers to work on different components simultaneously and simplifies debugging , maintenance and future updates . By working through smaller logical parts , the full problem becomes far more approachable and structured . YouTube video uploading soon Divide and Conquer Divide and conquer is a technique that splits a problem into smaller sub-problems of the same type , solves them (often using recursion ), and then combines the solutions to produce the final answer . This approach can significantly improve efficiency by reducing large input sizes into more manageable chunks , as seen in algorithms like quicksort . Divide and conquer algorithms include a binary search and a merge sort . The time complexity of divide and conquer algorithms is logarithmic - O(log n) - allowing complex problems to be solved much quicker than other algorithms . YouTube video uploading soon Abstraction Abstraction means removing unnecessary details to focus only on the most important features of a problem or system . It allows programmers to create simplified models that capture essential behaviour without becoming overwhelmed by irrelevant complexities . Abstraction enables generalisation , reusable designs and clearer reasoning about how components interact . In computational contexts, abstraction also highlights the difference between real-world systems and their simplified computational models . YouTube video uploading soon Backtracking Backtracking is used to explore possible solutions to a problem by building a partial solution and abandoning it as soon as it becomes clear it cannot succeed . It works by trying an option , checking whether it leads towards a valid solution , and backtracking to try a different path if a dead end is reached . This approach is used in constraint-based problems such as maze solving . While powerful , backtracking can be computationally expensive , so it often benefits from heuristics or pruning strategies . YouTube video uploading soon Data Mining Data mining is the process of extracting useful patterns , trends and relationships from large datasets . It enables organisations to identify hidden insights , predict behaviours and support data-driven decision-making , particularly in fields such as marketing , healthcare , finance and security . Data mining can lead to enhanced decision-making that can result in innovation , a competitive advantage against similar organisations and increased revenue . It can be used to identify anomalies or unused features . However, data mining doesn't explain the patterns it can identify and it requires powerful computers with a lot of processing power to handle huge amounts of data . YouTube video uploading soon Heuristics Heuristics are approximate problem-solving strategies that aim to produce good solutions quickly when exact , optimal methods are too slow or computationally impractical . They rely on rules of thumb to guide searches through very large solution spaces efficiently . Heuristics are widely used in artificial intelligence , optimisation tasks and complex search algorithms such as A* , where perfect accuracy is less important than fast , practical solutions . The trade-off is that heuristic methods are not guaranteed to produce the optimal answer , but they dramatically reduce processing time . YouTube video uploading soon Performance Modelling Performance modelling is the process of predicting how a system or algorithm will behave under different workloads , input sizes or hardware environments . It uses tools such as mathematical analysis , simulation and Big O notation to estimate required resources such as processing time or memory use . Performance modelling offers a cheaper , quicker and often safer way to test applications . For example, when a company beta tests an online game , it can trial the system with a smaller group of players and then apply performance modelling to predict how much server capacity will be needed when the game is fully released . YouTube video uploading soon Pipelining Pipelining is a technique in which different stages of a process are overlapped so that multiple instructions or operations are being processed simultaneously at different stages . In CPU architecture , for example, one instruction might be fetched while another is decoded and a third is executed , increasing overall throughput without increasing clock speed . Pipelining can also be used in algorithms or data-processing systems to prevent idle time in stages that operate independently . However, pipelining introduces complexity because dependencies or branch mispredictions may require a pipeline to be flushed - interrupting flow and reducing efficiency . YouTube video uploading soon Visualisation Visualisation supports the understanding of a problem by presenting information in a clearer and more accessible form than text alone . It is useful for explaining complex ideas or identifying patterns . Data can be shown visually through diagrams , graphs , trees , flowcharts or tables . The advantages of visualisation include helping to model , represent , analyse or summarise complex concepts . It allows information to be communicated more clearly and in a way that is easier to interpret . It can also provide different perspectives on how a problem might be solved . YouTube video uploading soon This page is under active development. Check here for the latest progress update. Q uesto's K ey T erms Computational Methods: problem recognition, decomposition, divide and conquer, abstraction, backtracking, data mining, heuristics, performance modelling, pipelining, visualisation D id Y ou K now? Real-time location services like Google Maps use heuristics to guess travel times using heuristics such as estimated speeds , traffic history and shortcuts to make fast but approximate route suggestions . 2.1 - Programming Techniques A-Level Topics 3.1a-d - Algorithm Complexity

  • 1.4 - Internet Connections | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about methods of wired and wireless connections to transmit data on the internet, including satellite and bluetooth. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 1.4 - Internet Connections Exam Board: OCR Specification: 2016 - Unit 2 The internet i s a global network of interconnected networks . There are multiple methods of connecting to the internet . Wired Connections Copper Cables Copper cables are a cheaper type of wired internet connection that may be poorly insulated and therefore susceptible to electromagnetic interference . Copper cables are more likely to suffer from attenuation (network distortion ). However, they are malleable (easier to bend) and less likely to break than other cables such as fibre optic. They have a lower bandwidth - cannot transmit as much data at once - than fibre optic cables. Fibre Optic Cables Fibre optic cables are a very fast but expensive type of wired internet connection. Signals are transmitted as waves of light through a glass tube. Because of this fibre optic cables are not affected by electromagnetic interference and suffer less from attenuation . Fibre optic cables have a higher bandwidth - can transfer more data at one time - than copper cables but they are more fragile . Wireless Connections Bluetooth Bluetooth is a temporary short-range communication between devices within a limit of about 10 metres . For example, Bluetooth can be used to transfer audio files from one smartphone to another. The close proximity is a disadvantage but no other hardware is required for a connection. Microwave Microwave connections use radio waves to send signals across a large area via microwave towers . It can transmit a large amount of data but antennas must be in the line of sight of each other with no obstructions . Microwave connections are affected by bad weather , leading to higher chances of attenuation (network distortion ). 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 (roughly 45,000 miles), there is a delay between data transmission and it being received. GSM / 5G GSM (Global System for Mobile communications ) is a technology for allowing mobile phones to connect to a network for calls and text messages. Advances in mobile technology are classified by generations such as 4G and 5G (the current generation). Each generation is generally faster, more secure and allows for new opportunities. Connection Characteristics When connecting to the internet there are several characteristics that a user must consider: Strength Range Latency Bandwidth Storage Capacity Contention Latency is the delay when sending data across a network. Bandwidth is the maximum amount of data that can be sent across a network at once . Contention refers to whether a network is dedicated ( uncontended ) or shared between users ( contended ). Q uesto's Q uestions 1.4 - The Internet: 1. Compare the differences between copper and fibre optic cables (possibly in a table) by the following features: a. Price b. Bandwidth c. Interference d. Attenuation e. Malleability / Fragility [2 each ] 2. Describe each of the different types of wireless connection . Try to list 1 advantage and 1 disadvantage of using each type. a. Bluetooth b. Microwave c. Satellite d. GSM / 5G [5 each ] 3a. State the 6 characteristics of a network. [6 ] 3b. Describe what is meant by the following characteristics : i. Latency ii. Bandwidth iii. Contention [1 each ] 1.3 - Access & Storage Devices Topic List 1.5 - WWW Technologies

  • 3.2 & 3.3 - Information Categories | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about how information can be categorised for both individuals and organisations. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.2 & 3.3 - Information Categories Exam Board: OCR Specification: 2016 - Unit 2 Categories of Information for Individuals Communication Texting a friend about dinner plans, sending an email to a family member in another country, ringing work because trains are delayed. Education and Training Revision textbooks, logging into a virtual learning environment to upload a completed worksheet, hand-written feedback sheets from a teacher after an exam. Planning Using a shared document to arrange meeting dates, using a webpage hosting a bus timetable, a calendar app. Financial Using a bank statement to plan holiday saving, creating a spreadsheet of expenditure this month, logging in to a secure web page to buy a present online. Entertainment Reading a film review in a magazine, listening to a podcast about trains, watching a tutorial on DIY. Research Using online encyclopedias for a school project, searching for research articles to write an essay, using a recipe book Location Dependent Find local pizza restaurants, searching for emergency dental care on holiday, Pokemon GO Categories of Information for Organisations Knowledge Management & Creation Managing information across an organisation e.g. sharing information between branches in different cities. Management Information Systems (MIS) A system that provides an overview of key information e.g. the location and contact details of each charity worker in a disaster area. A decision can be made on overall figures or individual data as appropriate. Financial Analysis & Modelling Analysing trends e.g. determining the top selling products in a year or weekly cash flow, to create models of customer/user behaviour. Contact Management Managing contact between a business and the customer e.g. tracking appointments at a doctor’s surgery. Internal and External Communication Providing a communication medium to staff and/or customers e.g. posting Christmas opening times on the website, or sending a staff email invite to the Christmas party. Big Data Any data too large or complex for traditional data analysis techniques to be used e.g health data on the population of an entire country. Marketing, Promotion & Sales Identifying patterns or trends in sales figures, so that certain products or areas can be targeted, e.g. to plan marketing campaigns. Decision Making Using available information to make decisions, e.g. a charity deciding on the amount of aid to be sent to a disaster area based on local data. Q uesto's Q uestions 3.2 & 3.3 - Information Categories: 1. Describe two examples of each category of information used by individuals : Communication Education & Training Entertainment Planning Financial Research Location Dependent [2 each ] 2. Describe two examples of each category of information used by organisations : Knowledge Management & Creation Management Information Systems (MIS) Marketing, Promotion & Sales Financial Analysis & Modelling Contact Management Decision Making Internal & External Communication Big Data [2 each ] 3.1 - Data vs. Information Topic List 3.4 - Stages of Data Analysis

  • Python | 1c - Creating Variables | CSNewbs

    Learn how to create variables in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 1c - Creating Variables What is a Variable? A variable represents a value that can change as a program is running . The two parts of a variable are the name (e.g. sweets) and the value (e.g. 8). sweets = 8 print (sweets) = 8 amount of sweets = 8 8sweets = 8 sweets A variable can't contain spaces , it must start with a letter , and you must declare its value before you can use or print it. You always need to print the variable name (e.g. biscuits), not the value (20) as the value can change. Important – When writing variable names, we do not need speech marks. (e.g. type biscuits , not “biscuits”) We use variables because the value of something might change as the program is executed. For example, if someone eats a sweet then the value of our variable changes: sweets = 8 print (sweets) sweets = 7 print (sweets) = 8 7 sweets = 8 print ( Sweets) You must be consistent with capital letters when writing variable names. sweets and Sweets are treated as two different variables. Creating Variables Task 1 ( Age & Pets) Make a variable named age and set it to your current age. On the next line print age . Make another variable named pets and set it to how many pets you have. On the next line print pets . Example solution: 14 2 Variables with Strings (Text) In programming, a collection of alphanumeric characters (letters, numbers and punctuation) is called a string . "Pikachu" is a string. In the example below, pokemon is the variable name that represents the variable value "Pikachu" . pokemon = "Pikachu" print (pokemon) = Pikachu To create a string, we use "speech marks" . Numbers by themselves and variable names do not use speech marks. Each variable can only have one value at a time, but it can change throughout the program. pokemon = "Pikachu" print (pokemon) pokemon = "Squirtle" print (pokemon) = Pikachu Squirtle Creating Variables Task 2 ( Superhero & Colour ) Make a variable named superhero and set it to any of your choice, such as "Spider-Man" . Print the superhero variable on the next line. Make another variable named colour and set it to the colour related to your chosen superhero. Print the colour variable on the next line. Example solutions: Spider-Man Red The Hulk Green ⬅ 1b - Co mmenting 1d - Using Variables ➡

  • 2.2 - Data Types - OCR (J277 Spec) | CSNewbs

    Learn about the five data types - character, string, integer, real and Boolean. Also learn about casting. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 2.2: Data Types Exam Board: OCR Specification: J277 Watch on YouTube : Data Types What are the different data types? When programming, variables should be given appropriate data types . Character A single character , such as a letter, number or punctuation symbol. Examples: T 8 ? String A sequence of characters , including letters, numbers and punctuation. Examples: Harry Waters 14:50pm Ice Age 4 Integer A whole number . Examples: 475 -8432 56732 Real Boolean A decimal number . Examples: 65.3 -321.1234 909.135 An answer that only has two possible values . Examples: True / False Yes / No 0 / 1 Telephone numbers are always stored as a string , not an integer. Casting Converting the value of a variable from one data type into another is known as casting . Python automatically assumes an input is a string so the int() command is used to cast an input into an integer . Other Python commands for casting include str() and float() . For example: age = int(input("Enter your age: ")) Q uesto's Q uestions 2.2 - Data Types: 1. List the five data types , giving an example of each . [ 5 ] 2. State which data type is most suitable for the following variables: a. Age [ 1 ] b. Surname [ 1 ] c. Height (in metres) [ 1 ] d. First Initial [ 1 ] e. Phone number [ 1 ] f. Right-Handed? [ 1 ] 3. Explain what casting is and give a programming situation in which it would be used . [ 2 ] 2.1 - Programming Fundamentals Theory Topics 2.3 - Additional Techniques

  • App Inventor 2 | Pop-up Blob | CSNewbs

    Learn how to use App Inventor 2 to create simple programs. Try to complete the final task (7) on this page. Perfect for Key Stage 3 students to experiment with block coding, objects and properties. App Inventor Task 7 - Pop-up Blob The previous apps have been preparing you to make a longer and more complicated app. Now we will put together all of the skills you have learned to create a fun game. Check the video: Open App Inventor 2 (use the button below) and create a new project. You will need to log in with a Google account. App Inventor 2 Ready for a challenge? This is what the program looks like in Designer layout. To the left are the components with all their Properties correct. To the right are the Components names. Put the three labels and button inside a HorizontalArrangement from the Layout section of Palette . The Text for ScoreLabel is 'Score: 0'. The Text for TimeRemainingLabel is 'Time Remaining:'. The Text for SecondsLabel is '20'. Place an ImageSprite inside a Canvas (both from the Drawing and Animation section of Palette ). Download the blob image from the Basics page here and upload it as the Picture for the ImageSprite . Change to Blocks layout and drag a initialize global to block from Variables . Type 'Score' in the empty space to create a variable that we will use to track how many times the blob has been touched. Attach a 0 block from Math to start the score at 0. This big block of code uses some of the concepts which you have used before. Whenever the Blob is touched the variable Score is increased by 1. The X and Y coordinates of the Blob are changed by random numbers so it will appear in a random location on the screen. The bottom blocks change the ScoreLabel to show the current score. Every second that the timer ticks we want to check if the score is more than 1 (to check it hasn't reached 0). If it is more than 1 second then the time will count down by 1. In the else part you need to add the following: Set Blob Enabled to false . Set Blob Visible both to false . Set TimeRemainingLabel Visible to false . Set SecondsLabel Visible to false . When the Reset Button is clicked the score variable is changed to 0 and the Seconds label is rewritten to 0. Make sure you use the " " block from Text and not a block from Math. Inside the when ResetButton Click block you need to reverse the code you have added for the else block when the timer ticks: Set Blob Enabled to true . Set Blob Visible both to true . Set TimeRemainingLabel Visible to true . Set SecondsLabel Visible to true . Extra Step: Challenges 1. Large score display . If you watch the video at the top of the page again, you will see that when the time runs out (is less than 1) some of the labels turn invisible and the TextColour and FontSize of the ScoreLabel changes. Try to do the same in your app. Remember to reverse what you have done in the code for the reset button; otherwise, the labels will still be invisible! 2. Customise your game . Change the background of the Canvas to an image, change the blob to a different image and add a sound when the character is 'popped'. 3. *HARDER Challenge* Add a High Score Label . Follow these hints carefully and use the colours to help you. You need to initialize a new Variable called HighScore and set it to 0 . You also need to add a new HighScoreLabel and put it in your Horizontal Arrangement in Designer layout. Add an if then block in the else part of the When Timer Timer block you already have. If Score > HighScore then HighScore = Score . This will change the value of HighScore to the current Score if it is higher than the current high score. Remember to make the HighScoreLabel display the new HighScore . KS3 Home

  • 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

  • 3.1 - Data vs Information | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the technical difference between data and information, with examples. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2 (Global Information). 3.1 - Data vs. Information Exam Board: OCR Specification: 2016 - Unit 2 The terms 'data ' and 'information ' are often used interchangeably but they do not mean the same thing . The term 'data ' refers to unprocessed facts or statistics that have no context . For example, 53% is data - it is a statistic that has no context. The term 'information ' refers to data that has been processed , organised and structured into context . For example, 53% of pumpkin stock was sold in 2019 is information - it is data that has been given context (meaning). Data Processing Information Q uesto's Q uestions 3.1 - Data vs. Information: 1. Describe , using examples , the difference between data and information . [4 ] 2.4 - Information Management 3.2 & 3.3 - Information Categories Topic List

  • Python | 6a - For Loops | CSNewbs

    Learn how to create and use for loops in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 6a - For 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 For Loops (1 Range Value) for i in range (5): print ( "This is a loop!" ) This is a loop! This is a loop! This is a loop! This is a loop! This is a loop! for i in range (8): print ( "Jaffa Cakes aren't biscuits" ) Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits Jaffa Cakes aren't biscuits The i is a count variable , it is used to measure each iteration (turn) of the loop. In the range brackets write the number of times to loop the indented code. Don’t forget the colon at the end and remember that everything you want to repeat must be indented (press tab key once). For Loops Task 1 (Repeat Your Name ) Example solutions (shortened): Create a simple for loop that prints your name twenty times. For Loops Task 2 (Are We There Yet? ) Christopher Christopher Christopher ... Create a simple for loop that prints the sentence 'Are we there yet?' 150 times. Are we there yet? Are we there yet? Are we there yet? ... Counting Using i (2 Range Values) For loops can be used to count by referring to the iteration inside the loop itself using i : for i in range (5): print ( "Loop number" , i) Loop number 0 Loop number 1 Loop number 2 Loop number 3 Loop number 4 for i in range (1,6): print ( "Loop number" , i) Loop number 1 Loop number 2 Loop number 3 Loop number 4 Loop number 5 There are two important things to know about how Python counts using for loops. Python will automatically start counting at 0 rather than 1. The second value in the range is an exclusive limit - it will stop 1 before this value. For example, if you wanted to count 1 to 10 you would need to write range(1,11) . For Loops Task 3 (100 to 150 ) Create a for loop that prints all numbers from 100 to 150 . You don't need to print any additional text, just the i variable. Example solution (shortened): 100 101 102 ... ... 148 149 150 Using a Step (3 Range Values) A third value can be added to the range brackets of a for loop to define a step . A step is the number to go up (or down ) with each iteration . for i in range (2,11,2): print ( i) 2 4 6 8 10 for i in range (18,0,-3): print ( i) 18 15 12 9 6 3 In most programs defining a step is not essential , Python will assume it is +1 if you don't include it. For Loops Task 4 (Even Numbers 10 to 30 ) Example solution for Task 4 (shortened): Create a for loop that prints all even numbers from 10 to 30 . Use a step . For Loops Task 5 (Countdown ) Use a for loop with a negative step to print a countdown from 10 to 1 . 10 12 14 ... ... 26 28 30 Using Variables with For Loops Variables can be used to make for loops suitable for a range of different purposes. loopnum = int ( input ( "Times to repeat: " )) for i in range (loopnum): print ( "Hello!" ) Times to repeat: 4 Hello! Hello! Hello! Hello! The loop above uses a variable in the range brackets to repeat the loop the specific number of times that the user enters . loopnum = int ( input ( "Times to repeat: " )) word = input ( "Word to repeat: " ) for i in range (loopnum): print (word ) Times to repeat: 3 Word to repeat: velociraptor velociraptor velociraptor velociraptor The loop above uses two variables that are input by the user ; one to define the range and another that is printed . For Loops Task 6 (Many Happy Birthdays ) Example solution for Task 6 (shortened): Ask the user to input their age then print 'Happy Birthday! ' that many times. For Loops Task 7 (House Number and Name ) Ask the user to enter their house number (e.g. 15 if they lived at 15 Cherry Road) and their name . Print their name as many times as their house number . For example, if Hannah lived at 103 Apple Lane then Hannah would be printed 103 times . Enter your age: 5 Happy Birthday! Happy Birthday! Happy Birthday! Happy Birthday! Happy Birthday! ⬅ Section 5 Practice Task s 6 b - While Loops ➡

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

  • OCR CTech IT | Unit 1 | 5.5 - Digital Security | CSNewbs

    Learn about digital methods of protecting data such as anti-malware, firewall, usernames and passwords, levels of access and encryption. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification. 5.5 - Digital Security Exam Board: OCR Specification: 2016 - Unit 1 ****** Usernames & Passwords Usernames must be matched with a secure password to minimise the chances of unauthorised users accessing a system. Passwords should contain a mix of uppercase and lowercase letters , punctuation and numbers . Passwords should be of a substantial length (at least 8 characters) and should be regularly changed . Digital Security Measures Firewall Firewalls (see 2.3 ) prevent unauthorised access to or from a network . Firewalls filter data packets and block anything that is identified as harmful to the computer system or network. Firewalls can also be used to block access to specific websites and programs. Encryption Encryption is the conversion of data ( plaintext ) into an unreadable format ( ciphertext ) so it cannot be understood if intercepted . Encrypted data can only be understood by an authorised system with a decryption key . Anti-Malware Anti-virus software (see 2.3 ) scans a system and removes viruses . If left to infect a system a virus could delete data or permit access to unauthorised users . Anti-spyware software removes spyware on an infected system so hackers cannot view personal data or monitor users. Organisations should install and regularly update anti-virus and anti-spyware programs. Permissions Permissions is the creation of different levels of file access so that only authorised people can access and change certain files . There are different levels of file access : No access Read-only Read/write Q uesto's Q uestions 5.5 - Digital Security: 1a. Describe why usernames and strong passwords are necessary. [2 ] 1b. State 3 rules for choosing a strong password . [3 ] 2. Describe the purpose of anti-virus and anti-spyware software. [4 ] 3. Describe the roles of a firewall . [4 ] 4. Explain what encryption is. [3 ] 5. What are permissions ? What are the 3 levels of access ? [5 ] 5.4 - Physical Security Topic List 5.6 - Data & System Disposal

  • Privacy Policy | CSNewbs

    Computer Science Newbies Privacy Policy Updated 5th April 2025 1. Information Collected I do not collect any personal information from visitors as the website: Does not require users to create accounts. Does not process any transactions or collect payment details. Is intended solely for educational purposes, providing information about Computer Science. 2. Cookies and Analytics The Wix platform may automatically collect non-personal information such as: Your IP address Browser type Device information Pages viewed This is used for general site performance monitoring and visitor statistics. You can manage cookies through your browser settings. The following essential cookies are used on this site: RF-TOKEN (Used for security reasons during your session on the site.) hs (Used for security reasons during your session on the site.) svSession (Used in connection with user login.) SSR-caching (Used to indicate the system from which the site was rendered. Duration of 1 minute.) _wixCIDX (Used for system monitoring/debugging. Duration of 3 months.) _wix_browser_sess (Used for system monitoring/debugging during your session on the site.) consent-policy (Used for cookie banner parameters. Duration of 12 months.) TS* (Used for security and anti-fraud reasons during your session on the site.) Session (Used for system effectiveness measurement. Duration of 30 minutes.) fedops.logger.sessionId (Used for stability/effectiveness measurement. Duration of 12 months.) To learn more about cookies please visit All About Cookies . 3. Use of Information Any information collected automatically by Wix is used solely to: Improve the performance and content of the website. Ensure the website runs smoothly and securely. I do not sell, rent, or share visitor information. 4. Third-Party Services As the website is hosted on Wix.com, their privacy practices also apply. You can view the Wix Privacy Policy here . 5. Changes to This Policy I may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated date. 6. Contact If you have any questions about this Privacy Policy, please contact me at:

© CSNewbs 2026

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