From e87dcb3a9e03c4704705478df057b2423ab10fdb Mon Sep 17 00:00:00 2001 From: Augusto Date: Thu, 21 Nov 2019 13:20:58 +0000 Subject: [PATCH] Fix subject for reversebits from a program to a function --- subjects/reversebits.en.md | 48 +++++++++++++++++++++++++++++++------- 1 file changed, 39 insertions(+), 9 deletions(-) diff --git a/subjects/reversebits.en.md b/subjects/reversebits.en.md index 433e3258..6839fe35 100644 --- a/subjects/reversebits.en.md +++ b/subjects/reversebits.en.md @@ -1,21 +1,51 @@ ## reversebits +## **WARNING! VERY IMPORTANT!** + +For this exercise a function will be tested **with the exam own main**. However the student **still needs** to submit a structured program: + +This means that: + +- The package needs to be named `package main`. +- The submitted code needs one declared function main(```func main()```) even if empty. +- The function main declared needs to **also pass** the `Restrictions Checker`(illegal functions tester). It is advised for the student to just empty the function main after its own testings are done. +- Every other rules are obviously the same than for a `program`. + ### Instructions -Write a program that takes a `byte` in binary format, that reverses it `bit` by `bit` (as shown in the -example) and that prints the result. +Write a function that takes a `byte` in binary format, that reverses it `bit` by `bit` (as shown in the example) and returns the result + +### Expected function + +```go +func ReverseBits(by byte) byte { + +} +``` +### Usage + +Here is a possible [program](TODO-LINK) to test your function : + +```go +package main + +import ( + "fmt" +) + +func main() { + a := byte(0x26) + fmt.Printf("%08b\n", a) + fmt.Printf("%08b\n", ReverseBits(a)) +} +``` ### Expected output ```console student@ubuntu:~/piscine-go/reversebits$ go build student@ubuntu:~/piscine-go/reversebits$ ./reversebits -Not enough arguments. -student@ubuntu:~/piscine-go/reversebits$ ./reversebits 00100110 | cat -e -01100100$ -student@ubuntu:~/piscine-go/reversebits$ ./reversebits "djs" -The argument "djs" does not represent a byte -student@ubuntu:~/piscine-go/reversebits$ ./reversebits "0102039s" | cat -e -The argument "0102039s" does not represent a byte$ +00100110 +01100100 student@ubuntu:~/piscine-go/reversebits$ ```