Skip to content
/ ITCS123 Public

Laboratory assessments/Enabling assessments from “Intermediate Programming” subject. @ 1st year, 2nd semester at De La Salle University–Dasmariñas.

Notifications You must be signed in to change notification settings

Keonbe/ITCS123

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

ITCS123 - Intermediate Programming Lab

Introduction

This repository contains my Java implementations of fundamental programming concepts covered in the Intermediate Programming class at De La Salle University Dasmarinas.

Course Description

This course includes review of control structures and data types with emphasis on structured data types. Application of object-oriented programming paradigm, focusing on the definition and use of classes along with the fundamentals of object-oriented design is also part of the discussion as well as basic analysis of algorithms, searching and sorting techniques.

Overview

The lab activity/repository covers the following core topics:

1. Control Structures

  • Review loops (for, while, do-while) and conditionals (if-else, switch).
  • Implement flow control for decision-making and repetition.

2. Structured Data Types

  • Differentiate between primitive (int, char) and non-primitive (arrays, objects) types.
  • Use data structures to organize and manipulate data.

3. File Processing

  • Read from and write to files using streams (FileReader, BufferedWriter).
  • Handle exceptions and manage file resources.

4. User-Defined Methods & Classes

  • Create reusable code blocks with custom methods.
  • Design classes to encapsulate data and behavior (OOP principles).

5. Recursive Methods

  • Implement recursive solutions for problems like factorial or Fibonacci.
  • Understand base cases and recursive calls to avoid stack overflow.

6. Searching Algorithms

  • Linear search: Iterate through elements sequentially.
  • Binary search: Divide-and-conquer approach for sorted data.

7. Sorting Algorithms

  • Bubble sort: Compare and swap adjacent elements.
  • Selection sort: Select the smallest element and swap.
  • Insertion sort: Build a sorted array one element at a time.

🛠️ Tech Stack

Category Tools/Languages
Languages Java
Concepts OOP, Algorithms, Data Structures
Tools IDE (Netbeans, IntelliJ, VS Code)
Platform SchoolBook (for course materials))

OOP Concepts: Classes, objects, inheritance, polymorphism, encapsulation.


Assessments:

Guide:

  • 1 for Midterm Activities
  • 2 for Final term Activities
  • No.X, "X" represents activity for that term
# Title Lesson/Topic Filename
2.4 Intermediate Programming Finals Lab Summative 2024 Final Summative n/a
2.3 Empty Sorting Algorithms n/a
2.2 Empty Searching Algorithms n/a
2.1 Empty User-Defined Classes n/a
1.7 Intermediate Programming Midterms Lab Summative 2024 Midterms Summative n/a
1.6 Empty Recursive Methods n/a
1.5 Empty User-Defined Methods n/a
1.4 Empty File Processing n/a
1.3 Empty Structured Data Types n/a
1.2 Empty Review of Control Structures and Data Types n/a
1.1 Working with NetBeans IDE Course Introduction n/a

Note:

Specific implementations and problem-solving techniques will be provided during the lab sessions. The midterm and final exams will assess your understanding of the concepts and your ability to apply them to solve problems.

Learning Plan

Midterm Period Focus:

  • Review of control structures
  • Data types and structures
  • File processing
  • User-defined methods
  • Recursive methods

Final Period Focus:

  • User-defined classes
  • Searching algorithms
  • Sorting algorithms
  • Advanced OOP concepts

About

Laboratory assessments/Enabling assessments from “Intermediate Programming” subject. @ 1st year, 2nd semester at De La Salle University–Dasmariñas.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages