Как сделать так, что бы можно было ввести переменную N с клавиатуры, а не менять её в компиляторе?
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
#include <iostream>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
srand((int)time(0));
const int N=20; //Кол-во прямоугольников
double xTop[N], yTop[N], xBottom[N], yBottom[N]; //Координаты прямоугольников
int i;
double sMin;
int NoSmin;
printf("Координаты прямоугольников:\n");
for(i = 0; i<N; i++)
{
xTop[i]=0.1*(rand()%100); //Определение координат прямоугольников
yTop[i]=0.2*(rand()%100); //Определение координат прямоугольников
xBottom[i]=0.5*(rand()%100); //Определение координат прямоугольников
yBottom[i]=0.7*(rand()%100); //Определение координат прямоугольников
printf("Прямоугольник %d: (%lf, %lf)-(%lf, %lf)\n", i+1, xTop[i], yTop[i], xBottom[i], yBottom[i]); //Выведение в консоли номера прямоугольника с его координатами
double dX=fabs(xBottom[i]-xTop[i]);
double dY=fabs(yBottom[i]-yTop[i]);
if (i==0)
sMin=dX*dY; //Нахождение площадей
else
if (sMin>dX*dY) //Нахождение площадей
{
sMin=dX*dY; //Нахождение площадей
NoSmin=i+1; //Нахождение площадей
}
}
printf("\tПрямоугольник с макс. площадью: %d\n",NoSmin); //Вывод в консоль прямоугольника с наибольшей площадью
return 0;
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Так устроит?
int N; //Кол-во прямоугольников
cin >> N;
double *xTop = new double[N], *yTop = new double[N], *xBottom = new double[N], *yBottom = new double[N];