Language: JavaScript
Bubblesort Hamster (Imperativ)
1: /* bubblesort v2.0 aufgabe 28 */ 2: 3: // eine kachel fressen und gefressene körner zurückgeben 4: int kachelFressen(int koerner) { 5: for(;kornDa();koerner++) 6: nimm(); 7: return koerner; 8: } 9: // kachel für kachel fressen und gezählte körner ins array schreiben 10: int[] koernerEinlesen() { 11: int[] kachel = new int[12]; 12: kachel[10]=1; 13: for(int x=0;vornFrei();kachel[x]=kachelFressen(0),x++) 14: vor(); 15: return kachel; 16: } 17: // eingelesene kacheln sortieren und tauschvorgänge zählen+speichern, anschliessend sortiertes array zurückgeben 18: int[] bubbleSort(int[] kachel,int x) { 19: while(kachel[10]>0) 20: for(x=0,kachel[11]+=kachel[10],kachel[10]=0;x<9;x++) 21: kachel[10]+=arrayTauschen(kachel,x,x+1); 22: return kachel; 23: } 24: // kacheln neu legen mithilfe des sortierten array und gespeicherte tauschvorgänge zurückgeben 25: int kachelnSchreiben(int[] kachel) { 26: linksUm(); 27: linksUm(); 28: for(int x=9;x>=0&&vornFrei();vor(),x--) 29: for(int i=0;i<kachel[x];i++) 30: gib(); 31: return kachel[11]-1; 32: } 33: // 2 positionen des arrays vertauschen wenn a > b ist und tauschvorgang zurückgeben 34: int arrayTauschen(int[] kachel,int a,int b) { 35: int ausgelagert=0; 36: if(kachel[a]>kachel[b]) { 37: ausgelagert=kachel[b]; 38: kachel[b]=kachel[a]; 39: kachel[a]=ausgelagert; 40: return 1; 41: } 42: return 0; 43: } 44: ////////////-> MAIN 45: // reihe sortieren und tauschvorgänge wiedergeben 46: void main() { 47: schreib("Es wurden " + kachelnSchreiben(bubbleSort(koernerEinlesen(),0)) + " Tauschvorgänge durchgeführt."); 48: }
Report Abuse
Subscribe
Discuss
What's new
What is it
New Snippet
Recent Snippets
My Snippets
Web Code
Search

