Advertisement
simov

SP Lab. 6

Nov 28th, 2013
336
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. 1. Двоен факториел
  2. --------------------------------------------------
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5.  
  6. int double_fact(int n)
  7. {
  8. if (n < 1)
  9. {
  10. return 1;
  11. }
  12. else
  13. {
  14. return n * double_fact(n - 2);
  15. }
  16. }
  17.  
  18. int main()
  19. {
  20. int n;
  21. scanf("%d", &n);
  22. printf("%d", double_fact(n));
  23. return 0;
  24. }
  25. -----
  26. int fact(int n)
  27. {
  28. if (n <= 0) return 1;
  29.  
  30. return n * fact(n-2);
  31. }
  32.  
  33. int main()
  34. {
  35. int n;
  36. scanf("%d", &n);
  37. printf("%d", fact(n));
  38. return 0;
  39. }
  40. --------------------------------------------------
  41. 2. Производ цифри
  42. --------------------------------------------------
  43. #include <stdio.h>
  44.  
  45. int proizvod(int n)
  46. {
  47. if(n<1)
  48. return 1;
  49. else
  50. return (n%10)*proizvod(n/10);
  51. }
  52.  
  53. int main()
  54. {
  55. int n;
  56. scanf("%d",&n);
  57. printf("%.2f",(float)proizvod(n)/n);
  58. return 0;
  59. }
  60. -----
  61. int proizvodCifri(int n)
  62. {
  63. if (n == 0) return 1;
  64. return n % 10 * proizvodCifri(n / 10);
  65. }
  66.  
  67. int main()
  68. {
  69. int n;
  70. scanf("%d", &n);
  71. printf("%.2f", proizvodCifri(n) / (float)n);
  72.  
  73.  
  74. return 0;
  75. }
  76. --------------------------------------------------
  77. 3. Броеви
  78. --------------------------------------------------
  79. int dvocifreni(int n)
  80. {
  81. if (n / 10 == 0) return 0;
  82. return n % 100 + dvocifreni(n / 10);
  83. }
  84.  
  85. int main()
  86. {
  87. int n;
  88. scanf("%d", &n);
  89. if (n / 10 == 0 ) printf("%d", n);
  90. else printf("%d", dvocifreni(n));
  91.  
  92. return 0;
  93. }
  94. --------------------------------------------------
  95. 4. Низа
  96. --------------------------------------------------
  97. void izmini_rek(int a[], int n){
  98. printf("%d ", a[--n]);
  99. if (n > 0) izmini_rek(a, n);
  100. }
  101.  
  102. int main() {
  103. int a[100], i, n;
  104. scanf("%d",&n);
  105.  
  106. for (i=0;i<n;i++){
  107. scanf("%d",&a[i]);
  108. }
  109.  
  110. izmini_rek(a,n);
  111.  
  112. return 0;
  113. }
  114. -----
  115. #include <stdio.h>
  116.  
  117. void izmini_rek(int a[], int n){
  118. char* format = (n > 1) ? "%d " : "%d";
  119. printf(format, a[--n]);
  120. if (n > 0) izmini_rek(a, n);
  121. }
  122.  
  123. int main() {
  124. int a[100], i, n;
  125. scanf("%d",&n);
  126.  
  127. for (i=0;i<n;i++){
  128. scanf("%d",&a[i]);
  129. }
  130.  
  131. izmini_rek(a,n);
  132.  
  133. return 0;
  134. }
  135. --------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement