PSD-Tutorials.de
Forum für Design, Fotografie & Bildbearbeitung
Tutkit
Agentur
Hilfe
Kontakt
Start
Forum
Aktuelles
Besonderer Inhalt
Foren durchsuchen
Tutorials
News
Anmelden
Kostenlos registrieren
Aktuelles
Suche
Suche
Nur Titel durchsuchen
Von:
Menü
Anmelden
Kostenlos registrieren
App installieren
Installieren
JavaScript ist deaktiviert. Für eine bessere Darstellung aktiviere bitte JavaScript in deinem Browser, bevor du fortfährst.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen
alternativen Browser
verwenden.
Antworten auf deine Fragen:
Neues Thema erstellen
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
Binärbaum Bzw. Turnierbaum
Beitrag
<blockquote data-quote="rey" data-source="post: 1518378" data-attributes="member: 33922"><p><strong>AW: Binärbaum Bzw. Turnierbaum</strong></p><p></p><p>Vielen Danke!</p><p>Jo da einen Style rein zuhauen wird kein Problem.</p><p></p><p>Ich habe folgendes Problem die Zähle gehen nicht egal wo ich die positioniere.</p><p>ich lade die inhalte aus der DB und Speicher diese anschließend in einen Array. Den ruf ich innerhalb der vielen For Schleifen auf.</p><p>um die kompletten Elemente auszugeben brauche ich natürlich einen Zähler;</p><p>Aus irgendeinem Grund zählt der nicht 0,1,2,3,4,5... sondern überspringt ein paar zahlen.</p><p>ich weiß das es an der if($rest == $wunsch) liegt.</p><p>Aber ich weiß nicht wie ich das Problem umgehen soll :/</p><p>bin schon fleißig bei Google.</p><p>sofern mir jemand einen Tipp hat, würde ich mich freuen.</p><p></p><p>Ich habe es so versucht, dass sobald ich in der if lande der Zaehler um eins hochgezählt wird bei else eins abgezogen wird.</p><p>ich bekomme aber solche ausgaben bei dem Zähler</p><p></p><p>ich habe noch mal herum gepfuscht und bekomme nun keine negativen ausgaben mehr aber es wird immer noch falsch gezählt</p><p>für die erste ebene klappt der zaehler für die restlich nicht.</p><p>[php]<?php</p><p>require 'mysql_con.php';</p><p></p><p>function getPlayers($stage,$num,$con)</p><p>{</p><p> $Spieler = array();</p><p> </p><p>for($i=1; $i<=$num; $i++)</p><p>{</p><p></p><p> $pstmtt = $con->prepare("SELECT `name` AS playername FROM `player` LEFT JOIN ebene{$stage} ON player.player_id=ebene{$stage}.player_id</p><p> WHERE ebene{$stage}.player_id={$i} group by `player`.`name` LIMIT 1");</p><p> $pstmtt->bind_result($playername);</p><p> $pstmtt->execute();</p><p> $pstmtt->store_result();</p><p> </p><p> while($pstmtt->fetch())</p><p> {</p><p> $Spieler[$i].=$playername;</p><p> }</p><p> </p><p>}</p><p></p><p>//print_r($Spieler);</p><p>return $Spieler;</p><p>unset($Spieler);</p><p>}</p><p>/*function storeXY($value)</p><p>{ </p><p> </p><p> $b = array();</p><p> if(sizeof($b)==0)</p><p> {</p><p> $b[] .=$value;</p><p> $r = $value;</p><p> }</p><p> else{</p><p> $r = end($b);</p><p> $b[] .=$value;</p><p> if($value-$r==2)</p><p> {</p><p> array_pop($b);</p><p> $r = $r+1;</p><p> echo $r;</p><p> array_push($b,$r);</p><p> }</p><p> }</p><p> var_dump($b);</p><p> return $r;</p><p>}*/</p><p></p><p>$mannschaften = 16;</p><p>$maxEbene = log($mannschaften, 2) + 1;</p><p>$gesamtgroesse = 2*$mannschaften - 1;</p><p>$xy=0;</p><p>echo "<table width='100%' border='1'>";</p><p> $bla=array();</p><p>$ebeneZ=0;</p><p>for($zeile = 0; $zeile < $gesamtgroesse; $zeile++) {</p><p> echo "<tr>";</p><p> </p><p> for($ebene = 1; $ebene <= $maxEbene; $ebene++) {</p><p> echo "<td>";</p><p> $rest = $zeile % pow(2,$ebene);</p><p> $wunsch = pow(2, $ebene-1)-1;</p><p></p><p> if($rest == $wunsch) { </p><p> //echo "SELECT COUNT(*) AS anzahl FROM ebene{$ebene}";</p><p> </p><p> ++$xy;</p><p> if($ebene-$ebeneZ==1)</p><p> {</p><p> $ebeneZ+=1;</p><p> echo $ebeneZ;</p><p> foreach ($bla as $k => $wert) {</p><p> unset($bla[$k]);</p><p> $bla = array_values($bla);</p><p> //var_dump($bla);</p><p> } </p><p> }else{</p><p> }</p><p> if(count($bla)==0){</p><p> $xy;</p><p> array_push($bla,$xy);</p><p> //var_dump($bla);</p><p> echo "Eintrag bei ==0 <br />";</p><p> var_dump($bla);</p><p> }</p><p> else{</p><p> //var_dump($bla);</p><p> echo "Vor Rechnung <br />";</p><p> var_dump($bla);</p><p> //echo sizeof($bla);</p><p> $r = array_pop($bla);</p><p> echo $r;</p><p> //echo "xy = " .$xy;</p><p> if((($xy-$r) == 2)==true)</p><p> {</p><p> var_dump($bla);</p><p> unset($bla[$r]);</p><p> var_dump($bla);</p><p> echo "xy War mit dem Wert ".$xy;</p><p> $erg = $xy-1;</p><p> echo " größer als es sollte daher ist es jetzt";</p><p> $xy=$erg;</p><p> echo $xy;</p><p> array_push($bla,$xy);</p><p> var_dump($bla);</p><p> </p><p> }else{</p><p> if(in_array($xy,$bla))</p><p> {</p><p> $r = $r +1;</p><p> array_push($bla,$r);</p><p> $xy =$r;</p><p> }</p><p> else{</p><p> $xy=$r; </p><p> }</p><p> }</p><p> }</p><p> //echo "bla ". $bla;</p><p> $z = getPlayers($ebene,$mannschaften,$con);</p><p> //var_dump($z);</p><p> </p><p> //echo $z[$xy]." XY_WERT: ".$xy;</p><p> echo"xy: ".$xy." ". $z[$xy];</p><p> //echo " erg == ".$erg." mannschaft{$ebene}" ;</p><p> </p><p> }</p><p> else{</p><p> "&nbsp;";</p><p>/* --$xy;</p><p> echo $xy;*/</p><p> //echo $xy;</p><p> }</p><p> </p><p> echo "</td>";</p><p> </p><p> }</p><p> </p><p> echo "</tr>";</p><p> </p><p>}</p><p></p><p>echo "</table>";</p><p></p><p>?> [/php]</p></blockquote><p></p>
[QUOTE="rey, post: 1518378, member: 33922"] [b]AW: Binärbaum Bzw. Turnierbaum[/b] Vielen Danke! Jo da einen Style rein zuhauen wird kein Problem. Ich habe folgendes Problem die Zähle gehen nicht egal wo ich die positioniere. ich lade die inhalte aus der DB und Speicher diese anschließend in einen Array. Den ruf ich innerhalb der vielen For Schleifen auf. um die kompletten Elemente auszugeben brauche ich natürlich einen Zähler; Aus irgendeinem Grund zählt der nicht 0,1,2,3,4,5... sondern überspringt ein paar zahlen. ich weiß das es an der if($rest == $wunsch) liegt. Aber ich weiß nicht wie ich das Problem umgehen soll :/ bin schon fleißig bei Google. sofern mir jemand einen Tipp hat, würde ich mich freuen. Ich habe es so versucht, dass sobald ich in der if lande der Zaehler um eins hochgezählt wird bei else eins abgezogen wird. ich bekomme aber solche ausgaben bei dem Zähler ich habe noch mal herum gepfuscht und bekomme nun keine negativen ausgaben mehr aber es wird immer noch falsch gezählt für die erste ebene klappt der zaehler für die restlich nicht. [php]<?php require 'mysql_con.php'; function getPlayers($stage,$num,$con) { $Spieler = array(); for($i=1; $i<=$num; $i++) { $pstmtt = $con->prepare("SELECT `name` AS playername FROM `player` LEFT JOIN ebene{$stage} ON player.player_id=ebene{$stage}.player_id WHERE ebene{$stage}.player_id={$i} group by `player`.`name` LIMIT 1"); $pstmtt->bind_result($playername); $pstmtt->execute(); $pstmtt->store_result(); while($pstmtt->fetch()) { $Spieler[$i].=$playername; } } //print_r($Spieler); return $Spieler; unset($Spieler); } /*function storeXY($value) { $b = array(); if(sizeof($b)==0) { $b[] .=$value; $r = $value; } else{ $r = end($b); $b[] .=$value; if($value-$r==2) { array_pop($b); $r = $r+1; echo $r; array_push($b,$r); } } var_dump($b); return $r; }*/ $mannschaften = 16; $maxEbene = log($mannschaften, 2) + 1; $gesamtgroesse = 2*$mannschaften - 1; $xy=0; echo "<table width='100%' border='1'>"; $bla=array(); $ebeneZ=0; for($zeile = 0; $zeile < $gesamtgroesse; $zeile++) { echo "<tr>"; for($ebene = 1; $ebene <= $maxEbene; $ebene++) { echo "<td>"; $rest = $zeile % pow(2,$ebene); $wunsch = pow(2, $ebene-1)-1; if($rest == $wunsch) { //echo "SELECT COUNT(*) AS anzahl FROM ebene{$ebene}"; ++$xy; if($ebene-$ebeneZ==1) { $ebeneZ+=1; echo $ebeneZ; foreach ($bla as $k => $wert) { unset($bla[$k]); $bla = array_values($bla); //var_dump($bla); } }else{ } if(count($bla)==0){ $xy; array_push($bla,$xy); //var_dump($bla); echo "Eintrag bei ==0 <br />"; var_dump($bla); } else{ //var_dump($bla); echo "Vor Rechnung <br />"; var_dump($bla); //echo sizeof($bla); $r = array_pop($bla); echo $r; //echo "xy = " .$xy; if((($xy-$r) == 2)==true) { var_dump($bla); unset($bla[$r]); var_dump($bla); echo "xy War mit dem Wert ".$xy; $erg = $xy-1; echo " größer als es sollte daher ist es jetzt"; $xy=$erg; echo $xy; array_push($bla,$xy); var_dump($bla); }else{ if(in_array($xy,$bla)) { $r = $r +1; array_push($bla,$r); $xy =$r; } else{ $xy=$r; } } } //echo "bla ". $bla; $z = getPlayers($ebene,$mannschaften,$con); //var_dump($z); //echo $z[$xy]." XY_WERT: ".$xy; echo"xy: ".$xy." ". $z[$xy]; //echo " erg == ".$erg." mannschaft{$ebene}" ; } else{ " "; /* --$xy; echo $xy;*/ //echo $xy; } echo "</td>"; } echo "</tr>"; } echo "</table>"; ?> [/php] [/QUOTE]
Bilder bitte
hier hochladen
und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Zitate einfügen…
Authentifizierung
Wenn ★ = 12, ◇ = 4 und die Hälfte von ★ zu ◇ addiert wird, was ist das Ergebnis?
Antworten
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
Binärbaum Bzw. Turnierbaum
Oben