# Lazarus Frage zu einer Funktion



## metalstore (21. August 2013)

Hallo,
ich muss in lazarus ein Programm programmieren, das, wenn ich eine Zahl eingebe, das Programm die Größt- sowie Kleinstmögliche Zahl mit den Ziffern der eingegebenen Zahl ausgibt.
Kennt jemand dafür eine Funktion (quasi eine Art "Maximal-/Minimalwertausgabe?)
mfg
metalstore


----------



## Leandros (21. August 2013)

Nur zum Verständnis: Du gibst 131 ein. Dann soll er dir als min 113 und als max 311 ausgeben?

BTW: Die Sprache heißt Pascal, nicht Lazarus. Das ist die IDE.


----------



## Quppi (21. August 2013)

so hab ich das auch verstanden wie du leandros. du musst einfach die eingegeben zahl in ihre einzelnen zahlen zerlegen. in leandros beispiel ne 1 ne 3 und noch ne 1. dann sortierst du die zahlen nach ihrer größe und bastelst dir daraus die zahlen.


----------



## metalstore (21. August 2013)

Oh tut mir leid, Sprache mit Umgebung verwechselt^^
Und ja, richtig verstanden
Ja, soweit war ich auch schon, sind ja schlappe 24 Möglichkeiten (da wir es mit vierstelligen Zahlen machen sollen/müssen)  
Ich kann einzelne Chars in einem Editfeld ansteuern, aber es muss doch irgendeine Funktion oder Befehl geben der die einzelnen Chars der Größe nach sortiert...
(Dass man davor die Chars zu Integer und danach wieder anders rum machen muss ist ja ok, und vermutlich auch notwendig...aber das ist ja kein Problem


----------



## Leandros (21. August 2013)

Nö, denke nicht das es eine API dafür gibt. Viel zu spezifisch. 
Ist aber auch ziemlich simpel selber zu schreiben


----------



## metalstore (21. August 2013)

was ist eine API 
wie würdest du es denn machen?


----------



## Leandros (21. August 2013)

Application Programming Interface.

Hat Pascal eine .sort funktion für Arrays? In Java / C / C++ kann man es simpel sortieren. 

Sonst würde ich es so machen.


```
for( int i = 0; i < arr.length/2; ++i ) { 
  temp = arr[i]; 
  arr[i] = arr[arr.length - i - 1]; 
  arr[arr.length - i - 1] = temp; 
}
```


----------



## metalstore (21. August 2013)

keine Ahnung ehrlich gesagt, ob Pascal eine .sort Funktion für Arrays hat
unser Lehrer erklärt ja wirklich null, sein Unterrichtsprinzip: "arbeitet das aus, und erklärt mir dann wie es funktioniert, damit ich es auch weiß"  
und mit Java/C(++) kenne ich mich leider gar nicht aus :/


----------



## Leandros (21. August 2013)

Oben steht doch eine Möglichkeit wie es geht, ohne sort.


----------



## metalstore (21. August 2013)

ich weiß aber nicht, weil ich keine Ahnung von Arrays habe..


----------



## Laudian (21. August 2013)

Das klingt jetzt vielleicht etwas fies, aber wenn du noch nicht einmal zwischen Programmiersprache und IDE unterscheiden kannst solltest du vielleicht nicht mitten in einem Programm anfangen, sondern dir zunächst einmal die Grundlagen von Pascal aneignen.

Was ein Array ist sollte man doch schon wissen wenn man programmieren möchte.


----------



## Heretic (21. August 2013)

Du musst dir einen Array vorstellen wie eine Box.
Du kannst da edit: gleiche sachen. Rein tun. Z.B Zahlen: 1 oder 3 oder 44 usw.

Und alles was da drine ist wird in eine Liste eingetragen.
Alles was neu ist kommt hinten an die liste dran.

Beim Auslesen des Arrays musst du nur angeben welche Stelle des Arrays du haben willst.

Kennengelernt habe ich das anhand von Koordinaten.
du packt z.B 5°N , 12°W  und 59°S in einen Array.
Dann ist 5°N an Pos.0 des Arrays , 12°W an Pos 1 usw.
Wenn du was davon haben willst brauchst du nur die Position.

So kann man z.B recht einfach viele Dinge sortieren. 
Da man bei der abfrage der Stelle in einer Schleifen immer 1 schritt hoch gehen kann.


Hoffe ich konnte das verständlich rüber bringen.

@*Laudian*
wenn Er/Sie das in der Schule lernt und der Lehrer seinen Plan so durchzieht...


----------



## Crysis nerd (21. August 2013)

Laudian schrieb:


> Das klingt ...


 
Exakt. Und wenn du sagst, dass dein Lehrer Schuld ist, weil er nichts erklären kann, dann schnapp dir 2 Freunde und rede mit dem Lehrer. Wenn der nicht einsichtig ist, rede mit der Schulleitung. Nur Schuld auf Lehrer schieben und nichts machen ist blöde. Also: Aktiv werden auf die eine oder andere Art.


----------



## Leandros (21. August 2013)

Laudian schrieb:


> Das klingt jetzt vielleicht etwas fies, aber wenn du noch nicht einmal zwischen Programmiersprache und IDE unterscheiden kannst solltest du vielleicht nicht mitten in einem Programm anfangen, sondern dir zunächst einmal die Grundlagen von Pascal aneignen.
> 
> Was ein Array ist sollte man doch schon wissen wenn man programmieren möchte.


 
Du bist mir zuvorgekommen, hier stand mal ein langer Text, der essentiell das selbe aussagte. 
Bin definitiv deiner Meinung, sowas sollte man wissen, Arrays sind die basics der basics 




> Du kannst da soviel reinwerfen wie du willst und egal was du willst. Zahlen , werte , buchstaben usw.



Ok, versuch mal dieses Java / C / C++ zu compilen. Viel Spass.


```
int[] array = new int[10];
array[0] = 1;
array[1] = "foobar";
```

Also, schwachsinn. Arrays haben genauso types wie jede andere variable.

Wenn schon Erklären, dann auch Richtig, und nicht Falsch. 


@Crysis Nerd: Scheiss ma auf mit Lehrer reden. Das bringt in 99% der Fälle rein gar nichts. Google und die Bücherei sind dein Freund. Was denkt ihr wie ich mit 12 angefangen habe Programmieren zu Lernen? Ich bin in die Bücherei gegangen und habe mir ein Buch über C# ausgeliehen (ja ja, nicht Schlagen, heute weiss ich das C# der größte scheiss ist, aber ich fands geil früher) und bei Fragen habe ich Google (damals noch mit 56k Modem ) befragt.


----------



## Heretic (21. August 2013)

Leandros schrieb:


> Also, schwachsinn. Arrays haben genauso types wie jede andere variable.
> 
> Wenn schon Erklären, dann auch Richtig, und nicht Falsch.



Ich kenne es nicht anders sry. Ich hab auch mit Sachen zu tun gehabt wo dies möglich ist.
Bei der Wortwahl hätte man es auch selbst erklären können oder es einfach korregieren.

MfG Heretic


----------



## Leandros (21. August 2013)

Siehe Beispiel.
Aber in C / C++ / Java ist ein Array auch immer einem type zu geordnet, zum Beispiel dem primitiven typ int, ein int array würde dann so aussehen int[] array = new int[length].
Gibt aber in Java z.B auch ArrayLists. Sieht dann so aus: List arrayList = new ArrayList<String>() oder mit zwei werten, ein 2D Array, List arrayList = new ArrayList<Map<Int, String>>().


----------



## Crysis nerd (21. August 2013)

Leandros schrieb:


> @Crysis Nerd: Scheiss ma auf mit Lehrer reden. Das bringt in 99% der Fälle rein gar nichts. Google und die Bücherei sind dein Freund. Was denkt ihr wie ich mit 12 angefangen habe Programmieren zu Lernen? Ich bin in die Bücherei gegangen und habe mir ein Buch über C# ausgeliehen (ja ja, nicht Schlagen, heute weiss ich das C# der größte scheiss ist, aber ich fands geil früher) und bei Fragen habe ich Google (damals noch mit 56k Modem ) befragt.


Ich hab auch kaum Wissen über die Schule zu solchen Themen bekommen. Nur ich wollte darauf hinaus, dass der Threadersteller aktiv wird. Weil es gibt leider viel zu viele Schüler, die permanent über Lehrer meckern aber selber nichts machen. Daher: Er soll entweder da gucken, dass sich was ändert, oder selbst lernen. 


Aber da wir hier mal wieder absolut vom Thema abschweifen: Kann jemand mit Pascal Kenntnissen dem Herrn Threadersteller mal Arrays ordentlich erklären?
Und an dich direkt Herr Threadersteller: Es gibt nicht einfach für alles Funktionen, du musst auch selber mal etwas programmieren mit Schleifen und sonstigem. Du sagtest auch es gibt 24 Möglichkeiten, aber alle Möglichkeiten durchzuprobieren ist eine blöde Lösung für das Problem. Lass dir da was besseres einfallen.

Grüße


----------



## Laudian (21. August 2013)

Leandros schrieb:


> Du bist mir zuvorgekommen, hier stand mal ein langer Text, der essentiell das selbe aussagte.


 
Wahrscheinlich bin ich dir genau wegen dem "langen" Text zuvorgekommen 



			
				Heretic schrieb:
			
		

> @Laudian
> wenn Er/Sie das in der Schule lernt und der Lehrer seinen Plan so durchzieht...



Ich war im Unterricht natürlich nicht dabei, aber ich kann mir nicht vorstellen dass man von "Installiert mal das Programm Lazarus" zu "Schreibt ein Programm dass... macht" gesprungen ist.

Ich fand den Einstieg zum Programmieren aber persönlich auch sehr schwer, und habe es erst im dritten Anlauf wirklich geschafft. Ich kann mir vorstellen dass man nicht viel mitbekommt wenn der Lehrer einem etwas erzählt, ich musste manche Stellen auch 3-4 mal lesen und immer wieder Sachen ausprobieren.

Das sehr sehr gut gelungene Python Tutorial hat dabei auf jeden Fall stark geholfen. Der Sprung von Python zu C war dann um einiges einfacher als direkt mit C einzusteigen. Außerdem finde ich es wichtig ein Ziel zu haben wenn man Programmieren lernen möchte. Einfach nur Programmieren lernen damit man Programmieren kann hat bei mir nie funktioniert, nach spätestens 2-3 Tagen war die Luft raus.


@TE: Such dir im Internet doch einfach mal irgendein Pascal Tutorial und lies dir die ersten Kapitel durch, das sollte schon viel weiterhelfen. Oder habt ihr vlt. sogar so eine Art Unterrichtsbuch zu Pascal ?

Dieses hier z.B:
http://www.tutorials.at/pascal/pascal-tutorial.html

Ich hab das aber selber nicht weiter angeguckt, von daher kann ich nicht sagen ob das gerade gut oder weniger gut ist. Aber vor allem dieser Teil hat es mir angetan:


> Hin und wieder kommt es vor, dass Pascal noch an Schulen unterrichtet wird. Vor allem "wenn Informatik-Lehrer die letzten Jahre nichts dazu gelernt haben", so die Aussage eines Mitglieds des alten Tutorials.at-Forums.


----------



## Leandros (21. August 2013)

Ich versteh immer nicht warum die Leute so etwas nicht Googlen ... Klick mich!

Frage mich grade auch viel mehr, warum zur Hölle Pascal? Warum nicht was Sinnvolles und einfachereres. 


@Laudian: Von Python zu C ist aber ein Himmelweiter unterschied, außer etwas semantik kann Python Programmieren nicht viel gebracht haben (z.B du weisst wie man loops nutzen, was variablen sind etc, basics halt). Wehre mich ja immer gegen Python, find die Sprache irgendwie sehr komisch. Ist aber scheinbar echt beliebt ...

Edit: HaHa. Hammer Kommentar. Stimmt ziemlich mit meiner Meinung überein. Pascal ist totaler Schwachsinn bei zu bringen. Entweder ganz Basic mit Assembly anfangen oder direkt mit C / C++ einsteigen.


----------



## Laudian (21. August 2013)

Leandros schrieb:


> @Laudian: Von Python zu C ist aber ein Himmelweiter unterschied, außer etwas semantik kann Python Programmieren nicht viel gebracht haben (z.B du weisst wie man loops nutzen, was variablen sind etc, basics halt). Wehre mich ja immer gegen Python, find die Sprache irgendwie sehr komisch. Ist aber scheinbar echt beliebt ...


 
Nun, Python ist halt ziemlich einfach zum Einstieg, man kann damit schnell etwas erreichen. Und es vermittelt eben genau diese Basics die du angesprochen hast. Es war dann noch ein weiter Sprung zu C, aber zumindest wusste man dann schon einmal was Funktionen, Datentypen, lokale und globale Variablen etc sind.

Der Vorteil an Python ist meiner Meinung nach nicht unbedingt dass die Sprache besonders toll ist, sondern dass sie einfach ist und ein sehr sehr gutes Tutorial hat, dass keinerlei Vorkenntnisse voraussetzt. Ich habe bislang zu keiner anderen Sprache so ein gutes und ausführliches Tutorial finden können.

Der Nachteil an Python ist halt, dass Python sehr sehr langsam ist. Etwa 250 mal langsamer als C.


----------



## Crysis nerd (21. August 2013)

So stell ich mir gerade den TE vor: http://i.imgur.com/27eoy0J.jpg 




Leandros schrieb:


> Edit: HaHa. Hammer Kommentar. Stimmt ziemlich mit meiner Meinung überein. Pascal ist totaler Schwachsinn bei zu bringen. Entweder ganz Basic mit Assembly anfangen oder direkt mit C / C++ einsteigen.


Schön das von jemandem zu hören, der ja scheinbar sein Geld mit Java verdient (wenn ich das aus dem anderen Thread richtig rausgehört habe). Normalerweise sind diese ganzen "Highlevel" programmierer extrem abgeneigt gegen alles, was in Richtung Low-Level geht.


Der Kommentar des tutorials.at Typen spricht mir aus der Seele. Schon beim Überfliegen des Wikipedia Artikels zu Pascal, kommts mir hoch... :/


----------



## Leandros (21. August 2013)

Crysis nerd schrieb:


> Schön das von jemandem zu hören, der ja scheinbar sein Geld mit Java verdient (wenn ich das aus dem anderen Thread richtig rausgehört habe). Normalerweise sind diese ganzen "Highlevel" programmierer extrem abgeneigt gegen alles, was in Richtung Low-Level geht.
> 
> 
> Der Kommentar des tutorials.at Typen spricht mir aus der Seele. Schon beim Überfliegen des Wikipedia Artikels zu Pascal, kommts mir hoch... :/


 
HaHa. 

Die Low Level Sprachen sind Super, machen wirklich Spass. Mann muss halt immer Abwegen was man erreichen möchte. Du kannst dir nicht vorstellen wie sehr ich Pointer bzw Pass by Reference aus C (ok, es gibt sie auch in C++, was nicht wirklich low level ist) vermisse in Java. 
Leider hast du recht, sehr viele Java developer verabscheuen Sprachen wie C oder C++ ...  Wie kann man die Abstammung nicht lieben ?


----------



## metalstore (21. August 2013)

jo thx


----------



## Crysis nerd (21. August 2013)

Leandros schrieb:


> Die Low Level Sprachen sind Super, machen wirklich Spass. Mann muss halt immer Abwegen was man erreichen möchte. Du kannst dir nicht vorstellen wie sehr ich Pointer bzw Pass by Reference aus C (ok, es gibt sie auch in C++, was nicht wirklich low level ist) vermisse in Java.


Same here. Als ich in einem Praktikum mal eine Android App programmieren musste, hab ich mich die ersten Tage permanent über Java aufgeregt... keine Mehrfachvererbung, keine Functionpointer, etc...
Ich bin ziemlich in C++ verliebt, weil es einem halt so viele Freiheiten lässt. "The committee shall make no rule that prevents C++ programmers from shooting themselves in the foot." und so... 

Und es verabscheuen halt viele, weil sie die zusätzlichen "Features" nicht vermissen sondern nur die höhere Komplexität sehen. Daher bin ich auch dafür, dass man mit C oder C++ anfängt. Reines C ist fast zu haarig, weil OOP ein extrem wichtiges Paradigma geworden ist und es ungut wäre das zu ignorieren.


----------



## Laudian (21. August 2013)

metalstore schrieb:


> jo thx





Crysis nerd schrieb:


> So stell ich mir gerade den TE vor: http://i.imgur.com/27eoy0J.jpg



Und damit triffst du den Nagel wohl auf den Kopf


----------



## metalstore (21. August 2013)

Laudian schrieb:


> Und damit triffst du den Nagel wohl auf den Kopf


ääähhm, nein 
ich habe das Programm jetzt fertig, auch wenn es nicht perfekt ist


----------



## Laudian (21. August 2013)

Dann zeig uns dein Ergebnis doch mal


----------



## metalstore (21. August 2013)

begin
  ausgabetemp := EingabeEdit.text;
  for lauf2 := 1 to 3 do
  begin
  idx:= 4;
  big:= ausgabetemp[idx];
  for lauf1 := 3 downto lauf2 do
  begin
   if ausgabetemp[lauf1] > big
      then begin
        big:= ausgabetemp[lauf1];
        idx:= lauf1;
      end;
  end;
  hvar := ausgabetemp[lauf2];
  ausgabetemp[lauf2] := big;
  ausgabetemp[idx] := hvar;
 end;

  AusgabeGrossEdit.text := ausgabetemp;
  AusgabeKleinEdit.text := AusgabeGrossEdit.text[4] +
                           AusgabeGrossEdit.text[3] +
                           AusgabeGrossEdit.text[2] +
                           AusgabeGrossEdit.text[1];


end;
zufriedenstellend?
wenn ja: hail to my dad xD


----------



## Leandros (21. August 2013)

Crysis nerd schrieb:


> Same here. Als ich in einem Praktikum mal eine Android App programmieren musste, hab ich mich die ersten Tage permanent über Java aufgeregt... keine Mehrfachvererbung, keine Functionpointer, etc...
> Ich bin ziemlich in C++ verliebt, weil es einem halt so viele Freiheiten lässt. "The committee shall make no rule that prevents C++ programmers from shooting themselves in the foot." und so...
> 
> Und es verabscheuen halt viele, weil sie die zusätzlichen "Features" nicht vermissen sondern nur die höhere Komplexität sehen. Daher bin ich auch dafür, dass man mit C oder C++ anfängt. Reines C ist fast zu haarig, weil OOP ein extrem wichtiges Paradigma geworden ist und es ungut wäre das zu ignorieren.


 
Das nervigste an C ist eigentlich das du das memory management vollkommen selber in die Hände nehmen musst, bei C++ geht das ja noch einigermaßen von alleine. 
Immer scheiss malloc, find ich total nervig ...

BTW: Pascal Programme sehen so Hässlich aus ...


----------



## Laudian (21. August 2013)

Leandros schrieb:


> BTW: Pascal Programme sehen so Hässlich aus ...


 
Oh ja. Das ist auch einer der Hauptgründe pro Python:
Python Programme sehen so schön aus... Das Forum lässt mich nur leider nichts einreihen, daher die Unterstriche:



> def maximum():
> _________Zahl = 0
> _________Eingabe = input("Geben sie eine Zahl ein: ")
> _________Liste = []
> ...



Edit: Es gibt sicher schönere Methoden um Zahlen in Listen umzuwandeln und umgekehrt, aber so funktionierts auf jeden Fall auch


----------



## Leandros (21. August 2013)

Nahh, Python ist halt indent sensitive. Finde ich ehrlich gesagt auch nicht so schön, vorallem wenn du mal mit Makefiles gearbeitet hast, die einmal falsch indented direkt errorn ohne das du weiss warum, wieso und wo. 
Finde den C / C++ / Java style mit Klammern immer noch am besten. 

Aber das ist ja Geschmackssache.


----------



## DarkMo (22. August 2013)

begin und end is auch nix andres wie { und } ^^ also im grunde nimmt sich das ja rein garnix (ausser mehr schreiberei für "bessere" lesbarkeit ^^ hab in der schule auch mit turbo pascal angefangen gehabt xD schulen lieben den rotz scheinbar :>

aber an und für sich ist die sprache doch völlig latte. den algorythmus an sich kann man notfalls auch so beschreiben. aber gut, er hat ja nu schon ne lösung.


----------



## Leandros (22. August 2013)

Algorithmen werden eh meist in pseudocode beschrieben, oder mathematischen Formeln. 

Und das begin und end die klammern ersetzen ist mir bewusst, aber Klammer unterscheiden sich besser vom Rest als noch mehr Text. Die Lesbarkeit ist ein Fach total ********.


----------



## Laudian (22. August 2013)

Leandros schrieb:


> aber Klammer unterscheiden sich besser vom Rest als noch mehr Text.


 
Und Einrückungen unterscheiden sich sogar noch deutlicher 
Aber gut, das hatten wir ja schon


----------



## Leandros (22. August 2013)

Stimm ich dir zu. Aber in C / C++ / Java rückt man die code Blöcke ja auch ein.


----------



## DarkMo (22. August 2013)

einrückung hat ja auch rein garnix mit ner sprache an sich zu tun  der is das nämlich völlig wurst, ob das schön aussieht oder nich ^^


----------



## Leandros (22. August 2013)

Doch. Python interessiert das schon. Ist halt Klammer bzw end Ersatz.


----------



## DarkMo (22. August 2013)

asö, die ham dann quasi kein ; sondern nutzen das \n dafür oder wie?


----------



## Leandros (22. August 2013)

Jep. Und indents um Funktionen zu unterscheiden. 

Kürzeste Hello World ever:

print("Hello World") 

in Python 3. In 2:

print "Hello World"


----------



## metalstore (22. August 2013)

jetzt schreib ich schon (mithilfe meines dads^^) so einen genialen Code, und keiner hat ein herablassenden Kommentar dazu 
xD


----------



## DarkMo (23. August 2013)

metalstore schrieb:


> begin
> ....ausgabetemp := EingabeEdit.text;
> ....for lauf2 := 1 to 3 do begin
> ........idx:= 4;
> ...


so, erstmal umständlichst mit weissen punkten eingerückt xD nun mal schauen ^^

ok, erste frage: du gibst ne 4 stellige zahl ein? 1 bis 3 sind nur 3 stellen - und die erste fehlt sogar ^^ ein index beginnt immer mit 0. oha, laut Pascal - Arrays wird das wohl in pascal bissl anders gelöst. "In Pascal wird oft imin = 1 gewählt." - ähä, das heisst jetz genau was? ^^ wenn man einen text hat, wird der ja "vom system" erstellt - wie wählt das also den index? najut, ließe sich durch testen ja rausfinden. also je nachdem, entweder von 0 bis 3 oder 1 bis 4 für 4stelliges. sonst unterschlägt man was ^^ war die eingabe nur 3stellig, isses ja ok so.

anderer hinweis: is halt nen bissl anfällig so. wenn man ne 5 stellige ziffer angibt passiert zwar nix, aber das ergebnis stimmt nich, da das ende abgeschnitten wird. gibt man nur 2 stellen ein, versucht er dann aber dennoch auf ein 3. element zuzugreifen und bekommt ne speicherschutzverletzung oder sowas - error halt. daher wäre es allgemein wohl günstiger (also für die spiziefische aufgabe langt das so dann schon, das wäre jetzt nur als hinweis gedacht) sowas wie for lauf2 := 1 to ausgabetemp.length (oder wie auch immer das heissen mag ^^ länge eines arrays halt) durchzulaufen.

ach, ich seh grad, ihr wollt bis eins vors ende nur durchlaufen? idx wäre dann der index vom letzten quasi. also aufgesplittet. das jetz im kopf durch zu spielen is ned so fix gemacht ^^ ich sag mal so: wenn es funzt, isses doch io 

ne allgemeine idee, die mir eingefallen wäre als lösung (mit ner zusatzfunktion) wäre sowas: durchlaufe den eingabe-string zeichen für zeichen und schmeiss das jeweilige zeichen in die zusatzfunktion da (zum bsp fillSortArray(char c) oder sowas). und die funktion geht dann immer das array durch und platziert das übergebene zeichen dort, wo der nachfolger größer ist. hmm, klingt irgendwie verwirrend ^^ ich mein einfach nur, dass er zum bsp ne 3 bekommt und im array schon [1,2,5] steht als bsp. dann schaut er 3 < 1? nö, weiter. 3 < 2? nö, weiter. 3 < 5? jop, also die 5 eins nach hinten verschieben und die 3 da reinpacken. das "nach hinten verschieben" macht man dann am einfachsten von hinten her.

gut, jedenfalls füllt man so einfach (vllt nich wirklich optimal und effizient oder so ^^) dann halt ein sortier array und am ende geht man dieses array wieder durch und gibts einfach aus. einmal von vorn nach hinten und einmal von hinten nach vorn. ich denke mal, euer ansatz wird in etwa aufs selbe hinauslaufen oder? nur ohne zusatzfunktion ^^ wenns so funzt also nich übel


----------

