import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main{
    public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    }
} import java.io.BufferedReader; BufferedReader java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.Arrays; Arrays java.util public class Main{
    public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    }
} Main public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    } main {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    } try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	} Exception e {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	} System.out.println(Arrays.toString(e.getStackTrace())) System.out.println System.out System System.out Arrays.toString(e.getStackTrace()) Arrays.toString Arrays e.getStackTrace() e.getStackTrace e System.exit(0) System.exit System 0 {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in)); stdReader new BufferedReader(new InputStreamReader(System.in)) String line; line while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    } (line = stdReader.readLine()) != null (line = stdReader.readLine()) line stdReader.readLine() stdReader.readLine stdReader null {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    } String[] splits = line.split(" "); splits line.split(" ") line.split line " " Long a = Long.parseLong(splits[0]); a Long.parseLong(splits[0]) Long.parseLong Long splits[0] splits 0 Long b = Long.parseLong(splits[1]); b Long.parseLong(splits[1]) Long.parseLong Long splits[1] splits 1 Long d = a / b; d a / b a b Long r = a % b; r a % b a b Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]); f Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]) Double.parseDouble(splits[0]) Double.parseDouble Double splits[0] splits 0 Double.parseDouble(splits[1]) Double.parseDouble Double splits[1] splits 1 System.out.println( String.format("%d %d %.5f", d, r, f)) System.out.println System.out System System.out String.format("%d %d %.5f", d, r, f) String.format String "%d %d %.5f" d r f stdReader.close() stdReader.close stdReader String[] args args public class Main{
    public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    }
} public class Main{
    public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    }
} Main
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main{
    public static void main(String[] args) {
	try {
	    BufferedReader stdReader = new BufferedReader(new InputStreamReader(System.in));
	    String line;
	    while ((line = stdReader.readLine()) != null) {
		String[] splits = line.split(" ");

		Long a = Long.parseLong(splits[0]);
		Long b = Long.parseLong(splits[1]);

		Long d = a / b;
		Long r = a % b;

		Double f = Double.parseDouble(splits[0]) / Double.parseDouble(splits[1]);
		System.out.println( String.format("%d %d %.5f", d, r, f));
	    }
	    stdReader.close();
	} catch (Exception e) {
	    System.out.println(Arrays.toString(e.getStackTrace()));
	    System.exit(0);
	}
    }
}