|
@@ -0,0 +1,299 @@
|
|
|
|
+$(document).ready(function() {
|
|
|
|
+
|
|
|
|
+ $(".button").css({ // Стилизация кнопки для запуска задач
|
|
|
|
+ "display": "inline-block",
|
|
|
|
+ "background": "grey",
|
|
|
|
+ "cursor": "pointer",
|
|
|
|
+ "padding": "10px",
|
|
|
|
+ "margin": "20px 0 0 20px",
|
|
|
|
+ "border-radius": "10px",
|
|
|
|
+ "color": "white"
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ $(".task").css({
|
|
|
|
+ "width": "50%",
|
|
|
|
+ "border-bottom": "1px solid black",
|
|
|
|
+ "box-sizing": "border-box",
|
|
|
|
+ "padding": "10px"
|
|
|
|
+ });
|
|
|
|
+
|
|
|
|
+ $(".task:first-child img").css("width", "1000px");
|
|
|
|
+
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// Задачки
|
|
|
|
+
|
|
|
|
+function exercises(par) {
|
|
|
|
+
|
|
|
|
+ var arr = [task_2, task_3, task_4, task_5, task_6, task_7, task_8, task_9, task_10, task_11];
|
|
|
|
+
|
|
|
|
+ arr[par-2]();
|
|
|
|
+
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 2. Сформируйте строку вида ".#.#.#.#.#." чередованием символов . и # с помощью цикла for.
|
|
|
|
+
|
|
|
|
+// ET = 3 min;
|
|
|
|
+// AT = 5 min;
|
|
|
|
+
|
|
|
|
+function task_2() {
|
|
|
|
+
|
|
|
|
+ var l = +prompt("Введите длинну строки:"),
|
|
|
|
+ str = "";
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ for(var i = 1; i <= l; i++) {
|
|
|
|
+
|
|
|
|
+ if (i%2) {
|
|
|
|
+ str = str + ".";
|
|
|
|
+ } else {
|
|
|
|
+ str = str + "#";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ alert(str);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 3. Напишите цикл с шагом 1, в теле которого распечатываются квадраты каждого четного значения счетчика.
|
|
|
|
+
|
|
|
|
+// ET = 4 min;
|
|
|
|
+// AT = 3 min;
|
|
|
|
+
|
|
|
|
+function task_3() {
|
|
|
|
+
|
|
|
|
+ for(var i = 0; i < 10; i++) {
|
|
|
|
+
|
|
|
|
+ if ( !(i%2) && i != 0) {
|
|
|
|
+ alert(Math.pow(i,2));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 4. Напишите цикл с confirm, который продолжается при нажатии на Отмена и прерывается при нажатии на Ok.
|
|
|
|
+
|
|
|
|
+// ET = 7 min;
|
|
|
|
+// AT = 2 min;
|
|
|
|
+
|
|
|
|
+function task_4() {
|
|
|
|
+
|
|
|
|
+ while(true) {
|
|
|
|
+ if (confirm("Нажмите что-нибудь")) {
|
|
|
|
+ break;
|
|
|
|
+ } else {
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 5. В окно prompt вводится число. Напишите цикл, в котором суммируются все нечетные числа до диапазона,
|
|
|
|
+// введенного пользователем. Результат отобразите в окне alert.
|
|
|
|
+
|
|
|
|
+// ET = 5 min;
|
|
|
|
+// AT = 6 min;
|
|
|
|
+
|
|
|
|
+function task_5() {
|
|
|
|
+
|
|
|
|
+ var num = +prompt("Введите число"),
|
|
|
|
+ sum = 0;
|
|
|
|
+
|
|
|
|
+ for (var i = 0; i <= num; i++) {
|
|
|
|
+
|
|
|
|
+ if (i%2) {
|
|
|
|
+ sum = sum + i;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ alert(sum);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 6. Напишите бесконечный цикл, который прерывается при помощи команды break, когда Math.random() > 0.9.
|
|
|
|
+// Выведите в окно alert случайное число, прервавшее цикл, и количество итераций цикла.
|
|
|
|
+
|
|
|
|
+// ET = 5 min;
|
|
|
|
+// AT = 4 min;
|
|
|
|
+
|
|
|
|
+function task_6() {
|
|
|
|
+
|
|
|
|
+ for(var i = 0; ; i++) {
|
|
|
|
+
|
|
|
|
+ var a = Math.random();
|
|
|
|
+
|
|
|
|
+ if (a > 0.9) {
|
|
|
|
+ alert(a+", "+i);
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 7. Используя вложенные циклы, распечатайте на странице значения таблицы умножения: 1х1=1, 1x2=2 ... 2x1=2, 2x2=4...
|
|
|
|
+
|
|
|
|
+// ET = 7 min;
|
|
|
|
+// AT = 7 min;
|
|
|
|
+
|
|
|
|
+function task_7() {
|
|
|
|
+
|
|
|
|
+ var main_str = "";
|
|
|
|
+
|
|
|
|
+ for(var i = 1; i <=9; i++) {
|
|
|
|
+
|
|
|
|
+ var str = "";
|
|
|
|
+
|
|
|
|
+ for(var j = 1; j <= 9; j++) {
|
|
|
|
+
|
|
|
|
+ str = str + i + "x" + j + "=" + (i*j) + " , ";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ main_str = main_str + str + "\n";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ alert(main_str);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 8. Используя вложенные циклы, сформируйте строку чередованием символов . и # таким образом, чтобы получилась
|
|
|
|
+// шахматный узор. Для перевода строки используйте символ \n. Код должен поддерживать легкое изменение размеров доски.
|
|
|
|
+// .#.#.#.#.#.#
|
|
|
|
+// #.#.#.#.#.#.
|
|
|
|
+// .#.#.#.#.#.#
|
|
|
|
+// #.#.#.#.#.#.
|
|
|
|
+// .#.#.#.#.#.#
|
|
|
|
+
|
|
|
|
+// ET = 10 min;
|
|
|
|
+// AT = 8 min;
|
|
|
|
+
|
|
|
|
+function task_8() {
|
|
|
|
+
|
|
|
|
+ var a = +prompt("Введите ширину доски:"),
|
|
|
|
+ b = +prompt("Введите высоту доски:"),
|
|
|
|
+ str = "";
|
|
|
|
+
|
|
|
|
+ for(var i = 1; i <= b; i++) {
|
|
|
|
+
|
|
|
|
+ for(var j = 1; j <= a; j++) {
|
|
|
|
+
|
|
|
|
+ if (j%2) {
|
|
|
|
+ str = str + ".";
|
|
|
|
+ } else {
|
|
|
|
+ str = str + "#";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ str = str + "\n";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ alert(str);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 9. С помощью цикла for с пустым телом сформируйте строку, представляющую из себя ряд Фибоначчи: 0 1 1 2 3 5 8 13...
|
|
|
|
+
|
|
|
|
+// ET = 6 min;
|
|
|
|
+// AT = 6 min;
|
|
|
|
+
|
|
|
|
+function task_9() {
|
|
|
|
+
|
|
|
|
+ for(var i = 0, j = 1, str=""; i <= 100; str = str + i + " " + j + " ", i = j + i, j = j+i ) {}
|
|
|
|
+
|
|
|
|
+ alert(str);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// 10. Запустите цикл, в котором пользователю предлагается вводить число с клавиатуры, до тех пор,
|
|
|
|
+// пока не будет нажата Отмена. После выхода из цикла распечатайте количество введенных чисел,
|
|
|
|
+// их общую сумму и среднее арифметическое.
|
|
|
|
+
|
|
|
|
+// ET = 7 min;
|
|
|
|
+// AT = 15 min;
|
|
|
|
+
|
|
|
|
+function task_10() {
|
|
|
|
+
|
|
|
|
+ var sum = 0;
|
|
|
|
+
|
|
|
|
+ for(var i = 0; ; i++) {
|
|
|
|
+
|
|
|
|
+ var num = prompt("Введите число");
|
|
|
|
+
|
|
|
|
+ if (num == null) {
|
|
|
|
+ alert("Чисел введено: " + i + "\nИх сумма: " + sum + "\nСреднее арифметическое: " + sum/i);
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ sum = sum + +num;
|
|
|
|
+ }
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+// LEVEL UP
|
|
|
|
+
|
|
|
|
+// Сформируйте строку в виде треугольника-елочки:
|
|
|
|
+
|
|
|
|
+// .....#.....
|
|
|
|
+// ....###....
|
|
|
|
+// ...#####...
|
|
|
|
+// ..#######..
|
|
|
|
+// .#########.
|
|
|
|
+// ###########
|
|
|
|
+
|
|
|
|
+// AT = 70 min;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+function task_11() {
|
|
|
|
+
|
|
|
|
+ var h = prompt("Какой высоты хотите елку?"),
|
|
|
|
+ str = "",
|
|
|
|
+ l = h*2 - 1; // Длинна основания елки
|
|
|
|
+
|
|
|
|
+ for(var i = 1; i <= h; i++) {
|
|
|
|
+
|
|
|
|
+ for(var j = 1; j <= l; j++) {
|
|
|
|
+
|
|
|
|
+ if (j <= Math.floor(l/2) - (i-1) ) {
|
|
|
|
+
|
|
|
|
+ str = str + "-";
|
|
|
|
+
|
|
|
|
+ } else
|
|
|
|
+
|
|
|
|
+ if ( (j > Math.floor(l/2)-(i-1)) && (j <= Math.floor(l/2)-(i-1) + (2*i-1)) ) {
|
|
|
|
+
|
|
|
|
+ str = str + "#";
|
|
|
|
+
|
|
|
|
+ } else
|
|
|
|
+
|
|
|
|
+ if (j > Math.floor(l/2)-(i-1) + (2*i-1)) {
|
|
|
|
+
|
|
|
|
+ str = str + "-";
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ str = str + "\n";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ alert(str);
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|