detective1711

LTHDT-TH1

Jul 17th, 2014
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.79 KB | None | 0 0
  1. // 12520344_TH1.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6.  
  7. #define MAX 1000
  8.  
  9. using namespace std;
  10.  
  11. int n=0;
  12.  
  13. int cRandom(int a, int b)
  14. {
  15.     return rand()%(b-a+1)+a;
  16. }
  17. void CreateArr(int arr[])
  18. {
  19.     for(int i=0;i<n;i++)
  20.     {
  21.         arr[i]=cRandom(-100, 100);
  22.     }
  23. }
  24. void CreateArrByUser(int arr[])
  25. {
  26.     for(int i=0;i<n;i++)
  27.     {
  28.         cout<<"   Nhap vao phan tu thu "<<i+1<<":  ";
  29.         cin>>arr[i];
  30.     }
  31. }
  32. void Show(int arr[])
  33. {
  34.     for(int i=0;i<n;i++)
  35.     {
  36.         cout<<arr[i]<<"  ";
  37.     }
  38.     cout<<endl;
  39. }
  40. void Delete(int arr[], int position)
  41. {
  42.     for(int i=position;i<n-1;i++)
  43.     {
  44.         arr[i]=arr[i+1];
  45.     }
  46.     n--;
  47. }
  48. void ShowMax(int arr[])
  49. {
  50.     int max=arr[0];
  51.     for(int i=1;i<n;i++)
  52.     {
  53.         if(arr[i]>max)
  54.             max=arr[i];
  55.     }
  56.     cout<<"Cac phan tu co gia tri lon nhat trong mang: "<<endl;
  57.     for(int i=0;i<n;i++)
  58.     {
  59.         if(arr[i]==max)
  60.         {
  61.             cout<<"     Phan tu thu "<<i+1<<", Gia tri: "<<max<<endl;
  62.         }
  63.     }
  64. }
  65. void ShowMin(int arr[])
  66. {
  67.     int min=arr[0];
  68.     for(int i=1;i<n;i++)
  69.     {
  70.         if(arr[i]<min)
  71.             min=arr[i];
  72.     }
  73.     cout<<"Cac phan tu co gia tri nho nhat trong mang: "<<endl;
  74.     for(int i=0;i<n;i++)
  75.     {
  76.         if(arr[i]==min)
  77.         {
  78.             cout<<"     Phan tu thu "<<i+1<<", Gia tri: "<<min<<endl;
  79.         }
  80.     }
  81. }
  82. int DemSoAm(int arr[])
  83. {
  84.     int count=0;
  85.     for(int i=0;i<n;i++)
  86.     {
  87.         if(arr[i]<0)
  88.             count++;
  89.  
  90.     }
  91.     return count;
  92. }
  93. int MaxAm(int arr[])
  94. {
  95.     int max=0;
  96.     for(int i=0;i<n;i++)
  97.     {
  98.         if(arr[i]<0)
  99.         {
  100.             max=arr[i];
  101.             break;
  102.         }
  103.     }
  104.     for(int i=0;i<n;i++)
  105.     {
  106.         if(arr[i]<0&&arr[i]>max)
  107.             max=arr[i];
  108.     }
  109.     return max;
  110. }
  111. int MinDuong(int arr[])
  112. {
  113.     int min=0;
  114.     for(int i=0;i<n;i++)
  115.     {
  116.         if(arr[i]>0)
  117.         {
  118.             min=arr[i];
  119.             break;
  120.         }
  121.     }
  122.     for(int i=0;i<n;i++)
  123.     {
  124.         if(arr[i]>0&&arr[i]<min)
  125.             min=arr[i];
  126.     }
  127.     return min;
  128. }
  129. int Find(int arr[], int value)
  130. {
  131.     int i=0;
  132.     while(arr[i]!=value)
  133.     {
  134.         i++;
  135.     }
  136.     if(i==n)
  137.         return -1;
  138.     else
  139.         return i;
  140. }
  141. int CountValue(int arr[], int value)
  142. {
  143.     int count=0;
  144.     for(int i=0;i<n;i++)
  145.     {
  146.         if(arr[i]==value)
  147.             count++;
  148.     }
  149.     return count;
  150. }
  151. void SelectionSort(int arr[])
  152. {
  153.     int minpos;
  154.     for(int i=0;i<n-1;i++)
  155.     {
  156.         minpos=i;
  157.         for(int j=i+1;j<n;j++)
  158.         {
  159.             if(arr[j]<arr[minpos])
  160.                 minpos=j;
  161.         }
  162.         swap(arr[minpos], arr[i]);
  163.     }
  164. }
  165. int BinarySearch(int arr[], int value, int left, int right)
  166. {
  167.    
  168.     if(left>right)
  169.         return -1;
  170.     else
  171.     {
  172.         int mid=(left+right)/2;
  173.         if(arr[mid]>value)
  174.             BinarySearch(arr[], value, left, mid-1);
  175.         else if(arr[mid]<value)
  176.             BinarySearch(arr[], value, mid+1, right);
  177.         else
  178.             return mid;
  179.     }
  180. }
  181. int _tmain(int argc, _TCHAR* argv[])
  182. {
  183.     cout<<"So phan tu: "; cin>>n;
  184.    
  185.     int arrMain[MAX];
  186.     CreateArr(arrMain);
  187.     Show(arrMain);
  188.     SelectionSort(arrMain);
  189.     Show(arrMain);
  190.  
  191. #ifdef _DEBUG
  192.     system("pause");
  193. #endif
  194.  
  195.     return 0;
  196.  
  197. }
Advertisement
Add Comment
Please, Sign In to add comment