Предмет: Информатика, автор: maksianen

сформулируйте массив,содержащий 15 элементов,с помощью датчика случайных чисел. получите новый массив,каждый элемент которого равен обратному
соответствующему элементу исходного массива. посчитайте кол- во не изменившихся элементов и найдите в новом массиве максимальный о абсолютной величине отрицательный элемент. выведите на экран исходные и полученные результаты


GenusQ: датчика случайных чисел - может генератора?

Ответы

Автор ответа: GenusQ
0
// F#
[<EntryPoint>]
let main argv =
    let getRandomCollection n =
        let rand = new System.Random()
        Array.map (fun x -> rand.Next(-10, 10)) [| 1..n |]
    let input = getRandomCollection 15
    let reverse = input |> Array.rev
    let notChangedcount = Array.map2 (fun x y -> x = y) input reverse |> Array.filter (fun x -> x) |> Array.length
    let maxAbsNotPositiveElem =
        input
        |> Seq.where (fun x -> x <= 0)
        |> Seq.maxBy (fun x -> System.Math.Abs x)
    System.Console.WriteLine (input |> Array.map (fun x -> sprintf "%d" x) |> String.concat " ")
    System.Console.WriteLine (reverse |> Array.map (fun x -> sprintf "%d" x) |> String.concat " ")
    System.Console.WriteLine (notChangedcount |> sprintf "Not changed: %d")
    System.Console.WriteLine (maxAbsNotPositiveElem |> sprintf "Max min element: %d")
    System.Console.ReadKey true |> ignore
    0
    
Похожие вопросы
Предмет: Английский язык, автор: 12Камилла1
Предмет: Қазақ тiлi, автор: ais678