vektar1234
25.09.2022 14:37

Составить таблицу истинности для:

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
vikshaaa
28.05.2023 08:03
// F#
[<EntryPoint>]
let main argv =
    let rec ( ** ) x n =
        match n < 1 with
        | true -> 1
        | false -> x * (x ** (n-1))
    let rec sumDigits x =
        match x with
        | x when x < 10 -> (x, 1)
        | x ->
            let res = x / 10 |> sumDigits
            ((res |> fst) + (x % 10), (res |> snd) + 1)
    let isArmstrong x =
        let digitsInfo = sumDigits x
        x = (fst digitsInfo) ** (snd digitsInfo)
    let a = System.Console.ReadLine() |> System.Int32.Parse
    let b = System.Console.ReadLine() |> System.Int32.Parse
    let result = [a..b] |> List.filter (isArmstrong)
    printf "Result: %A" result
    System.Console.ReadKey true |> ignore
    0
0,0(0 оценок)
Ответ:
dpichuzhkina
15.03.2020 07:46
Идем по программе от конца к началу.
Программа выводит значения x=1 и y=0.
y = b-x ⇒ b = y+x=0+1 = 1
Значение b = 1 найдено.
x = (a+2*b) div 5; (a+2*1) div 5 = 1; (a+2) div 5 = 1
Отметим, что div - это операция целочисленного деления, которая отбрасывает остаток. Допустим, остаток был нулевой, тогда а+2 = 5 ⇒ a=3
Но остаток мог быть и ненулевым! При делении на 5 остатком могут быть числа от 0 до 4, следовательно, в числителе могло быть значение на 1,2,3 или 4 большее, т.е. значение а могло быть не только 3, но и 4,5,6,7.
ответ: a\in[3;7], \ a\in \mathbb N, \ b=1
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота