Program to Determine Quadrants of a Given Coordinate in C
Quadrants of a Coordinate
A coordinate plane is divided into four quadrants:
- Quadrant 1: (+x, +y)
- Quadrant 2: (-x, +y)
- Quadrant 3: (-x, -y)
- Quadrant 4: (+x, -y)
We will explore three methods to determine the quadrant of a given coordinate using C programming.
Method 1: Using If-Else Statements
We use simple if-else conditions to check the signs of x and y.
#include <stdio.h> void findQuadrant(int x, int y) { if (x > 0 && y > 0) printf("Quadrant 1\n"); else if (x < 0 && y > 0) printf("Quadrant 2\n"); else if (x < 0 && y < 0) printf("Quadrant 3\n"); else if (x > 0 && y < 0) printf("Quadrant 4\n"); else printf("Point lies on the axis\n"); } int main() { int x, y; printf("Enter coordinates (x, y): "); scanf("%d %d", &x, &y); findQuadrant(x, y); return 0; }
Example Output:
Enter coordinates (x, y): 5 7 Quadrant 1
Method 2: Using Switch Case
We map the signs of x and y to a switch case structure.
#include <stdio.h> void findQuadrant(int x, int y) { switch ((x > 0) * 2 + (y > 0)) { case 3: printf("Quadrant 1\n"); break; case 1: printf("Quadrant 2\n"); break; case 0: printf("Quadrant 3\n"); break; case 2: printf("Quadrant 4\n"); break; default: printf("Point lies on the axis\n"); } } int main() { int x, y; printf("Enter coordinates (x, y): "); scanf("%d %d", &x, &y); findQuadrant(x, y); return 0; }
Example Output:
Enter coordinates (x, y): -3 4 Quadrant 2
Method 3: Using Recursion
We use a recursive function to determine the quadrant.
#include <stdio.h> void findQuadrantRecursive(int x, int y) { if (x == 0 || y == 0) { printf("Point lies on the axis\n"); return; } if (x > 0 && y > 0) { printf("Quadrant 1\n"); } else if (x < 0 && y > 0) { printf("Quadrant 2\n"); } else if (x < 0 && y < 0) { printf("Quadrant 3\n"); } else { printf("Quadrant 4\n"); } } int main() { int x, y; printf("Enter coordinates (x, y): "); scanf("%d %d", &x, &y); findQuadrantRecursive(x, y); return 0; }
Example Output:
Enter coordinates (x, y): -6 -8 Quadrant 3