Friday, October 16, 2026

Internet of Things (IoT) & Arduino G.C.E AL ICT Lesson 11.4 Questions Notes Tamil Medium PDF English Class Examples

ЁЯОУ Final Master Notes • Sections 46–53

ЁЯМР G.C.E. A/L ICT – Competency 11.1 | IoT Complete Notes

рооுро┤ுрооைропாрой IoT, Embedded Systems, Arduino, Sensors, Actuators Notes | Key Terms, Exam Points, Structured Questions & Answers, Master Formula, Last-Minute Revision Sheet

ЁЯФд Key Terms ⭐ Exam Points ЁЯУЭ Structured Q&A ЁЯзо Master Formula ЁЯза Revision Sheet ЁЯОп A/L Ready

ЁЯФд Section 46 – Key Terms (Tamil + English)

ЁЯФд 46. рооுроХ்роХிроп Terms – Tamil + English Glossary ▼

роЗрои்род chapter-ро▓் ро╡ро░ுроо் роЕройைрод்родு technical terms-роо் роЗроЩ்роХே Tamil + English-ро▓் родொроХுроХ்роХрок்рокроЯ்роЯுро│்ро│рой. Exam-ро▓் роЗро░ு рооொро┤ிроХро│ிро▓ுроо் роОро┤ுродрод் родெро░ிрои்родிро░ுроХ்роХ ро╡ேрог்роЯுроо்.

English Term родрооிро┤் роЕро░்род்родроо் Category
Embedded SystemроЙроЯ்рокொродிроХ்роХрок்рокроЯ்роЯ роЕрооைрок்рокுConcept
Development Boardрооேроо்рокாроЯ்роЯு рокро▓роХைHardware
Microcontrollerроиுрог்роХроЯ்роЯுрок்рокроЯுрод்родிHardware
Microprocessorроиுрог்роЪெропро▓ிHardware
SensorроЙрогро░்роХро░ுро╡ிInput
ActuatorроЪெропро▓்рокроЯுрод்родிOutput
Analog InputроТрод்родிроЪைро╡ு роЙро│்ро│ீроЯுSignal Type
Digital InputроЗро▓роХ்роХ роЙро│்ро│ீроЯுSignal Type
Digital OutputроЗро▓роХ்роХ ро╡ெро│ிропீроЯுSignal Type
IDEроТро░ுроЩ்роХிрогைрои்род рооேроо்рокாроЯ்роЯு роЪூро┤ро▓்Software
CompilerродொроХுрок்рокிSoftware
Code Editorроиிро░ро▓் родொроХுрок்рокி/роОро┤ுрод்родிSoftware
Programmerроиிро░ро▓் роПро▒்ро▒ுроо் роХро░ுро╡ி/рооுро▒ைSoftware
Resetрооீро│рооைрок்рокுControl
Power Supplyрооிрой்роЪாро░ ро╡ро┤роЩ்роХро▓்Hardware
Receive (RX)рокெро▒ுродро▓்Communication
Transmit (TX)роЕройுрок்рокுродро▓்Communication
LDRроТро│ி роЪாро░்рои்род рооிрой்родроЯைSensor
Reed SwitchроХாрои்родрод்родாро▓் роЗропроЩ்роХுроо் switchSensor
Physical ComputingрокௌродிроХ роХрогிройிропிропро▓்Concept
ЁЯУЪ Study Tip: роЗрои்род terms-роР flashcard-роЖроХ роОро┤ுродி родிройрооுроо் revise роЪெроп்ропுроЩ்роХро│். Structured questions-ро▓் Tamil + English роЗро░рог்роЯைропுроо் рокропрой்рокроЯுрод்родро▓ாроо்.

⭐ Section 47 – Most Important Exam Points

⭐ 47. рооிроХро╡ுроо் рооுроХ்роХிропрооாрой Exam Points ▼

роЗрои்род chapter-роР рокроЯிроХ்роХுроо்рокோродு роХீро┤ே роЙро│்ро│ро╡ро▒்ро▒ை рооройрок்рокாроЯрооாроХ роороЯ்роЯுроо் роЕро▓்ро▓ாрооро▓் concept-роЖроХро╡ுроо் родெро░ிрои்родிро░ுроХ்роХ ро╡ேрог்роЯுроо்.

A. Development Boards Examples

Arduino Raspberry Pi Micro:bit

B. Arduino Features

Analog Input Digital Input Microcontroller Digital Output RX/TX USB Power Reset

C. RX/TX

RX = Receive (рокெро▒ுродро▓்)
TX = Transmit (роЕройுрок்рокுродро▓்)

D. IDE Components

Code Editor + Compiler + Programmer/Upload facility
рооூрой்ро▒ுроо் роЪேро░்рои்род software environment.

E. Applications

LED control LDR-based auto light Temperature fan Reed-switch door

F. Basic Architecture

Input → Processing → Output
роОрои்род IoT system-роХ்роХாрой universal model.

G. Important Components

Sensor → Input
Microcontroller → Processing
Actuator/Output → Action

H. Signal Types

Analog = continuous values
Digital = discrete states (0/1)

ЁЯОп Exam Strategy: роЗрои்род 8 points-роР "mind map"-роЖроХ ро╡ро░ைрои்родு 5 minutes-ро▓் revise роЪெроп்ропுроЩ்роХро│்.

ЁЯУЭ Section 48 – Exam-Style Q&A (FAQ Schema Ready)

ЁЯУЭ 48. Exam-Style Questions & Answers (14 Important Q&A) ▼

роЗрои்род Q&A родொроХுрок்рокு A/L MCQ, Structured рооро▒்ро▒ுроо் Essay роХேро│்ро╡ிроХро│ுроХ்роХு роПро▒்ро▒родு. Google Featured Snippets-роХ்роХுроо் optimize роЪெроп்ропрок்рокроЯ்роЯுро│்ро│родு.

Q1. What is an Embedded System?
роТро░ு роХுро▒ிрок்рокிроЯ்роЯ роЪெропро▓்рокாроЯ்роЯைроЪ் роЪெроп்ро╡родро▒்роХாроХ роТро░ு electronic/mechanical system-роХ்роХுро│் роЙроЯ்рокொродிроХ்роХрок்рокроЯ்роЯ computer-based control system Embedded System роОройрок்рокроЯுроо்.
Example: Washing machine controller, Microwave oven controller.
Q2. What is a Microcontroller?
CPU, memory, input/output interfaces рооро▒்ро▒ுроо் рокிро▒ control-related hardware components роЖроХிропро╡ро▒்ро▒ை роТро░ே chip-ро▓் роХொрог்роЯிро░ுроХ்роХுроо் роЪிро▒ிроп programmable control device Microcontroller роЖроХுроо்.
Example: ATmega328P in Arduino Uno.
Q3. Give three examples of development boards.
Arduino Raspberry Pi Micro:bit
Q4. What is an Analog Input?
рооாро▒ிроХ்роХொрог்роЯிро░ுроХ்роХுроо் continuous physical/electrical signal-роР development board-роХ்роХு input роЖроХрок் рокெро▒ுро╡родு Analog Input роЖроХுроо்.
Example: LDR рооூро▓роо் light intensity reading (0–1023 range).
Q5. What is a Digital Input?
рокொродுро╡ாроХ роЗро░рог்роЯு роиிро▓ைроХро│ைроХ் (HIGH/LOW) роХொрог்роЯ input signal-роР development board рокроЯிрок்рокродு Digital Input роЖроХுроо்.
Example: Push button / Reed switch.
Q6. What is Digital Output?
Development board-роЗро▓ிро░ுрои்родு digital control signal роТрой்ро▒ை output device-роХ்роХு ро╡ро┤роЩ்роХுро╡родு Digital Output роЖроХுроо்.
Example: LED ON/OFF, Buzzer ON/OFF.
Q7. What is RX?
RX роОрой்рокродு Receive роОрой்рокродрой் роЪுро░ுроХ்роХроо். Serial communication рооூро▓роо் data рокெро▒рок் рокропрой்рокроЯுрод்родрок்рокроЯுроо் pin. Arduino Uno-ро╡ிро▓் Pin 0.
Q8. What is TX?
TX роОрой்рокродு Transmit роОрой்рокродрой் роЪுро░ுроХ்роХроо். Serial communication рооூро▓роо் data роЕройுрок்рокрок் рокропрой்рокроЯுрод்родрок்рокроЯுроо் pin. Arduino Uno-ро╡ிро▓் Pin 1.
Q9. What is the function of USB port?
Computer рооро▒்ро▒ுроо் development board роЗроЯைропே connection роПро▒்рокроЯுрод்родро╡ுроо், program upload роЪெроп்ропро╡ுроо், serial communication роЪெроп்ропро╡ுроо், power supply ро╡ро┤роЩ்роХро╡ுроо் USB рокропрой்рокроЯுрод்родрок்рокроЯро▓ாроо்.
Q10. What is IDE?
IDE – Integrated Development Environment. Program роОро┤ுрод, compile роЪெроп்роп рооро▒்ро▒ுроо் development board-роХ்роХு upload/program роЪெроп்роп роЙродро╡ுроо் software environment.
Example: Arduino IDE.
Q11. What is LDR?
LDR – Light Dependent Resistor. ро╡ெро│ிроЪ்роЪрод்родிрой் intensity-роХ்роХு роПро▒்рок роЕродрой் resistance рооாро▒ுроо் component. Analog input-роЖроХ рокропрой்рокроЯுроо்.
Q12. Give an application of LDR.
Automatic street light / automatic room light.
роЗро░ுроЯ்роЯாроХுроо்рокோродு LED ON; ро╡ெро│ிроЪ்роЪрооாроХுроо்рокோродு LED OFF.
Q13. What is a Reed Switch?
Magnetic field-рой் родாроХ்роХрод்родாро▓் open/close роЖроХுроо் switch Reed Switch роОройрок்рокроЯுроо்.
Application: Door open/close detection.
Q14. How can a temperature sensor be used to control a fan?
Process: Temperature sensor рооூро▓роо் temperature reading рокெро▒рок்рокроЯுроХிро▒родு. Microcontroller роЕрои்род value-роР threshold value-роЙроЯрой் compare роЪெроп்роХிро▒родு. Temperature threshold-роР ро╡ிроЯ роЕродிроХрооாроХ роЗро░ுрои்родாро▓் fan ON роЪெроп்ропрок்рокроЯுроХிро▒родு; роЗро▓்ро▓ைропெройிро▓் OFF роЪெроп்ропрок்рокроЯுроХிро▒родு.

Logic:
IF temperature > threshold THEN Fan ON ELSE Fan OFF

ЁЯУК Sections 49-51 – Structured Question Examples

ЁЯМб️ 49. Structured Q: Automatic Fan System (Classroom) ▼
Question: роТро░ு classroom-ро▓் temperature роЕродிроХро░ிроХ்роХுроо்рокோродு fan родாройாроХ ON роЖроХுроо் system роТрой்ро▒ை роЙро░ுро╡ாроХ்роХ ро╡ேрог்роЯுроо்.
PartQuestionAnswer
(a)Input device роТрой்ро▒ைроХ் роХுро▒ிрок்рокிроЯுроХTemperature sensor
(b)Processing device?Microcontroller / Development board
(c)Output device?Fan
(d)Basic condition роОро┤ுродுроХ IF temperature > threshold
    Fan ON
ELSE
    Fan OFF

(e) System Diagram

Temperature Sensor ↓ Analog Input ↓ Microcontroller ↓ Compare Temperature ↓ Driver/Relay ↓ Fan
⚠️ Important Exam Tip: рокெро░ிроп fan/motor-роР роиேро░роЯிропாроХ microcontroller pin-ро▓் роЗрогைроХ்роХроХ்роХூроЯாродு. Driver/Relay родேро╡ை роОрой்рокродை diagram-ро▓் роХாроЯ்роЯ ро╡ேрог்роЯுроо்.
ЁЯТб 50. Structured Q: Automatic Light System (Room) ▼
Question: роТро░ு room-ро▓் ро╡ெро│ிроЪ்роЪроо் роХுро▒ைрои்родாро▓் LED родாройாроХ ON роЖроХ ро╡ேрог்роЯுроо்.

Input

LDR

Processing

Microcontroller

Output

LED

System Flow

LDR ↓ Analog Input ↓ Microcontroller ↓ Compare Light Level ↓ LED ON/OFF

Logic / Pseudocode

IF light < threshold LED ON ELSE LED OFF
ЁЯТб Exam Answer Format: Input, Processing, Output, System diagram, Logic/Pseudocode роЖроХிроп 5 parts-роРропுроо் родெро│ிро╡ாроХ роОро┤ுродுроЩ்роХро│்.
ЁЯЪи 51. Structured Q: Door Security System (Reed Switch) ▼
Question: роТро░ு ро╡ீроЯ்роЯிрой் роХродро╡ு родிро▒роХ்роХрок்рокроЯ்роЯро╡ுроЯрой் buzzer ON роЖроХுроо் system роТрой்ро▒ை роЙро░ுро╡ாроХ்роХுроХ.

Input

Reed switch

Processing

Microcontroller

Output

Buzzer

System Flow

Door ↓ Reed Switch ↓ Digital Input ↓ Microcontroller ↓ Buzzer

Logic / Pseudocode

IF door is OPEN Buzzer ON ELSE Buzzer OFF
ЁЯУМ Note: Reed switch роТро░ு Digital Input (HIGH/LOW only). LDR рооро▒்ро▒ுроо் Temperature sensor роЖроХிропро╡ை Analog Input.

ЁЯзо Section 52 – Master Formula (One Formula, Whole Chapter)

ЁЯзо 52. роТро░ே Formula-ро╡ிро▓் рооுро┤ு 11.1 Chapter | Master Architecture ▼

роЗрои்род роТро░ு structure-роР роирой்ро▒ாроХрок் рокுро░ிрои்родுроХொрог்роЯாро▓் chapter рооிроХро╡ுроо் роОро│ிродாроХிро╡ிроЯுроо். роОрои்род IoT/Embedded system question-роХ்роХுроо் роЗродை apply роЪெроп்ропро▓ாроо்.

REAL WORLD ↓ SENSOR ↓ INPUT ↓ ┌────────────────┐ │ MICROCONTROLLER│ │ + PROGRAM │ └────────────────┘ ↓ DECISION ↓ OUTPUT ↓ ACTUATOR ↓ PHYSICAL ACTION

Example 1 – Automatic Light

Light (Real World) ↓ LDR (Sensor) ↓ Analog Input ↓ Arduino (Microcontroller + Program) ↓ Compare with Threshold (Decision) ↓ Digital Output ↓ LED (Actuator) ↓ Light ON/OFF (Physical Action)

Example 2 – Automatic Fan

Temperature → Sensor → Arduino → Fan (via Relay)

Example 3 – Smart Door Alarm

Door → Reed Switch → Arduino → Buzzer
ЁЯОп Exam Power Tip: роЗрои்род formula-роР exam-ро▓் block diagram-роЖроХ ро╡ро░ைропுроЩ்роХро│். 10/10 marks guaranteed! Input, Processing, Output рооூрой்ро▒ைропுроо் родெро│ிро╡ாроХ роХுро▒ிрок்рокிроЯро╡ுроо்.

ЁЯза Section 53 – Last-Minute Revision Sheet

ЁЯза 53. Last-Minute Revision Sheet | 15 Core Points ▼

родேро░்ро╡ுроХ்роХு рооுрой் роЗрои்род 15 points-роР роороЯ்роЯுроо் revise роЪெроп்родாро▓ுроо் chapter-рой் core concept роиிройைро╡ிро▓் роЗро░ுроХ்роХுроо்.

1
Embedded System → роХுро▒ிрок்рокிроЯ்роЯ task роЪெроп்ропுроо் system. Example: Washing machine controller.
2
Development Board → hardware applications develop/test роЪெроп்ропுроо் board.
3
Arduino → popular open-source development platform.
4
Microcontroller → system-рой் control/processing component (CPU+Memory+I/O on one chip).
5
Analog Input → continuously varying input (LDR, Temperature sensor).
6
Digital Input → digital state input (Button, Reed switch).
7
Digital Output → device control signal (LED ON/OFF).
8
RX → Receive (Pin 0 on Arduino Uno).
9
TX → Transmit (Pin 1 on Arduino Uno).
10
USB → computer connection / program transfer / power supply.
11
Power Supply → board-роХ்роХு electrical power ро╡ро┤роЩ்роХுроо்.
12
Reset → program execution-роР рооீрог்роЯுроо் роЖро░роо்рокிроХ்роХ (restart from setup()).
13
IDE → code + compile + upload/program workflow (Eg: Arduino IDE).
14
LDR → light sensing (Light Dependent Resistor).
15
Reed Switch → magnetic door detection (open/close sensor).

ЁЯОп Sensor Examples

LDR Temperature Reed Switch PIR Ultrasonic

⚙️ Actuator Examples

LED Fan Buzzer Motor Relay

ЁЯУК ЁЯОБ Bonus: 3 Main Applications Comparison Table ▼

Exam-ро▓் роЕроЯிроХ்роХроЯி ро╡ро░ுроо் рооூрой்ро▒ு рооுроХ்роХிроп applications-роР роТро░ே table-ро▓் compare роЪெроп்ропுроЩ்роХро│்:

Application Sensor (Input) Signal Type Processing Output Logic
Automatic Light LDR Analog Arduino LED IF light < threshold → LED ON
Automatic Fan Temperature Sensor Analog Arduino Fan (via Relay) IF temp > 30°C → Fan ON
Door Security Reed Switch Digital Arduino Buzzer / LED IF door OPEN → Buzzer ON
ЁЯПЖ Exam Master Tip: роОрои்род IoT question ро╡рои்родாро▓ுроо், роЗрои்род 5 elements-роР родெро│ிро╡ாроХ роОро┤ுродுроЩ்роХро│்: Input Sensor → Signal Type → Processing Device → Decision Logic → Output Actuator.
ЁЯОУ SRI LANKA ONLINE ICT CLASSES · р╖Б්‍р╢╗ී р╢╜ංр╢Ъා р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි · роЗро▓роЩ்роХை роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│்

Online ICT Classes in Sri Lanka – O/L, A/L, Cambridge, Edexcel, Python, Web Development & Digital Marketing

Island-wide online classes and home-visit classes in English, Sinhala (р╖Гිංр╖Др╢╜) and Tamil (родрооிро┤்) – for school students, university students, BIT / BSc / IT final-year project students, beginners and business owners.

ЁЯТм WhatsApp Us Now ▶ Watch Free Tutorials

What is ITClassSL? ITClassSL is a Sri Lankan ICT training service offering online and home-visit classes for G.C.E. O/L ICT, G.C.E. A/L ICT, Cambridge IGCSE / A Level, Pearson Edexcel, Python, Java, PHP & MySQL, web design, Microsoft Office, university and BIT final-year project guidance, and digital marketing. Classes run in English, Sinhala and Tamil, as individual or group sessions, anywhere in Sri Lanka. Contact: WhatsApp +94 72 962 2034 · itclasssl@gmail.com.

ЁЯЪА Learn Today. Build Tomorrow.

Looking for ICT classes in Sri Lanka, online ICT tuition, A/L ICT online class, computer classes near me or BIT project help? We provide practical, exam-focused and career-focused IT training with past papers, model papers, step-by-step coding and one-to-one support.

ЁЯТб Our ICT Training & Services in Sri Lanka

ЁЯПл School ICT Classes (Grade 1 – 13)

Online and home-visit ICT lessons for Sri Lankan school students.

  • G.C.E. O/L ICT (р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT / роЪாродாро░рог родро░ ICT)
  • G.C.E. A/L ICT (р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT / роЙропро░்родро░ ICT)
  • GIT (General Information Technology)
  • Term test papers, past papers & revision

ЁЯдЦ Programming & AI

Learn to code from zero to project level.

  • Python, C, Java, PHP, JavaScript
  • HTML, CSS, jQuery & AJAX
  • AI & machine-learning basics
  • Problem solving & algorithms

ЁЯОУ University & Final-Year Project Guidance

Technical guidance for BIT, BSc, IT and ICT students.

  • BIT / UCSC / UoM final-year projects
  • PHP & MySQL, Python, Java projects
  • Project ideas, proposal & documentation
  • System design & database design

ЁЯМР Web Design & Development

Websites and database-driven applications for individuals and businesses.

  • Website design & development
  • WordPress & Blogger
  • PHP & MySQL web applications
  • Website SEO & maintenance

ЁЯУв Digital Marketing

Grow your brand online in the Sri Lankan market.

  • Facebook page & Facebook Ads
  • Instagram, Reels, TikTok & YouTube
  • SEO & content creation
  • LinkedIn branding & campaign planning

ЁЯТ╗ Computer & IT Skills

Essential computer skills from beginner to advanced.

  • Computer fundamentals
  • MS Word, Excel & PowerPoint
  • Excel formulas & macros
  • Oracle / MySQL / MS SQL, AWS, Linux

ЁЯЧг️ English · р╖Гිංр╖Др╢╜ · родрооிро┤் – Classes in Your Language

English

Online ICT classes in Sri Lanka, A/L ICT online class, O/L ICT tuition, computer classes, Python classes, web design course, BIT project guidance, digital marketing course Sri Lanka, home visit ICT teacher, Cambridge & Edexcel ICT / Computer Science.

р╖Гිංр╖Др╢╜

р╖Б්‍р╢╗ී р╢╜ංр╢Ъාр╖Аේ р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි, р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT р╢Фр╢▒්р╢╜р╢║ිр╢▒් р╢┤р╢▒්р╢нි, р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT р╢┤р╢▒්р╢нි, р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි, р╢┤р╢║ිр╢нр╢▒් (Python) р╢┤්‍р╢╗ෝр╢Ь්‍р╢╗ැр╢╕ිр╢▒් р╢┤р╢▒්р╢нි, р╖Аෙр╢╢් р╢Ер╢йр╖Аි р╢▒ිр╢╗්р╢╕ාр╢лр╢║, р╖Аිр╖Б්р╖Ар╖Аිр╢п්‍р╢║ාр╢╜ р╢Ер╖Ар╖Гр╢▒් р╖Ар╖Гр╢╗ р╖А්‍р╢║ාр╢┤ෘр╢нි р╢╕ාр╢╗්р╢Ьෝр╢┤р╢пේр╖Бр╢▒р╢║, р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් р╢┤ාр╢ир╢╕ාр╢╜ාр╖А, р╢▒ිр╖Ар╖Гр╢з р╢┤ැр╢╕ිр╢л р╢Лр╢Ьр╢▒්р╖Ар╢▒ ICT р╢Ьුр╢╗ුр╖Ар╢╗р╢║ා.

родрооிро┤்

роЗро▓роЩ்роХைропிро▓் роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│், роЙропро░்родро░ ICT роЖрой்ро▓ைрой் ро╡роХுрок்рокு, роЪாродாро░рог родро░ ICT ро╡роХுрок்рокு, роХрогிройி ро╡роХுрок்рокுроХро│், рокைродாрой் (Python) роиிро░ро▓ாроХ்роХ ро╡роХுрок்рокு, роЗрогைропродро│ ро╡роЯிро╡рооைрок்рокு, рокро▓்роХро▓ைроХ்роХро┤роХ роЗро▒ுродிропாрог்роЯு родிроЯ்роЯ ро╡ро┤ிроХாроЯ்роЯро▓், роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ் рокропிро▒்роЪி, ро╡ீроЯ்роЯிро▒்роХு ро╡рои்родு роХро▒்рокிроХ்роХுроо் ICT роЖроЪிро░ிропро░்.

ЁЯУЪ Learn With Your Curriculum

Sri Lankan local syllabus, Pearson Edexcel and Cambridge programmes – ICT and Computer Science.

ЁЯЗ▒ЁЯЗ░ Sri Lankan Local Curriculum

  • Grade 1 – Grade 11 ICT
  • G.C.E. O/L ICT · р╖Гා/р╢┤ෙр╖Е ICT · роЪா/род ICT
  • G.C.E. A/L ICT · р╢Л/р╢┤ෙр╖Е ICT · роЙ/род ICT
  • GIT classes
  • Term test preparation, model papers & notes
  • English / Sinhala / Tamil medium

ЁЯУШ Pearson Edexcel

  • iPrimary Computing
  • iLowerSecondary Computing
  • International GCSE ICT
  • International GCSE Computer Science
  • International A Level IT
  • International A Level Computer Science

ЁЯУЧ Cambridge

  • Cambridge Primary & Lower Secondary Computing
  • Cambridge IGCSE ICT
  • Cambridge IGCSE Computer Science
  • Cambridge O Level Computer Science
  • AS & A Level IT
  • AS & A Level Computer Science

ЁЯТ╗ Programming & Software Development Classes

Python ProgrammingC ProgrammingJava Programming PHPJavaScriptHTML & CSS jQuery & AJAXASP.NETVB.NET VB6MySQLMS SQL Server MS AccessOracle DatabaseDatabase Design SQL QueriesSoftware DevelopmentSoftware Testing

ЁЯОУ BIT, BSc & University Final-Year IT Project Guidance

ЁЯзС‍ЁЯТ╗ Project Development

  • BIT / BSc / IT / ICT projects
  • PHP & MySQL projects
  • Python & Java projects
  • Web application & database projects

ЁЯУД Documentation & Practical

  • Project ideas & proposals
  • System architecture & database design
  • Assignment guidance
  • Technical documentation & viva preparation

ЁЯза AI & Smart Applications

  • AI application concepts
  • Machine-learning modules
  • Automation applications
  • Step-by-step coding support

ЁЯУК Database, Cloud & IT Professional Training

Oracle DatabaseMySQLMicrosoft SQL Server Microsoft AccessAWS CloudLinux UNIXWindows ServerDevOps SREAutomationFreelancing Skills

ЁЯУ▒ Digital Marketing & Social Media Training (р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් · роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ்)

Facebook Page SetupFacebook AdsInstagram Marketing Instagram ReelsTikTok MarketingYouTube Channel Setup Social Media ManagementContent CreationSEO LinkedIn BrandingCampaign PlanningHashtag Strategy Insights & Engagement

ЁЯЦе️ Microsoft Office & Digital Skills (р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි · роХрогிройி ро╡роХுрок்рокுроХро│்)

MS WordMS ExcelMS PowerPoint Excel FormulasExcel Macros & AutomationComputer Fundamentals Digital LiteracyMultimedia Presentations

ЁЯзн How to Join – 4 Simple Steps

  1. Message us on WhatsApp – tell us your grade / course, medium (English, Sinhala or Tamil) and your goal.
  2. Choose your format – online class (island-wide), home-visit class, individual or small group.
  3. Get your plan – schedule, syllabus coverage, notes, past papers or project roadmap.
  4. Start learning – live practical sessions with support between classes.

⭐ Why Join Our ICT Classes?

ЁЯМН Online & Home Visit
Study from anywhere in Sri Lanka or at home.
ЁЯСе Individual & Group
One-to-one or small group classes.
ЁЯЧг️ English / р╖Гිංр╖Др╢╜ / родрооிро┤்
Learn in the medium you are comfortable with.
ЁЯУЪ School & University
O/L, A/L, Cambridge, Edexcel, BIT, BSc.
ЁЯУЭ Past & Model Papers
Exam-focused practice and revision.
ЁЯТ╗ Practical Coding
Build real programs, websites and projects.

❓ Frequently Asked Questions – ICT Classes in Sri Lanka

Do you conduct online ICT classes for O/L and A/L students in Sri Lanka?

Yes. We conduct online ICT classes for G.C.E. O/L and A/L students island-wide, and also offer home-visit individual classes. Classes cover the syllabus, past papers, model papers and revision.

Which languages are the classes taught in? (р╖Гිංр╖Др╢╜ / родрооிро┤் / English)

Classes are available in English, Sinhala and Tamil medium. / р╢┤р╢▒්р╢нි р╢Йංр╢Ь්‍р╢╗ීр╖Гි, р╖Гිංр╖Др╢╜ р╖Гр╖Д р╢пෙр╢╕р╖Е р╢╕ාр╢░්‍р╢║р╢║ෙр╢▒් р╢┤р╖Ар╢нී. / ро╡роХுрок்рокுроХро│் роЖроЩ்роХிро▓роо், роЪிроЩ்роХро│роо் рооро▒்ро▒ுроо் родрооிро┤் рооொро┤ிроХро│ிро▓் роироЯைрокெро▒ுроо்.

Do you teach Cambridge and Pearson Edexcel ICT and Computer Science?

Yes. We support Cambridge Primary to A Level and Pearson Edexcel iPrimary to International A Level, including IGCSE ICT, IGCSE Computer Science and O Level Computer Science.

Can you help with BIT, BSc or IT final-year projects?

Yes. We give technical guidance on project ideas, system design, database design, PHP & MySQL, Python and Java development, and documentation for BIT, BSc, IT and ICT students.

Can I learn Python, PHP, web design or digital marketing as a complete beginner?

Yes. Courses start from absolute beginner level and move step by step to practical projects. No previous experience is needed.

What are the class fees and schedules?

Fees and timetables depend on the subject, grade and whether you choose individual or group classes. Message us on WhatsApp (+94 72 962 2034) for current details.

How can I contact ITClassSL?

WhatsApp or call +94 72 962 2034, email itclasssl@gmail.com, or message us on Facebook and the other platforms listed below.

ЁЯУЮ Ready to Start Learning?

Book your online ICT class or ask about programming courses, university project guidance and digital marketing training.

ЁЯУ▒ Call / WhatsApp: +94 72 962 2034

ЁЯУз Email: itclasssl@gmail.com

ЁЯТ╗ Skype: ITClassSL

ЁЯТм Contact Us on WhatsApp

ЁЯМР Our Online Learning Platforms

Tutorials, notes, project guides and learning resources.

ITClassSL — ICT Training | Computer Classes | Programming | University Project Guidance | Digital Marketing

Learn • Practice • Build • Grow ЁЯЪА

Popular searches: online ICT classes Sri Lanka · A/L ICT online class · O/L ICT tuition · Cambridge IGCSE ICT Sri Lanka · Edexcel Computer Science Sri Lanka · BIT final year project help · PHP MySQL project guidance · Python classes Sri Lanka · web design course Sri Lanka · digital marketing course Sri Lanka · home visit ICT teacher
р╖Гිංр╖Др╢╜: р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි · р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT · р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT · р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි · р╖А්‍р╢║ාр╢┤ෘр╢нි р╢╕ාр╢╗්р╢Ьෝр╢┤р╢пේр╖Бр╢▒р╢║ · р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒්
родрооிро┤்: роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│் · роЙропро░்родро░ ICT · роЪாродாро░рог родро░ ICT · роХрогிройி ро╡роХுрок்рокுроХро│் · родிроЯ்роЯ ро╡ро┤ிроХாроЯ்роЯро▓் · роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ்

Thursday, October 15, 2026

Java Programming Inheritance, Polymorphism, Algorithms & Integrated Project Notes - Class 4

☕ Java Programming • Class 4

Inheritance, Polymorphism, Algorithms & Integrated Project

Master advanced Object-Oriented Programming concepts including inheritance hierarchies, runtime polymorphism, classic algorithmic strategies (Greedy, DP, Divide & Conquer), and build a complete Student Management System.

ЁЯзм Inheritance ЁЯОн Polymorphism ЁЯза Algorithms ЁЯОТ Knapsack ЁЯМ│ Huffman ЁЯЪА Integrated Project
ЁЯзм CLASS 4 – PART A: Inheritance & Polymorphism
ЁЯПЧ️ A.1 What is Inheritance? ▼

Inheritance lets a new class reuse the fields and methods of an existing class. The existing class is the parent (superclass / base class); the new class is the child (subclass / derived class).

ЁЯТб
Inheritance models an "is-a" relationship: a Student is a Person; a Dog is an Animal. Common data (like name) is written once in the parent instead of being copied into every child class. This reduces duplication and makes programs easier to extend.

Parent and Child Classes

// Parent class
class Person {
    String name;
    void displayName() {
        System.out.println(name);
    }
}

// Child class inherits from Person
class Student extends Person {
    int marks;
}

Class Diagram

Person ← parent / superclass (name, displayName()) ↑ | extends ("Student IS-A Person") | Student ← child / subclass (marks) + everything from Person

Using Inherited Members

public class Main {
    public static void main(String[] args) {
        Student s = new Student();
        s.name = "Kamal";    // inherited field
        s.marks = 80;        // own field
        s.displayName();     // inherited method
        System.out.println(s.marks);
    }
}
✅
Output: Kamal
80
ЁЯУЪ A.2 Terminology & Key Rules ▼
Term Meaning Example
Parent / SuperclassThe class being inherited fromPerson
Child / SubclassThe class that inheritsStudent
extendsKeyword that creates the inheritance linkclass Student extends Person
Inherited membersFields/methods received from parentname, displayName()
OverridingChild provides own version of inherited methodDog.sound()
superReference to parent part of objectsuper(name)
Is-aRelationship justifying inheritanceStudent is a Person
⚠️
Important Rules:
  • A class can extend only one parent class (single inheritance).
  • Inheritance can be multi-level: Person → Student → GraduateStudent.
  • Every class secretly extends the built-in Object class.
  • Don't use inheritance just to reuse code. Use it only when the is-a test is true.
ЁЯУж A.3 Inherited Members & What a Child Can Add ▼

A child object contains the parent's fields plus its own. The child may also add new methods.

class Person {
    String name;
    int age;
    void displayName() { System.out.println(name); }
}

class Student extends Person {
    int marks;            // new field
    boolean isPass() {    // new method
        return marks >= 40;
    }
}
// Student object has: name, age, marks
// Methods: displayName(), isPass()
⬆️ A.4 The super Keyword ▼

super refers to the parent class part of the current object. Two main uses:

Use 1: Call parent constructor

super(...) calls the parent constructor. Must be the first statement in the child constructor.

Use 2: Call parent method

super.method() calls the parent's version of a method that the child has overridden.

Example – Calling Parent Constructor

class Person {
    String name;
    Person(String name) {
        this.name = name;
        System.out.println("Person constructor");
    }
}

class Student extends Person {
    int marks;
    Student(String name, int marks) {
        super(name);   // MUST be first
        this.marks = marks;
        System.out.println("Student constructor");
    }
}

// new Student("Kamal", 80);
// Output:
// Person constructor
// Student constructor
ЁЯФС
Explanation: Creating a Student first builds the Person part (parent constructor runs first), then the Student part. super(name) passes the value up so the parent can initialize name.

Example – Calling Overridden Parent Method

class Student extends Person {
    int marks = 80;
    
    @Override
    void display() {
        super.display();                      // run Person's version first
        System.out.println("Marks: " + marks); // then add extra
    }
}
ЁЯПЧ️ A.5 Constructor Inheritance Rules ▼
ЁЯЪи
Key Rule: Constructors are NOT inherited. A subclass must have its own constructors. However, every subclass constructor must call a parent constructor.
  • super(...) must be the first statement in the child constructor.
  • If you don't write it, the compiler inserts super(); automatically.
  • If the parent has only a parameterised constructor, the child must call super(arguments) explicitly — otherwise a compile error occurs.
  • Object creation order: parent constructor body runs before child constructor body.
class Person {
    String name;
    Person(String name) { // only parameterised
        this.name = name;
    }
}

class Student extends Person {
    int marks;
    Student(int marks) {     // ❌ ERROR: compiler tried super() but it doesn't exist
        this.marks = marks;
    }
}

// ✅ FIX:
class Student2 extends Person {
    int marks;
    Student2(String name, int marks) {
        super(name);   // explicit call, first line
        this.marks = marks;
    }
}
ЁЯФТ A.6 Member Accessibility: private, protected, public ▼

Access modifiers control who can see and use a class member. They support encapsulation (hiding data inside the class and exposing only what is necessary).

Modifier Same Class Same Package Subclass Everywhere
private✅❌❌❌
(default)✅✅❌❌
protected✅✅✅❌
public✅✅✅✅
✅
Best Practice: Make fields private and provide public getters/setters. This is the core of encapsulation.
ЁЯФД A.7 Method Overriding vs Overloading ▼

Overriding means a subclass provides its own implementation of an inherited method, with the same name, parameters, and compatible return type. Use @Override to let the compiler check.

Aspect Overloading Overriding
LocationSame classSubclass
SignatureSame name, different parametersSame name AND parameters
ResolutionCompile timeRun time
Exampleadd(int,int) and add(double,double)Dog.sound() replaces Animal.sound()
⚠️
Rules: Overriding method cannot have weaker access. final, static, and private methods cannot be overridden.
ЁЯОн A.8 Polymorphism – "Many Forms" ▼

Polymorphism means the same method call can produce different behaviour depending on the actual object. It combines inheritance + method overriding + a parent-type reference.

Classic Example

class Animal { void sound() { System.out.println("Animal sound"); } }
class Dog extends Animal { @Override void sound() { System.out.println("Bark"); } }
class Cat extends Animal { @Override void sound() { System.out.println("Meow"); } }

// Using polymorphism
Animal a;
a = new Dog();
a.sound();   // Bark

a = new Cat();
a.sound();   // Meow

Polymorphism with an Array

Animal[] zoo = { new Dog(), new Cat(), new Animal(), new Dog() };
for (Animal x : zoo) {
    x.sound();   // one line, different behaviour per object
}
// Output: Bark, Meow, Animal sound, Bark
⚡ A.9 Runtime Polymorphism (Dynamic Method Dispatch) ▼

The JVM decides at run time (not compile time) which overridden method to execute — based on the actual object type, not the reference type.

Reference Object in memory Method that RUNS ---------------------------------------------- Animal a; a = new Dog(); a → [ Dog object ] → Dog.sound() "Bark" a = new Cat(); a → [ Cat object ] → Cat.sound() "Meow"
ЁЯОп
Key Rules:
  • Reference type decides which methods you can call (compile-time check).
  • Object type decides which overridden method runs (run-time decision).
  • To call a child-only method through a parent reference, use instanceof then cast.

Safe Downcasting with instanceof

Animal a = new Dog();
if (a instanceof Dog) {
    Dog d = (Dog) a;   // downcast
    d.fetch();        // OK: fetch() is Dog-only
}
ЁЯза CLASS 4 – PART B: Standard Algorithms
ЁЯОп Algorithm Strategies Overview ▼

An algorithm is a finite, step-by-step method for solving a problem. Four strategies appear repeatedly in computer science:

Strategy Idea Seen In
Brute ForceTry every possibilityString matching
GreedyTake the best-looking choice now, never reconsiderCoins, Huffman, Activity Selection, SJF
Dynamic ProgrammingSolve sub-problems once, reuse answers0/1 Knapsack
Divide & ConquerSplit, solve parts, combineBinary Search, Fast Power
ЁЯФН B.1 String Matching ▼

Finding whether a pattern occurs inside a text, and where. This powers search boxes, find-and-replace, and spell checkers.

Built-in String Methods

MethodPurpose
text.equals(other)Are two strings identical?
text.equalsIgnoreCase()Same, ignoring case
text.contains(p)Does text contain p anywhere?
text.indexOf(p)Position of first match, or -1
startsWith / endsWithMatch at start/end
charAt(i)Character at index i
⚠️
Warning: Compare Strings with equals(), never == (which compares memory references, not content).

Brute Force Implementation

static int find(String text, String pattern) {
    for (int i = 0; i <= text.length() - pattern.length(); i++) {
        int j = 0;
        while (j < pattern.length() &&
               text.charAt(i + j) == pattern.charAt(j)) {
            j++;
        }
        if (j == pattern.length()) return i;
    }
    return -1;
}
ЁЯкЩ B.2 Counting Coins (Greedy Approach) ▼

Problem: Make a given amount using the fewest coins.
Greedy: Always take the largest coin that still fits, subtract it, repeat.

Example: Amount = 37, Coins = 25, 10, 5, 1

37 - 25 = 12 (take 25) 12 - 10 = 2 (take 10) 2 - 1 = 1 (take 1) 1 - 1 = 0 (take 1) Result: 4 coins (25 + 10 + 1 + 1)
static void countCoins(int amount, int[] coins) {
    int totalCoins = 0;
    for (int coin : coins) {
        int howMany = amount / coin;
        if (howMany > 0) {
            System.out.println(howMany + " x " + coin);
            totalCoins += howMany;
            amount = amount % coin;
        }
    }
    System.out.println("Total coins = " + totalCoins);
}
⚠️
Key Point: Greedy is optimal only for some coin systems (25, 10, 5, 1). For coins {4, 3, 1} and amount 6, greedy gives 3 coins (4+1+1) but the optimal answer is 2 coins (3+3). When greedy fails, use Dynamic Programming.
ЁЯОТ B.3 Knapsack Problem (0/1 vs Fractional) ▼

Problem: A thief has a bag with limited capacity. Each item has weight and value. Goal: maximize total value without exceeding capacity.

Aspect 0/1 Knapsack Fractional Knapsack
RuleTake item whole or not at allMay take a fraction of an item
MethodDynamic ProgrammingGreedy by value/weight ratio
Real-lifeLaptops, boxes, tasksGrain, liquids, sand

Fractional Knapsack (Greedy)

static double fractional(int[] wt, int[] val, int capacity) {
    // Sort by value/weight ratio (highest first)
    // Take items fully until bag is full
    // Take fraction of last item that fits
    double total = 0;
    int remaining = capacity;
    for (int i : sortedIndexes) {
        if (wt[i] <= remaining) {
            total += val[i];
            remaining -= wt[i];
        } else {
            total += val[i] * (double) remaining / wt[i];
            break;
        }
    }
    return total;
}
ЁЯТб
Why Greedy Fails for 0/1: Choosing by ratio may leave unused capacity. 0/1 Knapsack requires Dynamic Programming: dp[i][w] = best value using first i items with capacity w.
ЁЯМ│ B.4 Huffman Coding (Lossless Compression) ▼

A lossless data compression method that gives short bit codes to frequent characters and long codes to rare ones. No code is the beginning of another code (prefix code).

Frequency → Build tree (merge two lowest) → Assign 0/1 (left=0, right=1) → Compressed bits

Example: "ABRACADABRA"

CharFrequencyCodeBits used
A505 × 1 = 5
B2102 × 2 = 4
R21102 × 3 = 6
C111101 × 4 = 4
D111111 × 4 = 4
Total11—23 bits
✅
Result: Normal ASCII needs 11 × 8 = 88 bits. Huffman needs only 23 bits — over 70% savings!
ЁЯУЕ B.5 Activity Selection (Greedy) ▼

Given activities with start/finish times, choose the maximum number of non-overlapping activities.

ЁЯОп
Greedy Rule: Sort by earliest finish time, pick the first, then repeatedly pick the next activity whose start time is at or after the finish of the last chosen one.

Example

ActivityStartFinish
A13
B25
C47
D68
// Already sorted by finish time
System.out.println("Selected: " + name[0]);  // A
int last = 0;
for (int i = 1; i < n; i++) {
    if (start[i] >= finish[last]) {
        System.out.println("Selected: " + name[i]);  // C
        last = i;
    }
}
// Output: Selected: A, Selected: C
⏰ B.6 Scheduling Strategies ▼

Scheduling decides which task runs when, given limited resources (CPUs, rooms, people).

StrategyRuleNotes
FCFSRun in arrival orderSimple & fair; one long task delays everything
SJFShortest task firstGives lowest average waiting time
PriorityHighest priority firstLow priority may starve (aging fixes this)
Round RobinTime slice per task in turnUsed by time-sharing OS
EDFNearest deadline firstUsed in real-time systems

Example: FCFS vs SJF

StrategyOrderWaiting timesAverage
FCFSP1, P2, P30, 6, 146.67
SJFP3, P1, P20, 3, 94.00
ЁЯЪА FINAL INTEGRATED PROJECT: Student Management System
ЁЯОУ Complete Student Management System ▼

This project combines inheritance, polymorphism, arrays, searching, sorting, methods, and loops into one real-world application.

System Architecture

Person (name, age, displayInfo()) ↑ | extends | Student (studentId, marks[], calculateTotal(), findGrade()) | Teacher (subject, overrides displayInfo())

Person.java (Parent Class)

public class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() { return name; }
    public int getAge() { return age; }

    public void displayInfo() {
        System.out.println("Name: " + name + ", Age: " + age);
    }
}

Student.java (Child Class)

public class Student extends Person {
    private int studentId;
    private int[] marks;

    public Student(int id, String name, int age, int[] marks) {
        super(name, age);
        this.studentId = id;
        this.marks = marks;
    }

    public int calculateTotal() {
        int total = 0;
        for (int m : marks) total += m;
        return total;
    }

    public double calculateAverage() {
        return (double) calculateTotal() / marks.length;
    }

    public String findGrade() {
        double avg = calculateAverage();
        if (avg >= 75) return "A";
        else if (avg >= 65) return "B";
        else if (avg >= 55) return "C";
        else if (avg >= 40) return "D";
        else return "F";
    }

    @Override
    public void displayInfo() {
        super.displayInfo();
        System.out.println("  Student ID: " + studentId +
                           ", Grade: " + findGrade());
    }
}

Menu Operations Implemented

1. Add Student

Read from keyboard, store in Student[] array.

2. Display All

Formatted table of all students.

3. Class Average

Average of all students' averages.

4. Highest Total

Find top scorer.

5. Search by ID

Linear search implementation.

6. Sort by Total

Bubble sort on Student objects.

7. Pass/Fail

Display pass status of each student.

8. Polymorphism Demo

Person[] with Student + Teacher + Person.

Polymorphism in Action

Person[] people = {
    new Student(201, "Ruwan", 18, new int[]{60,70,80}),
    new Teacher("Mr. Silva", 40, "Java"),
    new Person("Visitor", 30)
};

for (Person p : people) {
    p.displayInfo();   // Each object runs ITS OWN version!
}
ЁЯПЖ
Why this project matters: It demonstrates every major Class 4 topic in one cohesive application — inheritance with super, encapsulation with private fields, arrays of objects, linear search, bubble sort, and runtime polymorphism.
ЁЯУЛ Quick Revision & Practice Questions
⚡ Quick Revision Checklist ▼

ЁЯзм Inheritance

extends creates is-a relationship. Single parent only. Children inherit fields/methods.

⬆️ super

super(...) must be first line of child constructor. super.method() calls parent version.

ЁЯФТ Access

private = same class only. protected = subclasses + package. public = everywhere.

ЁЯФД Override vs Overload

Override = same signature in subclass. Overload = same name, different parameters.

ЁЯОн Polymorphism

Parent reference + child object. Real object's method runs at runtime.

ЁЯФН String Matching

equals(), contains(), indexOf(), or brute-force character comparison.

ЁЯкЩ Greedy

Coins, fractional knapsack, activity selection, Huffman, SJF. 0/1 needs DP.

ЁЯМ│ Huffman

Merge two lowest frequencies. Left=0, right=1. Frequent chars get short codes.

✏️ Practice Questions (Click to reveal hints) ▼
1. Create Vehicle with speed and Car extends Vehicle with doors. Use super in constructor. ▼
ЁЯТб Call super(speed) as first line of Car constructor. Car constructor: Car(int speed, int doors) { super(speed); this.doors = doors; }
2. Why can Student not access private String name of Person directly? ▼
ЁЯТб private fields are hidden from subclasses. Access via a public getter: public String getName() { return name; }
3. Create Shape with area() and subclasses Circle, Rectangle. Use polymorphism. ▼
ЁЯТб Store in Shape[] shapes = {new Circle(5), new Rectangle(4,6)}; Loop with for (Shape s : shapes) s.area(); — each runs its own area()!
4. Difference between overloading and overriding (with examples). ▼
ЁЯТб Overloading: add(int,int) and add(double,double) in same class. Overriding: Dog.sound() replaces Animal.sound() in subclass.
5. Make change for 63 using coins 25, 10, 5, 1. Show where greedy fails. ▼
ЁЯТб 63 = 25+25+10+1+1+1 (6 coins). Greedy fails with coins {4,3,1} for amount 6: gives 4+1+1 (3 coins), but optimal is 3+3 (2 coins).
6. Capacity 10; items (w,v): (5,10),(4,40),(6,30),(3,50). Solve fractional. ▼
ЁЯТб Sort by v/w: (3,50)→16.67, (4,40)→10, (5,10)→2, (6,30)→5. Take (3,50)=50, then (4,40)=40, then 3/5 of (5,10)=6. Total: 96.
7. Build Huffman tree for AABBBCCCC. Compute total bits. ▼
ЁЯТб Frequencies: A=2, B=3, C=4. Merge: A+B=5, then 5+C(4)=9. Assign codes. Total bits ≈ 17 (vs ASCII 72).
8. Activities (start,finish): (1,4),(3,5),(0,6),(5,7),(8,9),(5,9). Select max compatible set. ▼
ЁЯТб Sort by finish: (1,4),(3,5),(0,6),(5,7),(8,9),(5,9). Pick (1,4), then (5,7), then (8,9). Result: 3 activities.
9. Add a method to the project that prints only failed students. ▼
ЁЯТб for (int i = 0; i < count; i++) if (!students[i].isPass()) students[i].displayStudent();
ЁЯОУ SRI LANKA ONLINE ICT CLASSES · р╖Б්‍р╢╗ී р╢╜ංр╢Ъා р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි · роЗро▓роЩ்роХை роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│்

Online ICT Classes in Sri Lanka – O/L, A/L, Cambridge, Edexcel, Python, Web Development & Digital Marketing

Island-wide online classes and home-visit classes in English, Sinhala (р╖Гිංр╖Др╢╜) and Tamil (родрооிро┤்) – for school students, university students, BIT / BSc / IT final-year project students, beginners and business owners.

ЁЯТм WhatsApp Us Now ▶ Watch Free Tutorials

What is ITClassSL? ITClassSL is a Sri Lankan ICT training service offering online and home-visit classes for G.C.E. O/L ICT, G.C.E. A/L ICT, Cambridge IGCSE / A Level, Pearson Edexcel, Python, Java, PHP & MySQL, web design, Microsoft Office, university and BIT final-year project guidance, and digital marketing. Classes run in English, Sinhala and Tamil, as individual or group sessions, anywhere in Sri Lanka. Contact: WhatsApp +94 72 962 2034 · itclasssl@gmail.com.

ЁЯЪА Learn Today. Build Tomorrow.

Looking for ICT classes in Sri Lanka, online ICT tuition, A/L ICT online class, computer classes near me or BIT project help? We provide practical, exam-focused and career-focused IT training with past papers, model papers, step-by-step coding and one-to-one support.

ЁЯТб Our ICT Training & Services in Sri Lanka

ЁЯПл School ICT Classes (Grade 1 – 13)

Online and home-visit ICT lessons for Sri Lankan school students.

  • G.C.E. O/L ICT (р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT / роЪாродாро░рог родро░ ICT)
  • G.C.E. A/L ICT (р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT / роЙропро░்родро░ ICT)
  • GIT (General Information Technology)
  • Term test papers, past papers & revision

ЁЯдЦ Programming & AI

Learn to code from zero to project level.

  • Python, C, Java, PHP, JavaScript
  • HTML, CSS, jQuery & AJAX
  • AI & machine-learning basics
  • Problem solving & algorithms

ЁЯОУ University & Final-Year Project Guidance

Technical guidance for BIT, BSc, IT and ICT students.

  • BIT / UCSC / UoM final-year projects
  • PHP & MySQL, Python, Java projects
  • Project ideas, proposal & documentation
  • System design & database design

ЁЯМР Web Design & Development

Websites and database-driven applications for individuals and businesses.

  • Website design & development
  • WordPress & Blogger
  • PHP & MySQL web applications
  • Website SEO & maintenance

ЁЯУв Digital Marketing

Grow your brand online in the Sri Lankan market.

  • Facebook page & Facebook Ads
  • Instagram, Reels, TikTok & YouTube
  • SEO & content creation
  • LinkedIn branding & campaign planning

ЁЯТ╗ Computer & IT Skills

Essential computer skills from beginner to advanced.

  • Computer fundamentals
  • MS Word, Excel & PowerPoint
  • Excel formulas & macros
  • Oracle / MySQL / MS SQL, AWS, Linux

ЁЯЧг️ English · р╖Гිංр╖Др╢╜ · родрооிро┤் – Classes in Your Language

English

Online ICT classes in Sri Lanka, A/L ICT online class, O/L ICT tuition, computer classes, Python classes, web design course, BIT project guidance, digital marketing course Sri Lanka, home visit ICT teacher, Cambridge & Edexcel ICT / Computer Science.

р╖Гිංр╖Др╢╜

р╖Б්‍р╢╗ී р╢╜ංр╢Ъාр╖Аේ р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි, р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT р╢Фр╢▒්р╢╜р╢║ිр╢▒් р╢┤р╢▒්р╢нි, р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT р╢┤р╢▒්р╢нි, р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි, р╢┤р╢║ිр╢нр╢▒් (Python) р╢┤්‍р╢╗ෝр╢Ь්‍р╢╗ැр╢╕ිр╢▒් р╢┤р╢▒්р╢нි, р╖Аෙр╢╢් р╢Ер╢йр╖Аි р╢▒ිр╢╗්р╢╕ාр╢лр╢║, р╖Аිр╖Б්р╖Ар╖Аිр╢п්‍р╢║ාр╢╜ р╢Ер╖Ар╖Гр╢▒් р╖Ар╖Гр╢╗ р╖А්‍р╢║ාр╢┤ෘр╢нි р╢╕ාр╢╗්р╢Ьෝр╢┤р╢пේр╖Бр╢▒р╢║, р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් р╢┤ාр╢ир╢╕ාр╢╜ාр╖А, р╢▒ිр╖Ар╖Гр╢з р╢┤ැр╢╕ිр╢л р╢Лр╢Ьр╢▒්р╖Ар╢▒ ICT р╢Ьුр╢╗ුр╖Ар╢╗р╢║ා.

родрооிро┤்

роЗро▓роЩ்роХைропிро▓் роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│், роЙропро░்родро░ ICT роЖрой்ро▓ைрой் ро╡роХுрок்рокு, роЪாродாро░рог родро░ ICT ро╡роХுрок்рокு, роХрогிройி ро╡роХுрок்рокுроХро│், рокைродாрой் (Python) роиிро░ро▓ாроХ்роХ ро╡роХுрок்рокு, роЗрогைропродро│ ро╡роЯிро╡рооைрок்рокு, рокро▓்роХро▓ைроХ்роХро┤роХ роЗро▒ுродிропாрог்роЯு родிроЯ்роЯ ро╡ро┤ிроХாроЯ்роЯро▓், роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ் рокропிро▒்роЪி, ро╡ீроЯ்роЯிро▒்роХு ро╡рои்родு роХро▒்рокிроХ்роХுроо் ICT роЖроЪிро░ிропро░்.

ЁЯУЪ Learn With Your Curriculum

Sri Lankan local syllabus, Pearson Edexcel and Cambridge programmes – ICT and Computer Science.

ЁЯЗ▒ЁЯЗ░ Sri Lankan Local Curriculum

  • Grade 1 – Grade 11 ICT
  • G.C.E. O/L ICT · р╖Гා/р╢┤ෙр╖Е ICT · роЪா/род ICT
  • G.C.E. A/L ICT · р╢Л/р╢┤ෙр╖Е ICT · роЙ/род ICT
  • GIT classes
  • Term test preparation, model papers & notes
  • English / Sinhala / Tamil medium

ЁЯУШ Pearson Edexcel

  • iPrimary Computing
  • iLowerSecondary Computing
  • International GCSE ICT
  • International GCSE Computer Science
  • International A Level IT
  • International A Level Computer Science

ЁЯУЧ Cambridge

  • Cambridge Primary & Lower Secondary Computing
  • Cambridge IGCSE ICT
  • Cambridge IGCSE Computer Science
  • Cambridge O Level Computer Science
  • AS & A Level IT
  • AS & A Level Computer Science

ЁЯТ╗ Programming & Software Development Classes

Python ProgrammingC ProgrammingJava Programming PHPJavaScriptHTML & CSS jQuery & AJAXASP.NETVB.NET VB6MySQLMS SQL Server MS AccessOracle DatabaseDatabase Design SQL QueriesSoftware DevelopmentSoftware Testing

ЁЯОУ BIT, BSc & University Final-Year IT Project Guidance

ЁЯзС‍ЁЯТ╗ Project Development

  • BIT / BSc / IT / ICT projects
  • PHP & MySQL projects
  • Python & Java projects
  • Web application & database projects

ЁЯУД Documentation & Practical

  • Project ideas & proposals
  • System architecture & database design
  • Assignment guidance
  • Technical documentation & viva preparation

ЁЯза AI & Smart Applications

  • AI application concepts
  • Machine-learning modules
  • Automation applications
  • Step-by-step coding support

ЁЯУК Database, Cloud & IT Professional Training

Oracle DatabaseMySQLMicrosoft SQL Server Microsoft AccessAWS CloudLinux UNIXWindows ServerDevOps SREAutomationFreelancing Skills

ЁЯУ▒ Digital Marketing & Social Media Training (р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒් · роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ்)

Facebook Page SetupFacebook AdsInstagram Marketing Instagram ReelsTikTok MarketingYouTube Channel Setup Social Media ManagementContent CreationSEO LinkedIn BrandingCampaign PlanningHashtag Strategy Insights & Engagement

ЁЯЦе️ Microsoft Office & Digital Skills (р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි · роХрогிройி ро╡роХுрок்рокுроХро│்)

MS WordMS ExcelMS PowerPoint Excel FormulasExcel Macros & AutomationComputer Fundamentals Digital LiteracyMultimedia Presentations

ЁЯзн How to Join – 4 Simple Steps

  1. Message us on WhatsApp – tell us your grade / course, medium (English, Sinhala or Tamil) and your goal.
  2. Choose your format – online class (island-wide), home-visit class, individual or small group.
  3. Get your plan – schedule, syllabus coverage, notes, past papers or project roadmap.
  4. Start learning – live practical sessions with support between classes.

⭐ Why Join Our ICT Classes?

ЁЯМН Online & Home Visit
Study from anywhere in Sri Lanka or at home.
ЁЯСе Individual & Group
One-to-one or small group classes.
ЁЯЧг️ English / р╖Гිංр╖Др╢╜ / родрооிро┤்
Learn in the medium you are comfortable with.
ЁЯУЪ School & University
O/L, A/L, Cambridge, Edexcel, BIT, BSc.
ЁЯУЭ Past & Model Papers
Exam-focused practice and revision.
ЁЯТ╗ Practical Coding
Build real programs, websites and projects.

❓ Frequently Asked Questions – ICT Classes in Sri Lanka

Do you conduct online ICT classes for O/L and A/L students in Sri Lanka?

Yes. We conduct online ICT classes for G.C.E. O/L and A/L students island-wide, and also offer home-visit individual classes. Classes cover the syllabus, past papers, model papers and revision.

Which languages are the classes taught in? (р╖Гිංр╖Др╢╜ / родрооிро┤் / English)

Classes are available in English, Sinhala and Tamil medium. / р╢┤р╢▒්р╢нි р╢Йංр╢Ь්‍р╢╗ීр╖Гි, р╖Гිංр╖Др╢╜ р╖Гр╖Д р╢пෙр╢╕р╖Е р╢╕ාр╢░්‍р╢║р╢║ෙр╢▒් р╢┤р╖Ар╢нී. / ро╡роХுрок்рокுроХро│் роЖроЩ்роХிро▓роо், роЪிроЩ்роХро│роо் рооро▒்ро▒ுроо் родрооிро┤் рооொро┤ிроХро│ிро▓் роироЯைрокெро▒ுроо்.

Do you teach Cambridge and Pearson Edexcel ICT and Computer Science?

Yes. We support Cambridge Primary to A Level and Pearson Edexcel iPrimary to International A Level, including IGCSE ICT, IGCSE Computer Science and O Level Computer Science.

Can you help with BIT, BSc or IT final-year projects?

Yes. We give technical guidance on project ideas, system design, database design, PHP & MySQL, Python and Java development, and documentation for BIT, BSc, IT and ICT students.

Can I learn Python, PHP, web design or digital marketing as a complete beginner?

Yes. Courses start from absolute beginner level and move step by step to practical projects. No previous experience is needed.

What are the class fees and schedules?

Fees and timetables depend on the subject, grade and whether you choose individual or group classes. Message us on WhatsApp (+94 72 962 2034) for current details.

How can I contact ITClassSL?

WhatsApp or call +94 72 962 2034, email itclasssl@gmail.com, or message us on Facebook and the other platforms listed below.

ЁЯУЮ Ready to Start Learning?

Book your online ICT class or ask about programming courses, university project guidance and digital marketing training.

ЁЯУ▒ Call / WhatsApp: +94 72 962 2034

ЁЯУз Email: itclasssl@gmail.com

ЁЯТ╗ Skype: ITClassSL

ЁЯТм Contact Us on WhatsApp

ЁЯМР Our Online Learning Platforms

Tutorials, notes, project guides and learning resources.

ITClassSL — ICT Training | Computer Classes | Programming | University Project Guidance | Digital Marketing

Learn • Practice • Build • Grow ЁЯЪА

Popular searches: online ICT classes Sri Lanka · A/L ICT online class · O/L ICT tuition · Cambridge IGCSE ICT Sri Lanka · Edexcel Computer Science Sri Lanka · BIT final year project help · PHP MySQL project guidance · Python classes Sri Lanka · web design course Sri Lanka · digital marketing course Sri Lanka · home visit ICT teacher
р╖Гිංр╖Др╢╜: р╢Фр╢▒්р╢╜р╢║ිр╢▒් ICT р╢┤р╢▒්р╢нි · р╢Лр╖Гр╖Г් р╢┤ෙр╖Е ICT · р╖Гාр╢╕ාр╢▒්‍р╢║ р╢┤ෙр╖Е ICT · р╢┤р╢╗ිр╢Ьр╢лр╢Ъ р╢┤р╢▒්р╢нි · р╖А්‍р╢║ාр╢┤ෘр╢нි р╢╕ාр╢╗්р╢Ьෝр╢┤р╢пේр╖Бр╢▒р╢║ · р╢йිр╢вිр╢зр╢╜් р╢╕ාр╢Ър╢зිр╢▒්
родрооிро┤்: роЖрой்ро▓ைрой் ICT ро╡роХுрок்рокுроХро│் · роЙропро░்родро░ ICT · роЪாродாро░рог родро░ ICT · роХрогிройி ро╡роХுрок்рокுроХро│் · родிроЯ்роЯ ро╡ро┤ிроХாроЯ்роЯро▓் · роЯிроЬிроЯ்роЯро▓் рооாро░்роХ்роХெроЯ்роЯிроЩ்