Indira Gandhi National Open University

India · BCA_NEW 2024

Indira Gandhi National Open University

59 lab practicals for the IGNOU BCA syllabus.

IGNOU’s BCA_NEW programme for distance learners: C and Python, C++, Java, data structures and DBMS labs. Every lesson is stepped, compiled and checked by a real toolchain on your own machine — the model reviews your code afterwards, it does not decide whether you passed.

Updated

Semester by semester

Programme: Bachelor of Computer Applications (BCA_NEW, ODL). Scheme: BCA_NEW 2024 (Programme Guide v2.0, 2026). Open a course to see its practical units and the lab lesson GroutCode ships for each.

  1. Semester 2

    2 courses18 lab lessonsCPython
    • MCS201CPython

      Programming in C and Python

      16

      lessons

      • From flowchart to C — ten classic problem-solving algorithms
      • Operators that bite — integer division, casts and priority in C
      See all 16 lessons
      1. 1From flowchart to C — ten classic problem-solving algorithmsUnit 1 · Programming Fundamentals
      2. 2Operators that bite — integer division, casts and priority in CUnit 2 · Data Types Operators and Expressions
      3. 3Every control statement in C — from a grade ladder to a star triangleUnit 3 · Decision and Loop Control Statements
      4. 4Arrays, matrices and strings in C — built by handUnit 4 · Arrays& Strings
      5. 5Functions, storage classes and recursion in CUnit 5 · Functions
      6. 6A student record system with structures, unions and bit fieldsUnit 6 · Structures and Unions
      7. 7Pointer toolkit — swap, scan, reverse, allocate and sort by addressUnit 7 · Pointers
      8. 8File handling in C — text, formatted, binary and random-access I/OUnit 8 · File Handling
      9. 9Your first Python program — from greeting to a runnable scriptUnit 9 · Introduction to Python
      10. 10Python data structures from scratch — arrays, linked lists, stacks, queues and recursionUnit 10 · Data Structures and control statements in Python
      11. 11Marks processing with functions and files in PythonUnit 11 · Functions and File Handling in Python
      12. 12Modules and packages — building, finding and importing themUnit 12 · Modules and Packages
      13. 13A banking model with classes, inheritance and operator overloadingUnit 13 · Classes in Python
      14. 14Exception handling — catching, raising and defining errorsUnit 14 · Exception Handling in Python Programming
      15. 15Decorators, generators, iterators and coroutinesUnit 15 · Advanced Concepts
      16. 16A library catalogue in SQLite, driven from PythonUnit 16 · Data Access using Python
    • MCSL205CPython

      C and Python Lab

      2

      lessons

      • C Programming Lab: ten sessions from digits to structures
      • Python Programming Lab: eleven sessions from conditionals to generators
      See the units
      1. 1C Programming Lab: ten sessions from digits to structuresUnit 1 · Section 1: C Programming
      2. 2Python Programming Lab: eleven sessions from conditionals to generatorsUnit 2 · Section 2: Python Programming
  2. Semester 3

    5 courses27 lab lessonsC++SQLC
    • BCS131C++

      Programming in C++

      11

      lessons

      • Shapes two ways — structured functions, then classes and polymorphism
      • C++ fundamentals — eleven functions on types, operators and control flow
      See all 11 lessons
      1. 1Shapes two ways — structured functions, then classes and polymorphismUnit 1 · Object Oriented Programming
      2. 2C++ fundamentals — eleven functions on types, operators and control flowUnit 2 · Introduction to C++
      3. 3A BankAccount class — encapsulation, const members and static membersUnit 3 · Objects and Classes
      4. 4Constructors, destructors and a self-managing IntArray in C++Unit 4 · Constructors and Destructors
      5. 5Inheritance in C++: accounts, staff, smartphones and a diamondUnit 5 · Inheritance
      6. 6Overloading in C++: an exact Fraction type and a PolynomialUnit 6 · Operator Overloading
      7. 7Polymorphism in C++: a shape hierarchy and a payroll behind abstract basesUnit 7 · Polymorphism and Virtual Function
      8. 8Streams and files in C++: formatted reports, parsing, and binary file pointersUnit 8 · Streams and Files
      9. 9Templates and the STL: generic functions, a Stack<T> and a word counterUnit 9 · Templates and STL
      10. 10Exception handling: a parser, a bank account and stack unwindingUnit 10 · Exception Handling
      11. 11Case study: a study-centre library management system in C++Unit 11 · Case Study
    • BCSL135SQLC++

      DBMS and C++ Lab

      2

      lessons

      • DBMS lab in SQLite: a study centre's learners, courses and marks
      • C++ lab: from control structures to templates, streams, exceptions and the STL
      See the units
      1. 1DBMS lab in SQLite: a study centre's learners, courses and marksUnit 1 · Section 1: Database Management Systems
      2. 2C++ lab: from control structures to templates, streams, exceptions and the STLUnit 2 · Section 2: C++ Lab
    • MCS207SQL

      Database Management Systems

      3

      lessons

      • SQL on an employee database — DDL, DML, aggregates, GROUP BY and HAVING
      • Joins, self joins and correlated sub-queries over an employee database
      See all 3 lessons
      1. 1SQL on an employee database — DDL, DML, aggregates, GROUP BY and HAVINGUnit 7 · Structured Query language
      2. 2Joins, self joins and correlated sub-queries over an employee databaseUnit 8 · Complex Queries
      3. 3Triggers as assertions, a transfer procedure and window queries for a bankUnit 9 · Advanced SQL
    • MCS208C

      Data Structures and Algorithms

      10

      lessons

      • Address arithmetic, sparse matrices and polynomials in C
      • The List ADT four ways: array, singly, doubly and circularly linked, and a skip list
      See all 10 lessons
      1. 1Address arithmetic, sparse matrices and polynomials in CUnit 2 · Arrays, Pointers and Structures
      2. 2The List ADT four ways: array, singly, doubly and circularly linked, and a skip listUnit 3 · Lists
      3. 3Stacks in C: arrays, linked nodes, shared arrays and their applicationsUnit 4 · Stacks
      4. 4Queues in C: circular arrays, linked queues, deques, priority queues and schedulingUnit 5 · Queues
      5. 5Binary and general trees in C: traversals, array form and expression treesUnit 6 · Trees
      6. 6Search trees in C: BST operations, AVL balancing, red-black rules and splayingUnit 7 · Advanced Trees
      7. 7Graph algorithms in C: traversals, shortest paths, spanning trees and SCCsUnit 8 · Graphs
      8. 8Searching and sorting toolkit — from linear search to an external mergeUnit 9 · Searching and Sorting Techniques
      9. 9Hash tables four ways — index mapping, chaining, probing and rehashingUnit 10 · Hashing
      10. 10Scapegoat trees, tries, and x-fast / y-fast tries over 8-bit keysUnit 11 · Advanced Data Structures
    • MCSL209C

      Data Structures and Algorithms Lab

      1

      lesson

      • DSA lab — stacks, queues, lists and trees, then graphs and dynamic programming
      See the units
      1. 1DSA lab — stacks, queues, lists and trees, then graphs and dynamic programmingUnit LAB · Data Structures and Algorithms Lab
  3. Semester 4

    2 courses13 lab lessonsJava
    • BCSL146Java

      Object Oriented Programming using Java Lab

      1

      lesson

      • Java lab: from loops to a thread-safe bank
      See the units
      1. 1Java lab: from loops to a thread-safe bankUnit LAB · Section 1: Java Programming
    • MCS206Java

      Object Oriented Programming using Java

      12

      lessons

      • Your first Java program and the Java platform it runs on
      • Java basics: primitive types, Unicode, operators and reading input with Scanner
      See all 12 lessons
      1. 1Your first Java program and the Java platform it runs onUnit 1 · Introduction to Java
      2. 2Java basics: primitive types, Unicode, operators and reading input with ScannerUnit 2 · Basics of Java
      3. 3Arrays, decisions and loops: searching, grading, primes and matrices in JavaUnit 3 · Decisions and Loops
      4. 4Classes and objects: an immutable Point, an encapsulated BankAccount and object lifecycleUnit 4 · Class and Objects
      5. 5Inheritance: a Person, Employee, Manager and Contractor class hierarchyUnit 5 · Inheritance
      6. 6A polymorphic payroll — overloading, overriding and abstract classes in JavaUnit 6 · Polymorphism
      7. 7A bank that fails safely — exceptions and assertions in JavaUnit 7 · Assertions and Exception Handling
      8. 8A shipping manifest — interfaces, default and static methods, and access rules in JavaUnit 8 · Packages and Interfaces
      9. 9Threads that cooperate — creating, joining, synchronizing and signalling in JavaUnit 9 · Multithreading
      10. 10Text and number utilities — wrapper classes, String, StringBuilder and StringBuffer in JavaUnit 10 · Number and Strings (String, StringBuilder, string buffer)
      11. 11Java I/O streams: bytes, characters, files and serializationUnit 11 · I/O Streams
      12. 12The Java API: dates, sets, maps, stacks, vectors and listsUnit 12 · Java API
  4. Semester 5

    1 course1 lab lessonC
    • BCSL159C

      Introduction to Algorithm Design Lab

      1

      lesson

      • Algorithm Design Lab: from Euclid to BFS
      See the units
      1. 1Algorithm Design Lab: from Euclid to BFSUnit LAB · Algorithm Design Lab

The full 24-course syllabus is transcribed in the app, including the theory courses. Lessons are authored against the course codes that have practical work, and the list grows with each release.

GroutCode is not affiliated with or endorsed by Indira Gandhi National Open University. Course codes and titles are transcribed from the institution’s published scheme documents.

How a practical runs

The same five steps for every lesson, in every language.

  1. 1

    Pick your syllabus

    Choose your university or board and the semester or class you are in. The course list is the transcribed official scheme, not an approximation.

  2. 2

    Open a lab lesson

    Each lesson is a stepped practical for a specific course, with a starter file you edit and a test file you do not.

  3. 3

    Write the code yourself

    The starter has the signatures and the TODOs. You implement them in the editor, in the language your course actually uses.

  4. 4

    Run the checks

    The toolchain compiles and runs the tests — 8 to 15 of them across the lesson, one per step, so you find out which change broke what.

  5. 5

    Get the review

    Once the tests pass, the model reads your implementation and tells you the input that breaks it. It never reports the pass or fail itself.

Why the compiler grades, not the model

The obvious way to build an AI lab tool is to let the model read the student’s code and say whether it is correct. It is also the way that produces a tool nobody can trust. A model will tell you your code works when the compiler says otherwise, and it will fail you for a style it happens to dislike.

So the two jobs are split:

  • The model designs the lesson, writes the starter and the tests, and — after the tests pass — reads what you actually wrote and tells you the input that breaks it.
  • The toolchain decides whether it compiles and whether each step passes. That verdict is not negotiable and the model never issues it.

And why steps instead of one big task

A 40-to-60 minute practical with a single Run at the end gives a beginner one bit of feedback an hour, and it arrives after every decision has already been made. Each lesson here is 8 to 15 steps, each with its own instruction and its own check, so you find out which change broke what while you still remember making it.

Frequently asked questions

Does GroutCode cover the IGNOU BCA BCA_NEW 2024?

Yes. GroutCode ships the transcribed IGNOU BCA BCA_NEW 2024 for Bachelor of Computer Applications (BCA_NEW, ODL) — 24 courses — with 59 authored lab lessons mapped to specific course codes. The syllabus was transcribed from the official documents, and the source and checksum of each one is recorded in the app.

Which languages do the IGNOU BCA practicals use?

C (21 lessons), Java (13 lessons), C++ (12 lessons), Python (9 lessons), SQL (4 lessons). The language is set per course code rather than guessed from the title, because the same subject is taught in different languages at different institutions.

Does the AI just write the practical for me?

No. The starter file has the signatures and the TODOs; you implement them. The toolchain — not the model — decides whether your code compiles and whether each step passes, so the AI cannot tell you your code works when the compiler disagrees. What it does afterwards is read your implementation and point out the input that breaks it.

Do the practicals work offline?

The lessons, the syllabus and the test runner are bundled in the app and run locally, so the compile-and-check loop works with no connection. The review step at the end uses a model, which can be a local one or a cloud one with your own key.

What do I need installed?

GroutCode detects which toolchains are present on your machine and tells you what is missing and what would fix it. You need the compiler or interpreter for the language your course uses — a C compiler, a JDK, Python, Node or SQLite.

Do your IGNOU BCA lab work with the checks built in

GroutCode is included in every Grout Suite license. Free download for Windows and macOS.

Download GroutCode