C# code (algoritme) naar PHP converteren.

Pagina: 1
Acties:
  • 454 views

Vraag


Acties:
  • 0 Henk 'm!

  • Sanderluc
  • Registratie: Augustus 2017
  • Laatst online: 02-10 01:23
Hoi tweakers,

Voor een projectje waar ik mee bezig ben wil ik graag een algoritme in PHP gaan gebruiken die doolhoven kan gaan genereren. In het verleden heb ik Eller's Algorithm (in combinatie met NodeJS) hiervoor gebruikt en dit beviel mij wel prima. Alleen deze oplossing is er niet voor PHP. Nu ben ik niet het beste in het uitwerken van dit soort algoritmes, dus heb ik op internet naar bestaande oplossingen gezocht.

Na wat zoekwerk kwam ik uit bij een C# project die dit soort doolhoven kan genereren. Dit project werkt prima, nu wil ik alleen deze bestaande code(s) converteren naar PHP, zodat ik ook binnen PHP dit algoritme kan gebruiken.

Nu is mijn vraag of er toevallig tweakers hier rondlopen die goed zijn in beide C# en PHP. Ik heb geprobeerd de code(s) vanuit C# zoveel mogelijk om te zetten naar PHP, echter krijg ik dit niet helemaal voor elkaar.... De uitkomst van de doolhof klopt niet namelijk. Er gaat iets fout in de berekening waardoor de doolhof niet haalbaar is.

Het gaat om deze code: *snip*.

Ik heb momenteel dit resultaat in PHP:
Afbeeldingslocatie: https://i.stack.imgur.com/r9vQv.png

Dit resultaat verwacht ik te halen:
Afbeeldingslocatie: https://i.stack.imgur.com/QY9wu.png

Momenteel heb ik de volgende PHP codes:

- Index.php (Omgezet vanuit Program.cs)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php

require('Maze.php');

$width = 5;
$height = 5;

$maze = new Maze();
$maze->GenerateMaze($width, $height);

$maze = $maze->TranslateMaze();

for ($y = 0; $y < $height * 2 + 2; $y++) {
    for ($x = 0; $x < $width * 2 + 2; $x++) {
        echo $maze[$y][$x];
    }
    echo '<br>';
}

- Maze.php (Omgezet vanuit Eller.cs)
code:
1
*snip* 400 regels code

[ Voor 89% gewijzigd door RobIII op 09-07-2021 22:23 ]

Alle reacties


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Het spijt me zeer, maar zo werkt 't hier niet. In essentie zeg je "ik heb dit, ik wil dat, Kan iemand even...?" en vervolgens gooi je een link naar je project en een paar honderd regels code over de schutting.

We zijn hier geen persoonlijke debug-service. We willen je best helpen maar zien wel graag concrete vragen en, per onze Quickstart, wat je zelf al (o.a.!) geprobeerd hebt om je probleem op te lossen (heb je bijvoorbeeld al gedebugged? Debuggen: Hoe doe ik dat?).

Open gerust een nieuw topic, maar hou de (relevante(!)) code dan graag in het topic en niet op externe sites - zodoende kan iemand anders die in de toekomst op je topic stuit met een vergelijkbare vraag ook nog iets met je topic aanvangen lang nadat je project op Github (of elders) alweer verdwenen is :)

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Dit topic is gesloten.