fork download
  1. procedure bubbleSort(var arr: array of Integer; n: Integer; var val: Integer);
  2. var i, j, c: Integer;
  3. begin
  4. for i := 1 to n do
  5. for j := 2 to n do
  6. if (arr[j - 1] > arr[j]) then
  7. begin
  8. c := arr[j - 1];
  9. arr[j - 1] := arr[j];
  10. arr[j] := c;
  11. val := val + 1;
  12. end;
  13. end;
  14.  
  15. const MAXN = 100;
  16. var arr: array [1..MAXN] of Integer;
  17. i, n, val: Integer;
  18. begin
  19. read(n);
  20. for i := 1 to n do
  21. read(arr[i]);
  22. val := 0;
  23. bubbleSort(arr, n, val);
  24. for i := 1 to n do
  25. write(arr[i], ' ');
  26. writeln();
  27. write(val);
  28. end.
Success #stdin #stdout 0s 4536KB
stdin
10
9 8 7 1 4 9 7 2 3 4
stdout
9 0 1 2 3 4 4 7 7 8 
30