import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

class Main {
	public static void main(String[] args) throws IOException {
		Scanner scanner = new Scanner(System.in);
		//Scanner scanner = new Scanner("2");
		double r = scanner.nextDouble();
		System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r)));
	}

	public static double method01(double r) {
		return (r * r * Math.PI);
	}

	public static double method02(double r) {
		return (r * 2 * Math.PI);
	}
} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.ArrayList; ArrayList java.util import java.util.List; List java.util import java.util.Scanner; Scanner java.util class Main {
	public static void main(String[] args) throws IOException {
		Scanner scanner = new Scanner(System.in);
		//Scanner scanner = new Scanner("2");
		double r = scanner.nextDouble();
		System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r)));
	}

	public static double method01(double r) {
		return (r * r * Math.PI);
	}

	public static double method02(double r) {
		return (r * 2 * Math.PI);
	}
} Main public static void main(String[] args) throws IOException {
		Scanner scanner = new Scanner(System.in);
		//Scanner scanner = new Scanner("2");
		double r = scanner.nextDouble();
		System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r)));
	} main {
		Scanner scanner = new Scanner(System.in);
		//Scanner scanner = new Scanner("2");
		double r = scanner.nextDouble();
		System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r)));
	} Scanner scanner = new Scanner(System.in); scanner new Scanner(System.in) double r = scanner.nextDouble(); r scanner.nextDouble() scanner.nextDouble scanner System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r))) System.out.println System.out System System.out String.format("%1.6f %1.6f", method01(r), method02(r)) String.format String "%1.6f %1.6f" method01(r) method01 r method02(r) method02 r String[] args args public static double method01(double r) {
		return (r * r * Math.PI);
	} method01 {
		return (r * r * Math.PI);
	} return (r * r * Math.PI); (r * r * Math.PI) r * r * Math.PI r r Math.PI Math Math.PI double r r public static double method02(double r) {
		return (r * 2 * Math.PI);
	} method02 {
		return (r * 2 * Math.PI);
	} return (r * 2 * Math.PI); (r * 2 * Math.PI) r * 2 * Math.PI r 2 Math.PI Math Math.PI double r r
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

class Main {
	public static void main(String[] args) throws IOException {
		Scanner scanner = new Scanner(System.in);
		//Scanner scanner = new Scanner("2");
		double r = scanner.nextDouble();
		System.out.println(String.format("%1.6f %1.6f", method01(r), method02(r)));
	}

	public static double method01(double r) {
		return (r * r * Math.PI);
	}

	public static double method02(double r) {
		return (r * 2 * Math.PI);
	}
}