
Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Прочее / Задачи для экзамена по С++ / Еще задачи (2004) / Делетели 1
.cpp#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
const int Row=3;
const int Col=3;
int massiv[Row][Col];
int max1,k,i;
int FindMax(int *arr, int r, int c);
int NumOfDiv(int *arr, int r, int c, int max);
void func3(int *arr, int r, int c, int max, int *mas);
void main()
{
clrscr();
randomize();
for(i=0;i<Row;i++)
{
for(j=0;j<Col;j++) printf(" %2d ",massiv[i][j]=random(9)+1);
printf("\n");
}
max1=FindMax(&massiv[0][0],Row,Col);
printf("\nMax is: %d\n",max1);
k=NumOfDiv(&massiv[0][0],Row,Col,max1);
int koord[Row*Col][2];
func3(&massiv[0][0],Row,Col,max1,&koord[0][0]);
for(i=0;i<k;i++) printf(" %d %d \n",koord[i][0]+1,koord[i][1]+1);
getch();
}
int FindMax(int *arr, int r, int c)
{
int max=0;
for(int i=0;i<=r*c-1;i++)
if(max<*(arr+i))
max=*(arr+i);
return max;
}
int NumOfDiv(int *arr, int r, int c, int max)
{
int k=0;
for(int i=0;i<r*c-1;i++)
if(max%(*(arr+i))==0) k++;
return k;
}
void func3(int *arr, int r, int c, int max, int* mas)
{
int n=0;
for(int i=0;i<r*c;i++)
if(max%(*(arr+i))==0)
{
*(mas+n)=i/c;
*(mas+n+1)=i%c;
n+=2;
}
}
Соседние файлы в папке Еще задачи (2004)