[gbrainy] Proof-reading fixes



commit 6912b870e547806b0eeac232a9586d2a208bcede
Author: Jordi Mas <jmas softcatala org>
Date:   Sun Jun 5 23:08:28 2011 +0200

    Proof-reading fixes

 data/games.xml                                   |   22 +++++-----
 data/verbal_analogies.xml                        |   47 +++++++++++-----------
 src/Core/Main/GameTips.cs                        |    6 +-
 src/Games/Calculation/CalculationArithmetical.cs |    4 +-
 src/Games/Calculation/CalculationAverage.cs      |    4 +-
 src/Games/Calculation/CalculationRatio.cs        |    4 +-
 src/Games/Logic/PuzzleCirclesSquare.cs           |    2 +-
 src/Games/Logic/PuzzleDice.cs                    |    8 ++--
 src/Games/Logic/PuzzleOstracism.cs               |    4 +-
 src/Games/Logic/PuzzlePeopleTable.cs             |    2 +-
 src/Games/Logic/PuzzleRelatedNumbers.cs          |    6 +-
 src/Games/Logic/PuzzleSquaresAndLetters.cs       |    2 +-
 src/Games/Logic/PuzzleTimeNow.cs                 |    4 +-
 src/Games/Logic/PuzzleTrains.cs                  |   18 ++++----
 src/Games/Memory/MemoryFacts.cs                  |   13 +++---
 tools/GameXmlGetString.cs                        |   16 ++++----
 16 files changed, 82 insertions(+), 80 deletions(-)
---
diff --git a/data/games.xml b/data/games.xml
index 5afac55..bd09223 100644
--- a/data/games.xml
+++ b/data/games.xml
@@ -147,10 +147,10 @@
 
 				double rslt =  money * (Math.Pow (1 + interest, years));
 			</variables>
-			<question>You have [money] monetary unit in your bank account at 10% compound interest annually. How much money will you have at end of 2 years?</question>
-			<question plural = "[money]">You have [money] monetary units in your bank account at 10% compound interest annually. How much money will you have at end of 2 years?</question>
+			<question>You have [money] monetary unit in your bank account at 10% interest compounded annually. How much money will you have at the end of 2 years?</question>
+			<question plural = "[money]">You have [money] monetary units in your bank account at 10% interest compounded annually. How much money will you have at the end of 2 years?</question>
 			<answer>[rslt]</answer>
-			<_rationale>Compound interest is paid on the original amount and on the accumulated past interest.</_rationale>
+			<_rationale>Compound interest is paid on the principal plus any past interest accumulated.</_rationale>
 		</variant>
 	</game>
 
@@ -301,7 +301,7 @@
 			int answer_d = ans [5 * idx + 3];
 			int answer_e = ans [5 * idx + 4];
 			</variables>
-			<_question>On the dartboard below, where you have to hit the darts to add 120 points in 5 throws? Answer using a list of numbers (e.g.: 4, 5, 6, 3, 2)</_question>
+			<_question>On the dartboard below, where would you need to throw the darts to add 120 points in 5 throws? Answer using a list of numbers (e.g. 4, 5, 6, 3, 2)</_question>
 			<svg file = "dartboard.svg" x = "0.1" y = "0.1" width = "0.8" height = "0.8"/>
 
 			<string text = "[value_a]" x = "0.35" y = "0.35" size = "x-large"/>
@@ -341,7 +341,7 @@
 		<difficulty>All</difficulty>
 		<_question>How much weight is needed at the point indicated by the question mark to balance the lever?</_question>
 		<_tip>Consider the sentence attributed to Archimedes: give me a lever long enough and a place to stand, and I can move the Earth.</_tip>
-		<_rationale>A lever is in equilibrium at distances reciprocally proportional to their weights.</_rationale>
+		<_rationale>A lever is in equilibrium when the objects place on it are at a distances reciprocally proportional to their weights.</_rationale>
 		<svg file = "lever.svg" x = "0.1" y = "0.1" width = "0.8" height = "0.8"/>
 		<variant>
 			<variables>
@@ -567,8 +567,8 @@
 				double answer_d = (0.90 / (john_speed + friend_speed));
 			</variables>
 
-			<question>John needs [john_time] hour to clean a warehouse and his friend half of John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]</question>
-			<question plural ="[john_time]">John needs [john_time] hours to clean a warehouse and his friend half of John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]</question>
+			<question>John needs [john_time] hour to clean a warehouse and his friend needs half as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]</question>
+			<question plural ="[john_time]">John needs [john_time] hours to clean a warehouse and his friend needs half as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]</question>
 		</variant>
 
 		<variant>
@@ -587,8 +587,8 @@
 				double answer_d = (0.90 / (john_speed + friend_speed));
 			</variables>
 
-			<question>John needs [john_time] hour to clean a warehouse and his friend two times John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]</question>
-			<question plural ="[john_time]">John needs [john_time] hours to clean a warehouse and his friend two times John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]</question>
+			<question>John needs [john_time] hour to clean a warehouse and his friend needs twice as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]</question>
+			<question plural ="[john_time]">John needs [john_time] hours to clean a warehouse and his friend needs twice as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]</question>
 		</variant>
 
 		<string _text = "Possible answers are:" x = "0.1" y = "0.15" size = "large"/>
@@ -609,8 +609,8 @@
 			<string _text = "[option_prefix] [answer_d]" x = "0.05" y = "0.02" size = "large"/>
 		</option>
 
-		<rationale>John cleans at speed of 1 / [john_time] per hour and his friend at 1 / [friend], both together need [answer_a] hour.</rationale>
-		<rationale plural ="[answer_a]">John cleans at speed of 1 / [john_time] per hour and his friend at 1 / [friend], both together need [answer_a] hours.</rationale>
+		<rationale>John cleans at the speed of 1 / [john_time] per hour and his friend at 1 / [friend]. Together they will need [answer_a] hour.</rationale>
+		<rationale plural ="[answer_a]">John cleans at the speed of 1 / [john_time] per hour and his friend at 1 / [friend]. Together they will need [answer_a] hours.</rationale>
 		<answer>[answer_a]</answer>
 	</game>
 
diff --git a/data/verbal_analogies.xml b/data/verbal_analogies.xml
index 41da261..e4c12f5 100644
--- a/data/verbal_analogies.xml
+++ b/data/verbal_analogies.xml
@@ -18,7 +18,7 @@
 		<!--
 			Translators, please check these recommendations when translating gbrainy: http://live.gnome.org/gbrainy/Localizing
 		-->
-		<_question type = "MultipleOptions">Which of the following sports does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following sports does not belong in this group?</_question>
 		<_tip>Think of the items used in the game.</_tip>
 		<_answer>Golf</_answer>
 		<_answer>Basketball</_answer>
@@ -98,7 +98,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct ="yes">Violin</_answer>
 		<_answer>Bassoon</_answer>
 		<_answer>Flute</_answer>
@@ -115,7 +115,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct ="yes">Fossil</_answer>
 		<_answer>Portico</_answer>
 		<_answer>Column</_answer>
@@ -124,7 +124,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer>Kilometer</_answer>
 		<_answer>Hectogram</_answer>
 		<_answer>Liter</_answer>
@@ -133,7 +133,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<!-- Translators: refers to the fruit -->
 		<_answer>Orange</_answer>
 		<_answer>Apple</_answer>
@@ -144,7 +144,7 @@
 
 	<analogy>
 		<!-- Selected to avoid physical characteristics like: has shield, legs or tail  -->
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer>Turtle</_answer>
 		<_answer>Crocodile</_answer>
 		<_answer>Lizard</_answer>
@@ -153,7 +153,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer>Tiger</_answer>
 		<_answer>Hyena</_answer>
 		<_answer>Wolf</_answer>
@@ -162,7 +162,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'hedonism'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'hedonism'?</_question>
 		<_answer correct ="yes">Pleasure</_answer>
 		<_answer>Pain</_answer>
 		<_answer>Collectivism</_answer>
@@ -171,7 +171,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'asceticism'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'asceticism'?</_question>
 		<_answer correct ="yes">Abstinence</_answer>
 		<_answer>Pain</_answer>
 		<_answer>Collectivism</_answer>
@@ -180,7 +180,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'oxymoron'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'oxymoron'?</_question>
 		<_answer correct ="yes">Contradictory</_answer>
 		<_answer>Synonym</_answer>
 		<_answer>Related</_answer>
@@ -189,7 +189,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct ="yes">Lentils</_answer>
 		<_answer>Wheat</_answer>
 		<_answer>Corn</_answer>
@@ -198,7 +198,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct ="yes">Onion</_answer>
 		<_answer>Mango</_answer>
 		<_answer>Lychee</_answer>
@@ -207,7 +207,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct ="yes">Carbon</_answer>
 		<_answer>Sodium</_answer>
 		<_answer>Titanium</_answer>
@@ -216,7 +216,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer>Cardiology</_answer>
 		<_answer>Hematology</_answer>
 		<_answer>Psychiatry</_answer>
@@ -225,7 +225,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'negligent'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'negligent'?</_question>
 		<_answer correct ="yes">Careless</_answer>
 		<_answer>Attention</_answer>
 		<_answer>Courtesy</_answer>
@@ -235,16 +235,16 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct = "yes">Regular</_answer>
 		<_answer>Occasional</_answer>
 		<_answer>Exceptional</_answer>
 		<_answer>Rare</_answer>
-		<_rationale>All the other words have the connotation of not occurring frequently.</_rationale>
+		<_rationale>The other words have the connotation of not occurring frequently.</_rationale>
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'perplexing'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'perplexing'?</_question>
 		<!-- Translator: As synonymous of 'perplexing' -->
 		<_answer correct ="yes">Confusing</_answer>
 		<_answer>Interesting</_answer>
@@ -253,7 +253,7 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'unhappy'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'unhappy'?</_question>
 		<_answer correct ="yes">Sad</_answer>
 		<_answer>Unpleasant</_answer>
 		<_answer>Tears</_answer>
@@ -261,16 +261,16 @@
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words does not belong to the group?</_question>
+		<_question type = "MultipleOptions">Which of the following words does not belong in this group?</_question>
 		<_answer correct = "yes">Incredible</_answer>
 		<_answer>Famous</_answer>
 		<_answer>Acclaimed</_answer>
 		<_answer>Celebrated</_answer>
-		<_rationale>All the other words have the meaning of distinguished.</_rationale>
+		<_rationale>The other words have the meaning of distinguished.</_rationale>
 	</analogy>
 
 	<analogy>
-		<_question type = "MultipleOptions">Which of the following words is closer to the meaning of 'specific'?</_question>
+		<_question type = "MultipleOptions">Which of the following words is closest to the meaning of 'specific'?</_question>
 		<!-- Translator: Pertaining to a single or specific person or thing -->
 		<_answer correct ="yes">Particular</_answer>
 		<_answer>Obvious</_answer>
@@ -380,7 +380,7 @@
 		<_answer>Solstice</_answer>
 		<_answer>Pole</_answer>
 		<_answer>Azimuth</_answer>
-		<_rationale>Parallel and longitude go from east-west position and meridian and latitude go from north-south position.</_rationale>
+		<_rationale>Parallel and longitude traverse from east to west while meridian and latitude traverse from north to south.</_rationale>
 	</analogy>
 
 	<analogy>
@@ -522,6 +522,7 @@
 	<analogy>
 		<_question type = "PairOfWordsCompare">hands / grab | teeth</_question>
 		<_answer correct ="yes">bite</_answer>
+		<_rationale>Grab and bite are finite actions.</_rationale>
 	</analogy>
 
 	<analogy>
diff --git a/src/Core/Main/GameTips.cs b/src/Core/Main/GameTips.cs
index 22e1f21..502fc2a 100644
--- a/src/Core/Main/GameTips.cs
+++ b/src/Core/Main/GameTips.cs
@@ -55,11 +55,11 @@ namespace gbrainy.Core.Main
 			case 2:
 				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In logic games, elements that may seem irrelevant can be very important.");
 			case 3:
-				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Break the mental blocks and look into the boundaries of problems.");
+				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Try to approach a problem from different angles.");
 			case 4:
-				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Enjoy making mistakes, they are part of the learning process.");
+				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Do not be afraid of making mistakes, they are part of the learning process.");
 			case 5:
-				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Do all the problems, even the difficult ones. Improvement comes from practicing.");
+				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Do all the problems, even the difficult ones. Improvement comes from challeging yourself.");
 			case 6:
 				return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Play on a daily basis, you will notice progress soon.");
 			case 7: // Translators: Custom Game Selection is a menu option
diff --git a/src/Games/Calculation/CalculationArithmetical.cs b/src/Games/Calculation/CalculationArithmetical.cs
index 27c45d1..afc8731 100644
--- a/src/Games/Calculation/CalculationArithmetical.cs
+++ b/src/Games/Calculation/CalculationArithmetical.cs
@@ -38,7 +38,7 @@ namespace gbrainy.Games.Calculation
 		private int max_operations;
 
 		public override string Name {
-			get {return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Arithmetical");}
+			get {return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Arithmetical operations");}
 		}
 
 		public override GameTypes Type {
@@ -46,7 +46,7 @@ namespace gbrainy.Games.Calculation
 		}
 
 		public override string Question {
-			get {return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the result of the arithmetical operation?");} 
+			get {return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the result of the following operation?");} 
 		}
 
 		protected override void Initialize ()
diff --git a/src/Games/Calculation/CalculationAverage.cs b/src/Games/Calculation/CalculationAverage.cs
index 19a9f21..047839d 100644
--- a/src/Games/Calculation/CalculationAverage.cs
+++ b/src/Games/Calculation/CalculationAverage.cs
@@ -52,12 +52,12 @@ namespace gbrainy.Games.Calculation
 				nums += numbers [numbers.Length - 1];
 
 				return String.Format (
-					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Given the numbers: {0}. Which of the following numbers is the nearest to the average? Answer {1}, {2}, {3} or {4}."), nums,
+					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Given the numbers: {0}. Which of the following numbers is closest to the average? Answer {1}, {2}, {3} or {4}."), nums,
 					Answer.GetMultiOption (0), Answer.GetMultiOption (1), Answer.GetMultiOption (2), Answer.GetMultiOption (3));}
 		}
 
 		public override string Tip {
-			get { return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The average of a list of numbers is the sum of all of the numbers divided by the number of items in the list.");}
+			get { return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The average of a list of numbers is their sum divided by the number of numbers in the list.");}
 		}
 
 		public override string Rationale {
diff --git a/src/Games/Calculation/CalculationRatio.cs b/src/Games/Calculation/CalculationRatio.cs
index 4e3f698..7b15961 100644
--- a/src/Games/Calculation/CalculationRatio.cs
+++ b/src/Games/Calculation/CalculationRatio.cs
@@ -39,7 +39,7 @@ namespace gbrainy.Games.Calculation
 		public override string Question {
 			get {
 				return String.Format (
-					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Two numbers sum {0} and have a ratio of {1} to {2}. Which are these numbers? Answer using two numbers (e.g.: 1 and 2)."), 
+					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Which two numbers have a sum of {0} and have a ratio of {1} to {2}. Answer using two numbers (e.g.: 1 and 2)."), 
 					number_a + number_b, ratio_a, ratio_b);
 			}
 		}
@@ -52,7 +52,7 @@ namespace gbrainy.Games.Calculation
 		}
 
 		public override string Tip {
-			get { return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("A ratio specifies a proportion between two numbers. A ratio a:b means that for every 'a' parts you have 'b' parts.");}
+			get { return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("A ratio specifies a proportion between two numbers. A ratio of a:b means that for every 'a' parts you have 'b' parts.");}
 		}
 
 		protected override void Initialize ()
diff --git a/src/Games/Logic/PuzzleCirclesSquare.cs b/src/Games/Logic/PuzzleCirclesSquare.cs
index 7943a37..4aa37d8 100644
--- a/src/Games/Logic/PuzzleCirclesSquare.cs
+++ b/src/Games/Logic/PuzzleCirclesSquare.cs
@@ -40,7 +40,7 @@ namespace gbrainy.Games.Logic
 
 		public override string Rationale {
 			get {
-				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In the layout shown {0} units of height are gained in each row. This allows using an additional row."), 0.1340);
+				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Using the above layout {0} units of height are gained per row leaving enough space for an additional row."), 0.1340);
 			}
 		}
 
diff --git a/src/Games/Logic/PuzzleDice.cs b/src/Games/Logic/PuzzleDice.cs
index 30330f4..c72b9ee 100644
--- a/src/Games/Logic/PuzzleDice.cs
+++ b/src/Games/Logic/PuzzleDice.cs
@@ -51,19 +51,19 @@ namespace gbrainy.Games.Logic
 		{
 			problems = new Problem []
 			{
-				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the probability of getting a '2' or a '6' in a single throw of a fair 6 sided die? Answer using a fraction (e.g.: 1/2)."),
+				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the probability of getting a '2' or a '6' in a single throw of an unmodified 6 sided die? Answer using a fraction (e.g. 1/2)."),
 					"1/3",
 					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("There are 2 of 6 possibilities."), true),
 
-				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the probability of not getting a '5' in a single throw of a fair 6 sided die? Answer using a fraction (e.g.: 1/2)."),
+				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What is the probability of not getting a '5' in a single throw of an unmodified 6 sided die? Answer using a fraction (e.g. 1/2)."),
 					"5/6",
 					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("There are 5 of 6 possibilities."), true),
 
-				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Two fair 6 sided dices are thrown simultaneously. What is the probability of getting two even numbers? Answer using a fraction (e.g.: 1/2)."),
+				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Two unmodified 6 sided dice are thrown simultaneously. What is the probability of getting two even numbers? Answer using a fraction (e.g.: 1/2)."),
 					"9/36",
 					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("There are 9 of 36 possibilities of getting two even numbers."), false),
 
-				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Two fair 6 sided dices are thrown simultaneously. What is the probability of getting two '6'? Answer using a fraction (e.g.: 1/2)."),
+				new Problem (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Two unmodified 6 sided dice are thrown simultaneously. What is the probability of getting two '6'? Answer using a fraction (e.g.: 1/2)."),
 					"1/36",
 					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("There is 1 of 6 possibilities of getting a '6' on the first die and the same for the second die."), false),
 			};
diff --git a/src/Games/Logic/PuzzleOstracism.cs b/src/Games/Logic/PuzzleOstracism.cs
index e017018..857a286 100644
--- a/src/Games/Logic/PuzzleOstracism.cs
+++ b/src/Games/Logic/PuzzleOstracism.cs
@@ -55,7 +55,7 @@ namespace gbrainy.Games.Logic
 
 		public override string Question {
 			get {return String.Format (
-				ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Which element does not belong to the group? It is not related to divisibility of the numbers. Answer {0}, {1}, {2}, {3} or {4}."),
+				ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Which element does not belong to the group? It is not related to any arithmetical of the numbers. Answer {0}, {1}, {2}, {3} or {4}."),
 				Answer.GetMultiOption (0), Answer.GetMultiOption (1), Answer.GetMultiOption (2), Answer.GetMultiOption (3), Answer.GetMultiOption (4));}
 		}
 
@@ -76,7 +76,7 @@ namespace gbrainy.Games.Logic
 			get {
 				switch (gametype) {
 				case GameType.Equations:
-					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In all the other equations the digits from the left side appear also in the right side.");
+					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In all the other equations the digits from the left side also appear on the right side.");
 				case GameType.Numbers:
 					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In all the other numbers the last three digits are the square of the first two digits.");
 				default:
diff --git a/src/Games/Logic/PuzzlePeopleTable.cs b/src/Games/Logic/PuzzlePeopleTable.cs
index e1d7799..510edaf 100644
--- a/src/Games/Logic/PuzzlePeopleTable.cs
+++ b/src/Games/Logic/PuzzlePeopleTable.cs
@@ -46,7 +46,7 @@ namespace gbrainy.Games.Logic
 		}
 
 		public override string Question {
-			get {return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("A group of people are sitting at round table, evenly spaced out. How many people are there if the {0} person is across from the {1}?"), ques1, ques2);} 
+			get {return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("A group of people are sitting at a round table spaced out evenly. How many people are there if the {0} person is across from the {1}?"), ques1, ques2);} 
 		}
 
 		public override string Rationale {
diff --git a/src/Games/Logic/PuzzleRelatedNumbers.cs b/src/Games/Logic/PuzzleRelatedNumbers.cs
index ea3a20e..8aa5a79 100644
--- a/src/Games/Logic/PuzzleRelatedNumbers.cs
+++ b/src/Games/Logic/PuzzleRelatedNumbers.cs
@@ -171,11 +171,11 @@ namespace gbrainy.Games.Logic
 			get {
 				switch (operation) {
 				case Operation.AddHalf:
-					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number on the middle in every row is equal to half of the sum of the other numbers of the row.");
+					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number in the middle of every row is half of the sum of the other numbers in the row.");
 				case Operation.Add:
-					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number on the middle in every row is equal the sum of the other numbers of the row.");
+					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number in the middle of every row is the sum of the other numbers in the row.");
 				case Operation.AddDouble:
-					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number on the middle in every row is equal to the double of the sum of the other numbers of the row.");
+					return ServiceLocator.Instance.GetService <ITranslations> ().GetString ("The number in the middle of every row is the double of the sum of the other numbers in the row.");
 				default:
 					throw new InvalidOperationException ("Invalid value");
 				}
diff --git a/src/Games/Logic/PuzzleSquaresAndLetters.cs b/src/Games/Logic/PuzzleSquaresAndLetters.cs
index ead304f..97c5650 100644
--- a/src/Games/Logic/PuzzleSquaresAndLetters.cs
+++ b/src/Games/Logic/PuzzleSquaresAndLetters.cs
@@ -41,7 +41,7 @@ namespace gbrainy.Games.Logic
 
 		public override string Rationale {
 			get {
-				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Every letter is calculated by taking the alphabetical position of the previous character and adding {0} to it in order to get the position of the new letter."), step);
+				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Every letter is calculated by taking the alphabetical position of the previous character and adding {0} to it in order to get the position of the next letter."), step);
 			}
 		}
 
diff --git a/src/Games/Logic/PuzzleTimeNow.cs b/src/Games/Logic/PuzzleTimeNow.cs
index 370d52c..9601d8b 100644
--- a/src/Games/Logic/PuzzleTimeNow.cs
+++ b/src/Games/Logic/PuzzleTimeNow.cs
@@ -41,13 +41,13 @@ namespace gbrainy.Games.Logic
 				// http://msdn.microsoft.com/en-us/library/system.globalization.datetimeformatinfo.aspx
 				// For 12-hour clock format use {0:%h} and for 24-hour clock format use {0:%H}. The date formats {0:h} and {0:H} are invalid.
 				//
-				ServiceLocator.Instance.GetService <ITranslations> ().GetString ("{0} hours ago it was as long after {1:h tt} as it was before {2:h tt} on the same day. What is the time now? Answer using the hour (e.g.: {3:h tt})"),
+				ServiceLocator.Instance.GetService <ITranslations> ().GetString ("{0} hours ago it was as long after {1:h tt} as it was before {2:h tt} on the same day. What is the time now? Answer using the hour (e.g. {3:h tt})"),
 				after, position_a, position_b, position_b));}
 		}
 
 		public override string Rationale {
 			get {
-				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You have to calculate the hour from which the distance is the same for the given times, and then add the {0} hours to convert it to present time."), after);
+				return String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Determine the hour half way between the given times, and then add {0} hours to convert it to the present time."), after);
 			}
 		}
 		
diff --git a/src/Games/Logic/PuzzleTrains.cs b/src/Games/Logic/PuzzleTrains.cs
index d6e0aa2..a8c5722 100644
--- a/src/Games/Logic/PuzzleTrains.cs
+++ b/src/Games/Logic/PuzzleTrains.cs
@@ -79,11 +79,11 @@ namespace gbrainy.Games.Logic
 					// Translators:
 					//  - mph (miles per hour). You must localize this using the right unit of speed for your locale
 					/// - The translated string should not use more characters than the original sentence
-					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("A train leaves the station traveling at {0} mph. {1} hour later a second train leaves the station traveling in the same direction at {2} mph. How many hours since the action started does it take the second train to overtake the first train?",
-						"A train leaves the station traveling at {0} mph. {1} hours later a second train leaves the station traveling in the same direction at {2} mph. How many hours since the action started does it take the second train to overtake the first train?", (int) hours),
+					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("A train leaves the station traveling at {0} mph. {1} hour later a second train leaves the station traveling in the same direction at {2} mph. How many hours since the first train left does it take the second train to overtake the first train?",
+						"A train leaves the station traveling at {0} mph. {1} hours later a second train leaves the station traveling in the same direction at {2} mph. How many hours since the first train left does it take the second train to overtake the first train?", (int) hours),
 						speed_a, hours, speed_b);
 			
-				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer multiplying the speed of the first train by the time and dividing it by the difference of speeds.");
+				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer by multiplying the speed of the first train by the time and dividing it by the difference of speeds.");
 				break;
 			}
 			case GameType.Meet:
@@ -99,12 +99,12 @@ namespace gbrainy.Games.Logic
 				question = String.Format (
 					// Translators:
 					//  - mph (miles per hour) and miles must be localized this using the right unit of speed for your locale
-					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Two trains separated by {0} mile are heading towards each other on straight parallel tracks. One travels at {1} mph and the other at {2} mph. In how many hours do they meet?",
-						"Two trains separated by {0} miles are heading towards each other on straight parallel tracks. One travels at {1} mph and the other at {2} mph. In how many hours do they meet?",
+					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Two trains separated by {0} mile are heading towards each other on straight parallel tracks. One travels at {1} mph and the other at {2} mph. In how many hours will they meet?",
+						"Two trains separated by {0} miles are heading towards each other on straight parallel tracks. One travels at {1} mph and the other at {2} mph. In how many hours will they meet?",
 						(int) distance),
 						distance, speed_a, speed_b);
 
-				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer dividing the distance by the sum of both speeds.");
+				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer by dividing the distance by the sum of both speeds.");
 				break;
 			}
 			case GameType.Apart:
@@ -121,12 +121,12 @@ namespace gbrainy.Games.Logic
 				question = String.Format (
 					// Translators:
 					//  - mph (miles per hour) and miles must be localized this using the right unit of speed for your locale
-					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Two trains on straight parallel tracks leave from the same point and time traveling in opposite directions at {0} and {1} mph respectively. In how many hours they will be {2} mile apart?",
-						"Two trains on straight parallel tracks leave from the same point and time traveling in opposite directions at {0} and {1} mph respectively. In how many hours they will be {2} miles apart?",
+					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Two trains on straight parallel tracks leave from the same point and time traveling in opposite directions at {0} and {1} mph respectively. In how many hours will they be {2} mile apart?",
+						"Two trains on straight parallel tracks leave from the same point and time traveling in opposite directions at {0} and {1} mph respectively. In how many hours will they be {2} miles apart?",
 						(int) distance),
 						speed_a, speed_b, distance);
 
-				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer dividing the distance by the sum of both speeds.");
+				answer = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("You can calculate the answer by dividing the distance by the sum of both speeds.");
 				break;
 			}
 			default:
diff --git a/src/Games/Memory/MemoryFacts.cs b/src/Games/Memory/MemoryFacts.cs
index 07f7a7c..5916ac7 100644
--- a/src/Games/Memory/MemoryFacts.cs
+++ b/src/Games/Memory/MemoryFacts.cs
@@ -103,11 +103,12 @@ namespace gbrainy.Games.Memory
 				fact.answers [1] = 1914 + random.Next (50);
 				fact.fact = String.Format (
 					// Translators: {0} is replaced by a number, {1} by a year (like 1940)
-					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Shiny Cars had already announced a {0} day production halt next month, but before that it had not cut production since {1}.",
-					"Shiny Cars had already announced a {0} days production halt next month, but before that it had not cut production since {1}.",
+					// Day in English does not need to be plural
+					ServiceLocator.Instance.GetService <ITranslations> ().GetPluralString ("Shiny Cars had already announced a {0} day production halt next month, but before then it had not halted production since {1}.",
+					"Shiny Cars had already announced a {0} day production halt next month, but before then it had not halted production since {1}.",
 					fact.answers [0]),
 					fact.answers [0], fact.answers [1]);
-				fact.questions [0] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("For how many days did Shiny Cars halt its production?");
+				fact.questions [0] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("How many days did Shiny Cars halt its production for?");
 				fact.questions [1] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In what year did Shiny Cars last halt its production?");
 				break;
 			case 1:
@@ -116,10 +117,10 @@ namespace gbrainy.Games.Memory
 				fact.answers [1] = 1914 + random.Next (50);
 				fact.fact = String.Format (
 					// Translators: {0} is replaced by a number, {1} by a year (like 1940)
-					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Shiny Cars sales fell {0}% this past December, the worse decline since {1}."),
+					ServiceLocator.Instance.GetService <ITranslations> ().GetString ("Shiny Cars sales fell {0}% this past December, the worst decline since {1}."),
 					fact.answers [0], fact.answers [1]);
 				fact.questions [0] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("By how much did company sales fall last December?");
-				fact.questions [1] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In what year did Shiny Cars record a sales total lower than that of last December?");
+				fact.questions [1] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("In what year was Shiny Cars sales total lower than that of last December?");
 				break;
 			case 2:
 				fact.Initialize (1);
@@ -132,7 +133,7 @@ namespace gbrainy.Games.Memory
 				fact.Initialize (2);
 				fact.answers [0] = 10 + random.Next (30);
 				fact.answers [1] = 100 - (1 + random.Next (10)) - fact.answers [0];
-				fact.fact = String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("About {0}% of Shiny Cars use diesel, {1}% use gasoline and the remainder use electric."),
+				fact.fact = String.Format (ServiceLocator.Instance.GetService <ITranslations> ().GetString ("About {0}% of Shiny Cars use diesel, {1}% use gasoline and the remainder use electricity."),
 					fact.answers [0], fact.answers [1]);
 				fact.questions [0] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What percentage of Shiny Cars use diesel?");
 				fact.questions [1] = ServiceLocator.Instance.GetService <ITranslations> ().GetString ("What percentage of Shiny Cars use gasoline?");
diff --git a/tools/GameXmlGetString.cs b/tools/GameXmlGetString.cs
index 7a9887a..3e2b979 100644
--- a/tools/GameXmlGetString.cs
+++ b/tools/GameXmlGetString.cs
@@ -58,24 +58,24 @@ public class GameXmlSttringFactory
 			"In a tennis tournament, in every match a player is eliminated after losing to a single opponent. How many matches does it take to determine the winner of a tennis tournament that starts with [players] players?",
 			variable);
 
-		Catalog.GetPluralString ("You have [money] monetary unit in your bank account at 10% compound interest annually. How much money will you have at end of 2 years?",
-			"You have [money] monetary units in your bank account at 10% compound interest annually. How much money will you have at end of 2 years?",
+		Catalog.GetPluralString ("You have [money] monetary unit in your bank account at 10% interest compounded annually. How much money will you have at the end of 2 years?",
+			"You have [money] monetary units in your bank account at 10% interest compounded annually. How much money will you have at the end of 2 years?",
 			variable);
 
 		Catalog.GetPluralString ("In a horse race there are people and horses. You count [eyes] eye and [legs] leg. How many horses are present?",
 			"In a horse race there are people and horses. You count [eyes] eyes and [legs] legs. How many horses are present?",
 			variable);
 
-		Catalog.GetPluralString ("John cleans at speed of 1 / [john_time] per hour and his friend at 1 / [friend], both together need [answer_a] hour.",
-			"John cleans at speed of 1 / [john_time] per hour and his friend at 1 / [friend], both together need [answer_a] hours.",
+		Catalog.GetPluralString ("John cleans at the speed of 1 / [john_time] per hour and his friend at 1 / [friend]. Together they will need [answer_a] hour.",
+			"John cleans at the speed of 1 / [john_time] per hour and his friend at 1 / [friend]. Together they will need [answer_a] hours.",
 			variable);
 
-		Catalog.GetPluralString ("John needs [john_time] hour to clean a warehouse and his friend half of John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]",
-			"John needs [john_time] hours to clean a warehouse and his friend half of John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]",
+		Catalog.GetPluralString ("John needs [john_time] hour to clean a warehouse and his friend needs half as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]",
+			"John needs [john_time] hours to clean a warehouse and his friend needs half as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]",
 			variable);
 
-		Catalog.GetPluralString ("John needs [john_time] hour to clean a warehouse and his friend two times John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]",
-			"John needs [john_time] hours to clean a warehouse and his friend two times John's time. How many hours would take them to clean up the warehouse if they work together? [option_answers]",
+		Catalog.GetPluralString ("John needs [john_time] hour to clean a warehouse and his friend needs twice as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]",
+			"John needs [john_time] hours to clean a warehouse and his friend needs twice as many. How many hours would it take them to clean up the warehouse if they worked together? [option_answers]",
 			variable);
 
 		Catalog.GetPluralString ("You have two trucks that have a total weight of [add] unit. If the lighter truck weights 15 units less that half of the weight of the heavier truck, what is the weight of the lighter truck? [option_answers]",



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]