php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 15.03.2006, 21:48  
Gast
 
Beiträge: n/a
Standard Pascalsches Dreieck rekursiv

Hallo,
hat einer von euch ne Ahnung wie ich das Pascalsche Dreieck in PHP rekursiv erstelle. Also als rekursive Funktion.
Wäre sehr nett, wenn einer den Quelltext hier posten könnte.
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 15.03.2006, 22:48  
Gast
 
Beiträge: n/a
Standard

Das riecht doch nach Hausaufgabe. Deine Hausaufgabe.

Beschreib doch mal ein pascalsches Dreieck und wie man es entwickeln kann.
 
Alt 15.03.2006, 23:37  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Also sowas wirste doch wohl selber hinbekommen.

*edit* weil mir grad langweilig war ... :/

PHP-Code:
<?php
function rekursion($zeile$spalte)
{
    if (
$zeile == OR $spalte == 1) return 1;
    if (
$spalte >= $zeile) return '';
    else
    {
        
$result rekursion($zeile-1$spalte) + rekursion($zeile-1$spalte-1);
        return 
$result;
    }
}

function 
pascal($n)
{
    echo 
'[b]Pascalsches Dreieck[/b]<table>';
    for (
$zeile 1$zeile <= $n$zeile++)
    {
        echo 
'<tr>';
        for (
$spalte 1$spalte <= $zeile-1$spalte++)
            echo 
'<td>'.rekursion($zeile$spalte).'</td>';
        echo 
'</tr>';
    }
    echo 
'</table>';
}
?>
Aufruf über pascal(n); mit n für eine natürliche Zahl ... sollte nicht über 20 sein dann gehts auf die Performance.
Flor1an ist offline  
Alt 16.03.2006, 13:35  
Gast
 
Beiträge: n/a
Standard

danke
 
Alt 16.03.2006, 14:09  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

Einen unglaublichen Performance-Schub erhält man durch das "cachen" der daten:
PHP-Code:
<?php
function rekursion($zeile$spalte)
{
        static 
$cache = array();
    if (
$zeile == OR $spalte == 1) return 1;
    if (
$spalte >= $zeile) return '';
    if (isset(
$cache[$zeile][$spalte])) return $cache[$zeile][$spalte];
    else
    {
        
$result rekursion($zeile-1$spalte) + rekursion($zeile-1$spalte-1);
        
$cache[$zeile][$spalte] = $result;
        return 
$result;
    }
}

function 
pascal($n)
{
    echo 
'[b]Pascalsches Dreieck[/b]<table>';
    for (
$zeile 1$zeile <= $n$zeile++)
    {
        echo 
'<tr>';
        for (
$spalte 1$spalte <= $zeile-1$spalte++)
            echo 
'<td>'.rekursion($zeile$spalte).'</td>';
        echo 
'</tr>';
    }
    echo 
'</table>';
}
?>
Auf diese weise erhält man das Pscalsche Dreieck bis zur zeile 500 in einem tausendstel der zeit, die vorher für 30 gebraucht wurde.
Buhmann ist offline  
Alt 16.03.2006, 14:18  
Gast
 
Beiträge: n/a
Standard

vielen Dank für die hilfe

please close here
 
Alt 16.03.2006, 14:43  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Bitte keine Hausaufgaben ins Fortgeschrittenen(!)-Forum posten.

Thread auf Wunsch des Threadstarters geschlossen.
Zergling-new ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Aktuellstes Datum von Dateien rekursiv ermitteln marcus_78 PHP Tipps 2008 11 24.06.2008 09:37
Bekomme rekursiv programmierung nicht hin! litterauspirna PHP Tipps 2008 19 28.04.2008 14:03
Baumstruktur -> alle unterpunkte rekursiv mit einem query Papst Datenbanken 3 02.01.2008 23:01
Kategoriedaten rekursiv in Array bringen Schiedsrichter PHP Tipps 2008 2 10.12.2007 15:43
PHP: mkdir rekursiv Zergling-new Tutorials 1 13.08.2007 04:32
FTP CHMOD Rekursiv xeon PHP Tipps 2007 10 18.07.2007 21:53
FTP: Ordner rekursiv Duplizieren PHP Tipps 2007 11 30.01.2007 10:02
Menü punkte Rekursiv ausgeben??? shocky PHP Tipps 2006 3 02.07.2006 15:56
Array rekursiv bauen? Anotherone PHP Tipps 2007 4 04.11.2005 14:43
Menü aus DB rekursiv auslesen CSS PHP Tipps 2005-2 1 09.07.2005 20:16
[Erledigt] rekursiv erstellte Arrays mergen PHP-Fortgeschrittene 0 06.12.2004 21:07
rekursiv durch MySQL mit PHP? PHP Tipps 2004 2 18.07.2004 18:47

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
pascalsches dreieck rekursiv, pascalsches dreieck php, pascal rekursiv, php pascalsches dreieck, pascalsches dreieck 20 zeilen, pascalsches dreieck rekursion, pascalsche dreieck rekursiv, pascal dreieck rekursiv, rekursion pascalsches dreieck, pascalsches dreieck rekursiv php, pascalsche dreieck rekursiv programmieren, pscalsche dreieck, pascalsches dreieck programmieren c rekursiv, pascal dreieck, pascalsches dreieck html, pascalsches dreieck php script, pascalsche dreieck php, rekursion dreieck, rekursiv dreieck, pascalsches dreieck

Alle Zeitangaben in WEZ +2. Es ist jetzt 11:18 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.