fork download
  1. program ideone;
  2.  
  3. Const smax = 100;
  4. Type simple = array[0..smax] of smallint;
  5. Var arr:simple; i, j, k, n:shortint; isChange:boolean;
  6.  
  7. procedure writeArr(Var tArr:simple);
  8. begin
  9. for i:= 0 to n do write(tArr[i], ' ');
  10. writeln();
  11. end;
  12.  
  13. procedure swap(Var a, b:smallint);
  14. Var temp:smallint;
  15. begin
  16. temp:=a;
  17. a:=b;
  18. b:=temp;
  19. end;
  20.  
  21. procedure bubbleSort(Var tArr:simple);
  22. begin
  23. isChange:=True;
  24. k:=0;
  25. while isChange = True do
  26. begin
  27. isChange:=False;
  28. for j:=0 to n-k-1 do
  29. if tArr[j] > tArr[j+1] then begin
  30. swap(tArr[j], tArr[j+1]);
  31. isChange:=True;
  32. end;
  33. k:=k+1;
  34. end;
  35. end;
  36.  
  37. begin
  38. read(n);
  39. n:=n-1;
  40. for i:=0 to n do read(arr[i]);
  41.  
  42. bubbleSort(arr);
  43. writeln();
  44. writeArr(arr);
  45. end.
Success #stdin #stdout 0s 5284KB
stdin
13
83 554 -245 -3456 56 54 5 -4 0 108 -283 1037 -1485
stdout
-3456 -1485 -283 -245 -4 0 5 54 56 83 108 554 1037