1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
| #include <stdio.h>
#include <stdlib.h>
main()
{
info();
int i,j, M, num; float r, rx,ry;
float **Points:
const int N=2;
FILE *fin;
printf("Введите 1 для вывода из файла\n");
scanf("%d", &num);
if(num==1)
{
printf ("Введите число точек\n");
scanf("%d", &M);
//чтение координат точек из файла
fin=fopen("xy.txt", "r");
if (!fin)
{
printf("Can not open file\n");
return 1;
}
float **Points=new float *[M];
for(i=0;i<M;i++)
Points[i]=new float [N];
for(i=0;i<M;i++)
for(int j=0;j<N;j++)
fscanf(fin,"%f",&Points[i][j]);
//вывод информации на экран
printf ("Координаты точек\n");
printf (" X"); printf (" Y\n");
for(i=0;i<M;i++)
{
for(int j=0;j<N;j++)
{
printf("%5f",Points[i][j]);
}
printf("%c",'\n');
}
fclose(fin);
}
else
{//ещё что-то делаем
}
printf ("Введите радиус:\n");
scanf ("%f", &r);
printf ("Введите координаты центра круга:\n");
scanf ("%f%f", &rx, &ry);
int k=0;
for(int i=0;i<M;i++)
for(int j=0;j<N;j++)
if ((Points[i][0]-rx)*(Points[i][0]-rx)+(Points[i][1]-ry)*(Points[i][1]-ry) > r*r)// не вычисляется условие
k++;
printf ("Число точек вне круга="); printf("%d", k);
return 0;
} |