Computer Science - Class XI

Unit 1: Computer Systems and Organisation
  • Basic  computer organisation:  description  of  a computer system and mobile system, CPU,  memory, hard disk, I/O, battery.
  • Types of software: application, System, utility.
  • Memory Units: bit, byte, MB, GB, TB, and PB.
  • Boolean logic: OR, AND, NAND, NOR, XOR, NOT, truth tables, De Morgan’s laws
  • Information representation: numbers in base 2, 8, 16, binary addition
  • Strings: ASCII, UTF8, UTF32,  ISCII (Indian script code), Unicode
  • Basic concepts of Flowchart
  • Concept of Compiler & Interpreter
  • Running a program: Notion of an operating system, how  an operating system runs a program, idea of loading, operating system as a resource manager.
  • Concept  of  cloud  computing,  cloud  (public/private),  introduction  to  parallel computing.
Unit 2: Computational Thinking and Programming
  • Basics of Computational Thinking: Decomposition, Pattern Recognition/ Data representation, Generalization/ Data Abstraction and algorithm.
  • Familiarization  with  the  basics  of  Python  programming: a simple “hello world" program, process ofwriting a program (Interactive & Script mode), running it, and print statements; simple data-types: integer, float, string
  • Features of  Python, Python Character Set, Token & Identifiers, Keywords, Literals, Delimiters, operators.
  • Comments: (Single line & Multiline/Continuation statements), Clarit & Simplification of expression.
  • Introduce the notion of a variable, and methods to manipulate it (concept of L- value and R-value evenif not taught explicitly).
  • Knowledge  of  data types and operators: accepting  input  from  the console, assignment statement,expressions, operators and their precedence.
  • Operators & types: Binary  operators-Arithmetic,  Relational  operators, Logical
  • Operators, Augmented Assignment operators.
  • Conditional  statements: if, if-else,  if-elif-else;  simple  programs: e.g.: absolute value, sort 3 numbers,and divisibility.
  • Notion   of  iterative   computation   and  control   flow:   for(range(),len()),   while, flowcharts, suggested programs: interest calculation and factorials, etc.
  • Idea of debugging: errors and exceptions; debugging: pdb,  break points.
  • Lists,  tuples  and  dictionary:  finding  the  maximum,  minimum,  mean;  linear search on list/tuple ofnumbers, and counting the frequency of elements in a list using a dictionary. Introduce the notion ofaccessing elements in a collection using numbers and names.
  • Sorting  algorithm:  bubble  and insertion  sort;count the number of  operations while sorting.
  • Strings: Traversing, compare, concat, substring.
  • Introduction to Python modules: Importing math (sqrt, cell, floor, pow, fabs, sin, cos,  tan,  random  (random, randint,  randrange),  statistics  (mean,  median, mode) modules.
Unit 3: Data Management
  • Relational databases: Concept of a database, relations,  attributes  and tuples, keys- candidate key, primary key, alternate key, foreign key;Degree and cardinality of a table.
  • Use  SQL   –  DDL/  DML  commands  to   CREATE   TABLE,  INSERT   INTO, UPDATE  TABLE , DELETE  FROM,  ALTER TABLE,MODIFY TABLE, DROP TABLE, keys, and foreign keys; to view content of a table: SELECT-FROM- WHERE-ORDER BY alongwith BETWEEN,  IN, LIKE, (Queries only on  single table)
  • Aggregate functions – MIN, MAX, AVG, COUNT, SUM
  • Basics of NoSQL databases.

Unit 4: Society, Law and Ethics - Cyber safety
  • Cyber safety:  safely   browsing   the  web,  identity   protection,   confidentiality, social networks, cyber trolls and bullying
  • Appropriate usage of social networks: spread of rumors, and common social networking sites (Twitter, LinkedIn, and Facebook) and specific usage rules.
  • Safely accessing web sites: adware, malware, viruses, Trojans
  • Safely communicating data: secure connections, eavesdropping, phishing and identity verification.
                                        Practical Exercise
1. Programming in Python: At least the following Python concepts should be covered in the lab sessions: expressions, conditionals, loops, list, dictionary, and strings. The following are some representative lab assignments.
  • Find the largest and smallest numbers in a list.
  • Find the third largest number in a list.
  • Test for primarily.
  • Find whether a string is a palindrome or not.
  • Given two integers xand n, compute xn.
  • Compute the greatest common divisor and the least common multiple of two integers.
  • Test if a number is equal to the sum of the cubes of its digits. Find the smallest and largest such numbers.
2. Data Management: SQL Commands At least the following SQL commands should be covered during the labs: create, insert, delete, select, and join. The following are some representative assignments.
  • Create a student table with the student id, name, and marks as attributes where the student idis the primary key.
  • Insert the details of a new student in the above table.
  • Delete the details of a particular student in the above table.
  • Use the select command to get the details of the students with marks more than 80.
  • Create a new table (name, date of birth) by joining two tables (student id, name) and (student id, date of birth).
  • Create a new table (order ID, customer Name, and order Date) by joining two tables (order ID, customer ID,and order Date) and (customer ID, customer Name, contact Name, country)

No comments:

Post a Comment