Написать код для программы с процедурой! составьте процедуру, которая определяет точки, расстояние между которыми максимально и минимально. координаты точек заданы в массивах x(n), y(n), n< =20. использовать составленную процедуру для массивов x1, y1, вывести номера найденных точек, а также расстояние между ними. язык с.
206
294
Ответы на вопрос:
#include < stdio.h> #include < math.h> void minmax(int x1[],int y1[]) { int i, j, imax, jmax, imin, jmin; int len=sizeof(x1); float max = 0; float min = 1000; float r; for ( i = 0; i < len-1; i ++ ) for ( j = i+1; j < len; j ++ ) { r = sqrt((x1[i]-x1[j])*(x1[i]-x1[j])+(y1[i]-y1[j])*(y1[i]-y1[j])); if (r> max) { max = r; imax = i; jmax = j; } if (r< min) { min = r; imin = i; jmin = j; } } printf("max = %f точки: %d - %d\n", max, imax+1, jmax+1); printf("min = %f точки: %d - %d\n", min, imin+1, jmin+1); } int main() { int n=5; int x[n], y[n], i; srand (time(null)); for ( i = 0; i < n; i ++ ) { x[i] = rand() % 20 -10; y[i] = rand() % 20 -10; printf ("%4d, %4d ", x[i], y[i]); printf("\n"); } minmax(x,y); return 0; } пример: -10, 4-5, 2-9, -1 7, 2 7, -3max = 17.117243 точки: 1 - 4 min = 5.000000 точки: 2 - 3
Популярно: Информатика
-
ксения2324252618.11.2021 03:40
-
nas8106.07.2021 09:30
-
2ihnik2123119.10.2022 01:57
-
Fosa106.05.2022 23:11
-
fa7b3ar10.12.2022 17:41
-
77777201877777712.08.2022 13:03
-
nadyamoroz0305.12.2020 08:04
-
FireGame22805.09.2021 14:57
-
andreevaa99514.07.2021 09:13
-
VasilisaBelkina08.11.2021 12:45