// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/IShape.java
// public interface IShape 
// {
// 
// 	public double calcArea();
// 	
// 	public double calcPerimeter();
// 	public String getName();
// 	
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Circle.java
// public class Circle implements IShape {
// 
// 	int m_radius;
// 	
// 	public Circle(int radius)
// 	{
// 		m_radius = radius;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		//Area of circle = PI * Square of radius of the circle
// 		return Math.PI*m_radius*m_radius;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		//Perimeter of circle = 2 * PI * radius of the circle
// 		return 2*Math.PI*m_radius;
// 	}
// 
// 	@Override
// 	public String getName() {
// 		return "Circle";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Rectangle.java
// public class Rectangle implements IShape {
// 
// 	private int m_breadth;
// 	private int m_length;
// 
// 	public Rectangle(int length, int breadth)
// 	{
// 		m_length = length;
// 		m_breadth = breadth;
// 		
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		return m_length*m_breadth;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		return 2*(m_length*m_breadth);
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Rectangle";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Square.java
// public class Square implements IShape {
// 
// 	private int m_side;
// 
// 	public Square(int side)
// 	{
// 		m_side =side;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		return m_side*m_side;
// 	}
// 
// 	
// 	@Override
// 	public double calcPerimeter() {
// 		return 4*m_side;
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Square";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Triangle.java
// public class Triangle implements IShape {
// 
// 	int m_s1;
// 	int m_s2;
// 	int m_s3;
// 	
// 	public Triangle(int s1, int s2, int s3)
// 	{
// 		m_s1 = s1;
// 		m_s2 = s2;
// 		m_s3 = s3;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		//Heron's formula
// 		float semi_perimeter = (m_s1+m_s2+m_s3)/2;
// 		float s = semi_perimeter * (semi_perimeter -m_s1) * (semi_perimeter -m_s2) * (semi_perimeter -m_s3);
// 		double area = Math.sqrt(s);
// 		return area;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		return m_s1+m_s2+m_s3;
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Triangle";
// 	}
// 
// }


import java.util.Scanner;
import org.fsmk.mca.example7.shape.IShape;
import org.fsmk.mca.example7.shape.Circle;
import org.fsmk.mca.example7.shape.Rectangle;
import org.fsmk.mca.example7.shape.Square;
import org.fsmk.mca.example7.shape.Triangle;

package org.fsmk.mca.example7.client;



public class Client 
{
	
	private static Scanner scanner;
	
	public static void main(String[] args)
	{
		
		while(true)
		{
			// Initialize Scanner to get inputs from the console/STDIN
			scanner = new Scanner(System.in);
	
			System.out.println("Welcome to the program to demonstrate usage of classes from another package.");
	        System.out.println("1. Square");
	        System.out.println("2. Rectangle");
	        System.out.println("3. Circle");
	        System.out.println("4. Triangle");
	        System.out.println("5. Exit the program!!!");
	        System.out.println("Please select one of the option given below to choose the shape for which you want to find the area or perimeter.");
	        System.out.println("Your option: ");
	        
	        int shape_choice = scanner.nextInt();
	        switch(shape_choice)
	        {
	        	case 1:
	        	{
	        		System.out.println("Enter the side of the square:");
	        		int side = scanner.nextInt();
	        		Square square = new Square(side);
	        		calcValue(square);
	        		break;
	        	}
	        	case 2:
	        	{

// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/IShape.java
// public interface IShape 
// {
// 
// 	public double calcArea();
// 	
// 	public double calcPerimeter();
// 	public String getName();
// 	
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Circle.java
// public class Circle implements IShape {
// 
// 	int m_radius;
// 	
// 	public Circle(int radius)
// 	{
// 		m_radius = radius;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		//Area of circle = PI * Square of radius of the circle
// 		return Math.PI*m_radius*m_radius;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		//Perimeter of circle = 2 * PI * radius of the circle
// 		return 2*Math.PI*m_radius;
// 	}
// 
// 	@Override
// 	public String getName() {
// 		return "Circle";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Rectangle.java
// public class Rectangle implements IShape {
// 
// 	private int m_breadth;
// 	private int m_length;
// 
// 	public Rectangle(int length, int breadth)
// 	{
// 		m_length = length;
// 		m_breadth = breadth;
// 		
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		return m_length*m_breadth;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		return 2*(m_length*m_breadth);
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Rectangle";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Square.java
// public class Square implements IShape {
// 
// 	private int m_side;
// 
// 	public Square(int side)
// 	{
// 		m_side =side;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		return m_side*m_side;
// 	}
// 
// 	
// 	@Override
// 	public double calcPerimeter() {
// 		return 4*m_side;
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Square";
// 	}
// 
// }
// 
// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/shape/Triangle.java
// public class Triangle implements IShape {
// 
// 	int m_s1;
// 	int m_s2;
// 	int m_s3;
// 	
// 	public Triangle(int s1, int s2, int s3)
// 	{
// 		m_s1 = s1;
// 		m_s2 = s2;
// 		m_s3 = s3;
// 	}
// 	
// 	@Override
// 	public double calcArea() {
// 		//Heron's formula
// 		float semi_perimeter = (m_s1+m_s2+m_s3)/2;
// 		float s = semi_perimeter * (semi_perimeter -m_s1) * (semi_perimeter -m_s2) * (semi_perimeter -m_s3);
// 		double area = Math.sqrt(s);
// 		return area;
// 	}
// 
// 	@Override
// 	public double calcPerimeter() {
// 		return m_s1+m_s2+m_s3;
// 	}
// 	
// 	@Override
// 	public String getName() {
// 		return "Triangle";
// 	}
// 
// }


// Path: Sem3/Java_Prog_Lab/7/org/fsmk/mca/example7/client/Client.java
import java.util.Scanner;
import org.fsmk.mca.example7.shape.IShape;
import org.fsmk.mca.example7.shape.Circle;
import org.fsmk.mca.example7.shape.Rectangle;
import org.fsmk.mca.example7.shape.Square;
import org.fsmk.mca.example7.shape.Triangle;

package org.fsmk.mca.example7.client;



public class Client 
{
	
	private static Scanner scanner;
	
	public static void main(String[] args)
	{
		
		while(true)
		{
			// Initialize Scanner to get inputs from the console/STDIN
			scanner = new Scanner(System.in);
	
			System.out.println("Welcome to the program to demonstrate usage of classes from another package.");
	        System.out.println("1. Square");
	        System.out.println("2. Rectangle");
	        System.out.println("3. Circle");
	        System.out.println("4. Triangle");
	        System.out.println("5. Exit the program!!!");
	        System.out.println("Please select one of the option given below to choose the shape for which you want to find the area or perimeter.");
	        System.out.println("Your option: ");
	        
	        int shape_choice = scanner.nextInt();
	        switch(shape_choice)
	        {
	        	case 1:
	        	{
	        		System.out.println("Enter the side of the square:");
	        		int side = scanner.nextInt();
	        		Square square = new Square(side);
	        		calcValue(square);
	        		break;
	        	}
	        	case 2:
	        	{

	        		System.out.println("Enter the length of the rectangle:");
