Advertisement
Guest User

c++

a guest
May 21st, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.75 KB | None | 0 0
  1.  
  2. #include <iostream>
  3. using namespace std;
  4.  
  5. int** test(int* tab, int n) {
  6.  
  7. int rozmiar = 2;
  8. int rozmiar2 = 2;
  9. int* dzielniki = new int[rozmiar];
  10. int* parzyste = new int[rozmiar2];
  11.  
  12. int a = 1;
  13. int b = 1;
  14. int ile1=0;
  15. int ile2=0;
  16.  
  17. for(int i = 0; i < n; i++) {
  18.  
  19. if(a == rozmiar) {
  20. rozmiar*=2;
  21. delete [] dzielniki;
  22. dzielniki = new int[rozmiar];
  23. i=0;
  24. ile1=0;
  25. a=1;
  26. b=1;
  27. }
  28. else{
  29. if((n%tab[i]) == 0) {
  30. dzielniki[a++] = tab[i];
  31. ile1++;
  32. }
  33. }
  34.  
  35.  
  36.  
  37. if(b == rozmiar2) {
  38. rozmiar2*=2;
  39. delete [] parzyste;
  40. parzyste = new int[rozmiar2];
  41. i=0;
  42. ile2=0;
  43. b=1;
  44. a=1;
  45. }
  46. else{
  47. if(tab[i] % 2 == 0) {
  48. parzyste[b++] = tab[i];
  49. ile2++;
  50. }
  51. }
  52. }
  53.  
  54. dzielniki[0] = ile1;
  55. parzyste = &ile2;
  56.  
  57.  
  58. int** wsk = new int * [2];
  59. wsk[0] = dzielniki;
  60. wsk[1] = parzyste;
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67. return wsk;
  68. }
  69.  
  70. int main() {
  71.  
  72. int tab[] = {1, 8, 4, 3, 9, 12, 18, 14, 2};
  73. int** g = test(tab, 9);
  74.  
  75. int rozmiar;
  76.  
  77. cout << "Dzielniki: ";
  78. rozmiar = *g[0];
  79.  
  80. for(int i=0; i<rozmiar; i++){
  81. cout<<*(++g[0])<<" ";
  82. }
  83.  
  84. cout<<endl;
  85.  
  86. cout << "Parzyste: ";
  87.  
  88. rozmiar = *g[1];
  89.  
  90. for(int i=0; i<rozmiar; i++){
  91. cout<<*(++g[1])<<" ";
  92. }
  93.  
  94.  
  95.  
  96. return 0;
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement