Анна егорович526
?>

3. дано целое трёхзначное число а. b)входные данные а=345. определите выходные 4. назовите код программы начало(в овале) > (стрелка вниз) a+5(параллелепипед) > (стрелка вниз) b=3*5(параллелепипед) > (стрелка вниз) s=a+b(параллелепипед) > (стрелка вниз) s=2*s-b(параллелепипед) > (стрелка вниз) s(что-то вроде ромба) > (стрелка вниз) конец(овал) определите результаты выполнения алгоритма

Информатика

Ответы

Мамедов
ответ:
в= 15
a=345
s=715
snow8646

{Целевой язык не указан, приведу пример на Haskell}

Цена вычисляется как Price = A + B \times N

C - максимальная цена, которую мы можем себе позволить.

Поэтому N = \max \Leftrightarrow N = (C - A) div B, где div - оператор целочисленного деления.

Кодmodule Spinner (spinner, maybeTo) whereimport 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 bmaybeTo Nothing msg = MFail.fail msgmaybeTo (Just a) _ = return aspinner :: 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 _ = NothingmakeNumber a b c = Just $ div (c - a) b
Спиннер – модная игрушка c подшипником в основании, к которому прикреплены лопасти. Афанасий открыл
Спиннер – модная игрушка c подшипником в основании, к которому прикреплены лопасти. Афанасий открыл
Спиннер – модная игрушка c подшипником в основании, к которому прикреплены лопасти. Афанасий открыл
Ivan1568

Произведем вывод формулы расчета количества лопастей:

S = A + B \cdot N

S_{max} = C

C = A + B \cdot N

N = (C - A) / B

Так как все операнды целые числа, мы имеем целочисленное деление и целое число в результате. Это сравнимо с округлением вниз, поэтому С по стоимости мы не перепрыгнем.

Код:

#include <iostream>

long long calculate_spin_number(

       long long A,

       long long B,

       long long C

) {

   return std::max((C - A) / B, 0ll);

}

int main () {

   long long A, B, C;

   std::cin >> A >> B >> C;

   std::cout << calculate_spin_number(A, B, C) << std::endl;

   return 0;

}

Функция calculate_spin_number() рассчитывает количество лопастей по параметрам A, B, C.

(!!) Внимание! Мы не можем использовать int или unsigned int для хранения чисел такого размера как 20000000000. Нужно использовать long или long long.

===========================================================

Если ответ удовлетворил, не забудь отметить его как "Лучший".

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

3. дано целое трёхзначное число а. b)входные данные а=345. определите выходные 4. назовите код программы начало(в овале) > (стрелка вниз) a+5(параллелепипед) > (стрелка вниз) b=3*5(параллелепипед) > (стрелка вниз) s=a+b(параллелепипед) > (стрелка вниз) s=2*s-b(параллелепипед) > (стрелка вниз) s(что-то вроде ромба) > (стрелка вниз) конец(овал) определите результаты выполнения алгоритма
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

svetarakityanskaya
fastprofit
Galliardt Sergeevna1284
dariagromova54
Radikovnanikolaeva
Кристина910
aistenok-28
Казаков
kirik197308
nchorich55
anechcak
Vika-simonenko
kolgatin69
missbuhgalter2013
Гаврилаш