Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
15
Добавлен:
17.04.2013
Размер:
1.52 Кб
Скачать
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define N 5
#define M 7
void plus(int dim[N][M],int array[N]);
int minus1(int dim[N][M]);
int* minus2(int dim[N][M],int k);
main()
{ 	clrscr();randomize();
	int n, mas[N][M], mas1[N];
	int *p;
	for(int i=0;i<N;i++)
	   { for(int j=0;j<M;j++) printf(" %d ",mas[i][j]=random(6)-4);
		 printf("\n");
	   }
	if(mas[0][0]>=0)
		{ 	plus(mas,mas1);
			printf("‘г¬¬л Ї®«®¦ЁвҐ«м­ле н«Ґ¬Ґ­в®ў Ї® бва®Є ¬: \n");
			for(i=0;i<N;i++) printf(" %2d ",mas1[i]);
			printf("\n");
		}
			else
				{	n=minus1(mas);
					p=minus2(mas,n);
					printf("ЌҐзсв­лҐ н«Ґ¬Ґ­вл:\n");
					for(i=0;i<n;i++) printf(" %d ",*(p+i));
					printf("\n");
				}
				free(p);
	getch();
}
//-------------------------------------------
void plus(int dim[N][M],int array[N])
{
	// ‘г¬¬л Ї®«®¦ЁвҐ«м­ле н«Ґ¬Ґ­в®ў Ї® бва®Є ¬:
	for(int i=0;i<N;i++)
	   {  array[i]=0;
		  for(int j=0;j<M;j++)
			   if(dim[i][j]>=0) array[i]+=dim[i][j];
	   }
}
//+++++Kol-vo nechet. elementov+++++++++++++++++++++
int minus1(int dim[N][M])
{
	// ЌҐзсв­лҐ н«Ґ¬Ґ­вл:
	int z=0;
	for(int i=0;i<N;i++)
	   for(int j=0;j<M;j++)
		 if(dim[i][j]%2!=0) z++;
	return z;
}
//******Formirovanie massiva iz kuchi********************
int* minus2(int dim[N][M],int k)
{
	int a=0;
	int *ptr;
	ptr=(int *)malloc(k*2);
	if(ptr==NULL) { printf("ЌҐв Ї ¬пвЁ.\n"); exit(1); }
	for(int i=0;i<N;i++)
	   for(int j=0;j<M;j++)
		 if(dim[i][j]%2!=0) *(ptr+a++)=dim[i][j];
	return ptr;
}
Соседние файлы в папке Задачи для экзамена по С++