The mechanics described in this exercise can be used to implement a game lights out. For basic description of the game see https://en.wikipedia.org/wiki/ Lights Out_(game). 1. Create a function flip val flip : bool array array -> int -> int -> bool array array - that given a bool matrix and two integers i, j. it negates the values (true¬false, false-→true) at location i, j in the matrix, as well negating the values on the (up to) 4 horizontally/vertically adjacent elements. 2. Create a function print.matrix val print_matrix : bool array array -> unit - that given a bool matrix, it prints it on screen (true →"T", false→"F"). 'You may use a free service accessible on https://try.ocamlpro.com/.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 24PE
icon
Related questions
Question

In OCaml Programming Language:

The mechanics described in this exercise can be used to implement a game lights
out. For basic description of the game see https://en.wikipedia.org/wiki/
Lights Out_(game).
1. Create a function flip
val flip : bool array array -> int -> int -> bool array array
= <fun>
that given a bool matrix and two integers i, j. it negates the values
(true-false, false→true) at location i,j in the matrix, as well negating
the values on the (up to) 4 horizontally/vertically adjacent elements.
2. Create a function print_matrix
val print_matrix : bool array array -> unit = <fun>
that given a bool matrix, it prints it on screen (true →"T", false"F").
1You may use a free service accessible on https://try.ocamlpro.com/.
Transcribed Image Text:The mechanics described in this exercise can be used to implement a game lights out. For basic description of the game see https://en.wikipedia.org/wiki/ Lights Out_(game). 1. Create a function flip val flip : bool array array -> int -> int -> bool array array = <fun> that given a bool matrix and two integers i, j. it negates the values (true-false, false→true) at location i,j in the matrix, as well negating the values on the (up to) 4 horizontally/vertically adjacent elements. 2. Create a function print_matrix val print_matrix : bool array array -> unit = <fun> that given a bool matrix, it prints it on screen (true →"T", false"F"). 1You may use a free service accessible on https://try.ocamlpro.com/.
on
Off
Select
Sample input:
# let matrix= [ICIfalse; true; true; falsel]; [Itrue; false; false; truel];
[lfalse; false; true; truel]|];;
# print_matrix matrix;;
FTTF
TFFT
FFTT
# flip matrix 1 4;;
# print_matrix matrix;;
FTFT
TFFF
FFTT
Transcribed Image Text:on Off Select Sample input: # let matrix= [ICIfalse; true; true; falsel]; [Itrue; false; false; truel]; [lfalse; false; true; truel]|];; # print_matrix matrix;; FTTF TFFT FFTT # flip matrix 1 4;; # print_matrix matrix;; FTFT TFFF FFTT
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Storage Devices
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr