diff --git a/subjects/go-reloaded/README.md b/subjects/go-reloaded/README.md index 91644ca7..589f1570 100644 --- a/subjects/go-reloaded/README.md +++ b/subjects/go-reloaded/README.md @@ -4,7 +4,7 @@ Welcome back. Congratulations on your admission. We knew you would make it. Now ### Objectives -In this project you will use some of your old functions made in your old repository. You will use them with the ojective of making a simple text completion/editing/auto-correction tool. +In this project you will use some of your old functions made in your old repository. You will use them with the objective of making a simple text completion/editing/auto-correction tool. One more detail. This time the project will be corrected by auditors. The auditors will be others students and you will be an auditor as well. @@ -18,19 +18,19 @@ We advise you to create your own tests for yourself and for when you will correc The tool you are about to build will receive as arguments the name of a file containing a text that needs some modifications (the input) and the name of the file the modified text should be placed in (the output). Next is a list of possible modifications that your program should execute: -- Every instance of `(hex)` should replace the word before with the decimal version of the word (in this case the word will always be an hexadecimal number). (Ex: "1E (hex) files were added" -> "30 files were added") +- Every instance of `(hex)` should replace the word before with the decimal version of the word (in this case the word will always be a hexadecimal number). (Ex: "1E (hex) files were added" -> "30 files were added") - Every instance of `(bin)` should replace the word before with the decimal version of the word (in this case the word will always be a binary number). (Ex: "It has been 10 (bin) years" -> "It has been 2 years") - Every instance of `(up)` converts the word placed before in the Uppercase version of it. (Ex: "Ready, set, go (up) !" -> "Ready, set, GO !") - Every instance of `(low)` converts the word placed before in the Lowercase version of it. (Ex: "I should stop SHOUTING (low)" -> "I should stop shouting") - Every instance of `(cap)` transforms the previous word in the capitalized version of it. (Ex: "Welcome to the Brooklyn bridge (cap)" -> "Welcome to the Brooklyn Bridge") - - For `(low)`, `(up)`, `(cap)` if a number appears next to it, like so: `(low, )` it turns the previous specified number of words in lowercase, uppercase or capitalized accordingly. (Ex: "This is so exciting (up, 2)" -> "This is SO EXCITING") + - For `(low)`, `(up)`, `(cap)` if a number appears next to it, like so: `(low, )` it turns the previously specified number of words in lowercase, uppercase or capitalized accordingly. (Ex: "This is so exciting (up, 2)" -> "This is SO EXCITING") -- Every instance of the ponctuations `'.'`, `','`, `'!'`, `'?'`, `':'` and `';'` should be close to the previous word and with a space appart from the next one. (Ex: "I was sitting over there ,and then BAMM !!" -> "I was sitting over there, and then BAMM!!"). - - Except if there are groups of ponctuation like: '...' or '!?'. In this case the program should format the text as in the following example: "I was thinking ... You were right" -> "I was thinking... You were right". -- The ponctuation mark `'''` should not have spaces if there are letters in both sides of it. Otherwise, the mark should be placed to the right of the next word and the following `'''` mark should be placed to its left. (Ex: "I'm exactly how they describe me: ' awesome '" -> "I'm exactly how they describe me: 'awesome'") +- Every instance of the punctuations `'.'`, `','`, `'!'`, `'?'`, `':'` and `';'` should be close to the previous word and with space apart from the next one. (Ex: "I was sitting over there ,and then BAMM !!" -> "I was sitting over there, and then BAMM!!"). + - Except if there are groups of punctuation like: '...' or '!?'. In this case the program should format the text as in the following example: "I was thinking ... You were right" -> "I was thinking... You were right". +- The punctuation mark `'''` should not have spaces if there are letters in both sides of it. Otherwise, the mark should be placed to the right of the next word and the following `'''` mark should be placed to its left. (Ex: "I'm exactly how they describe me: ' awesome '" -> "I'm exactly how they describe me: 'awesome'") - If there are more than one word between the two `'''`, the program should place the marks next to the corresponding words (Ex: "As Elton John said: ' I am the most well-known homosexual in the world '" -> As Elton John said: 'I am the most well-known homosexual in the world') -- Every instance of `"a"` should turned into `"an"` if the next word begans with a vowel or an 'h'. (Ex: "There it was. A amazing rock!" -> "There it was. An amazing rock!"). +- Every instance of `"a"` should be turned into `"an"` if the next word begins with a vowel or an 'h'. (Ex: "There it was. A amazing rock!" -> "There it was. An amazing rock!"). ### Allowed packages