Skip to content

Welcome to Scheme Path Solver, a simple program written in Scheme that helps you navigate through paths represented in a grid layout.

License

Notifications You must be signed in to change notification settings

sancakerkan/SchemePathSolver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Scheme Path Solver 🧩

Scheme Racket GitHub Build Status Issues License: MIT

Table of Contents

Introduction

Scheme Path Solver is a Scheme-based utility designed to navigate paths in a grid layout. The program calculates the sequence of movements needed to travel from a starting point to a finish point in a grid where black cells represent walls and white cells are navigable. The starting point is always at [0,0], and the finish point is denoted by the letter 'F'.

Features

  • Grid Dimensions: Retrieve the grid’s height and width using getHeight and getWidth functions.
  • Cell Content: Access the letter at any grid position with the getLetter function.
  • Path Solution: Solve the path with the solvePath function, which returns a sequence of movements.

Installation

Prerequisites

  • Racket Scheme interpreter. Download it from here.

Cloning the Repository

  1. Using Git:

    • Clone the repository using the following command:
      git clone https://github.com/sancakerkan/SchemePathSolver
    • Navigate to the project directory:
      cd SchemePathSolver 
  2. Alternatively, Download ZIP:

Usage

Running the Program

  1. Using Racket:
    • Open the Racket IDE.
    • Set the language to "The Racket Language".
    • Open the file src/PathSolver.rkt.
    • Run the program.

How It Works

The program provides a solution as a sequence of movements such as "D D R R R R D D". This sequence indicates movements down 2 times, right 4 times, and down 2 more times. The grid layout ensures that there is only one solution with a single possible move for each step.

Contributing

We welcome contributions to improve the project! To contribute:

  1. Fork the Repository: Create your own copy of the project.
  2. Create a Branch: Create a feature branch for your changes.
  3. Make Changes: Implement new features or fix bugs.
  4. Submit a Pull Request: Propose your changes to be merged.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Acknowledgements

  • Special thanks to Elif Aysu Kürşad and Metehan Tüter for their valuable contributions and support.

About

Welcome to Scheme Path Solver, a simple program written in Scheme that helps you navigate through paths represented in a grid layout.

Topics

Resources

License

Stars

Watchers

Forks

Languages