Advertisement
GerexD

Divide

May 9th, 2018
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.53 KB | None | 0 0
  1. Hatvany
  2. *******************
  3. #include <iostream>
  4. using namespace std;
  5.  
  6. int hatvany(int a,int n)
  7. {
  8. if (n==0) return 1;
  9. else
  10. {
  11. int x=hatvany(a,n/2);
  12. if (n%2==0) return x*x;
  13. else return x*x*a;
  14. }
  15. }
  16.  
  17. int main()
  18. {
  19. int a;
  20. int n;
  21. cout<<"Add meg az alapot:";
  22. cin>>a;
  23. cout<<"A hatvanykitevo:";
  24. cin>>n;
  25. if (n>0)
  26. cout<<"Eredmeny:"<<hatvany(a,n);
  27. else
  28. cout<<"Eredmeny:"<<(float)1/hatvany(a,-n);
  29. return 0;
  30. }
  31. *******************************
  32. Quicksort
  33. *********************************
  34. #include <iostream>
  35.  
  36. using namespace std;
  37. void beolvas(int a[],int &n)
  38. {
  39. cin>>n;
  40. for(int i=1;i<=n;i++)
  41. cin>>a[i];
  42. }
  43. void quick(int a[],int e,int u)
  44. {
  45. int x=a[(e+u)/2];
  46. int i=e,j=u;
  47. do{
  48. while(a[i]<x) i++;
  49. while(a[j]>x) j--;
  50. if(i<=j)
  51. {
  52. if(i<j){ int s=a[i];a[i]=a[j];a[j]=s;}
  53. i++;
  54. j--;
  55. }
  56. }while(i<=j);
  57.  
  58. if(e<j) quick(a,e,i);
  59. if(i<u) quick(a,i,u);
  60. }
  61. int main()
  62. {
  63. int a[20],n;
  64. beolvas(a,n);
  65. quick(a,1,n);
  66. for(int i=1;i<=n;i++) cout<<a[i]<<" ";
  67.  
  68.  
  69. return 0;
  70. }
  71. ***********************
  72. Mergesort
  73. ************************
  74. #include <iostream>
  75.  
  76. using namespace std;
  77. void beolvas(int a[],int &n)
  78. {
  79. cin>>n;
  80. for(int i=1;i<=n;i++)
  81. cin>>a[i];
  82. }
  83. void fesul(int a[],int e/**elso*/,int k,int u/**utolso*/)
  84. {
  85. int c[50],m=e;
  86. int i=e,j=k+1;
  87. while(i<=k && j<=u)
  88. {
  89. if(a[i]<a[j])
  90. {
  91. c[m]=a[i];
  92. m++;i++;
  93. }
  94. else
  95. {
  96. c[m]=a[j];
  97. m++;j++;
  98. }
  99. }
  100. for(int x=i;x<=k;x++)
  101. {
  102. c[m]=a[x];m++;
  103. }
  104. for(int x=j;x<=u;x++)
  105. {
  106. c[m]=a[x];m++;
  107. }
  108. for(int x=e;x<=u;x++) a[x]=c[x];
  109. }
  110. void mergesort(int a[],int e,int u)
  111. {
  112. if (e<u)
  113. {
  114. int k=(e+u)/2;
  115. mergesort(a,e,k);
  116. mergesort(a,k+1,u);
  117. fesul(a,e,k,u);
  118. }
  119. }
  120. int main()
  121. {
  122. int a[50],n;
  123. beolvas(a,n);
  124. mergesort(a,1,n);
  125. for(int i=1;i<=n;i++) cout<<a[i]<<" ";
  126. return 0;
  127. }
  128. *****************************
  129. rek min max
  130. **************************
  131. /**2. Adott egy n elemű sorozat. Határozzuk meg:
  132. a. a sorozat legnagyobb elemét
  133. b. a sorozat páros elemeinek számát
  134. c. a sorozat elemeinek lnko-ját
  135. d. a sorozat prím elemeinek összegét
  136. e. a sorozat tükörelemeinek számát
  137. f. a sorozat legkisebb és legnagyobb elemét egyszerre
  138. **/
  139. #include <iostream>
  140.  
  141. using namespace std;
  142. int max(int a[],int e,int u)
  143. {
  144. if(e==u) return a[e];
  145. else
  146. {
  147. int k=(e+u)/2;
  148. int m1=max(a,e,k);
  149. int m2=max(a,k+1,u);
  150. if(m1>m2) return m1;
  151. else return m2;
  152. }
  153.  
  154. }
  155. int paros(int a[],int e,int u)
  156. {
  157. if(e==u) if(a[e]%2==0) return a[e];
  158. else return 0;
  159. else
  160. {
  161. int k=(e+u)/2;
  162. int m1=paros(a,e,k);
  163. int m2=paros(a,k+1,u);
  164. return m1+m2;
  165. }
  166. }
  167. int prim(int n)
  168. {
  169. for(int i=2;i<=sqrt(n);i++)
  170. if(n%i==0)
  171. return 0;
  172. else if(i==sqrt(n) and n%i!=0) return 1;
  173. }
  174. int prim_ellenoriz(int a[],int e,int u)
  175. {
  176. if(e==u) if(prim(a[e])==1) return a[e];
  177. else return 0;
  178. else
  179. {
  180. int k=(e+u)/2;
  181. int m1=prim_ellenoriz(a,e,k);
  182. int m2=prim_ellenoriz(a,k+1,u);
  183. return m1+m2;
  184. }
  185. }
  186. int lnko(int a, int b) {
  187. int c;
  188. if (a<0) a=-a;
  189. if (b<0) b=-b;
  190. while(b > 0) {
  191. c=b;
  192. b=a%b;
  193. a=c;
  194. }
  195. return a;
  196. }
  197. int lnko_ellenoriz(int a[],int e,int u)
  198. {
  199. if(e==u) return a[e];
  200. else
  201. {
  202. int k=(e+u)/2;
  203. int m1=lnko_ellenoriz(a,e,k);
  204. int m2=lnko_ellenoriz(a,k+1,u);
  205. return lnko(m1,m2);
  206. }
  207. }
  208.  
  209. tukor(int n)
  210. {
  211. int nn=n,f=0;
  212. while(n!=0)
  213. {
  214. f=f*10+n%10;
  215. n=n/10;
  216. }
  217. if(nn==f)
  218. return 1;
  219. else return 0;
  220. }
  221. int tukor_ellenoriz(int a[],int e,int u)
  222. {
  223. if(e==u) if(tukor(a[e])==1) return 1;
  224. else return 0;
  225. else
  226. {
  227. int k=(e+u)/2;
  228. int m1=tukor_ellenoriz(a,e,k);
  229. int m2=tukor_ellenoriz(a,k+1,u);
  230. return m1+m2;
  231. }
  232. }
  233. void max_min(int a[],int e,int u,int &min,int &max)
  234. {
  235. if (e==u) return a[e];
  236. else
  237. {
  238. int k=(e+u)/2;
  239. int m1=max_min(a,e,k);
  240. int m2=max_min(a,k+1,u);
  241. if (m1>m2) min=m2;
  242. else min=m1;
  243. int m1=max_min(a,e,k);
  244. int m2=max_min(a,k+1,u);
  245. if (m1<m2) max=m2;
  246. else max=m1;
  247. }
  248. }
  249.  
  250.  
  251.  
  252. int main()
  253. {
  254.  
  255. return 0;
  256. }
  257. ****************************
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement