(lab 5) feat: add Number Traversal algorithms

main
Artem-Darius Weber 3 weeks ago
parent d3af94170c
commit 071cec924c

@ -0,0 +1,12 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<Compile Include="Program.fs" />
</ItemGroup>
</Project>

@ -0,0 +1,33 @@
// For more information see https://aka.ms/fsharp-console-apps
printfn "Hello from F#"
let rec traverseNumber' n f acc =
match n with
| 0 -> acc
| n -> traverseNumber' (n / 10) f (f acc (n % 10))
let traverseNumber n f init = traverseNumber' n f init
let sum x y = x + y
let mul x y = x * y
let min x y = if x < y then x else y
let max x y = if x > y then x else y
[<EntryPoint>]
let main argv =
System.Console.WriteLine("Введите число:")
let number = System.Console.ReadLine() |> int
let sumResult = traverseNumber number sum 0
System.Console.WriteLine($"Сумма цифр: {sumResult}")
let mulResult = traverseNumber number mul 1
System.Console.WriteLine($"Произведение цифр: {mulResult}")
let minResult = traverseNumber number min System.Int32.MaxValue
System.Console.WriteLine($"Минимальная цифра: {minResult}")
let maxResult = traverseNumber number max 0
System.Console.WriteLine($"Максимальная цифра: {maxResult}")
0
Loading…
Cancel
Save