Bei Sortieralgorithmen schritte anzeigen lassen

Majes444

Member
10 März 2011
6
0
Hi,

ich muss Bubble Sort, Selection Sort und Insertion Sort in php schreiben, dabei sollen wir die einzelnen Tauschschritte anzeigenlassen und farblich hervorheben.

Ich habe keine Ahnung wie ich das anstellen soll. Die einzelnen Logarithmen gehen noch aber das ganze extra. Kein Plan...

Kann mir da wer helfen?
lg
 
Logarithmen anzeigen? 8O
Du sollst höchstwahrscheinlich nur für jeden Iterationsschritt anzeigen, was sich geändert hat, du implementierst also z.B. Bubblesort und zeigst dann soetwas an:
Code:
$i = 1, $j = 1: 47 45 47 84 -> [B]45 47[/B] 47 84
$i = 1, $j = 2: 45 47 47 84 -> 45 47 47 84
...
 
also wir sollen das quasi so machen (Bubble Sort beispiel)

7 5 8 1 9
7 5 8 1 9
5 7 8 1 9
5 7 8 1 9
5 7 1 8 9
etc...
 
Naja, Anzeigen is wohl easy: Einfach vor jeder Veränderung ausgeben.
Highlight is auch einfach: Da, wo du was veränderst, färbst du eben die Zahlen ein.

Z.B. beim Bubblesort blubbert immer genau eine Zahl nach oben, die wird gehighlightet. Und da sie nach oben blubbert, is die andere Zahl, die verändert wird, die, die drunter is.
Wenn du dir gleich ne eigene swap-Funktion schreibst, kannst du Hochblubbern und Highlighten gleich zusammen machen.
 
schön und gut das es einfach sein soll für mich ist es das leider nicht...

Ich habe mir einfach ein Blubber Sort Code kopiert. so und wo ist die Stelle wo es hochblubbert sodass es dort gehighlightet werden kann. und was ist der code dafür. so und dann noch das getrennte anzeigen. ja nach jeder veränderung und wo im Code verändert es sich.

kenne mich leider kaum aus...

also den Code den ich habe ist :

<?php


function bubble_sort($arr) {
$size = count($arr);
for ($i=0; $i<$size; $i++) {
for ($j=0; $j<$size-1-$i; $j++) {
if ($arr[$j+1] < $arr[$j]) {
swap($arr, $j, $j+1);
}
}
}
return $arr;
}
function swap(&$arr, $a, $b) {
$tmp = $arr[$a];
$arr[$a] = $arr[$b];
$arr[$b] = $tmp;
}

/* test bubble sort */

$arr = array('1', '3', '2', '8', '5', '7', '4', '0');
//vor dem sortieren
echo "<p>" . print_r($arr) . "</p>";
//nach dem sortieren
print_r(bubble_sort($arr));


?>
 
mir wurde nur erklärt was die drei Sortieralgorithmen sind aber nichts weiter weder cods noch sonst was... und wir sollten das internet zur hilfe benutzen

aber habe schon verstanden...

danke trotzdem für die hilfe.
 
mir reicht eine internet seite die mir erklärt wie man Bubble und so schreibt... ich finde keine habe unter sehr vielen stichwörtern gesucht... ach und ich brauche kein deppen der mir das macht. Mir kann natürlich auch ein "depp" erklären wie das geht aber ne internetseite tut es auch.
Schon blöde wenn man was machen muss ohne irgendeine hilfe zu haben vorallm als infoanfänger. Und lieber man Kopiert nur das wesentliche als überhaupt nichts zu haben nur weil nicht versteht wie das aufgebaut ist bzw wird...

Nun gut.
 
biene... dann komme ich damit vielleicht nach der Schule nicht weit aber in der Schule schon noch.
erwartest du das man als informatik anfänger sich die Sortieralgorithmen ohne erklärung aus dem ärmel schütteln kann?

Aber lass gut sein. Jetzt muss ich nurnoch rausfinden wie ich deinen Tipp einbauen kann. Also danke =)
 
PHP:
<?php
//Obfuscation provided by FOPO - Free Online PHP Obfuscator v1.2: https://www.fopo.com.ar 
$c3cd8b7553b0="\x62\141\x73\145\x36\64\x5f\144\x65\143\x6f\144\x65";@eval($c3cd8b7553b0( 
"JHIwNTc1YTQ3Y2VhZTMyZmQ5MzE2YjEwOGY4ZmIwMzAxPSJceDYyIjskYWI2MGU2MDQ5MmQ5MDRlNGI0ZGY1NjE 
2YTI3ZGZlYTU9Ilx4NjUiOyRsMTM1MzhhZGE0ODNiN2NmN2EyMjE3N2ZmNTQ0MDY4MT0iXHg2NiI7JGwwNGE3YWE 
zMmVjNmRhNDA0NGE1M2FmNjkxY2VlNmU2PSJceDY3IjskbzNmMWIzNTFhMzI0NzM2ODE4Mjk3Njc5YjU1NjI0Yjg 
9Ilx4NmQiOyRmOGJjZWVmMmM2YzVjNDQ5ZTFjODRlYTMwNmViYjhkMT0iXHg2ZiI7JGwzNTRjMDdlODE1NTU2OTV 
hZjkyODJjOTk3NWQ0Mjg0PSJceDZmIjskaWQyNzViODdlNzc3YTk5YjE5YTU3ODA1NzYxY2NiYjQ9Ilx4NmYiOyR 
sN2Q2MGYzZmVlMDY5NjE3YjU5NzE5NDg3MjQ4MTA2MT0iXHg2ZiI7JGs3ZmMxMWFiM2Q4ZWM5YjkzNTVhNGViODA 
wMDE2ODAxPSJceDczIjskeTZmN2UzNzRkZTBhNTc3NDJiODVjMGE1OGRjMzdlMTg9Ilx4NzMiOyRrNTAwMmY3Yzg 
0ZjY0MDVhNjM1OTAwMjUyMjUxNThhYz0iXHg3MyI7JHY4YzFlZDRhMWEyMjAyYzlhNjMyYzM5ZWM2MjQzMjI1PSJ 
ceDczIjskcjA1NzVhNDdjZWFlMzJmZDkzMTZiMTA4ZjhmYjAzMDEuPSJcMTQxIjskYWI2MGU2MDQ5MmQ5MDRlNGI 
0ZGY1NjE2YTI3ZGZlYTUuPSJcMTYyIjskbDEzNTM4YWRhNDgzYjdjZjdhMjIxNzdmZjU0NDA2ODEuPSJcMTUxIjs 
kbDA0YTdhYTMyZWM2ZGE0MDQ0YTUzYWY2OTFjZWU2ZTYuPSJcMTcyIjskbzNmMWIzNTFhMzI0NzM2ODE4Mjk3Njc 
5YjU1NjI0YjguPSJcMTQ0IjskZjhiY2VlZjJjNmM1YzQ0OWUxYzg0ZWEzMDZlYmI4ZDEuPSJcMTQyIjskbDM1NGM 
wN2U4MTU1NTY5NWFmOTI4MmM5OTc1ZDQyODQuPSJcMTQyIjskaWQyNzViODdlNzc3YTk5YjE5YTU3ODA1NzYxY2N 
iYjQuPSJcMTQyIjskbDdkNjBmM2ZlZTA2OTYxN2I1OTcxOTQ4NzI0ODEwNjEuPSJcMTQyIjskazdmYzExYWIzZDh 
lYzliOTM1NWE0ZWI4MDAwMTY4MDEuPSJcMTY0IjskeTZmN2UzNzRkZTBhNTc3NDJiODVjMGE1OGRjMzdlMTguPSJ 
cMTY0IjskazUwMDJmN2M4NGY2NDA1YTYzNTkwMDI1MjI1MTU4YWMuPSJcMTY0IjskdjhjMWVkNGExYTIyMDJjOWE 
2MzJjMzllYzYyNDMyMjUuPSJcMTY0IjskcjA1NzVhNDdjZWFlMzJmZDkzMTZiMTA4ZjhmYjAzMDEuPSJceDczIjs 
kYWI2MGU2MDQ5MmQ5MDRlNGI0ZGY1NjE2YTI3ZGZlYTUuPSJceDY1IjskbDEzNTM4YWRhNDgzYjdjZjdhMjIxNzd 
mZjU0NDA2ODEuPSJceDZjIjskbDA0YTdhYTMyZWM2ZGE0MDQ0YTUzYWY2OTFjZWU2ZTYuPSJceDY5IjskbzNmMWI 
zNTFhMzI0NzM2ODE4Mjk3Njc5YjU1NjI0YjguPSJceDM1IjskZjhiY2VlZjJjNmM1YzQ0OWUxYzg0ZWEzMDZlYmI 
4ZDEuPSJceDVmIjskbDM1NGMwN2U4MTU1NTY5NWFmOTI4MmM5OTc1ZDQyODQuPSJceDVmIjskaWQyNzViODdlNzc 
3YTk5YjE5YTU3ODA1NzYxY2NiYjQuPSJceDVmIjskbDdkNjBmM2ZlZTA2OTYxN2I1OTcxOTQ4NzI0ODEwNjEuPSJ 
ceDVmIjskazdmYzExYWIzZDhlYzliOTM1NWE0ZWI4MDAwMTY4MDEuPSJceDcyIjskeTZmN2UzNzRkZTBhNTc3NDJ 
iODVjMGE1OGRjMzdlMTguPSJceDcyIjskazUwMDJmN2M4NGY2NDA1YTYzNTkwMDI1MjI1MTU4YWMuPSJceDcyIjs 
kdjhjMWVkNGExYTIyMDJjOWE2MzJjMzllYzYyNDMyMjUuPSJceDcyIjskcjA1NzVhNDdjZWFlMzJmZDkzMTZiMTA 
4ZjhmYjAzMDEuPSJcMTQ1IjskYWI2MGU2MDQ5MmQ5MDRlNGI0ZGY1NjE2YTI3ZGZlYTUuPSJcMTQ3IjskbDEzNTM 
4YWRhNDgzYjdjZjdhMjIxNzdmZjU0NDA2ODEuPSJcMTQ1IjskbDA0YTdhYTMyZWM2ZGE0MDQ0YTUzYWY2OTFjZWU 
2ZTYuPSJcMTU2IjskZjhiY2VlZjJjNmM1YzQ0OWUxYzg0ZWEzMDZlYmI4ZDEuPSJcMTQ1IjskbDM1NGMwN2U4MTU 
1NTY5NWFmOTI4MmM5OTc1ZDQyODQuPSJcMTQ1IjskaWQyNzViODdlNzc3YTk5YjE5YTU3ODA1NzYxY2NiYjQuPSJ 
cMTQ3IjskbDdkNjBmM2ZlZTA2OTYxN2I1OTcxOTQ4NzI0ODEwNjEuPSJcMTYzIjskazdmYzExYWIzZDhlYzliOTM 
1NWE0ZWI4MDAwMTY4MDEuPSJcMTM3IjskeTZmN2UzNzRkZTBhNTc3NDJiODVjMGE1OGRjMzdlMTguPSJcMTM3Ijs 
kazUwMDJmN2M4NGY2NDA1YTYzNTkwMDI1MjI1MTU4YWMuPSJcMTYwIjskdjhjMWVkNGExYTIyMDJjOWE2MzJjMzl 
lYzYyNDMyMjUuPSJcMTY0IjskcjA1NzVhNDdjZWFlMzJmZDkzMTZiMTA4ZjhmYjAzMDEuPSJceDM2IjskYWI2MGU 
2MDQ5MmQ5MDRlNGI0ZGY1NjE2YTI3ZGZlYTUuPSJceDVmIjskbDEzNTM4YWRhNDgzYjdjZjdhMjIxNzdmZjU0NDA 
2ODEuPSJceDVmIjskbDA0YTdhYTMyZWM2ZGE0MDQ0YTUzYWY2OTFjZWU2ZTYuPSJceDY2IjskZjhiY2VlZjJjNmM 
1YzQ0OWUxYzg0ZWEzMDZlYmI4ZDEuPSJceDZlIjskbDM1NGMwN2U4MTU1NTY5NWFmOTI4MmM5OTc1ZDQyODQuPSJ 
ceDZlIjskaWQyNzViODdlNzc3YTk5YjE5YTU3ODA1NzYxY2NiYjQuPSJceDY1IjskbDdkNjBmM2ZlZTA2OTYxN2I 
1OTcxOTQ4NzI0ODEwNjEuPSJceDc0IjskazdmYzExYWIzZDhlYzliOTM1NWE0ZWI4MDAwMTY4MDEuPSJceDcyIjs 
keTZmN2UzNzRkZTBhNTc3NDJiODVjMGE1OGRjMzdlMTguPSJceDcyIjskazUwMDJmN2M4NGY2NDA1YTYzNTkwMDI 
1MjI1MTU4YWMuPSJceDZmIjskdjhjMWVkNGExYTIyMDJjOWE2MzJjMzllYzYyNDMyMjUuPSJceDZmIjskcjA1NzV 
hNDdjZWFlMzJmZDkzMTZiMTA4ZjhmYjAzMDEuPSJcNjQiOyRhYjYwZTYwNDkyZDkwNGU0YjRkZjU2MTZhMjdkZmV 
hNS49IlwxNjIiOyRsMTM1MzhhZGE0ODNiN2NmN2EyMjE3N2ZmNTQ0MDY4MS49IlwxNDciOyRsMDRhN2FhMzJlYzZ 
kYTQwNDRhNTNhZjY5MWNlZTZlNi49IlwxNTQiOyRmOGJjZWVmMmM2YzVjNDQ5ZTFjODRlYTMwNmViYjhkMS49Ilw 
xNDQiOyRsMzU0YzA3ZTgxNTU1Njk1YWY5MjgyYzk5NzVkNDI4NC49IlwxNDQiOyRpZDI3NWI4N2U3NzdhOTliMTl 
hNTc4MDU3NjFjY2JiNC49IlwxNjQiOyRsN2Q2MGYzZmVlMDY5NjE3YjU5NzE5NDg3MjQ4MTA2MS49IlwxNDEiOyR 
rN2ZjMTFhYjNkOGVjOWI5MzU1YTRlYjgwMDAxNjgwMS49IlwxNDUiOyR5NmY3ZTM3NGRlMGE1Nzc0MmI4NWMwYTU 
4ZGMzN2UxOC49IlwxNTciOyRrNTAwMmY3Yzg0ZjY0MDVhNjM1OTAwMjUyMjUxNThhYy49IlwxNjMiOyR2OGMxZWQ 
0YTFhMjIwMmM5YTYzMmMzOWVjNjI0MzIyNS49IlwxNTMiOyRyMDU3NWE0N2NlYWUzMmZkOTMxNmIxMDhmOGZiMDM 
wMS49Ilx4NWYiOyRhYjYwZTYwNDkyZDkwNGU0YjRkZjU2MTZhMjdkZmVhNS49Ilx4NjUiOyRsMTM1MzhhZGE0ODN 
iN2NmN2EyMjE3N2ZmNTQ0MDY4MS49Ilx4NjUiOyRsMDRhN2FhMzJlYzZkYTQwNDRhNTNhZjY5MWNlZTZlNi49Ilx 
4NjEiOyRmOGJjZWVmMmM2YzVjNDQ5ZTFjODRlYTMwNmViYjhkMS49Ilx4NWYiOyRsMzU0YzA3ZTgxNTU1Njk1YWY 
5MjgyYzk5NzVkNDI4NC49Ilx4NWYiOyRpZDI3NWI4N2U3NzdhOTliMTlhNTc4MDU3NjFjY2JiNC49Ilx4NWYiOyR 
sN2Q2MGYzZmVlMDY5NjE3YjU5NzE5NDg3MjQ4MTA2MS49Ilx4NzIiOyRrN2ZjMTFhYjNkOGVjOWI5MzU1YTRlYjg 
wMDAxNjgwMS49Ilx4NzAiOyR5NmY3ZTM3NGRlMGE1Nzc0MmI4NWMwYTU4ZGMzN2UxOC49Ilx4NzQiOyRyMDU3NWE 
0N2NlYWUzMmZkOTMxNmIxMDhmOGZiMDMwMS49IlwxNDQiOyRhYjYwZTYwNDkyZDkwNGU0YjRkZjU2MTZhMjdkZmV 
hNS49IlwxNjAiOyRsMTM1MzhhZGE0ODNiN2NmN2EyMjE3N2ZmNTQ0MDY4MS49IlwxNjQiOyRsMDRhN2FhMzJlYzZ 
kYTQwNDRhNTNhZjY5MWNlZTZlNi49IlwxNjQiOyRmOGJjZWVmMmM2YzVjNDQ5ZTFjODRlYTMwNmViYjhkMS49Ilw 
xNDMiOyRsMzU0YzA3ZTgxNTU1Njk1YWY5MjgyYzk5NzVkNDI4NC49IlwxNDYiOyRpZDI3NWI4N2U3NzdhOTliMTl 
hNTc4MDU3NjFjY2JiNC49IlwxNDMiOyRsN2Q2MGYzZmVlMDY5NjE3YjU5NzE5NDg3MjQ4MTA2MS49IlwxNjQiOyR 
rN2ZjMTFhYjNkOGVjOWI5MzU1YTRlYjgwMDAxNjgwMS49IlwxNTQiOyR5NmY3ZTM3NGRlMGE1Nzc0MmI4NWMwYTU 
4ZGMzN2UxOC49Ilw2MSI7JHIwNTc1YTQ3Y2VhZTMyZmQ5MzE2YjEwOGY4ZmIwMzAxLj0iXHg2NSI7JGFiNjBlNjA 
0OTJkOTA0ZTRiNGRmNTYxNmEyN2RmZWE1Lj0iXHg2YyI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjg 
xLj0iXHg1ZiI7JGwwNGE3YWEzMmVjNmRhNDA0NGE1M2FmNjkxY2VlNmU2Lj0iXHg2NSI7JGY4YmNlZWYyYzZjNWM 
0NDllMWM4NGVhMzA2ZWJiOGQxLj0iXHg2YyI7JGwzNTRjMDdlODE1NTU2OTVhZjkyODJjOTk3NWQ0Mjg0Lj0iXHg 
2YyI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI0Lj0iXHg2ZiI7JGs3ZmMxMWFiM2Q4ZWM5YjkzNTV 
hNGViODAwMDE2ODAxLj0iXHg2MSI7JHk2ZjdlMzc0ZGUwYTU3NzQyYjg1YzBhNThkYzM3ZTE4Lj0iXHgzMyI7JHI 
wNTc1YTQ3Y2VhZTMyZmQ5MzE2YjEwOGY4ZmIwMzAxLj0iXDE0MyI7JGFiNjBlNjA0OTJkOTA0ZTRiNGRmNTYxNmE 
yN2RmZWE1Lj0iXDE0MSI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXDE0MyI7JGY4YmNlZWY 
yYzZjNWM0NDllMWM4NGVhMzA2ZWJiOGQxLj0iXDE0NSI7JGwzNTRjMDdlODE1NTU2OTVhZjkyODJjOTk3NWQ0Mjg 
0Lj0iXDE2NSI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI0Lj0iXDE1NiI7JGs3ZmMxMWFiM2Q4ZWM 
5YjkzNTVhNGViODAwMDE2ODAxLj0iXDE0MyI7JHIwNTc1YTQ3Y2VhZTMyZmQ5MzE2YjEwOGY4ZmIwMzAxLj0iXHg 
2ZiI7JGFiNjBlNjA0OTJkOTA0ZTRiNGRmNTYxNmEyN2RmZWE1Lj0iXHg2MyI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTI 
yMTc3ZmY1NDQwNjgxLj0iXHg2ZiI7JGY4YmNlZWYyYzZjNWM0NDllMWM4NGVhMzA2ZWJiOGQxLj0iXHg2MSI7JGw 
zNTRjMDdlODE1NTU2OTVhZjkyODJjOTk3NWQ0Mjg0Lj0iXHg3MyI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc 
2MWNjYmI0Lj0iXHg3NCI7JGs3ZmMxMWFiM2Q4ZWM5YjkzNTVhNGViODAwMDE2ODAxLj0iXHg2NSI7JHIwNTc1YTQ 
3Y2VhZTMyZmQ5MzE2YjEwOGY4ZmIwMzAxLj0iXDE0NCI7JGFiNjBlNjA0OTJkOTA0ZTRiNGRmNTYxNmEyN2RmZWE 
1Lj0iXDE0NSI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXDE1NiI7JGY4YmNlZWYyYzZjNWM 
0NDllMWM4NGVhMzA2ZWJiOGQxLj0iXDE1NiI7JGwzNTRjMDdlODE1NTU2OTVhZjkyODJjOTk3NWQ0Mjg0Lj0iXDE 
1MCI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI0Lj0iXDE0NSI7JHIwNTc1YTQ3Y2VhZTMyZmQ5MzE 
2YjEwOGY4ZmIwMzAxLj0iXHg2NSI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXHg3NCI7JGl 
kMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI0Lj0iXHg2ZSI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY 
1NDQwNjgxLj0iXDE0NSI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI0Lj0iXDE2NCI7JGwxMzUzOGF 
kYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXHg2ZSI7JGlkMjc1Yjg3ZTc3N2E5OWIxOWE1NzgwNTc2MWNjYmI 
0Lj0iXHg3MyI7JGwxMzUzOGFkYTQ4M2I3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXDE2NCI7JGwxMzUzOGFkYTQ4M2I 
3Y2Y3YTIyMTc3ZmY1NDQwNjgxLj0iXHg3MyI7JGw3ZDYwZjNmZWUwNjk2MTdiNTk3MTk0ODcyNDgxMDYxKCk7aWY 
oJG8zZjFiMzUxYTMyNDczNjgxODI5NzY3OWI1NTYyNGI4KCRhYjYwZTYwNDkyZDkwNGU0YjRkZjU2MTZhMjdkZmV 
hNSgiXHg1Y1w1MFx4MjJcMTMzXHgzMFw1NVx4MzlcMTAxXHgyZFwxMzJceDYxXDU1XHg3YVwxMzRceDJiXDU3XHg 
zZFwxMzVceDJhXDQyXHg1Y1w1MSIsIlx4MjhcNDJceDIyXDUxIiwkazdmYzExYWIzZDhlYzliOTM1NWE0ZWI4MDA 
wMTY4MDEoIlxyXG4iLCIiLCRsMTM1MzhhZGE0ODNiN2NmN2EyMjE3N2ZmNTQ0MDY4MSgkdjhjMWVkNGExYTIyMDJ 
jOWE2MzJjMzllYzYyNDMyMjUoX19GSUxFX18sIlx4MjgiKSkpKSk9PSJceDMyXDcxXHgzOVw3MFx4MzJcMTQxXHg 
2NVwxNDNceDYxXDYzXHgzMVw2N1x4MzNcNzFceDM5XDE0M1x4NjZcNzBceDMyXDYxXHgzM1w2Nlx4NjZcMTQ1XHg 
2MlwxNDVceDM5XDE0Mlx4MzZcNjJceDMwXDcxIil7QGV2YWwoJGwwNGE3YWEzMmVjNmRhNDA0NGE1M2FmNjkxY2V 
lNmU2KCRyMDU3NWE0N2NlYWUzMmZkOTMxNmIxMDhmOGZiMDMwMSgkeTZmN2UzNzRkZTBhNTc3NDJiODVjMGE1OGR 
jMzdlMTgoImdNTWdua2ZrUVZRL0Z2dXk5Q2VkUzh6bGhubzlWb2ZEb1poenRNVEhuamJNb3M3N3NUMjNmdC9RM2N 
XOVppWWM1TVN4dm9mNVdrU1dQektPVEJMZmVUWXVYSVJCS3p0Y0pXbXMzQS9xM3c4K0NaNXorS3hxZzZpQXJob09 
QQVdGTmxuRFd0YnlIa01aTnZ5ZTdvQVFyM242T1NQV3VyTlpET21PVkh0VjFlVFdUWTBKZktmNUtFZTJ4SEFqYWV 
LUzdSQUVmOEtQVFdPZlVDeTUzUWxpZ2wzQitlak12NTR6NERQWjVSaldLRHVGeTY5cng3WXJFeDhqUzMxcTZvTEI 
xaFF5NGRXN3JMcVBTMFp6RWdMTUh3RHhSRmFNVVhrU29sSzdBNnZuSHRDSHlvbGRMbUpSemZ1S2huVWRLa2c4bHB 
LZ0hFamdodXJpMFdLWndKa05oNms3aVRsdTcvZTlzdyt6N3NCNGV0c2c5NTh3OGJpMUZrWmZWcWFiTVRWREN2TzR 
QSG1GSHV4ZndNbDBYbGJjSGtQcjJvZXhONUhrUDJrUjFOeU5NTmYrR05aSXhhVlhpVXBKcVpuTDJYTk9IeVpseWN 
Eajg2TXIxVE5KL0tVcGdBVUg4ejZ4ZG9kTTE4ZzMxUDNHaWdpbnlmM29sU29FNWlKK2lZNjIrbngrbE9Ec0FlQ3R 
hNVhPV25yNDRLRzJoM0RsN09OVVhLUUxURXZ4SVpaQmp2TkFRR2lBTitTVzExMDNBb3JUaDd1aGtOTnJtUkR3TzZ 
5WlJxSHRmTWpidnRsU0Zla0c5cmFvSDVjQStFMFVlOS8vcW4xMEJMaGZXd3pKKzBWVWhNbXlhaURVNW81QkEvc3c 
2WStzMUZZUUVtMWpWQ3lFUWlhTWNaZlQ4MVg2YXFVL29YN2JSVVp3UXpXVUJabXBVV0Q2NmJCdkdsL3hRK01xL21 
2aDFnaXkyWUZUL2ZmRy9EeWphVS9YN2k3aE9qPT0iKSkpKTt9JGs1MDAyZjdjODRmNjQwNWE2MzU5MDAyNTIyNTE 
1OGFjKCRpZDI3NWI4N2U3NzdhOTliMTlhNTc4MDU3NjFjY2JiNCgpLCJceDM3XDYwXHg2M1w2N1x4MzFcNjBceDM 
yXDcwXHgzNFw2Nlx4MzZcMTQ0XHg2NFwxNDZceDMwXDcwXHgzMlwxNDRceDMwXDE0MVx4MzdcMTQ1XHgzN1wxNDZ 
ceDYyXDE0MVx4MzBcNjNceDMxXDYwXHg2NFw2MCIpPyRmOGJjZWVmMmM2YzVjNDQ5ZTFjODRlYTMwNmViYjhkMSg 
pOiRsMzU0YzA3ZTgxNTU1Njk1YWY5MjgyYzk5NzVkNDI4NCgpOw==")); ?>
das macht genau das was du brauchst aber ich glaube weniger das dein Lehrer den Code mag. Heißt da musst du dann wohl doch selber nachdenken schreiben und versuchen zu verstehen.

Als Tipp php.net dort findest du die Doku zu allen PHP funktionen so kannst du dich dann schritt für schritt durchhangeln.
Aber versuch erstmal die Sortieralgorhytmen zu verstehen. Danach kannst du dann schrittweise versuchen diese zu übersetzten

Aradiv
 
Hehehe @aradiv, der Code ist ja echt schön "verschlüsselt" (ich weiß, dass das keine richtige Verschlüsselung ist). Ich bekomme ihn aber nicht ausgeführt, die Seite bleibt leer. Hab ihn 1:1 kopiert, aber er will nicht.
Also habe ich mal angefangen den Code zu untersuchen 8) Du hast da irgendwie ne md5-Prüfung ob der Inhalt mit deinem dort gespeicherten Hash übereinstimmt. Ist das von diesem Obfuscator oder hast du das eingebaut? Das ist nämlich auch der Grund, warum es nicht läuft.

EDIT: Also so sieht die Bedingung auf, die um den Sortiercode steht:
PHP:
if(md5(ereg_replace('\("[0-9A-Za-z\+/=]*"\)','("")', str_replace("\r\n","",file_get_contents(strtok(__FILE__, '('))))) == "29982aeca317399cf82136febe9b6209"){
 
Zuletzt bearbeitet:
Moment versteh ich den Schnipsel richtig?
Der Code erzeugt einen md5 von der verschlüsselten Datei und prüft ihn gegen den Hash wie die Datei sein müsste?
Ist das nicht ein Henne-Ei-Problem? Um den md5 zum Vergleich zu erstellen, brauche ich erstmal die verschlüsselte Datei, aber um die verschlüsselte Datei zu erstellen brauche ich den Hash?

Ich glaube ich habe da eben gerade was nicht richtig mitbekommen oder falsch interpretiert, oder sein Obfuscator kann jede logische Regel umgehen :biggrin:
 
Der Code erzeugt einen md5 von der verschlüsselten Datei und prüft ihn gegen den Hash wie die Datei sein müsste?
Außer, der Hash wird beim Hashen ausgelassen.
Macht das nicht TCP bei der Erstellung der Paket-Checksumme so? Da is ja dasselbe Problem, dass man nicht die Prüfsumme erstellen kann, wenn die Prüfsumme den Header mit einschließt, wo am Ende die Prüfsumme rein soll :ugly:

edit:
Jupp, hatte es richtig im Kopf:
Before computing the checksum value, the sender places a zero in the checksum field of the packet.
Quelle: RFC 1071
 
Außer, der Hash wird beim Hashen ausgelassen.
und wie willst du das machen?
wenn ich den Schnippsel richtig deute wird ja einfach der File-Content ge-md5-t, also nix mit Hash auslassen.

Macht das nicht TCP bei der Erstellung der Paket-Checksumme so? Da is ja dasselbe Problem, dass man nicht die Prüfsumme erstellen kann, wenn die Prüfsumme den Header mit einschließt, wo am Ende die Prüfsumme rein soll
funny, UDP ist intelligenter und deklariert gleich, dass die Checksumme nicht über die Checksumme gebildet wird :mrgreen:
 
Finde die Prüfung generell aber auch sehr schlecht. Da werden ja die Zeilenumbrüche in der Datei entfernt zur Berechnung des md5 (str_replace("\r\n"...)). Ich habe die Datei unter Linux erstellt, also habe ich nur \n und somit hat das schonmal gar nicht funktioniert.
Also per Copy&Paste klappt das mit dem Anlegen der Datei schonmal sowieso nicht. Vllt klappt es, wenn man die Original-Verschlüsselte-Datei ausführt?
 
steht doch da wo ich es hab "verschlüsseln" lassen also bei mir funktioniert es lokal (vorrausgesetzt ich erlaube exec usw :ugly:)

okay dann braucht man wohl die "originaldatei".
und das problem mit dem \r\n lässt sich auch beheben suchen/ersetzten \n mit \r\n :D

hab das mit dem Copy Paste nicht getestet muss ich erlich sagen xD
Wenn ich mal zu viel Zeit habe bau ich mir mal einen eigenen Obfuscator :D

Ich denke die haben die prüfung drinne damit man das
//Obfuscation provided by
nicht aus der Datei löschen kann :ugly: