Skip to content

Commit 39109ed

Browse files
committed
minor
1 parent 432a977 commit 39109ed

12 files changed

Lines changed: 113 additions & 111 deletions

File tree

1-js/02-first-steps/12-while-for/6-repeat-until-correct/solution.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
let num;
44

55
do {
6-
num = prompt("Enter a number greater than 100?", 0);
6+
num = prompt("Введите число, большее 100?", 0);
77
} while (num <= 100 && num);
88
```
99

1-js/02-first-steps/12-while-for/6-repeat-until-correct/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ importance: 5
66

77
Напишите цикл, который предлагает `prompt` ввести число, большее `100`. Если посетитель ввёл другое число – попросить ввести ещё раз, и так далее.
88

9-
Цикл должен спрашивать число пока либо посетитель не введёт число, большее `100`, либо не нажмёт кнопку Cancel (ESC).
9+
Цикл должен спрашивать число пока либо посетитель не введёт число, большее `100`, либо не нажмёт кнопку Отмена (ESC).
1010

1111
Предполагается, что посетитель вводит только числа. Предусматривать обработку нечисловых строк в этой задаче необязательно.
1212

1-js/02-first-steps/12-while-for/7-list-primes/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ importance: 3
66

77
Натуральное число, большее `1`, называется [простым](https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%B5_%D1%87%D0%B8%D1%81%D0%BB%D0%BE), если оно ни на что не делится, кроме себя и `1`.
88

9-
Другими словами, `n > 1` – простое, если при делении на любое число от `2` до `n - 1` есть остаток.
9+
Другими словами, `n > 1` – простое, если при его делении на любое число от `1` до `n` есть остаток.
1010

1111
Например, `5` это простое число, оно не может быть разделено без остатка на `2`, `3` и `4`.
1212

1-js/02-first-steps/12-while-for/article.md

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ while (condition) {
1717
}
1818
```
1919

20-
Код из тела цикла выполняется, пока значение `condition` равно `true`.
20+
Код из тела цикла выполняется, пока условие `condition` истинно.
2121

2222
Например, цикл ниже выводит `i`, пока `i < 3`:
2323

@@ -31,24 +31,24 @@ while (i < 3) { // выводит 0, затем 1, затем 2
3131

3232
Одно выполнение тела цикла по-научному называется *итерация*. Цикл в примере выше совершает три итерации.
3333

34-
Если бы `i++` отсутствовало в примере выше, то цикл бы повторялся (в теории) вечно. На практике, конечно, браузер не позволит такому случиться, он предоставит пользователю возможность остановить "подвисший" скрипт, а JavaScript на стороне сервера придётся "убить" процесс.
34+
Если бы строка `i++` отсутствовала в примере выше, то цикл бы повторялся (в теории) вечно. На практике, конечно, браузер не позволит такому случиться, он предоставит пользователю возможность остановить "подвисший" скрипт, а JavaScript на стороне сервера придётся "убить" процесс.
3535

36-
Любое выражение или переменная может быть условием цикла, а не только сравнения: условие `while` вычисляется и преобразуется в логическое значение.
36+
Любое выражение или переменная может быть условием цикла, а не только сравнение: условие `while` вычисляется и преобразуется в логическое значение.
3737

3838
Например, `while (i)` -- более краткий вариант `while (i != 0)`:
3939

4040
```js run
4141
let i = 3;
4242
*!*
43-
while (i) { // когда i будет равно 0, условие станет ложным и цикл остановится
43+
while (i) { // когда i будет равно 0, условие станет ложным, и цикл остановится
4444
*/!*
4545
alert( i );
4646
i--;
4747
}
4848
```
4949

5050
````smart header="Фигурные скобки не требуются для тела цикла из одной строки"
51-
Если тело цикла состоит лишь из одной конструкции, мы можем опустить фигурные скобки `{…}`:
51+
Если тело цикла состоит лишь из одной инструкции, мы можем опустить фигурные скобки `{…}`:
5252
5353
```js run
5454
let i = 3;
@@ -68,7 +68,7 @@ do {
6868
} while (condition);
6969
```
7070

71-
Цикл сначала выполнит тело, а затем проверит условие, и пока его значение равно `true`, он будет выполняться снова и снова.
71+
Цикл сначала выполнит тело, а затем проверит условие `condition`, и пока его значение равно `true`, он будет выполняться снова и снова.
7272

7373
Например:
7474

@@ -80,11 +80,11 @@ do {
8080
} while (i < 3);
8181
```
8282

83-
Такая форма синтаксиса оправдана, если вы хотите, чтобы тело цикла выполнилось **хотя бы один раз**, даже если условие окажется ложным. Чаще используется форма с предусловием: `while(…) {…}`.
83+
Такая форма синтаксиса оправдана, если вы хотите, чтобы тело цикла выполнилось **хотя бы один раз**, даже если условие окажется ложным. На практике чаще используется форма с предусловием: `while(…) {…}`.
8484

8585
## Цикл "for"
8686

87-
Самый распространённый цикл — цикл `for`.
87+
Более сложный, но при этом самый распространённый цикл — цикл `for`.
8888

8989
Выглядит он так:
9090

@@ -111,8 +111,8 @@ for (let i = 0; i < 3; i++) { // выведет 0, затем 1, затем 2
111111
| *шаг* | `i++` | Выполняется *после* тела цикла на каждой итерации *перед* проверкой условия. |
112112
| *тело* | `alert(i)`| Выполняется снова и снова, пока условие вычисляется в `true`. |
113113

114-
115114
В целом, алгоритм работы цикла выглядит следующим образом:
115+
116116
```
117117
Выполнить *начало*
118118
→ (Если *условие* == true → Выполнить *тело*, Выполнить *шаг*)
@@ -121,6 +121,8 @@ for (let i = 0; i < 3; i++) { // выведет 0, затем 1, затем 2
121121
→ ...
122122
```
123123

124+
То есть, *начало* выполняется один раз, а затем каждая итерация заключается в проверке *условия*, после которой выполняется *тело* и *шаг*.
125+
124126
Если тема циклов для вас нова, может быть полезным вернуться к примеру выше и воспроизвести его работу на листе бумаги, шаг за шагом.
125127

126128
Вот, в точности, то, что происходит в нашем случае:
@@ -289,8 +291,7 @@ if (i > 5) {
289291
(i > 5) ? alert(i) : *!*continue*/!*; // continue здесь приведёт к ошибке
290292
```
291293
292-
...выполнение остановится. Такой код приведёт к синтаксической ошибке:
293-
294+
...то будет синтаксическая ошибка.
294295
295296
Это ещё один повод не использовать оператор вопросительного знака `?` вместо `if`.
296297
````
@@ -306,14 +307,14 @@ for (let i = 0; i < 3; i++) {
306307

307308
for (let j = 0; j < 3; j++) {
308309

309-
let input = prompt(`Значение координат (${i},${j})`, '');
310+
let input = prompt(`Значение на координатах (${i},${j})`, '');
310311

311-
// Что если мы захотим перейти к Done (ниже) прямо отсюда?
312+
// Что если мы захотим перейти к Готово (ниже) прямо отсюда?
312313

313314
}
314315
}
315316

316-
alert('Done!');
317+
alert('Готово!');
317318
```
318319

319320
Нам нужен способ остановить выполнение если пользователь отменит ввод.
@@ -334,18 +335,19 @@ labelName: for (...) {
334335

335336
for (let j = 0; j < 3; j++) {
336337

337-
let input = prompt(`Value at coords (${i},${j})`, '');
338+
let input = prompt(`Значение на координатах (${i},${j})`, '');
338339

339-
// если пустая строка или ОТМЕНА, то выйти из обоих циклов
340+
// если пустая строка или Отмена, то выйти из обоих циклов
340341
if (!input) *!*break outer*/!*; // (*)
341342

342343
// сделать что-нибудь со значениями...
343344
}
344345
}
345-
alert('Done!');
346+
347+
alert('Готово!');
346348
```
347349

348-
В примере выше это означает, что вызовом `break outer` будет разорван внешний цикл до метки с именем `outer`, и управление перейдёт со строки, помеченной `(*)`, к `alert('Done!')`.
350+
В примере выше это означает, что вызовом `break outer` будет разорван внешний цикл до метки с именем `outer`, и управление перейдёт со строки, помеченной `(*)`, к `alert('Готово!')`.
349351

350352
Можно размещать метку на отдельной строке:
351353

@@ -356,12 +358,12 @@ for (let i = 0; i < 3; i++) { ... }
356358

357359
Директива `continue` также может быть использована с меткой. В этом случае управление перейдёт на следующую итерацию цикла с меткой.
358360

359-
````warn header="Метки не то же самое, что \"goto\""
361+
````warn header="Метки не позволяют \"прыгнуть\" куда угодно"
360362
Метки не дают возможности передавать управление в произвольное место кода.
361363
362364
Например, нет возможности сделать следующее:
363365
```js
364-
break label; // не прыгает к метке.
366+
break label; // не прыгает к метке ниже
365367
366368
label: for (...)
367369
```

1-js/02-first-steps/13-switch/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ switch (a) {
125125
break;
126126
127127
*!*
128-
case 3: // (*) группируем оба case
128+
case 3: // (*) группируем оба case
129129
case 5:
130130
alert('Неправильно!');
131131
alert("Может вам посетить урок математики?");

1-js/02-first-steps/14-function-basics/1-if-else-required/task.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ function checkAge(age) {
1515
*!*
1616
} else {
1717
// ...
18-
return confirm('Did parents allow you?');
18+
return confirm('Родители разрешили?');
1919
}
2020
*/!*
2121
}
@@ -30,7 +30,7 @@ function checkAge(age) {
3030
}
3131
*!*
3232
// ...
33-
return confirm('Did parents allow you?');
33+
return confirm('Родители разрешили?');
3434
*/!*
3535
}
3636
```

1-js/02-first-steps/14-function-basics/2-rewrite-function-question-or/solution.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
```js
44
function checkAge(age) {
5-
return (age > 18) ? true : confirm('Did parents allow you?');
5+
return (age > 18) ? true : confirm('Родители разрешили?');
66
}
77
```
88

99
Используя оператор `||` (самый короткий вариант):
1010

1111
```js
1212
function checkAge(age) {
13-
return (age > 18) || confirm('Did parents allow you?');
13+
return (age > 18) || confirm('Родители разрешили?');
1414
}
1515
```
1616

1-js/02-first-steps/14-function-basics/2-rewrite-function-question-or/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ function checkAge(age) {
1313
if (age > 18) {
1414
return true;
1515
} else {
16-
return confirm('Do you have your parents permission to access this page?');
16+
return confirm('Родители разрешили?');
1717
}
1818
}
1919
```

1-js/02-first-steps/14-function-basics/4-pow/solution.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ let x = prompt("x?", '');
1414
let n = prompt("n?", '');
1515

1616
if (n < 1) {
17-
alert(`Power ${n} is not supported,
18-
use an integer greater than 0`);
17+
alert(`Power ${n} is not supported, use an integer greater than 0`);
1918
} else {
2019
alert( pow(x, n) );
2120
}

0 commit comments

Comments
 (0)