fork download
  1. open System
  2.  
  3. let ``vvesti massiv 4 * 4`` () =
  4. System.Console.WriteLine "Vvedite massiv 4 ha 4"
  5. List.init 4 (fun _ -> List.init 4 (fun _ -> System.Console.ReadLine () |> int))
  6.  
  7. let massiv1 = ``vvesti massiv 4 * 4`` ()
  8. let massiv2 = ``vvesti massiv 4 * 4`` ()
  9.  
  10. let zipWith op l1 l2 = List.zip l1 l2 |> List.map (fun (x, y) -> op x y)
  11.  
  12. let massiv3 = List.zip massiv1 massiv2 |> List.map (fun (x, y) -> zipWith ( * ) x y)
  13.  
  14. let diagonal' = List.mapi (fun i e -> List.nth e i) massiv3
  15.  
  16. let ``Hane4atat' massiv`` massiv =
  17. List.iter (fun e -> List.iter (fun x -> printf "%d " x) e; System.Console.WriteLine ()) massiv
  18. System.Console.WriteLine ()
  19.  
  20. let ``Hane4aTat' odnoMerhii massiv`` massiv =
  21. List.iter (printf "%d ") massiv
  22. System.Console.WriteLine ()
  23.  
  24. ``Hane4atat' massiv`` massiv3
  25. ``Hane4aTat' odnoMerhii massiv`` diagonal'
Success #stdin #stdout 0.09s 24512KB
stdin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
13
14
15
16
9
10
11
12
5
6
7
8
1
2
3
4
stdout
Vvedite massiv 4 ha 4
Vvedite massiv 4 ha 4
13 28 45 64 
45 60 77 96 
45 60 77 96 
13 28 45 64 

13 60 77 64