CS3401 Projects 1445 1st semester

Project 1: Project management system

The aim of this project is to implement a program (java or python) that manages a list of tasks in a project. The program should be able to add, delete, and update tasks for a given project. Each task has a name, a description and a list of required tasks that should be completed before starting the current task. The program should be able to print the tasks in a project in a topological order. The program should be able to read the tasks from a file and write the ordred tasks to a file.

Project 2: Solving the maze problem

This project is about solving the maze problem using a stack. The maze is represented as a 2D array of characters. The maze has a start point and an end point. The program should be able to read the maze from a file and print the solution to the maze. The solution should be printed as a sequence of moves (up, down, left, right). The program should be able to print the solution to a file.

The maze could be as the example below, where ‘S’ is the start point, ‘D’ is the end point, ‘X’ is a wall, ‘O’ is a free cell.

['O' 'O' 'O' 'O' 'X'] 
['S' 'O' 'O' 'O' 'O'] 
['X' 'X' 'X' 'O' 'X'] 
['O' 'D' 'O' 'O' 'O'] 
['O' 'O' 'O' 'O' 'X']

A solution to the above maze could be:

right, right, right, down, down, left, left.

2024

Docker

4 minute read

In this post, I will explain a very indispensable tool for developers. Docker is a tool that allows developers to build, deploy, and run applications using c...

Generating permutations

1 minute read

In this post, we will discuss the problem of generating all permutations of a given set of elements. A permutation is an arrangement of elements in a specifi...

The Convex Hull Problem

2 minute read

The convex hull problem is a problem in computational geometry. It is about finding the smallest convex polygon that contains a given set of points. The conv...

Back to top ↑

2023

CS3401 Projects 1445 1st semester

1 minute read

Project 1: Project management system The aim of this project is to implement a program (java or python) that manages a list of tasks in a project. The pr...

Back to top ↑

2022

Back to top ↑