{-# LANGUAGE BangPatterns #-}

module Main where

import Data.Char
import Data.List
import Control.Monad
import Control.Applicative
import Text.Printf


readInt :: IO Int
readInt = read <$> (input `seq` input)
    where input = do
            !c <- getChar
            if isDigit c || c == '-'
                then (c :) <$> input
                else return []

getInts :: Int -> IO [Int]
getInts n = replicateM n readInt

main = putStrLn . f =<< getInts 2
  where f [a, b] = printf "%d %d %.10f" (a `div` b) (a `mod` b) ((fromIntegral a :: Double) / fromIntegral b)
