diff --git a/Index.html b/Index.html new file mode 100644 index 0000000..2a8fb5f --- /dev/null +++ b/Index.html @@ -0,0 +1,12 @@ + + + + + Урок №1 + + + + + \ No newline at end of file diff --git a/practic2.js b/practic2.js new file mode 100644 index 0000000..f2d34dc --- /dev/null +++ b/practic2.js @@ -0,0 +1,119 @@ +//Почему код даёт именно такие результаты? + +alert("Почему код даёт именно такие результаты?"); +var a = 1, b = 1, c, d; +c = ++a; // 2 +document.write("var a = 1, b = 1, c, d
c = ++a результат a=2 с=2
"); +alert("сначала инкремент 'a=2' потом 'c=a=2'"); +d = b++; // 1 +document.write("d = b++ результат d=1 b=2
"); +alert("сначала 'd=b=1' потом инкремент 'b=2'"); +c = (2 + ++a); // 5 +document.write("c = (2+ ++a) результат c=5 a=3
"); +alert("сначала инкремент 'a=3', потом сложение '2+3'"); +d = (2 + b++); // 4 +document.write("d = (2 + b++) результат d=4 b=3
") +alert("сначала сложение 'd=2+b=2+2=4', потом инкремент 'b=3'"); + +// Чему будет равен x в примере ниже? +alert("Чему будет равен x в примере ниже?"); +var a = 2; +var x = 1 + (a *= 2); +document.write("x = 1 + (a *= 2)
если a=2 X = " + x + "
"); +alert("сначала умножение с последующим присваиванием 'a=4', потом сложение '1+4'"); + +//Задание №3 +alert("Задание №3"); +var a = parseInt(prompt("Введите значение для 'a'", "0")); +var b = parseInt(prompt("Введите значение для 'b'", "0")); +if (isNaN(a)||isNaN(b)){ + alert("Вы ввели не число"); +} +else{ + var result; + if (a>=0&&b>=0){ + subtraction(a, b); + alert("а и b положительные, поэтому вычитаем!"); + } + else if (a<0&&b<0){ + multiplication(a, b); + alert("а и b отрицательные, поэтому умножаем!"); + } + else{ + addition(a, b); + alert("а и b разных знаков, поэтому складываем!"); + } + alert("Результат вычислений = " + result) +} +function addition(a, b){ + result = a + b; + return result; +} +function subtraction (a, b){ + result = a - b; + return result; +} +function multiplication (a, b){ + result= a * b; + return result; +} + +//Задание №4 (Мне понравился такой вариант решения, по крайней мере он короче) +alert("Задание №4"); +var myArray=[]; +var a=parseInt(prompt("Введите значение для 'a' от 0 до 15", "0")); +for (var i = 0; i <= 15 - a; i++){ + myArray[i]=a+i; +} +//Цикл для вывода значений без запятых +for (var j = 0; j < myArray.length; j++){ + document.write(myArray[j] + "
"); +} +//Задание №5 (3 основных функуии уже реализованы в задании №3) +alert("Задание №5"); +document.write("Реализуем функцию деления а / b
") +function dividing (a, b){ + result = a / b; + return result; +} +document.write("результат - " + dividing(5, 10)); + +//Задание №6 +alert("Задание №6"); +var arg1 = parseFloat(prompt("Введите значение для 'arg1'", "0")); +var arg2 = parseFloat(prompt("Введите значение для 'arg2'", "0")); +var operation = prompt("Введите тип операци", "+"); +mathOperation(arg1, arg2, operation); +function mathOperation (arg1, arg2, operation){ + switch(operation){ + case("+"): + addition(arg1, arg2); + break; + case("-"): + subtraction(arg1, arg2); + break; + case("*"): + multiplication(arg1, arg2); + break; + case("/"): + dividing(arg1, arg2); + break; + default: + console.log("Данные неизвестной величины"); + break; + } + document.write("
" + result); +} +// Задание №7 +/*значение null означает, что переменная имеет некоторое неопределенное значение (не число, не строка, не логическое значение), но все-таки имеет значение, а ноль это число.*/ +// Задание №8 +alert("Задание №8"); +var val = parseFloat(prompt("Введите число", "1")); +var pow = parseInt(prompt("Введите степень", "1")); +document.write("
Результат возведения " + val + " в степень " + pow + " равен " + power(val, pow)); +function power(val, pow){ + if (pow == 1){ + return val; + } + return power(val, pow-1) * val; +} \ No newline at end of file diff --git a/practic3.js b/practic3.js new file mode 100644 index 0000000..34c95fa --- /dev/null +++ b/practic3.js @@ -0,0 +1,34 @@ +//задача №1 +let a = [ + [{name: 'Mary', age: 23}, {name: 'Mike', age: 45}, {name: 'Nick', age: 11}], + [{name: 'Adam', age: 56}, {name: 'Sara', age: 21}, {name: 'Don', age: 22}], + [{name: 'Karl', age: 34}, {name: 'Marta', age: 76}, {name: 'John', age: 19}] +]; +let b = []; +for (var i = 0; i 999 || data < 1 || isNaN(data)){ + console.log("Ошибка ввода, введите число от 1 до 999"); + return {}; +} + let hundreds = (data - data % 100) / 100; + let decades = (data % 100 - data % 10) / 10; + let units = data % 10; + return { + "hundreds" : hundreds, + "decades" : decades, + "units" : units + }; +} +var res = convertNumber(data); +console.log(res); + +//Задача №2 +let tovar = [{name: 'apples', price: 100}, {name: 'pears', price: 300}, {name: 'oranges', price: 150}, {name: 'grape', price: 200}]; +let basket = { + goodList: [], + countTotalPrice: function(){ + let totalCost = 0; + this.goodList.forEach(function(item){ + totalCost += item.price * item.count; + }) + return totalCost; + }, + countTotalNumber: function(){ + let totalCount = 0; + this.goodList.forEach(function(item){ + totalCount += item.count; + }) + return totalCount; + }, + putProduct (product, count){ + let ind = this.goodList.findIndex(function(element){ + return element.name === product.name; + }); + if (ind === -1) { + this.goodList.push(Object.assign({}, product)); + this.goodList[this.goodList.length - 1].count = count; + } + else { + this.goodList[ind].count += count; + } + } +}; +for (var i = 0; i