+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+
+ This recipe is for a rich and creamy chocolate fudge that is sure to satisfy your sweet tooth. It's perfect for a special occasion or as a tasty treat for any time of the year.
+This recipe is easy to follow and only requires a few simple ingredients. With just a few steps, you'll be able to create a delicious dessert that everyone will love.
+17 % 2 = 1 (17 є непарним)-**Примітка:** оператор остачі іноді неправильно називають оператором модуля. Він дуже схожий на модуль, але працює неправильно з від'ємними числами. +**Примітка:** оператор остачі іноді неправильно називають оператором модуля. Він дуже схожий на модуль, але працює неправильно з від’ємними числами. # --instructions-- diff --git a/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-fractions-with-javascript.md b/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-fractions-with-javascript.md index eb00aa01acf..2a71bd138ca 100644 --- a/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-fractions-with-javascript.md +++ b/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-fractions-with-javascript.md @@ -21,7 +21,7 @@ JavaScript має функцію `Math.random()`, яка генерує випа # --hints-- -`randomFraction` повинна повертати випадкове число. +`randomFraction` має повертати випадкове число. ```js assert(typeof randomFraction() === 'number'); diff --git a/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-whole-numbers-with-javascript.md b/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-whole-numbers-with-javascript.md index 7f759eff9a3..a7b636a4d30 100644 --- a/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-whole-numbers-with-javascript.md +++ b/curriculum/challenges/ukrainian/02-javascript-algorithms-and-data-structures/basic-javascript/generate-random-whole-numbers-with-javascript.md @@ -13,7 +13,7 @@ dashedName: generate-random-whole-numbers-with-javascript
48 % 2 = 0 (48 є парним)
Math.random(), щоб згенерувати випадкове десяткове число.20.Math.floor(), щоб заокруглити число до найближчого цілого числа.| Грошовий обіг | Сума |
|---|---|
| Пенні | $0.01 (ПЕННІ) |
| Нікель | $0.05 (НІКЕЛЬ) |
| Дайм | $0.1 (ДАЙМ) |
| Чверть | $0.25 (ЧВЕРТЬ) |
| Долар | $1 (ОДИН) |
| П'ять доларів | $5 (П'ЯТЬ) |
| Десять доларів | $10 (ДЕСЯТЬ) |
| Двадцять доларів | $20 (ДВАДЦЯТЬ) |
| Сто доларів | $100 (СТО) |
| Грошовий обіг | Сума |
|---|---|
| Пенні | $0.01 (ПЕННІ) |
| Нікель | $0.05 (НІКЕЛЬ) |
| Дайм | $0.1 (ДАЙМ) |
| Чверть | $0.25 (ЧВЕРТЬ) |
| Долар | $1 (ОДИН) |
| П’ять доларів | $5 (П’ЯТЬ) |
| Десять доларів | $10 (ДЕСЯТЬ) |
| Двадцять доларів | $20 (ДВАДЦЯТЬ) |
| Сто доларів | $100 (СТО) |
555-555-5555-У цьому завданні вам буде надано рядок, наприклад `800-692-7753` або `8oo-six427676;laskdjf`. Ваше завдання – підтвердити або відхилити мобільний номер США на основі будь-якої комбінації форматів, наданих вище. Код зони нумерації є обов'язковим. Якщо надано телефонний код країни, то ви повинні підтвердити, що телефонний код країни – `1`. Поверніть `true`, якщо рядок є дійсним мобільним номером США; в іншому випадку поверніть `false`. +У цьому завданні вам буде надано рядок (наприклад, `800-692-7753` або `8oo-six427676;laskdjf`). Ваше завдання – підтвердити або відхилити мобільний номер США на основі будь-якої комбінації форматів, наданих вище. Код зони нумерації є обов’язковим. Якщо надано телефонний код країни, то ви повинні підтвердити, що телефонним кодом країни є `1`. Поверніть `true`, якщо рядок є дійсним мобільним номером США; в іншому випадку поверніть `false`. # --hints-- -`telephoneCheck("555-555-5555")` повинен повертати булеве значення. +`telephoneCheck("555-555-5555")` має повертати булеве значення. ```js assert(typeof telephoneCheck('555-555-5555') === 'boolean'); ``` -`telephoneCheck("1 555-555-5555")` повинен повертати `true`. +`telephoneCheck("1 555-555-5555")` має повертати `true`. ```js assert(telephoneCheck('1 555-555-5555') === true); ``` -`telephoneCheck("1 (555) 555-5555")` повинен повертати `true`. +`telephoneCheck("1 (555) 555-5555")` має повертати `true`. ```js assert(telephoneCheck('1 (555) 555-5555') === true); ``` -`telephoneCheck("5555555555")` повинен повертати `true`. +`telephoneCheck("5555555555")` має повертати `true`. ```js assert(telephoneCheck('5555555555') === true); ``` -`telephoneCheck("555-555-5555")` повинен повертати `true`. +`telephoneCheck("555-555-5555")` має повертати `true`. ```js assert(telephoneCheck('555-555-5555') === true); ``` -`telephoneCheck("(555)555-5555")` повинен повертати `true`. +`telephoneCheck("(555)555-5555")` має повертати `true`. ```js assert(telephoneCheck('(555)555-5555') === true); ``` -`telephoneCheck("1(555)555-5555")` повинен повертати `true`. +`telephoneCheck("1(555)555-5555")` має повертати `true`. ```js assert(telephoneCheck('1(555)555-5555') === true); ``` -`telephoneCheck("555-5555")` повинен повертати `false`. +`telephoneCheck("555-5555")` має повертати `false`. ```js assert(telephoneCheck('555-5555') === false); ``` -`telephoneCheck("5555555")` повинен повертати `false`. +`telephoneCheck("5555555")` має повертати `false`. ```js assert(telephoneCheck('5555555') === false); ``` -`telephoneCheck("1 555)555-5555")` повинен повертати `false`. +`telephoneCheck("1 555)555-5555")` має повертати `false`. ```js assert(telephoneCheck('1 555)555-5555') === false); ``` -`telephoneCheck("1 555 555 5555")` повинен повертати `true`. +`telephoneCheck("1 555 555 5555")` має повертати `true`. ```js assert(telephoneCheck('1 555 555 5555') === true); ``` -`telephoneCheck("1 456 789 4444")` повинен повертати `true`. +`telephoneCheck("1 456 789 4444")` має повертати `true`. ```js assert(telephoneCheck('1 456 789 4444') === true); ``` -`telephoneCheck("123**&!!asdf#")` повинен повертати `false`. +`telephoneCheck("123**&!!asdf#")` має повертати `false`. ```js assert(telephoneCheck('123**&!!asdf#') === false); ``` -`telephoneCheck("55555555")` повинен повертати `false`. +`telephoneCheck("55555555")` має повертати `false`. ```js assert(telephoneCheck('55555555') === false); ``` -`telephoneCheck("(6054756961)")` повинен повертати `false`. +`telephoneCheck("(6054756961)")` має повертати `false`. ```js assert(telephoneCheck('(6054756961)') === false); ``` -`telephoneCheck("2 (757) 622-7382")` повинен повертати `false`. +`telephoneCheck("2 (757) 622-7382")` має повертати `false`. ```js assert(telephoneCheck('2 (757) 622-7382') === false); ``` -`telephoneCheck("0 (757) 622-7382")` повинен повертати `false`. +`telephoneCheck("0 (757) 622-7382")` має повертати `false`. ```js assert(telephoneCheck('0 (757) 622-7382') === false); ``` -`telephoneCheck("-1 (757) 622-7382")` повинен повертати `false`. +`telephoneCheck("-1 (757) 622-7382")` має повертати `false`. ```js assert(telephoneCheck('-1 (757) 622-7382') === false); ``` -`telephoneCheck("2 757 622-7382")` повинен повертати `false`. +`telephoneCheck("2 757 622-7382")` має повертати `false`. ```js assert(telephoneCheck('2 757 622-7382') === false); ``` -`telephoneCheck("10 (757) 622-7382")` повинен повертати `false`. +`telephoneCheck("10 (757) 622-7382")` має повертати `false`. ```js assert(telephoneCheck('10 (757) 622-7382') === false); ``` -`telephoneCheck("27576227382")` повинен повертати `false`. +`telephoneCheck("27576227382")` має повертати `false`. ```js assert(telephoneCheck('27576227382') === false); ``` -`telephoneCheck("(275)76227382")` повинен повертати `false`. +`telephoneCheck("(275)76227382")` має повертати `false`. ```js assert(telephoneCheck('(275)76227382') === false); ``` -`telephoneCheck("2(757)6227382")` повинен повертати `false`. +`telephoneCheck("2(757)6227382")` має повертати `false`. ```js assert(telephoneCheck('2(757)6227382') === false); ``` -`telephoneCheck("2(757)622-7382")` повинен повертати `false`. +`telephoneCheck("2(757)622-7382")` має повертати `false`. ```js assert(telephoneCheck('2(757)622-7382') === false); ``` -`telephoneCheck("555)-555-5555")` повинен повертати `false`. +`telephoneCheck("555)-555-5555")` має повертати `false`. ```js assert(telephoneCheck('555)-555-5555') === false); ``` -`telephoneCheck("(555-555-5555")` повинен повертати `false`. +`telephoneCheck("(555-555-5555")` має повертати `false`. ```js assert(telephoneCheck('(555-555-5555') === false); ``` -`telephoneCheck("(555)5(55?)-5555")` повинен повертати `false`. +`telephoneCheck("(555)5(55?)-5555")` має повертати `false`. ```js assert(telephoneCheck('(555)5(55?)-5555') === false); ``` -`telephoneCheck("55 55-55-555-5")` повинен повертати `false`. +`telephoneCheck("55 55-55-555-5")` має повертати `false`. ```js assert(telephoneCheck('55 55-55-555-5') === false); ``` -`telephoneCheck("11 555-555-5555")` повинен повертати `false`. +`telephoneCheck("11 555-555-5555")` має повертати `false`. ```js assert(telephoneCheck('11 555-555-5555') === false); diff --git a/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/american-british-translator.md b/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/american-british-translator.md index 9547cbec9fb..9bb4cb610c6 100644 --- a/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/american-british-translator.md +++ b/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/american-british-translator.md @@ -282,7 +282,7 @@ async (getUserInput) => { }; ``` -All 24 unit tests are complete and passing. +Усі 24 модульних тестів завершено та успішно пройдено. ```js async (getUserInput) => { @@ -307,7 +307,7 @@ async (getUserInput) => { }; ``` -All 6 functional tests are complete and passing. +Усі 6 функціональних тестів завершено та успішно пройдено. ```js async (getUserInput) => { diff --git a/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/sudoku-solver.md b/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/sudoku-solver.md index d5336257398..193d28fb34f 100644 --- a/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/sudoku-solver.md +++ b/curriculum/challenges/ukrainian/06-quality-assurance/quality-assurance-projects/sudoku-solver.md @@ -352,7 +352,7 @@ async (getUserInput) => { }; ``` -All 12 unit tests are complete and passing. +Усі 12 модульних тестів завершено та успішно пройдено. ```js async (getUserInput) => { @@ -377,7 +377,7 @@ async (getUserInput) => { }; ``` -All 14 functional tests are complete and passing. +Усі 14 функціональних тестів завершено та успішно пройдено. ```js async (getUserInput) => { diff --git a/curriculum/challenges/ukrainian/10-coding-interview-prep/rosetta-code/farey-sequence.md b/curriculum/challenges/ukrainian/10-coding-interview-prep/rosetta-code/farey-sequence.md index 86725bd4e60..5ba60b24c00 100644 --- a/curriculum/challenges/ukrainian/10-coding-interview-prep/rosetta-code/farey-sequence.md +++ b/curriculum/challenges/ukrainian/10-coding-interview-prep/rosetta-code/farey-sequence.md @@ -47,32 +47,33 @@ assert(typeof farey === 'function'); assert(Array.isArray(farey(3))); ``` -`farey(3)` має повернути `["1/3","1/2","2/3"]` +`farey(3)` should return `['0/1','1/3','1/2','2/3','1/1']` ```js -assert.deepEqual(farey(3), ['1/3', '1/2', '2/3']); +assert.deepEqual(farey(3),['0/1', '1/3', '1/2', '2/3', '1/1']); ``` -`farey(4)` має повернути `["1/4","1/3","1/2","2/4","2/3","3/4"]` +`farey(4)` should return `['0/1','1/4','1/3','1/2','2/3','3/4','1/1']` ```js -assert.deepEqual(farey(4), ['1/4', '1/3', '1/2', '2/4', '2/3', '3/4']); +assert.deepEqual(farey(4), ['0/1', '1/4', '1/3', '1/2', '2/3', '3/4', '1/1']); ``` -`farey(5)` має повернути `["1/5","1/4","1/3","2/5","1/2","2/4","3/5","2/3","3/4","4/5"]` +`farey(5)` should return `['0/1','1/5','1/4','1/3','2/5','1/2','3/5','2/3','3/4','4/5','1/1']` ```js assert.deepEqual(farey(5), [ + '0/1', '1/5', '1/4', '1/3', '2/5', '1/2', - '2/4', '3/5', '2/3', '3/4', - '4/5' + '4/5', + '1/1' ]); ``` @@ -89,21 +90,17 @@ function farey(n) { # --solutions-- ```js -function farey(n){ - let farSeq=[]; - for(let den = 1; den <= n; den++){ - for(let num = 1; num < den; num++){ - farSeq.push({ - str:num+"/"+den, - val:num/den}); - } +function farey(n) { + const sequence = [{ string: "0/1", float: 0.0 }]; + for (let i = 1; i < n; i++) { + for (let j = n; j >= i; j--) { + if (i === 1 || j % i > 0) { + sequence.push({ string: `${i}/${j}`, float: i / j }); + } } - farSeq.sort(function(a,b){ - return a.val-b.val; - }); - farSeq=farSeq.map(function(a){ - return a.str; - }); - return farSeq; + } + return sequence + .sort((a, b) => a.float - b.float) + .map(e => e.string) } ``` diff --git a/curriculum/challenges/ukrainian/10-coding-interview-prep/the-odin-project-projects/project-create-a-recipe-page.md b/curriculum/challenges/ukrainian/10-coding-interview-prep/the-odin-project-projects/project-create-a-recipe-page.md new file mode 100644 index 00000000000..657a3f6e32d --- /dev/null +++ b/curriculum/challenges/ukrainian/10-coding-interview-prep/the-odin-project-projects/project-create-a-recipe-page.md @@ -0,0 +1,204 @@ +--- +id: 6391d1a4f7ac71efd0621380 +title: Build a Recipe Page Project +challengeType: 14 +dashedName: project-create-a-recipe-page +--- + +# --description-- + +The website will consist of a main index page which will have links to a few recipes. The website won’t look very pretty by the time you’ve finished. + +**User Stories:** + +1. Your recipe page should contain a `DOCTYPE` tag. +1. Your recipe page should include an `html` element with a `head` and `body` element as children. +1. You should have a `title` element within the `head` element with the text `The Odin Recipes`. +1. You should see an `h1` element that has the text `Creamy Chocolate Fudge`. +1. You should see an image with the url `*placeholder-fcc-cdn*` with a fitting `alt` text. +1. There should be an `h2` element with the text `Description` under the image. +1. You should see a couple of paragraphs under `Description` that describe the recipe. +1. There should be an `h2` element with the text `Ingredients` +1. Under the `Ingredients` heading there should be an unordered list with the ingredients needed for the recipe. +1. Under the list of ingredients add another heading called `Steps`. +1. You should see an ordered list with a couple of steps needed to complete the recipe. +1. Under the steps there should be an `h2` element with the text `More Recipes` +1. You should see a couple of links to other recipes inside an unordered list which has a couple of list items with anchor elements within. +1. These anchor elements should have `href` attribute with the value set to `#` + +# --hints-- + +You should have a `DOCTYPE` tag. + +```js +assert(code.match(//gi)); +``` + +You should have a `html` element with `head` and `body` element. + +```js +const html = document.querySelectorAll('html')[0]; +const head = document.querySelectorAll('html > head')[0]; +const body = document.querySelectorAll('html > body')[0]; + +assert(html && head && body); +``` + +You should have a `title` element within the `head` element that contains the text `The Odin Recipes`. + +```js +assert(document.querySelectorAll('HEAD > TITLE')[0].innerText == 'The Odin Recipes'); +``` + +You should have a `h1` element within your `body` element that contains the text `Creamy Chocolate Fudge`. + +```js +assert(document.querySelectorAll('BODY > H1')[0].innerText == 'Creamy Chocolate Fudge'); +``` + +You should have an image with the url `*placeholder-fcc-cdn*` with an `alt` attribute that has a fitting text. + +```js +const img = document.querySelectorAll('IMG')[0]; + +assert(img && img.alt !='' && img.src === 'https://i.imgur.com/p0J5baJ.jpg') +``` + +You should have an `h2` element with the text `Description`. + +```js +const h2 = document.querySelectorAll('H2')[0]; + +assert(h2.innerText == 'Description'); +``` + +You should have at least two `p` elements describing the recipe. + +```js +const paragraphs = document.querySelectorAll('P'); + +assert(paragraphs.length > 1); +``` + +You should have an `h2` element with the text `Ingredients`. + +```js +const h2 = document.querySelectorAll('H2')[1]; + +assert(h2.innerText == 'Ingredients'); +``` + +You should have an unordered list `
(555)555-5555
(555) 555-5555
555 555 5555
5555555555
1 555 555 5555