Advertisement
Guest User

Untitled

a guest
Oct 19th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.11 KB | None | 0 0
  1.  
  2. #include "stdafx.h"
  3.  
  4.  
  5. void pm(int A[], int n);
  6. void swap(int *pa, int *pb);
  7. int pusik(int A[], int n);
  8. int pusik_r(int A[], int n);
  9.  
  10. void main()
  11. {
  12. const int n = 8;
  13. int A[n] = {59, -8, 102, 65, -78, 0, 13, 5};
  14. pm(A, n);
  15. pusik(A, n);
  16. printf("\n");
  17. int B[n] = { 59, -8, 102, 65, -78, 0, 13, 5 };
  18. pm(B, n);
  19. pusik_r(B, n);
  20. printf("\n");
  21. getchar();
  22. }
  23.  
  24. void pm(int A[], int n)
  25. {
  26. printf("Array: ");
  27. for (int i = 0; i < n; i++)
  28. {
  29. printf("%4d", A[i]);
  30. }
  31. printf("\n");
  32. }
  33.  
  34. void swap(int *pa, int *pb)
  35. {
  36. int temp = *pa;
  37. *pa = *pb;
  38. *pb = temp;
  39. }
  40.  
  41. int pusik_r(int A[], int n)
  42. {
  43. int i = 0;
  44. int check = 1;
  45. while (i < n - 1)
  46. {
  47. if (A[i]>A[i + 1])
  48. {
  49. swap(&A[i], &A[i + 1]);
  50. check = 0;
  51. }
  52. pm(A, n);
  53. i++;
  54. if (check)
  55. {
  56. return 0;
  57. }
  58. }
  59. pusik_r(A, n);
  60. }
  61.  
  62.  
  63. int pusik(int A[], int n)
  64. {
  65. for (int q = 1; q > 0; q++)
  66. {
  67. int i = 0;
  68. int check = 1;
  69. while (i < n - 1)
  70. {
  71. if (A[i]>A[i + 1])
  72. {
  73. swap(&A[i], &A[i + 1]);
  74. check = 0;
  75. }
  76. pm(A, n);
  77. i++;
  78. if (check)
  79. {
  80. return 0;
  81. }
  82. }
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement