Free Educational Resources from Mr. Noureddine Tadjerout
Average Rating4.64
(based on 35 reviews)
I am a versatile professional with a diverse skill set and a strong background in education and technology. As an accomplished Author, Teacher Trainer, Examiner, and certified Apple Teacher and VEX Robotics. I have honed my expertise in Computer Science and Mathematics education. Additionally, I hold the role of Curriculum Development Specialist, focusing on Computer Science, Engineering, and Microsoft Office. I am passionate about creating educational resources and assisting fellow educators.
I am a versatile professional with a diverse skill set and a strong background in education and technology. As an accomplished Author, Teacher Trainer, Examiner, and certified Apple Teacher and VEX Robotics. I have honed my expertise in Computer Science and Mathematics education. Additionally, I hold the role of Curriculum Development Specialist, focusing on Computer Science, Engineering, and Microsoft Office. I am passionate about creating educational resources and assisting fellow educators.
11.1 Programming Basics
11.2 Constructs
11.3 Structured Programming
11.1 Programming Basics
Implement and write pseudocode from a given design presented as either a program flowchart or structured English
Write pseudocode statements for:
• the declaration of variables and constants
• the assignment of values to variables and constants
• expressions involving any of the arithmetic or logical operators input from the keyboard and boutput to the console.
Use built-in functions and library routines
Any functions not given in the pseudocode guide will be provided
String manipulation functions will always be given
11.2 Constructs
Use pseudocode to write:
• an ‘IF’ statement including the ‘ELSE’ clause and nested IF statements
• a ‘CASE’ structure
• a ‘count-controlled’ loop:
• a ‘post-condition’ loop
• a ‘pre-condition’ loop
Justify why one loop structure may be better suited to solve a problem than the others
**11.3 Structured Programming **
Define and use a procedure
Explain where in the construction of an algorithm it would be appropriate to use a procedure.
Use parameters: A procedure may have none, one or more parameters and A parameter can be passed by reference or by value.
Define and use a function
Explain where in the construction of an algorithm it is appropriate to use a function.
A function is used in an expression, e.g. the return value replaces the call.
Use the terminology associated with procedures and functions: including Procedure / function header, procedure / function interface, parameter, argument, return value
Write efficient pseudocode
Declare and use one-dimensional arrays, for example: A[1:n]
Show understanding of the use of one-dimensional arrays, including the use of a variable as an index in an array
Read or write values in an array using a FOR … TO … NEXT loop
Declare and use variables and constants
Understand and use basic data types: Integer, Real, Char, String and Boolean
Understand and use the concepts of sequence, selection, repetition, totalling and counting
Use predefined procedures/functions
•Understand and use pseudocode for assignment, using ←
•understand and use pseudocode, using the following conditional statements:
IF
… THEN … ELSE … ENDIF
CASE
… OF … OTHERWISE … ENDCASE
•U nderstand and use pseudocode, using the following loop structures:
FOR
… TO … NEXT
REPEAT
… UNTIL
WHILE
DO … ENDWHILE
•U nderstand and use pseudocode, using the following commands and statements:
INPUT and OUTPUT (e.g. READ and PRINT)
totalling (e.g. Sum ← Sum +
counting (e.g. Count ← Count +
•U nderstand and use standard flowchart symbols to represent the above statements,
Key Objectives in this unite 2- Pseudocode and flowcharts are to revise:
Pseudocode:
Assignment
Loop structures
Input and output
Standard actions
Flowcharts:
Symbols
Lesson Objectives:
Lesson 1
All of you will…
Draw simple shapes using the turtle
Understand the use of different commands such as move forward, backward, left, right
Most of you will…
Use computational thinking skills to look for repeating patterns and include them in your programming
Lesson 2
Understand the motion commands with Python turtle module
Understand the use of Variables and how to assign them values.
Understand the use of different commands such as PenUp/PenDown, goto, forward, backward, left, right and t.begin_fill() & t.end_fill(), t.goto(x,y), t.setposition(x,y), t.pensize(value), t.setheading(value), t.color(‘green’)
Lesson 3
What you’re aiming for in this lesson is to:
familiarize yourself with the various code statements
play with the code and learn how to change and adapt it. For example, if you have the code for a small red square, you should be able to change it to make a big yellow square.
be able to use the code we have developed for various shapes to create a picture.
For all Teacher attached a student project for you attention:
Please before you solve any pre-release material for students. It is better to let them try to solve it first.
please give this project to your student for a period of a month therefore you can measure students progress and attainment.
IGCSE Pre- release material for Computer Science paper 2 - Student Project
Attached the Pre-release material for paper 2 exams , Please ask the students to open the PDF and watch the video and it will give students a starting point how to solve task 1/2/3 for this year exam. Thank you
But before that. student should start attempting pre-release paper 2 for last year May/June 2021, Please ask the student to go straight to slide 11 and do the last year exam paper 2 May/June 2021 , Students will find the questions/answers and the python programming code for task 1 / 2 and 3 .
I included python programming code for last year paper 2 exams for task 1/2/3 . Please make sure students practice using last year exam paper 2 before they start solving this year paper 2 . Thank you
Ask the students to solve and provide the following three tasks for this year exam:
pseudo code and python programming for Task 1
pseudo code and python programming for Task 2
pseudo code and python programming for Task 3
10.1 Data Types and Records:
Select and use appropriate data types for a problem solution
including integer, real, char, string, Boolean, date (pseudocode will use the following data types: INTEGER, REAL, CHAR, STRING, BOOLEAN, DATE, ARRAY, FILE)
Show understanding of the purpose of a record structure to hold a set of data of different data types under one identifier
Write pseudocode to define a record structure.
Write pseudocode to read data from a record structure and save data to a record structure
10.2 Arrays:
Use the technical terms associated with arrays (Including index, upper and lower bound)
Select a suitable data structure (1D or 2D array) to use for a given task
Write pseudocode for 1D and 2D arrays
Write pseudocode to process array data
Sort using a bubble sort
Search using a linear search
10.3 Files:
Show understanding of why files are needed
Write pseudocode to handle text files that consist of one or more lines
10.4 Introduction to Abstract Data Types (ADT):
Show understanding that an ADT is a collection of data and a set of operations on those data.
Show understanding that a stack, queue and linked list are examples of ADTs
Describe the key features of a stack, queue and linked list and justify their use for a given situation
Use a stack, queue and linked list to store data
(You will not be required to write pseudocode for these structures, but they should be able to add, edit and delete data from these structures)
Describe how a queue, stack and linked list can be implemented using arrays
9.1 Computational Thinking Skills:
Show an understanding of abstraction
Need for and benefits of using abstraction
Describe the purpose of abstraction
Produce an abstract model of a system by only including essential details
Describe and use decomposition
Break down problems into sub-problems leading to the concept of a program module (procedure / function)
9.2 Algorithms:
Show understanding that an algorithm is a solution to a problem expressed as a sequence of defined steps.
Use suitable identifier names for the representation of data used by a problem and represent these using an identifier table
Write pseudocode that contains input, process and output
Write pseudocode using the three basic constructs of sequence, selection and iteration (repetition)
Document a simple algorithm using pseudocode
Write pseudocode from:
a structured English description
a flowchart
Describe and use the process of stepwise refinement to express an algorithm to a level of detail from which the task may be programmed
Use logic statements to define parts of an algorithm solution
Chapter 7: Ethics and Ownership
7.1 Legal, Moral, Ethical and Cultural implication
7.2 Copyright issues
7.3 Artificial Intelligence
Show understanding of the need for and purpose of ethics as a computing professional
Understand the importance of joining a professional ethical body including BCS (British Computer Society), IEEE (Institute of Electrical and Electronic Engineers).
Show understanding of the need to act ethically and the impact of acting ethically or unethically for a given situation.
Show understanding of the need for copyright legislation
Show understanding of the different types of software licensing and justify the use of a license for a given situation.
Licenses to include free Software Foundation, the Open Source Initiative, shareware and commercial software.Show understanding of Artificial Intelligence (AI)
Understand the impact of AI including social, economic and environmental issues
Understand the applications of AI
6.1 Data Security
6.2 Data Integrity
Explain the difference between the terms security , privacy and integrity of data
Show appreciation of the need for both the security of data and the security of the
computer system
Describe security measures designed to protect computer systems, ranging from the
stand alone PC to a network of computers.
Including user accounts, passwords, authentication techniques such as digital
signatures, firewall, antivirus software, anti spyware, encryption.
Show understanding of the threats to computer and data security posed by networks
and the internet.
Including malware (virus, spyware), hackers, phishing, pharming.
Describe methods that can be used to restrict the risks posed by threats
Describe security methods designed to protect the security of data
Including encryption, access rights
8.1 Database Concepts
8.2 Database Management System (DBMS)
8.3 Data Definition Language (DDL) and Data Manipulation Language (DML)
Show understanding of the limitations of using a file-based approach for the storage and retrieval of data
Describe the features of a relational database that address the limitations of a file-based approach
Show understanding of and use the terminology associated with a relational database model: Including entity, table, record, field, tuple, attribute, primary key, candidate key, secondary key, foreign key, relationship (one-to-many, one-to-one, many-to-many), referential integrity, indexing
Use an entity-relationship (E-R) diagram to document a database design
Show understanding of the normalization process: First Normal Form(1NF), Second Normal Form (2NF) and Third Normal Form (3NF)
Explain why a given set of database tables are, or are not, in 3NF
Produce a normalized database design for a description of a database, a given set of data, or a given set of tables
Show understanding of the features provided by a Database Management System (DBMS) that address the issues of a file based approach Including:
data management, including maintaining a data dictionary
data modelling
logical schema
data integrity
data security, including backup procedures and the use of access rights to individuals / groups of users
Show understanding of how software tools found within a DBMS are used in practice, Including the use and purpose of:
developer interface
query processor
Show understanding that DBMS carries out all creation / modification of the database structure using its Data Definition Language (DDL)
Show understanding that the DBMS carries out all queries and maintenance of data using its DML
Show understanding that the industry standard for both DDL and DML is Structured Query Language (SQL): Understand a given SQL script
Understand given SQL (DDL) commands and be able to write simple SQL (DDL) commands using a sub-set of commands
Create a database (CREATE DATABASE)
Create a table definition (CREATE TABLE), including the creation of attributes with appropriate data types:
CHARACTER,VARCHAR(n), BOOLEAN,INTEGER,REAL,DATE,TIME
change a table definition (ALTER TABLE)
add a primary key to a table (PRIMARY KEY (field))
add a foreign key to a table (FOREIGN KEY (field) REFERENCES Table (Field))
Write an SQL script to query or modify data (DML) which are stored in (at most two) database tables :
Queries including SELECT… FROM, WHERE, ORDER BY, GROUP BY, INNER JOIN, SUM, COUNT, AVG
Data maintenance including. INSERT INTO, DELETE FROM, UPDATE
Student Project -Chapter 7: Ethics and Ownership:
You are going to search on:
• ethics
• the responsibilities of the computer professional
• copyright
• software licensing
• artificial intelligence.
Main aims of the student project for Security Privacy and Data Integrity:
You are going to search on:
• data integrity
• data privacy
• data security
• validation and verification
Show understanding that every computer system is made up of sub-systems, which in turn are made up of further sub-systems
Use top-down design, structure diagrams, flowcharts, pseudocode, library routines and sub-routines
Work out the purpose of a given algorithm
Explain standard methods of solution
Suggest and apply suitable test data
Understand the need for validation and verification checks to be made on input data (validation could include range checks, length checks, type checks and check digits)
Use trace tables to find the value of variables at each step in an algorithm
Identify errors in given algorithms and suggest ways of removing these errors
Produce an algorithm for a given problem (either in the form of pseudocode or flowchart)
Comment on the effectiveness of a given solution