Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Вводная часть
Node. js – это программная платформа, основанная на движке V8 (транслирующем JavaScript в машинный код), которая превращает JavaScript из узкоспециализированного языка в язык общего назначения. Является реализация стандарта EcmaScript.
Node. js дает возможность JavaScript взаимодействовать с устройствами ввода-вывода через API (написанный на C++), подключать другие внешние библиотеки, написанные на разных языках. Node. js применяется на серверах. В основе Node. js лежит событийноориентированное и асинхронное (реактивное) программирование с неблокирующим вводом/выводом.
Node. js использует один поток для выполнения всего кода
NPM (Node Packaged Modules) – это пакетный менеджер, созданный для Node. js, который позволяет управлять модулями и зависимостями при создании приложений. NPM поставляется вместе с Node. js
Инсталляция Node. js и NPM
Чтобы установить Node. js и NPM, необходимо зайти на сайт http://nodejs. org и скачать установочный файл. Затем запустить файл и следовать инструкциям по установке. Мастер установит программную платформу Node. js и пакетный менеджер NPM. Необходимо проверить работу среды, написав сценарий, которая состоит из одной строки.
Создайте файл main. js Откройте его в текстовом редакторе и внести в него следующую строку:console. log("Hello World!");
Сохраните файл. Откройте командную строку и перейдите в папку с созданным файлом. Введите команду:node main. js
Результатом выполнения будет строка, выведенная в консоль “Hello World!”
Задание по JavaScript
Первый скрипт
var a = 8; //Инициализируются две переменные
h = 10;
console. log('Площадь прямоугольного треугольника равна ', a * h / 20);
Составить сценарий, в котором вычисляется площадь круга по заданному радиусу.
Работа с циклами
Пример «Таблица факториалов»:
for (fact = i = 1; i < 10; i++) {
fact = fact * i;
console. log(i + "! = " + fact);
}
Выполнить задание по вариантам.
Числовая последовательность называется рядом Фибоначчи, если она состоит из чисел 1, 1, 2, 3, 5, 8, 13… .Первые два члена ряда равны единице, затем каждый последующий равен сумме двух предыдущих. Определить десятый член последовательности. Определить сумму первых десяти членов ряда Фибоначчи. Определить среднее арифметическое первых двенадцати членов ряда Фибоначчи. Найти произведение (Х+2)x(Х2+3)х…х(Х10+11). Найти сумму первых двадцати элементов последовательности X, X/3, X/5, ... . Найти частное (3+6+…+33)/(I+2+З...10). Найти произведение (1+2+3+…+40)(5+10+15+...+70). Дана последовательность Х2/2, Х2/6, Х2/10, ... Найти сумму элементов, абсолютные величины которых превышают 0,0005. Примечание: Х < 1. Дана последовательность Х, Х5/4, Х9/8,Х13/12, …. Найти и напечатать сумму абсолютных величин элементов с 3 по 15-тый. Найти и напечатать все целые числа, кратные 31, в интервале от -800 до +800 и подсчитать их количество. Найти сумму ряда Х+X3/3+Х5/5+Х7/7+... суммирование прекратить, когда очередное слагаемое станет меньше 0.005 по абсолютной величине. Примечание: Х < 1. Найти сумму ряда 1+Х+ Х2/2!+ Х3/Х3!+ Х4/4!+ ... Суммирование прекратить, когда абсолютная величина очередного слагаемого станет меньше 0,0003. Примечание: Х < 1. Найти частное (1+3+5 + ...+100)/(101+103+...+200). Дан расходящийся ряд Х+(3Х+1)+(5Х+2)+(7Х+3)+... Найти сумму элементов, абсолютные величины которых не превышают 500 . Найти сумму (1х100)+(3x98)+(5х96)+...+(51x50). Дана последовательность 1 , -3Х, 9Х2 , -27X3,… Найти сумму элементов, превышающих по абсолютной величине 0,006. Примечание: Х < 1. Дана последовательность Х/2,Х3/4,Х6/8,... Найти и напечатать сумму элементов последовательности с 3 по I2-тый. Составить программу нахождения ex, используя формулу: ex = 1+X+X2/2!+X3/3!+... Составить программу нахождения числа e, используя формулу:e = 1+1+1/2!+1/3!+... .
sinx = X-X3/3!+ X5/5!-... .
Составить программу нахождения cosx, используя формулу:cosx = 1-X2/2!+X4/4!-... .
Найти все простые числа, не превосходящие заданного N>0. Разложить заданное натуральное N на простые множители. Заданы два натуральных числа М и N ( М<N ). Найти все простые числа, находящиеся в интервале от М до N.Работа с массивами
Пример работы с двумерным массивов:
var initialArray = [
[5,13,2,-6,7],
[7,2,19,23,0],
[-8,4,2,9,17]
];
function sumArray(a) {
var sum = 0;
for (var i = 0; i < a. length; i++) {
for (var j = 0; j < a[i].length; j++) {
sum += a[i][j];
}
}
return sum;
}
function printArray(a) {
console. log('Содержимое массива:');
for (var i = 0; i < a. length; i++) {
console. log(a[i]);
}
}
printArray(initialArray);
var summa = sumArray(initialArray);
console. log('Сумма = ', summa);
Выполнить задание по вариантам.
Выяснить, является ли заданная квадратная матрица «магическим квадратом». Задана матрица А(8,8). Упорядочить элементы в каждой строке в порядке возрастания их значений. Задана матрица К(8,8). Поменять местами элементы строки с максимальной суммой элементов и элементы второго столбца. Задана матрица В(8,8). Поменять местами элементы столбца, содержащего большее число положительных элементов, и элементы главной диагонали. Квадратная матрица М состоит из 6 строк, 6 столбцов. Вычесть из каждого ее э лемента сумму элементов, расположенных на главной диагонали. Матрица М состоит из 5 строк, 8 столбцов. Составить массив М1 из положительных, М2 - из отрицательных элементов матрицы. Сформировать матрицу М1, вычтя из каждого элемента исходной ной матрицы М среднее арифметическое, вычисленное по всем ее элементам. Матрица М состоит из 4 строк, 3 столбцов. Вычесть из всех строк, начиная со второй, первую строку. Матрица М состоит из 7 строк, 9 столбцов. Найти максимальный по абсолютной величине элемент и поменять его местами с первым элементом. Матрица М состоит из 5 строк, 7 столбцов. Расположить элементы в каждом столбце в порядке возрастания. Матрица М состоит из 6 строк, 8 столбцов. Выяснить, сколько элементов в каждой строке превышают среднее арифметическое значение, определенное для этой строки. Из найденных величин составить массив Р. Матрица М состоит из 6 строк, 5 столбцов. Умножить элементы в каждой из строк на номер этой строки. Матрица М содержит 7 строк, 9 столбцов. Расположить элементы в каждой строке в порядке возрастания. Матрица М состоит из 5 строк, 7 столбцов. Расположить элементы в каждом столбце в порядке возрастания.
Работа с функциями
Выполнить задание по вариантам. n - чётное и больше либо равно 4.
При выполнении задания необходимо написать 3 функции:
- Функция getRandomInt(min, max)
Принимает параметры min и max.
Возвращает случайное целое число между min (включительно) и max (не включая max)
- Функция getArray(n)
Принимает размерность n
Возвращает массив со сгенерированными значениями через функцию getRandomInt
- Функция getResultArray(a)
Принимать исходный массив a
Возвращать отсортированный массив.
Даны числа a1..a(n*n), получить квадратную матрицу порядка n, элементами которой являются числа a1..a(n*n), расположенные в ней по схеме:
Дана квадратная матрица порядка n. Получить новую матрицу, сортируя и переставляя элементы исходной матрицы по следующей схеме:
Написать тесты
Используя библиотеки Mocha (https://mochajs.org/) написать тесты для своего варианта.
- Проверка площади круга по заданному радиусу Проверка работы с циклами Проверка работы с массивами Проверка работы с функциями
Откройте командную строку и установите глобально библиотеку Mocha.
npm install - g mocha
Создайте папку, например, mocha-task. Для запуска тестов используется команда mocha.
mocha
Warning: Could not find any test files matching pattern: test
No test files found
По умолчанию mocha ищет файлы/папки содержащие в своём названии ‘test’.
Создайте файл test. js и поместите в него следующее содержимое.
var assert = require('assert');
function sum(a, b) {
return a + b;
}
describe("pow", function() {
it("складывает 2 и 3", function() {
assert. equal(sum(2, 3), 5);
});
});
Запустите вновь mocha
pow
√ складывает 2 и 3
1 passing (9ms)
Заготовка для работы с тестами:
var assert = require('assert');
function circleAreaByRadius(r) {
return 50.26548245743669;
}
function sumFibonacci(n) {
return 12;
}
function arraySort(a) {
return [1,2,3];
}
function getRandomInt(min, max) {
return 42;
}
function getArray(n) {
return [3,2,1];
}
function getResultArray(a) {
return [1,2,3];
}
describe('Проверка площади круга по заданному радиусу', function() {
it('Проверяет площадь круга с радиусом 4', function() {
assert. equal(circleAreaByRadius(4), 50.26548245743669);
});
});
describe('Проверка работы с циклами', function() {
it('Определить сумму первых пяти членов ряда Фибоначчи', function() {
assert. equal(sumFibonacci(5), 12);
});
});
describe('Проверка работы с массивами', function() {
it('Отсортировать массив', function() {
var initialArray = [3,2,1];
var resultArray = [1,2,3];
assert. deepEqual(arraySort(initialArray), resultArray);
});
});
describe('Проверка работы с функциями', function() {
it('Функция getRandomInt(min, max)', function() {
assert. equal(getRandomInt(10,50), 42);
});
it('Функция getArray(n)', function() {
assert. deepEqual(getArray(3), [3,2,1]);
});
it('Функция getResultArray(a)', function() {
var initialArray = [
[5,13,2],
[7,2,19],
[-8,4,2]
];
var resultArray = [
[-8,2,2],
[2,4,5],
[7,13,19]
];
// assert. deepEqual(getResultArray(initialArray), resultArray);
});
});
Работа с DOM
Вывести результат из индивидуального задания по вариантам про функции в HTML таблицу. В этой таблице раскрасить четные строки используя методы свойства classList.
Пример работы с dom


