/**
CIRCLE.C Exercise solution 1.7.
**/
#include <stdio.h>
int main(void) {
float radius = -1.0;
float x = 0.0;
float y = 0.0;
int status = 0;
while (radius < 0.0) {
printf("\nEnter radius: ");
scanf("%f",&radius);
}
printf("\nEnter the x coordinate: ");
scanf("%f",&x);
printf("\nEnter the y coordinate: ");
scanf("%f",&y);
if (x*x + y*y <= radius*radius) {
printf("\nInside!\n");
}
if (x*x + y*y > radius*radius) {
printf("\nOutside!\n");
}
return status;
}
![]() | float radius = -1.0; float x = 0.0; float y = 0.0; int status = 0; |
Declaration of variables. radius is initialized to -1, such that the while-loop will be executed at least once. |
![]() | while (radius < 0.0) {
printf("\nEnter radius: ");
scanf("%f",&radius);
} |
Data is entered using a while loop, such that if the user enters a negative radius, the program will ask again. |
![]() | printf("\nEnter the x coordinate: ");
scanf("%f",&x);
printf("\nEnter the y coordinate: ");
scanf("%f",&y); |
The user of the program is asked to enter point coordinates |
![]() | if (x*x + y*y <= radius*radius) {
printf("\nInside!\n");
}
if (x*x + y*y > radius*radius) {
printf("\nOutside!\n");
} |
Calculate whether the point is inside (or on the boundary of) the circle. We use the equation for a circle, x2 + y2 = r2, to detrmine whether the distance between the point and the center is less than or equal to the radius. It is OK in C to evaluate such an expression where it is needed, in this case just when the if-statement is evaluated. |
![]() | return status; |
Terminate program |