top of page

Search CSNewbs

304 results found with an empty search

  • 4.2 - Data Structures | OCR A-Level | CSNewbs

    Learn about data structures including arrays, records, lists, tuples, linked-lists, graphs, stacks, queues, trees, binary search trees and hash tables. Based on the OCR H446 Computer Science A-Level specification. Exam Board: OCR A-Level 4.2 - Data Structures Specification: Computer Science H446 Watch on YouTube : Arrays Records Lists & tuples Stacks Queues Linked lists Trees Graphs Hash tables Data structures are used to organise and store data so it can be accessed and processed efficiently , often through the use of an index or reference . They can be static , meaning their size is fixed during program execution , or dynamic , allowing them to grow or shrink as data changes . Arrays An array is a data structure that stores a collection of items of the same data type , with each item accessed using an index . A one-dimensional (1D ) array is a simple sequence of values , such as test scores for a single person : scores = [12, 15, 18, 20] . A two-dimensional (2D ) array is like a table or grid , made up of rows and columns - for example, storing a timetable or test scores for a class . A three-dimensional (3D ) array stores data in multiple layers , like a series of 2D grids . For example, test scores for a class across multiple subjects . This page is under active development. Check here for the latest progress update. YouTube video uploading soon Records A record groups together related but different types of data under one name . Each individual piece of data within a record is called a field and each field can have a different data type (e.g. string , integer , Boolean ). For example, a student record might include fields such as Name (string ), Age (integer ) and Enrolled (Boolean ). Records are often used in databases or programming to represent real-world entities where multiple attributes need to be stored together . YouTube video uploading soon Lists & Tuples A list stores an ordered collection of items , which can be changed (mutable ) after creation. Items in a list can be added , removed or modified , and they can be of different data types . For example, in Python : myList = [10, "apple", True] . A tuple is similar to a list but is immutable , meaning its contents cannot be changed once created . Tuples are often used for fixed sets of data that should not be altered , such as coordinates or dates . For example: myTuple = (3, 5, 7) . YouTube video uploading soon Stacks A stack stores data in a last in , first out (LIFO ) order, meaning the most recently added item is the first one to be removed . It works much like a stack of plates - you can only add or remove from the top . Two integral functions are push and pop . The push operation adds (or “pushes”) a new item onto the top of the stack . The pop operation removes (or “pops”) the item from the top of the stack . Stacks are commonly used in undo features , function calls and expression evaluation , where tracking the most recent item first is important . YouTube video uploading soon Queues A queue stores items in a first in , first out (FIFO ) order, meaning the first item added is the first one removed . New items are added at the rear of the queue using an enqueue operation, and items are removed from the front using a dequeue operation. Queues are often used in task scheduling , print spooling and data buffering , where operations must occur in the same order they were requested . YouTube video uploading soon Linked Lists A linked list is a dynamic data structure made up of a series of elements called nodes , where each node contains data and a pointer to the next node in the sequence . Unlike arrays, linked lists do not store elements in contiguous memory locations , making it easy to insert or delete items without having to shift other elements . The head is the first node in the list , and the last node usually points to null , indicating the end of the list . YouTube video uploading soon Trees A tree is a hierarchical data structure made up of nodes connected by branches , starting from a single root node . Each node can have child nodes , and nodes without children are called leaf nodes . Trees are useful for representing data with natural hierarchies , such as file systems or organisational charts . A binary search tree is a special type of tree where each node has at most two children - a left and a right . All values in the left subtree are smaller than the parent node , and all values in the right subtree are larger . This structure allows for efficient searching , insertion and deletion of data , often much faster than in lists or arrays . YouTube video uploading soon Graphs A graph is made up of nodes (also called vertices ) connected by edges and is used to represent relationships between items. Graphs can be directed , where edges have a specific (one-way) direction , or undirected , where connections go both ways . They can also be weighted , where edges have values such as distance or cost , or unweighted , where all connections are equal . Graphs are widely used in computing, for example, in social networks (users and friendships ), maps (locations and routes ) and network routing algorithms . YouTube video uploading soon Hash Tables A hash table stores key–value pairs and allows for very fast data access . It uses a hash function to convert a key (such as a name or ID ) into an index (hash value ), which determines where the associated data (value ) is stored in memory . When retrieving data , the same hash function is applied to the key to find the value’s location instantly , making lookups close to constant time complexity on average . If two keys produce the same hash (a collision ), techniques such as chaining or linear probing are used to handle it . Hash tables are commonly used in databases , caches and programming languages for tasks like fast searching and indexing . YouTube video uploading soon Q uesto's K ey T erms Arrays: array, 1-dimensional, 2-dimensional, 3-dimensional, static Records: record, field, data type, primary key Lists and Tuples: list, tuple, mutable, immutable, dynamic Stacks and Queues: stack, queue, last in first out (LIFO), first in first out (FIFO), push, pop, enqueue, dequeue, pointer Linked Lists: linked list, null Trees & Graphs: tree, binary tree, binary search tree, root node, branch, graph, weights, directions Hash Table: hash table, key, value, collision, linear probing, chaining D id Y ou K now? Trees are used for dialogue options in narrative video games , displaying possible paths based on the player’s previous choices . The final ' suicide mission ' of Mass Effect 2 has hundreds of possible variations depending on ship upgrades , squad member loyalty , and assigned roles during the last mission . 4.1 - Data Types A-Level Topics 4.3 - Boolean Algebra

  • Python | 6b - While Loops | CSNewbs

    Learn how to create and use while loops in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 6B - While Loops Types of Loop The third construct of programming (after Sequence and Selection) is Iteration . If you iterate something, then you repeat it. There are two key loops to use in Python: for loops and while loops . A for loop is count controlled – e.g. “For 10 seconds I will jump up and down”. The loop will continue until the count (e.g. 10 seconds) has finished . A while loop is condition controlled – e.g. “While I am not out of breath, I will jump up and down.” The loop will continue as long as the condition remains true . Simple While Loops A while loop keeps repeating as long as the starting condition is true . If the condition of the while loop becomes false , the loop ends . In this example, the number variable is increased by 1 inside of the loop until it is no longer less than or equal to 10 . number = 1 while number <= 10: print (number) number = number + 1 1 2 3 4 5 6 7 8 9 10 Comparison Operators == equal to != not equal to < less than <= less than or equal to > greater than >= greater than or equal to It is important to give the variable a value before you start the while loop . I have assigned number as 1. The last line increases the number by 1 otherwise the number would stay at 1 and the loop would repeat forever . While Loops Task 1 (Countdown from 100 ) Example solution (shortened): Create a simple while loop that starts at 100 and prints each number down to 1 . Think about the comparison operator you will need to check you have reached 1. 100 99 98 ... ... 3 2 1 Inputs Inside While Loops If you want the user to keep entering an input until they give a certain answer then you need to put the input inside the while loop : age = 0 while age < 18: print ( "Only adults allowed to the casino." ) age = int ( input ( "Enter your age: " )) print ( "Welcome and enjoy your visit." ) Only adults allowed to the casino. Enter your age: 14 Only adults allowed to the casino. Enter your age: 18 Welcome and enjoy your visit. month = " " while month != "July" : month = input ( "Guess the month I'm thinking of: " ) print ( "Correct! It was July!" ) Guess the month I'm thinking of: August Guess the month I'm thinking of: June Guess the month I'm thinking of: July Correct! It was July! Notice that the variable in the condition (age or month in these examples) has to be given a value first before it can be used in a while condition. The program will crash if the variable is not declared and assigned a value - for example, the age cannot be checked to see if it less than 18 if there is no age variable! For string variables like month in the example above then a blank default value like " " can be used. For integer variables often 0 will be used. While Loops Task 2 (Guess the Colour ) Example solution: Use a variable named colour and a while loop that allows the user to keep entering colours until a specific one (your choice) has been input. Guess the colour: blue Guess the colour: purple Guess the colour: yellow Correct! It was yellow! While Loops Task 3 (Integer Trivia ) Use a while loop to ask a question that has an integer (whole number) as an answer , such as "How many James Bond films did Daniel Craig appear in?" or "In which year did Wigan Athletic win the FA Cup?". Remember that integers do not use speech marks , e.g. year = 0 Example solution: Which year was the first Iron Man movie? 2010 Which year was the first Iron Man movie? 2009 Which year was the first Iron Man movie? 2008 Correct! It was 2008! While True Loops A while True loop will repeat indefinitely , only stopping when the break command is used to end the loop . While True loops are often preferred because you do not need to set default values for any variables before the loop begins. while True : password = input ( "Enter the password: " ) if password == "icecream21" : print ( "Correct Password!" ) break Enter the password: vanilla32 Enter the password: chocolate83 Enter the password: strawberry100 Enter the password: icecream21 Correct Password! The program below has been adapted to record the number of attempts made . The value is increased by 1 each time the loop restarts. guesses = 0 while True : guesses = guesses + 1 password = input ( "Enter the password: " ) if password == "goat7" : print ( "Correct Password! It took" ,guesses, "attempts!" ) break else : print ( "Incorrect. Try again!" ) Enter the password: sheep3 Incorrect. Try again! Enter the password: cow4 Incorrect. Try again! Enter the password: horse5 Incorrect. Try again! Enter the password: goat7 Correct Password! It took 4 attempts! The continue command will move to the next iteration (it can be considered as starting the loop again ). The program below allows numbers to be entered and keeps track of a running total. Entering 1 inputs a number, 2 displays the total and 3 stops the program. total = 0 while True : choice = input ( "\nType 1 to enter, 2 for a total and 3 to stop: " ) if choice == "1" : number = int ( input ( "Enter a number: " )) total = total + number continue elif choice == "2" : print ( "The total is" , total) continue elif choice == "3" : break print ( "\nProgram finished." ) Type 1 to enter, 2 for the total and 3 to stop: 1 Enter a number: 40 Type 1 to enter, 2 for the total and 3 to stop: 1 Enter a number: 35 Type 1 to enter, 2 for the total and 3 to stop: 2 The total is 75 Type 1 to enter, 2 for the total and 3 to stop: 3 Program finished. While Loops Task 4 (Guess the Planet ) Example solution: Use a while True loop to keep asking a user to input a planet . Keep track of the number of guesses that have been made and output the total when they input the correct planet. Use the second example in the 'While True Loops ' section above to help you. Enter a planet: Mars Incorrect guess, try again! Enter a planet: Mercury Incorrect guess, try again! Enter a planet: Neptune Correct it was Neptune! While Loops Task 5 (Up to 100 ) Create a while True loop that asks the user to enter a number . Add the number to a total variable and print it. When the total reaches 100 or more , stop the program. Don't forget to set the total variable to 0 at the start and to add the number entered by the user to the total. Example solution: Enter a number: 34 The current total is: 34 Enter a number: 29 The current total is: 63 Enter a number: 18 The current total is: 81 Enter a number: 22 The current total is: 103 Over 100! ⬅ 6a - F or Loops Section 6 Practice Tasks ➡

  • HTML Guide 6 - Organisation | CSNewbs

    Learn about the tags that improve the layout of a web page, including how to centre content and add horizontal lines, bullet points and block quotes. 6. Organisation HTML Guide Watch on YouTube: This page explains the following tags which can be used to structure a simple page layout: Horizontal Line Centre Quote Bullet Points Numbered Points hr Horizontal Line You can add a horizontal line by simply adding to your document. There is no close tag. Add at least one horizontal line to your web page. center Centre Align This tag places the content within the tags on the centre of the page . Be careful - you need to use the American spelling - 'center ' - in your tags. Add tags to place your main heading in the centre of the page. blockquote Blockquote A blockquote is used to display a quote from another person or place. Text is indented further from the margin than the other content. It is not used very often, but can be found in some online articles and essays. Add at least one block quote to your web page. uo list Unordered List An unordered list is a set of bullet points . The tag is placed before the bullet points and afterwards. Each bullet point is placed within tags. That stands for list item . Add either an unordered or ordered list to your web page. Include at least three items in your list. o list Ordered List An ordered list will number each line . The tag is placed before the list and afterwards. Each list item is placed within tags. Add either an unordered or ordered list to your web page. Include at least three items in your list. Next it is time to add tags to the head, including a page title and metadata. 5. Images HTML Guide 7. Head Tags

  • Greenfoot | Key Code | CSNewbs

    A glossary of important code to be used in Greenfoot, such as random movement, using a counter removing objects and sound. Aimed at the Eduqas / WJEC GCSE specification. Greenfoot Code Glossary Greenfoot Home This code will work for Version 2.4.2 which is used in Component 2 of the 2016 WJEC/Edquas specification . Key Down 270 if (Greenfoot.isKeyDown("right" )) { setRotation(0); move(1); } 180 90 0 Bounce At Edge if (isAtEdge()) { turn(180); } move(1); if (Greenfoot.getRandomNumber(10)<1) { turn(Greenfoot.getRandomNumber(90) - 45); } Random Remove Object if (isTouching(Apple.class )) { removeTouching(Apple.class ); } Play Sound Greenfoot.playSound("pop.wav" ); Stop Greenfoot.stop(); Counter - (Write this code when an object is removed) Counter counter = (Counter) getWorld().getObjects(Counter.class ).get(0); counter.add(1); Stuck? If you start typing but can't remember what commands come next, press Ctrl and Space together to show a list of all possible commands that you can use.

  • 1.1 - Holders of Information | Unit 2 | OCR Cambridge Technicals | CSNewbs

    Learn about the different types of organisations that hold information. Also, consider the differences between urban and rural connections and remote locations. Based on the 2016 OCR Cambridge Technicals Level 3 IT specification for Unit 2. 1.1 - Holders of Information Exam Board: OCR Specification: 2016 - Unit 2 Categories of Information Holders Organisations that store and process information can be put into seven different categories : Business A business will hold information on all of its employees , including their date of birth, address and financial information , allowing them to be paid at the end of each month. Businesses will also hold commercial information about their organisation such as profits and losses, product descriptions and historical data . Many companies may record information about their competitors and general marketing data. Government The government will hold a huge amount of information about all citizens in the country including financial earnings, tax paid, births and deaths . The electoral roll holds information about addresses . A national census is taken every 10 years in the UK (the next census is in 2021) that records extensive data about everyone living in the country. The government also stores information about other countries and shares some of this publicly, such as the Foreign Office posting travel advice . Individual Education Educational organisations , such as schools, colleges and universities will hold information about current and past students as well as staff. Student information such as addresses, attendance records and examination history will be recorded, as well as contact information for parents and guardians. Teacher information will be stored too, as well as students that previously attended the institution, even for a number of years after they have left. An individual will hold information about themselves , either in their head or on paper or electronically. This includes their name, date of birth, address, usernames and passwords . Individuals will store information of others , such as phone numbers, social media details and email addresses . Other information will be about organisations , such as the address of their favourite restaurant, opening hours of the local cinema or the telephone number from a catchy advert. Healthcare Healthcare services , like the NHS in the United Kingdom, will hold entire medical histories for each civilian in the country. This includes basic personal information such as current address and date of birth but much more detailed data too like previous illnesses and operations, blood type, allergies and prescriptions . The data stored by healthcare organisations is usually confidential and should not be shared by anyone other than the citizen in question. Charity & Community Charities may hold financial information of donors who give money to them, as well as information about the different projects that the donations are funding. Charities such as the British Heart Foundation might have physical addresses on the high street so information may be kept about the shops too. Community organisations like sport centres or religious institutions may hold information on members and matches, meetings or events . Comparison of Locations The location of systems and data affects access speed and network quality . The digital divide is the gap between people who do and do not have easy access to computers and networks . Developed vs. Developing Countries Developed countries , like areas of Western Europe, North America and East Asia, have a more developed technology and industry base with more funding available for information infrastructures such as cabling and high-speed access . Developing countries , like areas of Africa and Central Asia, have unstable governments and slower access (if any) to the internet . Less money is spent on technology and improving broadband speed and expensive equipment like computers cannot be purchased on low wages . Urban vs. Rural Urban locations like towns and cities have a high population density . Because there are so many people, councils and IT companies will spend a lot of money on internet infrastructure such as cabling and installing high-speed lines . In Rural locations like the countryside, the population is sparse and settlements may be far apart so internet access is poorer and broadband speeds are slower . This means accessing information on the internet is more difficult . Internet Access from Remote Locations Remote locations (such as the countryside or difficult-to-reach areas like mountains or deserts) might have limited internet access . Fast fixed broadband is expensive to install and many providers simply won't invest in rural areas as it is not economically viable . Some areas, usually those with a very small or temporary population, might have no fixed internet access which will make it difficult for an individual or organisation to communicate or work online. Many remote locations have some form of internet but download speeds will be slow or interrupted due to intermittent connection . This makes it difficult to work online and could take a long time to access webpages or document stores. Alternatives to fixed broadband in remote locations include mobile broadband and satellite broadband . Mobile broadband is generally not designed for home use and would be very expensive for everyday use , plus the remote location will generally mean mobile coverage could also be weak . Satellite broadband requires a dish with an unrestricted view of the sky. Satellite broadband has a relatively high internet speed but will cost a lot to install and has a high latency (more chance of experiencing lag). Q uesto's Q uestions 1.1 - Holders of Information: 1a. State the 7 categories of information holders . [7 ] 1b. For each of the 7 categories , briefly describe 3 different pieces of information that may be stored by the information holder. For example, a charity may store the financial information of donors. [3 each ] 2. What is the digital divide ? [2 ] 3. Describe the differences in information access for the following locations : a. Developed vs. developing countries b. Urban vs. rural areas c. Remote locations [4 each ] Topic List 1.2 - Storage Media

  • Key Stage 3 Python | Selection | CSNewbs

    The fifth part of a quick guide to the basics of Python aimed at Key Stage 3 students. Learn about how selection works and how to use if statements. Python - #5 - Selection 1. Using if Statements Using if enables your program to make a choice . There are a few things you need to remember : if is lowercase - it should turn orange. You must use double equals == You need a colon : at the end of your if line. The line below your if line must be indented . Task 1 - Create a new Python program and save the file as 5-Selection.py Use the picture to help you ask what your favourite food is . Run the program and test it works. To indent a line press the tab key on your keyboard. Indentation is important as it tells Python what is within the if statement and what isn't. 2. Using elif elif stands for 'else if '. It is used to respond in a different way depending on the input. elif works exactly the same as an if line so if you make a mistake look up at task 1 to help you. Task 2 - Write an elif line that responds differently to your favourite food question from task 1. e.g. "Yum!" if someone enters "pasta". 3. Using else It is impractical to have hundreds of elif lines to respond to different inputs. else is used to respond to anything else that has been entered in a general way. The else line works a bit differently, so look carefully at the picture . Task 3 - Write an else line that responds to anything else the user enters for your favourite food question. 4. Multiple elifs Despite what you did in task 3, programs can be expanded with more than one elif line. Underneath your first elif line but before your else line, add at least two more elif sections that respond differently depending on what is entered. Use the elif line from the task 2 picture to help you. Task 4 - Read the description above and use task 2 to help you. Challenge Programs Use everything that you have learned on this page to help you create these programs... Challenge Task 1 - Spanish Translation Create a new Python program. Save it as ' 5-Translator.py ' Add a comment at the top with your name and the date. Create a program that asks for a number between 1 and 4. Use if and elif statements to see what the user has entered and print a statement that displays the chosen number in Spanish - use the image to help you understand. BONUS : Add an else line for any numbers higher than 4. When you run it, it could look something like this: Challenge Task 2 - Able to Vote Create a new Python program. Save it as ' 5-Vote.py ' Add a comment at the top with your name and the date. Create a program that asks for their age. Use an if statement to see if the age is more than 17 (use > instead of ==). If the age is over 17, then print "You are old enough to vote!" Use an else statement to print a different message for everyone else. When you run it, it could look something like this: Challenge Task 3 - Totals Create a new Python program. Save it as ' 5-Totals.py ' Add a comment at the top with your name and the date. Use an int input line to ask the user for number 1. Use an int input line to a sk the user for number 2. Multiply the two numbers together and save it into a variable called total. If the total is over 9000, then print "It's over 9,000!!!" Use an else statement to print the total if it is less than 9000. When you run it, it could look something like this: <<< #4 Calculations #6 Turtle >>>

  • HTML Guide 2 - Essential Tags | CSNewbs

    Learn what a tag is in HTML and which ones are necessary to format a webpage ready for text and other content. 2. Creating Essential Tags HTML Guide Watch on YouTube: What is a tag ? HTML uses tags to define the content of a webpage . A tag uses angle brackets - they look just like my teeth... Some examples of tags are and and Most tags have a start tag and an end tag . The actual content is written in between the tags . For example : The p tag is used to write a paragraph Notice that the end tag uses a forward slash . < > Essential Tags There are three tags that are essential for every HTML web page : - This tag declares the start and the end of your html web page. - The head is the part of the web page that the user will not see. - The body holds all of the content of the web page (text, images, video etc.) Don't forget to use backslash for the end tags : / Use the image on the right to add the three essential tags (and their end tags) to your document. Now it is time to add something we can actually see! Text tags are up next. 1. Setup HTML Guide 3. Text Tags

  • Python | Section 1 Practice Tasks | CSNewbs

    Test your understanding of printing, comments and variables. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python - Section 1 Practice Tasks Task One: Weekdays Create a program that prints all 5 weekdays , with each day on a new line . Requirements for a complete program: Use only one print line - use \n . No empty space at the start of a printed line. Example solution: Monday Tuesday Wednesday Thursday Friday Task Two: Colour & Animal Sentence Write a program that uses two variables , one for a colour and one for an animal . Print a sentence using both variables . Requirements for a complete program: Use both your variables within one print line. Include capital letters, appropriate punctuation and no irregular spacing in the printed line. Remember: Break up variables in a print line by using commas or plus signs between each part of the "sentence" . Example solutions: Have you ever seen a purple cat? A horse that was green galloped past! Three yellow ants ate my lunch. Task Three: Number, Adjective & Animal Write a program that uses three variables , a number , an adjective (descriptive word) and an animal . Print a sentence using all three variables . Requirements for a complete program: Use all three variables within one print line. Include capital letters, full stops and no irregular spacing in the printed line. Remember: Break up variables in a print line by using commas or plus signs between each part of the "sentence" . Example solutions: What? 64 sneaky elephants just ran past me! There were 12 hungry bears in the park. 85 patient spiders waited in the corner. ⬅ 1d - Using Va riables 2a - Inputting Text ➡

  • 2.1 - Software Development Models | F160 | Cambridge Advanced National in Computing | AAQ

    Learn about the characteristics, diagrammatic representations, advantages, disadvantages, and suitability of software development models. These include the waterfall, rapid throwaway, incremental, evolutionary, rapid application development (RAD), spiral and agile models. 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) 2.1 - Software Development Models Watch on YouTube : Software Development Models Waterfall Rapid Throwaway Incremental Evolutionary Rapid Application Development Spiral Agile There are seven software development models you need to know : Traditional models: Waterfall Prototype models: Rapid Throwaway , Incremental , Evolutionary Iterative models: Rapid Application Development (RAD) , Spiral , Agile For each development model , you need to know : Its characteristics . How to represent it in a diagram . Its advantages and disadvantages . The types of development it is suitable for. Software Development Models Each development model has its own video below but you also need to know the advantages and disadvantages of using development models in general. Waterfall Model The waterfall model is a linear and structured approach where each phase is completed one at a time in order . It needs all requirements to be clearly defined at the start , with little to no changes allowed once a phase is finished . This model is best suited for projects with fixed requirements and minimal risk of change . Rapid Throwaway Prototype Model The rapid throwaway prototype model involves quickly creating temporary prototypes to explore ideas and gather user feedback before building the final system . Prototypes are discarded after they help refine requirements , and are especially useful in projects where user needs are initially unclear . This model is suitable when user interaction and efficient interface design are critical . Incremental Model The incremental model develops a system in small , manageable sections with each part being designed , built and tested individually . Functionality is added step by step until the full system is complete . This approach allows for early partial deployment and easier handling of changing requirements over time. Evolutionary Prototype Model The evolutionary prototyping model involves building an initial prototype that is continuously improved based on user feedback until it becomes the final system . Unlike throwaway prototyping, the prototype is not discarded but gradually evolves into the full product , once the user is satisfied . This model is ideal when user requirements are expected to change or develop over time . Rapid Application Development (RAD) The rapid application development ( RAD ) model focuses on quickly building software through iterative development and frequent user feedback . It uses reusable components , time-boxing and constant feedback to speed up the delivery of an effective final product . RAD is best suited for projects that need to be completed quickly and where requirements can evolve during development . Spiral Model The spiral model combines iterative development and risk management , progressing through repeated cycles of planning , risk assessment , engineering ( development and testing ) and evaluation . Each loop focuses on identifying and addressing risks early in the project. It is ideal for complex and high-risk projects where requirements may change over time . Agile Model The agile model is an iterative and flexible approach that progresses in small , usable chunks called iterations (or sprints ). It relies on frequent collaboration with stakeholders and user feedback to adapt to changing requirements . This model is ideal for dynamic projects where quick delivery and frequent updates are important. Q uesto's Q uestions 2.1 - Software Development Models: 1. Choose three development models to explain and draw a diagram for each. [6 ] 2. A large company is making the next sequel in a hugely popular video game series , FieldBattle 2043 . Justify which application development model(s) they should use (and which they shouldn't ). [5 ] 3. Describe the advantages and disadvantages of any development models you have not covered in Q1 or Q2 . [6 ] Agile development is named after the ' Agile Manifesto ' - a set of principles for software development agreed by a group of developers at a ski resort in Utah , USA in 2001 . D id Y ou K now? 1.3.3 - App. Software Types Topic List 2.2 - Phases of Development Models

  • 4.1 - Boolean Logic - OCR GCSE (J277 Spec) | CSNewbs

    Learn about the three logical operators - NOT, AND and OR - as well as truth tables. Based on the J277 OCR GCSE Computer Science specification (first taught from 2020 onwards). 4.1: Boolean Logic Exam Board: OCR Specification: J277 Watch on YouTube : Boolean Operators & Truth Tables Logic Gate Diagrams What is a logical operator? Inside of each computer system are millions of transistors . These are tiny switches that can either be turned on (represented in binary by the number 1 ) or turned off (represented by 0 ). Logical operators are symbols used to represent circuits of transistors within a computer. The three most common operators are: NOT AND OR What is a truth table? Truth tables are used to show all possible inputs and the associated output for each input . The input and output values in a truth table must be a Boolean value - usually 0 or 1 but occasionally True or False. NOT AND OR A NOT logical operator will produce an output which is the opposite of the input . NOT is also known as Negation . The symbol for NOT is ¬ An AND logical operator will output 1 only if both inputs are also 1 . AND is also known as Conjunction . The symbol for AND is ∧ An OR logical operator will output 1 if either input is 1 . OR is also known as Disjunction . The symbol for OR is ∨ NOT Logic Gate AND Logic Gate Symbol OR Logic Gate Symbol Truth Table Truth Table Truth Table Multiple Operators Exam questions could ask you complete truth tables that use more than one logical operator . Work out each column in turn from left to right and look carefully at which preceding column you need to use. NOT B A AND NOT B A OR (A AND NOT B) As binary is a base-2 number system , the number of rows required in a truth table will double with each new input in the expression in order to show the unique combinations of inputs. The examples above use just two inputs (A + B) so 4 rows are required. e.g. A = 2 rows / A + B = 4 rows / A, B + C = 8 rows / A, B, C + D = 16 rows Logic Diagrams You may be asked in an exam to d raw a logic diagram when given a logical expression . Draw any NOT symbols or expressions in brackets first. A logic diagram for C = ¬A ∧ B A logic diagram for D = C ∨ (A ∧ B) Q uesto's Q uestions 4.1 - Boolean Logic: 1. Copy and complete the following truth tables: 1b. Simplify the expression in the second truth table. 2a. A cinema uses a computer system to monitor how many seats have been allocated for upcoming movies. If both the premium seats and the standard seats are sold out then the system will display a message. State the type of logical operator in this example. 2b. For the more popular movies, the cinema's computer system will also display a message if either the premium seats or the standard seats have exclusively been sold out. However, it will not output a message when both have been sold out. State the type of logical operator in this example. 3. Draw a logic diagram for C = (¬B v A) ∧ A . 3.2 - Testing Theory Topics 5.1 - Languages & Translators

  • Python | 2a - Inputting Text | CSNewbs

    Learn how to input strings (text) in Python. Try practice tasks and learn through text and images. Perfect for students learning GCSE Computer Science in UK schools. top Python 2a - Inputting Text Inputting Text (Strings) in Python A string is a collection of characters (letters, numbers and punctuation) such as: “Wednesday” , “Toy Story 4” or “Boeing 747” . Use the input command to ask a question and let a user input data , which is automatically stored as a string . Variable to save the answer into. Give it a suitable name based on the input. name = input ( "What is your name? " ) = What is your name? Paulina Type your answer directly into the editor and press the Enter key. Statement that is printed to the screen. Leave a space to make the output look clearer. Once an input has been saved into a variable, it can be used for other purposes, such as printing it within a sentence : name = input ( "What is your name? " ) print ( "It is nice to meet you" , name) = What is your name? Jake the Dog It is nice to meet you Jake the Dog Always choose an appropriate variable name when using inputs. colour = input ( "What is your favourite colour? " ) print ( "Your favourite colour is " + colour + "? Mine is yellow." ) = What is your favourite colour? blue Your favourite colour is blue? Mine is yellow. Inputting Text Task 1 ( Holiday) Write an input line to ask the user where they last went on holiday . Write a print line that uses the holiday variable (their answer). Example solution: Where did you last go on holiday? Scotland I hope you had a nice time in Scotland Inputting Text Task 2 ( New Neighbour) Write an input line to ask the user for a title (e.g. Mr, Mrs, Dr). Write another input line for an object . Write a print line that uses both input variables (title and object ). Example solutions: Enter a title: Dr Enter an object: Fridge I think my new neighbour is Dr Fridge Enter a title: Mrs Enter an object: Armchair I think my new neighbour is Mrs Armchair Using a Variable Within an Input To use a variable you have previously assigned a value t o within the input statement you must use + (commas will not work). drink = input ( "What would you like to drink? " ) option = input ( "What would you like with your " + drink + "? " ) print ( "Getting your" , drink , "and" , option , "now...." ) = What would you like to drink? tea What would you like with your tea? biscuits Getting your tea and biscuits now... What would you like to drink? apple juice What would you like with your apple juice? cake Getting your apple juice and cake now... Inputting Text Task 3 ( Name & Game) Ask the user what their name is. Ask the user what their favourite game is. Use their name in the input statement for their game. Print a response with their name and the game they entered. Example solutions: What is your name? Rory Hi Rory, what's your favourite game? Minecraft Rory likes Minecraft? That's nice to know. What is your name? Kayleigh Hi Kayleigh, what's your favourite game? Stardew Valley Kayleigh likes Stardew Valley? That's nice to know. ⬅ Section 1 Practice Ta sks 2b - I nputting Numbers ➡

  • App Inventor 2 | Simple Apps | CSNewbs

    App Inventor Task 1 & 2 - Basic Apps Basic Program #1 - Colour Changer This quick tutorial will teach you how to create an app that changes the background colour when you press different buttons . See the video: In Designer layout, firstly drag four buttons from the Palette tab on the left side and drop them one at a time on top of each other in the Viewer . In the Components tab, click on each button and press Rename to change the name (this makes it easier to code them later). You don't need to choose these four colours, but it is a good idea to start with these (you can change them later). You should notice that you are only changing the name of the button - not the button on the text; these are two different variables . Now to change the text on each button. Click on a button in the centre then in the Properties tab on the right scroll down to Text and change the text to a colour. When you've changed all four button texts, then you can start to code. Click on the Blocks button in the top right to start adding the code. In the Blocks tab on the left click on each button block (e.g. Red, Blue, Green and Yellow) and drag over a 'when click ' block for each colour. Blocks we put inside of the 'when click' blocks will execute whenever that button is pressed. Grab a set Screen 1 BackgroundColor from the Screen1 section in the Blocks tab and place one underneath each when click block. Then line up the correct colour from the Colors section in the Blocks tab to the relevant button. Program 1 Complete! The easiest way to run an app that you have created at home using App Inventor 2 is to download the free MIT AI2 Companion App on your smartphone from the Google Play Store . At the top of the App inventor program on your computer , click on Connect and AI Companion . This will generate a six-digit code you can type into your phone. If your school has the emulator installed, you can also use this to test your app. Ideas to Improve Your App: Use the when Screen1 BackPressed block from the Screen1 section in Blocks to turn the background colour white when the back button is pressed. The block is shown to the right; you can work out how to use it. Add more buttons for different colours. Try purple, black and orange for example. Change the BackgroundColour (in Properties ) of each button to represent the colour it says. You might need to change the TextColour too for red and blue (see the image to the right). Password Checker Basic Program #2 - Password Checker This quick tutorial will teach you how to create an app that requires a user to enter a correct password . See the video - maximise to see it clearly: Firstly you need to grab a TextBox from the Palette tab on the left and place it in the Viewer. Then drag a Button and a Label . Put them in this order: You need to change the Text for the button in the Properties tab to 'Enter Password'. Click on your text box and delete the Hint Text from the Properties tab. Click on the label and delete the Text from the Properties tab. Don't worry, the label is still there! Now time to code. Open up the Blocks layout by clicking Blocks in the top right. Drag a when Button1 click block into the centre from the Button1 section in Blocks . Drag an if then block from Control within the when Button 1 click block. Click on the blue cog button and, in the new window underneath, drag an else block within the if block. The top part will update by itself. When the button is clicked we want to see if the text in the text box matches what we want it to be. Grab an = block from Logic and connect it to the if block. Then place a TextBox1 Text block from TextBox1 in the first half and a blank " " block from Text in the second half. In the " " block write what you want the password to be. I've chosen pikachu because pikachu is cool. Grab a Set Label1 Text block from Label1 and put one next to then and another next to else. Place a " " block from Text and snap it next to both of those blocks. If the user has entered the password correctly then you want 'Correct Password' to appear. Otherwise, if they have entered anything else , you want 'Incorrect Password' to appear. Program 2 Complete! The easiest way to run an app that you have created at home using App Inventor 2 is to download the free MIT AI2 Companion App on your smartphone from the Google Play Store . At the top of the App inventor program on your computer , click on Connect and AI Companion . This will generate a six-digit code you can type into your phone. If your school has the emulator installed, you can also use this to test your app. Ideas to Improve Your App: Change the password to something different. If the correct password is entered change the background to gree n . If an incorrect password is entered change the background to red . You may want to scroll up to the first program as a reminder. KS3 Home Task 3

© CSNewbs 2026

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