Предмет: Информатика,
автор: gromnetgrom
Спиннер – модная игрушка c подшипником в основании, к которому прикреплены лопасти. Афанасий открыл бизнес по производству спиннеров. Он выяснил, что за спиннер,у которого N лопастей, покупатели готовы платить A + B × N рублей, но при этом покупатель не станет покупать спиннер, если его цена будет выше C рублей. Определите максимальное число лопастей спиннера, который согласится приобрести покупатель.Программа получает на вход три числа A, B, C (стоимость основания спиннера,стоимость одной лопасти и максимальная стоимость всего спиннера). Все числа – целые положительные, не превосходящие 20000000000 , при этом A ≤ C.Программа должна вывести одно число – максимальное число лопастей спиннера.
Ответы
Автор ответа:
1
{Целевой язык не указан, приведу пример на Haskell}
Цена вычисляется как
C - максимальная цена, которую мы можем себе позволить.
Поэтому , где div - оператор целочисленного деления.
Код
- module Spinner (spinner, maybeTo) where
- import Control.Monad.Fail as MFail (MonadFail, fail)
- import System.IO (hFlush, stdout)
- import Text.Read (readMaybe)
- import Data.Maybe (maybe)
- maybeTo :: (MonadFail m) => Maybe b -> String -> m b
- maybeTo Nothing msg = MFail.fail msg
- maybeTo (Just a) _ = return a
- spinner :: IO ()
- spinner = do
- putStr "Enter an A: "
- hFlush stdout
- maybeA <- fmap readMaybe getLine :: IO (Maybe Int)
- a <- maybeTo maybeA "It's not an Int"
- putStr "Enter an B: "
- hFlush stdout
- maybeB <- fmap readMaybe getLine :: IO (Maybe Int)
- b <- maybeTo maybeB "It's not an Int"
- putStr "Enter an C: "
- hFlush stdout
- maybeC <- fmap readMaybe getLine :: IO (Maybe Int)
- c <- maybeTo maybeC "It's not an Int"
- maybe (putStrLn "You can't use 0 with B var!")
- (putStrLn . ("The maximum spinner's levers number is " ++) . show)
- (makeNumber a b c)
- putStrLn ""
- makeNumber :: Int -> Int -> Int -> Maybe Int
- makeNumber _ 0 _ = Nothing
- makeNumber a b c = Just $ div (c - a) b
Приложения:
Похожие вопросы
Предмет: Русский язык,
автор: malinin3116
Предмет: Другие предметы,
автор: elenakorol84
Предмет: Русский язык,
автор: Ruzja
Предмет: Алгебра,
автор: 77Кристина500
Предмет: Математика,
автор: киса722