Below is a java script code I wrote for an assignment - as a continuation of the assignment we have a task to test the code and fix/report any bugs or errors.
the code is to translate numbers 1-30 into French or German. my bug is that when the error pops up regarding an invalid language input it closes the program instead of prompting the user to input a valid language.
any ideas ? I've tried to use a prompt code but I may have added it incorrectly as it wasn't working for me.
var frenchTranslation = ["zero", "un", "deux", "trois","quatre", "cinq", "six", "sept",
"huit", "neuf", "dix", "onze", "douze", "treize", "quatorze", "quinze", "seize",
"dix-sept", "dix-huit", "dix-neuf", "vingt", "vingt et un", "vingt-deux", "vingt-trois",
"vingt-quatre", "vingt-cinq", "vingt-six", "vingt-sept", "vingt huit", "vingt-neuf",
"trente"];
var germanTranslation = ["Null", "Eins", "Zwei", "Drei", "Vier", "Fünf", "Sechs",
"Sieben", "Acht", "Neun", "Zehn", "Elf", "Zwölf", "Dreizehn", "Vierzehn", "Fünfzehn",
"Sechzehn", "Siebzehn", "Achtzehn", "Neunzehn", "Zwanzig", "Einundzwanzig",
"Zweiundzwanzig", "Dreiundzwanzig", "Vierundzwanzig", "Fünfundzwanzig",
"Sechsundzwanzig", "Siebenundzwanzig", "Achtundzwanzig", "Neunundzwanzig", "Dreiβig"];
function translate()
{
const chosennumber = Number(prompt("Choose a number between 1-30"));
console.log(chosennumber);
if(chosennumber < 1 || chosennumber > 30) {
alert("Error!! Please enter a number between 1-30.");
translate();
}
const language = prompt("Choose a language – French or German");
console.log(language);
{
if (language === "French") {
alert("The French translation is: "+frenchTranslation[chosennumber]);
}
else if (language === "German") {
alert("The German translation is: "+germanTranslation[chosennumber]);
}
else {
alert("ERROR! Please enter a valid language (German or French).");
}
}
}
translate();