Advertisement
SteelK

Untitled

Apr 24th, 2016
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.44 KB | None | 0 0
  1. #include "stdafx.h"
  2.  
  3. #include <iostream>
  4. #include <time.h>
  5. #include <cstdlib>
  6. #include <cmath>
  7.  
  8. using namespace std;
  9.  
  10. int how_min(int *in_mas, unsigned int size)
  11. {
  12.     int min = in_mas[0];
  13.     for (unsigned int i = 1; i < size; i++)
  14.     {
  15.         if (min > in_mas[i])
  16.             min = in_mas[i];
  17.     }
  18.     return min;
  19. }
  20.  
  21. int count_one(int *in_mas, unsigned int size)
  22. {
  23.     unsigned int count = 0;
  24.     for (unsigned int i = 0; i < size; i++)
  25.     {
  26.         if (1 == in_mas[i])
  27.             count++;
  28.     }
  29.     return count;
  30. }
  31.  
  32.  
  33. int how_min_recurs(int *in_mas, unsigned int size, int min)
  34. {
  35.     if (min > in_mas[size])
  36.         min = in_mas[size];
  37.     cout << "!min = " << min << endl;
  38.     if (size <= 1)
  39.     {
  40.         cout << "!min = " << min << endl;
  41.         return min;
  42.     }
  43.     else
  44.         how_min_recurs(in_mas, --size, min);
  45. }
  46.  
  47.  
  48. int count_one_recurs(int *in_mas, unsigned int size, unsigned int count)
  49. {
  50.     if (1 == in_mas[size])
  51.         count++;
  52.     if (size <= 0)
  53.         return count;
  54.     else
  55.         count_one_recurs(in_mas, --size, count);
  56. }
  57.  
  58.  
  59. int main()
  60. {
  61.     setlocale(0, "");
  62.     int min;
  63.     unsigned int count;
  64.     int mas1[] = { 32, 1, -1, 0, 89376283 }; // 1, -1
  65.     int mas2[] = { 213, 44, 41, 0, 11 }; // 0, 0
  66.     int mas3[1] = {}; // 0, 0
  67.     int mas4[] = { 1,1,1 }; // 3, 1
  68.     int mas5[] = { 1,1,1,1,1,1,1 }; // 7, 1
  69.     int mas6[] = { 1,1,0,0,1,1 }; // 4, 0
  70.     int mas7[] = { 0,0,1,1,1,0,0 }; // 3, 0
  71.     if
  72.         (
  73.         (/*
  74.          (how_min(mas1, sizeof(mas1) / sizeof(int)) == -1)
  75.          &&
  76.          (how_min(mas2, sizeof(mas2) / sizeof(int)) == 0)
  77.          &&
  78.          (how_min(mas3, 1) == 0)
  79.          &&
  80.          (how_min(mas4, sizeof(mas4) / sizeof(int)) == 1)
  81.          &&
  82.          (how_min(mas5, sizeof(mas5) / sizeof(int)) == 1)
  83.          &&
  84.          (how_min(mas6, sizeof(mas6) / sizeof(int)) == 0)
  85.          &&
  86.          (how_min(mas7, sizeof(mas7) / sizeof(int)) == 0)
  87.          )
  88.          &&
  89.          (
  90.          (count_one(mas1, sizeof(mas1) / sizeof(int)) == 1)
  91.          &&
  92.          (count_one(mas2, sizeof(mas2) / sizeof(int)) == 0)
  93.          &&
  94.          (count_one(mas3, 1) == 0)
  95.          &&
  96.          (count_one(mas4, sizeof(mas4) / sizeof(int)) == 3)
  97.          &&
  98.          (count_one(mas5, sizeof(mas5) / sizeof(int)) == 7)
  99.          &&
  100.          (count_one(mas6, sizeof(mas6) / sizeof(int)) == 4)
  101.          &&
  102.          (count_one(mas7, sizeof(mas7) / sizeof(int)) == 3)
  103.          )
  104.          &&
  105.          (*/
  106.             (how_min_recurs(mas1, sizeof(mas1) / sizeof(int), 0) == -1)
  107.             /*&&
  108.             (how_min_recurs(mas2, sizeof(mas2) / sizeof(int), min = mas2[0]) == 0)
  109.             &&
  110.             (how_min_recurs(mas3, 1, min = mas3[0]) == 0)
  111.             &&
  112.             (how_min_recurs(mas4, sizeof(mas4) / sizeof(int), min = mas4[0]) == 1)
  113.             &&
  114.             (how_min_recurs(mas5, sizeof(mas5) / sizeof(int), min = mas5[0]) == 1)
  115.             &&
  116.             (how_min_recurs(mas6, sizeof(mas6) / sizeof(int), min = mas6[0]) == 0)
  117.             &&
  118.             (how_min_recurs(mas7, sizeof(mas7) / sizeof(int), min = mas7[0]) == 0)
  119.             )
  120.             &&
  121.             (
  122.             (count_one_recurs(mas1, sizeof(mas1) / sizeof(int), count = 0) == 1)
  123.             &&
  124.             (count_one_recurs(mas2, sizeof(mas2) / sizeof(int), count = 0) == 0)
  125.             &&
  126.             (count_one_recurs(mas3, 1, count = 0) == 0)
  127.             &&
  128.             (count_one_recurs(mas4, sizeof(mas4) / sizeof(int), count = 0) == 3)
  129.             &&
  130.             (count_one_recurs(mas5, sizeof(mas5) / sizeof(int), count = 0) == 7)
  131.             &&
  132.             (count_one_recurs(mas6, sizeof(mas6) / sizeof(int), count = 0) == 4)
  133.             &&
  134.             (count_one_recurs(mas7, sizeof(mas7) / sizeof(int), count = 0) == 3)
  135.             */)
  136.             )
  137.     {
  138.         cout << "Программа работает..." << endl;
  139.     }
  140.     else
  141.         cout << "Программа не работает :(..." << endl;
  142.  
  143.     cout << (how_min_recurs(mas1, sizeof(mas1) / sizeof(int), min = mas1[0])) << endl;
  144.  
  145.     return 0;
  146. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement