Val_Kir

2lab6

Sep 26th, 2016
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.31 KB | None | 0 0
  1. /* Определите динамический массив целых чисел a.
  2.    Перепишите из массива а в массив b элементы с положительными значениями,
  3.    а в массив c элементы с отрицательными значениями. */
  4.  
  5. #include <stdio.h>
  6. #include <stdlib.h>
  7. #include <time.h>
  8.  
  9. void main(void){
  10.     const int n=10;
  11.     int *a,*b,*c, *ai,*bi,*ci,*a1,*b1,*c1; //a,b,c- адрес на массив, ai,bi,ci- адрес на первый элемент, a1,b1,c1 - для удаления
  12.    
  13.     //выделение памяти
  14.     a1=a=ai=new int[n];
  15.     b1=b=bi=new int[n];
  16.     c1=c=ci=new int[n];
  17.    
  18.     srand(time(0));
  19.     for(; ai<(a+n); ai++) //проходим от начала ai до последнего элемента (a+n). а всегда указывает на первый элемент
  20.     {
  21.         *ai=rand()%32 - 16;  
  22.         printf("%d ",*ai);
  23.     }
  24.     ai=a; //ai запоминает начало а
  25.     putchar('\n');
  26.  
  27.     for(;ai<(a+n);ai++)
  28.     {
  29.         if(*ai>0)
  30.         {
  31.             *bi=*ai;
  32.             bi++;
  33.         }
  34.         else if(*ai<0)
  35.         {
  36.             *ci=*ai;
  37.             ci++;
  38.         }
  39.     }
  40.  
  41.     //вывод
  42.     for(;b<bi;++b)
  43.     {
  44.         printf("%d ",*b);
  45.     }
  46.     putchar('\n');
  47.  
  48.     for(;c<ci;++c)
  49.     {
  50.         printf("%d ",*c);
  51.     }
  52.  
  53.     delete []a1; delete []b1; delete []c1;
  54.     putchar('\n');
  55. }
Advertisement
Add Comment
Please, Sign In to add comment