Определить количество точек, лежащих во второй четверти координатной плоскости - C (СИ)
Формулировка задачи:
Заданы N точек на плоскости XoY своими координатами (массивы Х и Y). Определить количество точек лежащих во второй четверти координатной плоскости и найти среди них самую удаленную точку от начала координат.
Решение задачи: «Определить количество точек, лежащих во второй четверти координатной плоскости»
textual
Листинг программы
#include <stdio.h>
int main()
{
int N, X[100], Y[100], col=0, i, i_min=-1;
printf("N= ");
scanf("%d", &N);
for(i=0; i<N; i++)
{
printf("X[%d]= ", i+1);
scanf("%d", &X[i]);
printf("Y[%d]= ", i+1);
scanf("%d", &Y[i]);
}
for(i=0; i<N; i++)
if(X[i]<0 && Y[i]>0)
{
col++;
if(i_min<0)
i_min=i;
else
if(X[i]*X[i]+Y[i]*Y[i]>X[i_min]*X[i_min]+Y[i_min]*Y[i_min])
i_min=i;
}
printf("Kol toch v 2 chetv: %d\n", col);
if(i_min>=0)
printf("Max udal toch v 2 chetv: %d\n", i_min);
return 0;
}
Объяснение кода листинга программы
- Подключение стандартной библиотеки для работы с файлами и вводом/выводом данных
- Объявление переменных:
- N (количество точек)
- X[100] (массив для хранения абсцисс точек)
- Y[100] (массив для хранения ординат точек)
- col (количество точек во второй четверти)
- i (счетчик цикла)
- i_min (номер минимальной точки во второй четверти)
- Ввод количества точек с помощью функции scanf
- Сбор данных о точках с помощью двух вложенных циклов
- Поиск точек, находящихся во второй четверти координатной плоскости
- Увеличение счетчика точек во второй четверти
- Если найденная точка имеет координаты, большие, чем у текущей минимальной точки, то обновляем значение i_min
- Вывод количества точек во второй четверти
- Вывод номера минимальной точки во второй четверти