Programming

As previously mentioned on other pages, I possess experience in several programming languages including C/C++, Python, Java, and JavaScript, with a primary focus on C++ and Python. I have completed numerous projects using these languages. Below, you can find links to these projects along with their source code:


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Vaccum Cleaner AI Agent

This project simulates a vacuum cleaner agent that uses various AI algorithms to search and clean a room. It evaluates the time efficiency of these algorithms in performing the cleaning task. The code is written in Python and is available on my GitHub page. *******************************************************************************************************************************************

TicTacToe AI Agent

This project is a TicTacToe game designed to create a highly intelligent AI agent. I implemented various algorithms, including Minimax, Alpha-Beta Pruning, and Monte Carlo Tree Search. As a result, the AI agent can now play the game efficiently on higher-order grids such as 4x4 or 5x5. The code is available on my GitHub account. *******************************************************************************************************************************************

Board Game

This project is a straightforward Java application designed to manage a list of board games. It enables users to efficiently monitor their board game collection and ensures robust error and exception handling for a seamless experience. *******************************************************************************************************************************************

Socket Programming

As the name implies, this project involves socket programming. It establishes a server in Python that enables multiple users to connect simultaneously. Participants can then exchange messages through the server, facilitating real-time communication. The implementation focuses on creating a robust and scalable messaging platform. *******************************************************************************************************************************************

Undo Operation

This intricate C++ program is engineered to manage undo operations effectively. At the heart of its design lies the strategic use of stacks to facilitate functionalities such as addAll, removeAll, setWord, among others. This approach ensures a robust and efficient system for tracking and reversing actions. *******************************************************************************************************************************************

Water Fort Defance Game

This is game (private repository) that allows multiple players shoot to the forts. A person who reaches to 2500 points wins the game. It is written in Java. My design is perfectly suited for this type of game. It is dynamic and innovative, tracking player interactions intelligently. I use a class named Opponent that contains all the attributes required by a game player. Additionally, it includes a hidden private variable that stores the coordinates of their forts. This design simplifies the process of checking each shot to determine if it's a hit. Moreover, my architecture includes a class named GameLogic which, as the name suggests, encapsulates all the logic for the game. This approach minimizes the amount of code needed for implementation, resulting in lightweight software that can run on all platforms with minimal specifications. Furthermore, my code makes extensive use of Streams, offering excellent practice for developers.