From c5925f71aaac6b943bb6a7aebfbfe3ff0fd4b324 Mon Sep 17 00:00:00 2001 From: vodarum Date: Mon, 25 Jul 2022 20:18:25 +0300 Subject: [PATCH] Add JS Begin homework solution --- JavaScript Begin/hw1/task1.js | 11 +++++ JavaScript Begin/hw1/task2.js | 9 +++++ JavaScript Begin/hw1/task3.js | 11 +++++ JavaScript Begin/hw10/task1.js | 23 +++++++++++ JavaScript Begin/hw2/task1.js | 15 +++++++ JavaScript Begin/hw2/task2.js | 49 ++++++++++++++++++++++ JavaScript Begin/hw2/task3.js | 24 +++++++++++ JavaScript Begin/hw3/task1.js | 11 +++++ JavaScript Begin/hw3/task2.js | 24 +++++++++++ JavaScript Begin/hw3/task3.js | 25 ++++++++++++ JavaScript Begin/hw4/task1.js | 14 +++++++ JavaScript Begin/hw4/task2.js | 15 +++++++ JavaScript Begin/hw4/task3.js | 17 ++++++++ JavaScript Begin/hw5/task1.js | 14 +++++++ JavaScript Begin/hw5/task2.js | 14 +++++++ JavaScript Begin/hw5/task3.js | 21 ++++++++++ JavaScript Begin/hw6/task1.js | 11 +++++ JavaScript Begin/hw6/task2.js | 20 +++++++++ JavaScript Begin/hw6/task3.js | 17 ++++++++ JavaScript Begin/hw7/task1.js | 42 +++++++++++++++++++ JavaScript Begin/hw8/task1.js | 43 ++++++++++++++++++++ JavaScript Begin/hw8/task2.js | 14 +++++++ JavaScript Begin/hw8/task3.js | 23 +++++++++++ JavaScript Begin/hw9/task1.js | 45 +++++++++++++++++++++ JavaScript Begin/hw9/task2.js | 12 ++++++ JavaScript Begin/hw9/task3.js | 21 ++++++++++ JavaScript Begin/index.html | 74 ++++++++++++++++++++++++++++++++++ JavaScript Begin/style.css | 39 ++++++++++++++++++ 28 files changed, 658 insertions(+) create mode 100644 JavaScript Begin/hw1/task1.js create mode 100644 JavaScript Begin/hw1/task2.js create mode 100644 JavaScript Begin/hw1/task3.js create mode 100644 JavaScript Begin/hw10/task1.js create mode 100644 JavaScript Begin/hw2/task1.js create mode 100644 JavaScript Begin/hw2/task2.js create mode 100644 JavaScript Begin/hw2/task3.js create mode 100644 JavaScript Begin/hw3/task1.js create mode 100644 JavaScript Begin/hw3/task2.js create mode 100644 JavaScript Begin/hw3/task3.js create mode 100644 JavaScript Begin/hw4/task1.js create mode 100644 JavaScript Begin/hw4/task2.js create mode 100644 JavaScript Begin/hw4/task3.js create mode 100644 JavaScript Begin/hw5/task1.js create mode 100644 JavaScript Begin/hw5/task2.js create mode 100644 JavaScript Begin/hw5/task3.js create mode 100644 JavaScript Begin/hw6/task1.js create mode 100644 JavaScript Begin/hw6/task2.js create mode 100644 JavaScript Begin/hw6/task3.js create mode 100644 JavaScript Begin/hw7/task1.js create mode 100644 JavaScript Begin/hw8/task1.js create mode 100644 JavaScript Begin/hw8/task2.js create mode 100644 JavaScript Begin/hw8/task3.js create mode 100644 JavaScript Begin/hw9/task1.js create mode 100644 JavaScript Begin/hw9/task2.js create mode 100644 JavaScript Begin/hw9/task3.js create mode 100644 JavaScript Begin/index.html create mode 100644 JavaScript Begin/style.css diff --git a/JavaScript Begin/hw1/task1.js b/JavaScript Begin/hw1/task1.js new file mode 100644 index 0000000..3ee5155 --- /dev/null +++ b/JavaScript Begin/hw1/task1.js @@ -0,0 +1,11 @@ +// В переменных a и b хранятся числа. Написать +// программу, которая выводит в консоль произведение +// и сумму этих чисел. + +{ + const a = 21; + const b = 24; + + console.log(`Произведение чисел ${a} и ${b} равно ${a * b}`); + console.log(`Сумма чисел ${a} и ${b} равна ${a + b}`); +} \ No newline at end of file diff --git a/JavaScript Begin/hw1/task2.js b/JavaScript Begin/hw1/task2.js new file mode 100644 index 0000000..031ba83 --- /dev/null +++ b/JavaScript Begin/hw1/task2.js @@ -0,0 +1,9 @@ +// В двух переменных хранятся строки символов. +// Написать программу, которая выведет в консоль +// суммарное количество символов в обоих строках. + +const firstString = 'Один'; +const secondString = 'Два'; +const concatString = firstString + secondString; + +console.log(concatString.length); \ No newline at end of file diff --git a/JavaScript Begin/hw1/task3.js b/JavaScript Begin/hw1/task3.js new file mode 100644 index 0000000..e43ad8d --- /dev/null +++ b/JavaScript Begin/hw1/task3.js @@ -0,0 +1,11 @@ +// *Написать программу, которая запрашивает у +// пользователя ввод трёхзначного числа, а потом +// выводит в консоль сумму цифр введённого числа. + +const threeDigitNumber = prompt('Введите трехзначное число: '); + +const thirdNumber = threeDigitNumber % 10; +const secondNumber = (threeDigitNumber - thirdNumber) % 100 / 10; +const firstNumber = (threeDigitNumber - thirdNumber - secondNumber * 10) / 100; + +console.log(firstNumber * secondNumber * thirdNumber); \ No newline at end of file diff --git a/JavaScript Begin/hw10/task1.js b/JavaScript Begin/hw10/task1.js new file mode 100644 index 0000000..1a70992 --- /dev/null +++ b/JavaScript Begin/hw10/task1.js @@ -0,0 +1,23 @@ +// Пользователь вводит текстовую строку. Определить с +// помощью регулярного выражения, является ли +// введённая строка: +// 1.Датой. +// 2.Адресом электронной почты. +// 3.*Номером телефона + +{ + const str = prompt('Введите значение: '); + const dateRegexp = /^(0[1-9]|[12][0-9]|3[0-1])\.(0[1-9]|1[0-2])\.(0[0-9]{2}[1-9]{1}|[1-9]{1}[0-9]{3})$/; + const emailRegexp = /^(\w+)@([a-z]{2,})\.([a-z]{2,})$/; + const phoneRegexp = /^(8|\+?7)\-?(9[0-9]{2})\-?([0-9]{3})\-?([0-9]{2})\-?([0-9]{2})$/; + + if (dateRegexp.test(str)) { + console.log('Введенное значение является датой'); + } else if (emailRegexp.test(str)) { + console.log('Введенное значение является электронным адресом'); + } else if (phoneRegexp.test(str)) { + console.log('Введенное значение является телефоном'); + } else { + console.log('Введенное значение некорректно'); + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw2/task1.js b/JavaScript Begin/hw2/task1.js new file mode 100644 index 0000000..4e3a61e --- /dev/null +++ b/JavaScript Begin/hw2/task1.js @@ -0,0 +1,15 @@ +// В переменных a и b хранятся числа. Вывести в +// консоль наибольшее из них. + +{ + const a = 4; + const b = 7; + + if (a > b) { + console.log(a); + } else if (a < b) { + console.log(b); + } else { + console.log('Оба числа одинаковые'); + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw2/task2.js b/JavaScript Begin/hw2/task2.js new file mode 100644 index 0000000..2ade6a4 --- /dev/null +++ b/JavaScript Begin/hw2/task2.js @@ -0,0 +1,49 @@ +// Запросить у пользователя ввод числа от 1 до 12. +// Вывести в консоль название месяца, соответствующее +// этому числу (1 — январь, 2 — февраль и т.д.). + +{ + const num = prompt('Введите число от 1 до 12: '); + + switch (+num) { + case 1: + console.log('Январь'); + break; + case 2: + console.log('Февраль'); + break; + case 3: + console.log('Март'); + break; + case 4: + console.log('Апрель'); + break; + case 5: + console.log('Май'); + break; + case 6: + console.log('Июнь'); + break; + case 7: + console.log('Июль'); + break; + case 8: + console.log('Август'); + break; + case 9: + console.log('Сентябрь'); + break; + case 10: + console.log('Октябрь'); + break; + case 11: + console.log('Ноябрь'); + break; + case 12: + console.log('Декабрь'); + break; + default: + console.log('Читай задание внимательно!'); + break; + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw2/task3.js b/JavaScript Begin/hw2/task3.js new file mode 100644 index 0000000..a92b54d --- /dev/null +++ b/JavaScript Begin/hw2/task3.js @@ -0,0 +1,24 @@ +// *В переменных circle и square хранятся площади круга +// и квадрата соответственно. Написать программу, +// которая определяет, поместится ли круг в квадрат. + +const circle = 14.2; +const square = 16; + +// Площадь круга можно вычислить по формуле S = 3.14 * r^2, где r - радиус. +// Площадь квадрата можно вычислить по формуле S = 4 * r^2, где r - радиус вписанной окружности. + +// Получаем радиус окружности, возведенный в квадрат. +const circleDoubleRadius = (circle / 3.14).toFixed(3); +// Получаем радиус вписанной в квадрат окружности, возведенный в квадрат. +const innerCircleDoubleRadius = (square / 4).toFixed(3); + +// Если радиус вписанной в квадрат окружности больше радиуса круга из условия либо равен ему, то круг из условия поместится в квадрат. +// Если радиус вписанной в квадрат окружности меньше радиуса круга из условия, то круг из условия не поместится в квадрат. + +console.log(circleDoubleRadius, innerCircleDoubleRadius); +if (innerCircleDoubleRadius >= circleDoubleRadius) { + console.log('Круг в квадрат поместится'); +} else { + console.log('Круг в квадрат не поместится'); +} \ No newline at end of file diff --git a/JavaScript Begin/hw3/task1.js b/JavaScript Begin/hw3/task1.js new file mode 100644 index 0000000..ca59138 --- /dev/null +++ b/JavaScript Begin/hw3/task1.js @@ -0,0 +1,11 @@ +// Вывести в консоль сумму всех целых чисел от 50 до 100. + +{ + let sum = 0; + + for (let i = 50; i <= 100; i++) { + sum += i; + } + + console.log(sum); +} \ No newline at end of file diff --git a/JavaScript Begin/hw3/task2.js b/JavaScript Begin/hw3/task2.js new file mode 100644 index 0000000..c0b7f8b --- /dev/null +++ b/JavaScript Begin/hw3/task2.js @@ -0,0 +1,24 @@ +// Вывести в консоль таблицу умножения на 7. +// 7 x 1 = 7 +// 7 x 2 = 14 +// … +// 7 x 9 = 63 + +{ + const num = 7; + let i = 1; + + while (i <= 9) { + console.log(`${i} x ${num} = ${i * num}`); + i++; + } + + // while (true) { + // if (i > 9) { + // break; + // } + + // console.log(`${i} x ${num} = ${i * num}`); + // i++; + // } +} \ No newline at end of file diff --git a/JavaScript Begin/hw3/task3.js b/JavaScript Begin/hw3/task3.js new file mode 100644 index 0000000..5469664 --- /dev/null +++ b/JavaScript Begin/hw3/task3.js @@ -0,0 +1,25 @@ +// *Запросить у пользователя ввод числа N. Вывести в +// консоль среднее арифметическое всех нечётных +// чисел от 1 до N. + +{ + const N = prompt('Введите целое число: '); + let sum = 0; + let oddNumCount = 0; + + // Вариант 1 + // for (let i = 1; i <= +N; i++) { + // if (i % 2 !== 0) { + // sum += i; + // oddNumCount += 1; + // } + // } + + // Вариант 2 + for (let i = 1; i <= +N; i = i + 2) { + sum += i; + oddNumCount += 1; + } + + console.log(sum / oddNumCount); +} \ No newline at end of file diff --git a/JavaScript Begin/hw4/task1.js b/JavaScript Begin/hw4/task1.js new file mode 100644 index 0000000..28de16c --- /dev/null +++ b/JavaScript Begin/hw4/task1.js @@ -0,0 +1,14 @@ +// Создайте объект user, содержащий поле name со +// значением ‘John’. +// Запросить у пользователя ввод числа. Записать +// введенное значение в поле age объекта user. + +{ + const user = { + name: 'John' + }; + + user.age = +prompt('Введите число: '); + + console.log(user); +} \ No newline at end of file diff --git a/JavaScript Begin/hw4/task2.js b/JavaScript Begin/hw4/task2.js new file mode 100644 index 0000000..5cfe490 --- /dev/null +++ b/JavaScript Begin/hw4/task2.js @@ -0,0 +1,15 @@ +// Создать копию объекта user с именем admin. +// Добавить новому объекту поле role со значением ‘admin’. + + +{ + const user = { + name: 'John' + }; + + user.age = +prompt('Введите число: '); + + const admin = Object.assign({}, user, { role: 'admin' }); + + console.log(user, admin); +} \ No newline at end of file diff --git a/JavaScript Begin/hw4/task3.js b/JavaScript Begin/hw4/task3.js new file mode 100644 index 0000000..b42d22a --- /dev/null +++ b/JavaScript Begin/hw4/task3.js @@ -0,0 +1,17 @@ +// Записать все значения полей объекта admin в +// отдельные переменные. Имена переменных +// должны совпадать с названиями полей. + +{ + const user = { + name: 'John' + }; + + user.age = +prompt('Введите число: '); + + const admin = Object.assign({}, user, { role: 'admin' }); + + const { name, age, role } = admin; + + console.log(name, age, role); +} \ No newline at end of file diff --git a/JavaScript Begin/hw5/task1.js b/JavaScript Begin/hw5/task1.js new file mode 100644 index 0000000..5e462e9 --- /dev/null +++ b/JavaScript Begin/hw5/task1.js @@ -0,0 +1,14 @@ +// Создайте массив целых чисел из 10 элементов. +// Выведите в консоль сумму всех элементов массива. + +{ + const arr = [0, 1, 2, 4, 8, 16, 32, 64, 128, 256]; + + let sum = 0; + + arr.forEach(function(i) { + sum += i; + }); + + console.log(sum); +} \ No newline at end of file diff --git a/JavaScript Begin/hw5/task2.js b/JavaScript Begin/hw5/task2.js new file mode 100644 index 0000000..7374d8a --- /dev/null +++ b/JavaScript Begin/hw5/task2.js @@ -0,0 +1,14 @@ +// Создайте массив целых чисел из 10 элементов. +// Создайте новый массив на основе исходного, в +// котором каждый элемент будет вдвое больше +// элемента исходного массива с таким же индексом. +// (a[1] = 3, b[1] = 6, где a — исходный массив, b — новый массив). + +{ + const arr = [0, 1, 2, 4, 8, 16, 32, 64, 128, 256]; + const newArr = arr.map(function(i) { + return i * 2; + }); + + console.log(arr, newArr); +} \ No newline at end of file diff --git a/JavaScript Begin/hw5/task3.js b/JavaScript Begin/hw5/task3.js new file mode 100644 index 0000000..278d3cb --- /dev/null +++ b/JavaScript Begin/hw5/task3.js @@ -0,0 +1,21 @@ +// Создайте массив целых чисел из 10 элементов. +// *Найдите и выведите в консоль наибольший и наименьший элементы исходного массива. + +{ + const arr = [0, 1, 2, 4, 8, 16, 32, 64, 128, 256]; + + let min = arr[0]; + let max = arr[0]; + + arr.forEach(function(i) { + if (i < min) { + min = i; + } + + if (i > max) { + max = i; + } + }); + + console.log(min, max); +} \ No newline at end of file diff --git a/JavaScript Begin/hw6/task1.js b/JavaScript Begin/hw6/task1.js new file mode 100644 index 0000000..321d591 --- /dev/null +++ b/JavaScript Begin/hw6/task1.js @@ -0,0 +1,11 @@ +// Напишите функцию diff, которая получает в качестве +// параметров 2 числа и возвращает разницу между +// наибольшим и наименьшим. + +{ + function diff(firstNum, secondNum) { + return firstNum > secondNum ? firstNum - secondNum : secondNum - firstNum; + } + + console.log(diff(1, 5)); +} \ No newline at end of file diff --git a/JavaScript Begin/hw6/task2.js b/JavaScript Begin/hw6/task2.js new file mode 100644 index 0000000..de304b0 --- /dev/null +++ b/JavaScript Begin/hw6/task2.js @@ -0,0 +1,20 @@ +// Напишите функцию isWord, которая принимает на +// вход текстовую строку. Функция возвращает true, если +// строка состоит из одного слова и false, если из +// нескольких. + +{ + const isWord = (str) => { + const words = str.split(' '); + + if (words.length === 1) { + return words[0] ? true : 'Строка пустая!'; + } else { + return false; + } + }; + + console.log(isWord('')); + console.log(isWord('слово')); + console.log(isWord('два слова')); +} \ No newline at end of file diff --git a/JavaScript Begin/hw6/task3.js b/JavaScript Begin/hw6/task3.js new file mode 100644 index 0000000..ee3cf7f --- /dev/null +++ b/JavaScript Begin/hw6/task3.js @@ -0,0 +1,17 @@ +// *Напишите функцию pow(a, x), которая вернёт +// значение числа a, возведённого в степень x + +{ + // Работает только для случаев, когда x представляет собой целое число не менее 1 + function pow(a, x) { + let result = 1; + + for (let i = 1; i <= x; i++) { + result *= a; + } + + return result; + } + + console.log(pow(9, 2)); +} \ No newline at end of file diff --git a/JavaScript Begin/hw7/task1.js b/JavaScript Begin/hw7/task1.js new file mode 100644 index 0000000..628c98b --- /dev/null +++ b/JavaScript Begin/hw7/task1.js @@ -0,0 +1,42 @@ +// Сверстать страницу и подключить к ней файл со +// скриптом. На странице должны быть три текстовых +// параграфа, поле ввода и кнопка. Напишите скрипт, +// который будет выполнять следующие условия: +// 1.Кнопка скрыта, если в поле ввода нет значения. +// 2.При клике на кнопку добавляется новый параграф, +// содержащий текст из поля ввода. +// 3.*Если параграфов становится больше 5, первый из +// них удаляется. + +{ + const btn = document.querySelector('#button'); + const input = document.querySelector('#input'); + + btn.addEventListener('click', addParagraph); + input.addEventListener('keyup', showOrHideButton); + + function addParagraph() { + const newP = document.createElement('p'); + newP.innerText = input.value; + + const pWrapper = document.querySelector('#p-wrapper'); + pWrapper.append(newP); + + input.value = ''; + + showOrHideButton(); + removeFirstParagraphIfNeeded(); + } + + function removeFirstParagraphIfNeeded() { + const paragraphs = document.querySelectorAll('#p-wrapper>p'); + + if (paragraphs.length > 5) { + paragraphs[0].remove(); + } + } + + function showOrHideButton() { + btn.hidden = input.value ? false : true; + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw8/task1.js b/JavaScript Begin/hw8/task1.js new file mode 100644 index 0000000..382db7c --- /dev/null +++ b/JavaScript Begin/hw8/task1.js @@ -0,0 +1,43 @@ +// Запросите у пользователя дату в формате +// ДД.ММ.ГГГГ. Напишите программу, выводящую день +// недели по введённой дате. + +{ + const birthdayStr = prompt('Введите дату своего рождения в формате ДД.ММ.ГГГГ: '); + + if (birthdayStr) { + const [date, month, year] = birthdayStr.split('.'); + const birthday = new Date(`${year}-${month}-${date}`); + const day = birthday.getDay(); + + let dayName; + + switch (day) { + case 0: + dayName = 'Воскресенье'; + break; + case 1: + dayName = 'Понедельник'; + break; + case 2: + dayName = 'Вторник'; + break; + case 3: + dayName = 'Среда'; + break; + case 4: + dayName = 'Четверг'; + break; + case 5: + dayName = 'Пятница'; + break; + case 6: + dayName = 'Суббота'; + break; + } + + console.log(dayName); + } else { + console.log('Значение пустое!'); + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw8/task2.js b/JavaScript Begin/hw8/task2.js new file mode 100644 index 0000000..a8fcfa1 --- /dev/null +++ b/JavaScript Begin/hw8/task2.js @@ -0,0 +1,14 @@ +// Написать программу, которая выводит в консоль +// количество минут, прошедшее с начала сегодняшнего +// дня. + +{ + const now = new Date(); + const year = now.getFullYear(); + const month = now.getMonth(); + const date = now.getDate(); + const startCurrentDay = new Date(year, month, date); + const minutesFromStartCurrentDay = ((now - startCurrentDay) / 1000 / 60).toFixed(0); + + console.log(minutesFromStartCurrentDay); +} \ No newline at end of file diff --git a/JavaScript Begin/hw8/task3.js b/JavaScript Begin/hw8/task3.js new file mode 100644 index 0000000..95d99ba --- /dev/null +++ b/JavaScript Begin/hw8/task3.js @@ -0,0 +1,23 @@ +// *В двух переменных хранятся даты рождения двух +// пользователей в формате ДД.ММ.ГГГГ. Написать +// программу, которая определяет более молодого +// пользователя. + +{ + const firstUserBirthday = '13.08.1993'; + const secondUserBirthday = '03.07.1992'; + + const [fubDate, fubMonth, fubYear] = firstUserBirthday.split('.'); + const [subDate, subMonth, subYear] = secondUserBirthday.split('.'); + + const fubAsMillisec = +(new Date(`${fubYear}-${fubMonth}-${fubDate}`)); + const subAsMillisec = +(new Date(`${subYear}-${subMonth}-${subDate}`)); + + if (fubAsMillisec < subAsMillisec) { + console.log('Первый пользователь старше'); + } else if (fubAsMillisec > subAsMillisec) { + console.log('Второй пользователь старше'); + } else { + console.log('Пользователи ровесники'); + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw9/task1.js b/JavaScript Begin/hw9/task1.js new file mode 100644 index 0000000..81dc7d7 --- /dev/null +++ b/JavaScript Begin/hw9/task1.js @@ -0,0 +1,45 @@ +// Даны длины трёх сторон треугольника. Определить, +// является ли треугольник прямоугольным. + +{ + const triangleSides = [3, 4, 5]; + const idxOfHypotenuse = getIndexOfHypotenuse(triangleSides); + + if (Math.pow(triangleSides[idxOfHypotenuse], 2) === getSumSquareСathetus()) { + console.log('Треугольник прямоугольный'); + } else { + console.log('Треугольник не прямоугольный'); + } + + /** + * Получить индекс гипотенузы треугольника + */ + function getIndexOfHypotenuse(triangleSides) { + let idxOfHypotenuse = 0; + + for (let i = 1; i < triangleSides.length; i++) { + if (triangleSides[i] > triangleSides[idxOfHypotenuse]) { + idxOfHypotenuse = i; + } + } + + return idxOfHypotenuse; + } + + /** + * Получить сумму квадратов катетов треугольника + */ + function getSumSquareСathetus() { + let sumSquareСathetus = 0; + + for (let i = 0; i < triangleSides.length; i++) { + if (i === idxOfHypotenuse) { + continue; + } + + sumSquareСathetus += Math.pow(triangleSides[i], 2); + } + + return sumSquareСathetus; + } +} \ No newline at end of file diff --git a/JavaScript Begin/hw9/task2.js b/JavaScript Begin/hw9/task2.js new file mode 100644 index 0000000..c4dc62f --- /dev/null +++ b/JavaScript Begin/hw9/task2.js @@ -0,0 +1,12 @@ +// Пользователь вводит число R. Написать программу, +// которая выведет в консоль длину окружности и +// площадь круга с радиусом R + +{ + const R = prompt('Введите число: '); + const circleLengthByRadius = 2 * Math.PI * R; + const circleSquareByRadius = Math.PI * Math.pow(R, 2); + + console.log(`Длина окружности: ${circleLengthByRadius.toFixed(3)}`); + console.log(`Площадь окружности: ${circleSquareByRadius.toFixed(3)}`); +} \ No newline at end of file diff --git a/JavaScript Begin/hw9/task3.js b/JavaScript Begin/hw9/task3.js new file mode 100644 index 0000000..789a1c2 --- /dev/null +++ b/JavaScript Begin/hw9/task3.js @@ -0,0 +1,21 @@ +// *Пользователь вводит числа a, b и c. Написать +// программу, выводящую корни квадратного +// уравнения с коэффициентами a, b и c. + +{ + const a = prompt('a: '); + const b = prompt('b: '); + const c = prompt('c: '); + const D = Math.pow(b, 2) - 4 * a * c; + + if (D > 0) { + const x1 = (-b + Math.sqrt(D)) / (2 * a); + const x2 = (-b - Math.sqrt(D)) / (2 * a); + + console.log(`Квадратное уравнение имеет корни x1 = ${x1} и x2 = ${x2}`); + } else if (D < 0) { + console.log('Корней нет'); + } else { + console.log(`Корень квадратного уравнения равен ${-b / (2 * a)}`); + } +} \ No newline at end of file diff --git a/JavaScript Begin/index.html b/JavaScript Begin/index.html new file mode 100644 index 0000000..503532f --- /dev/null +++ b/JavaScript Begin/index.html @@ -0,0 +1,74 @@ + + + + + + + + Homework JavaScript Begin + + + + +
+
+

Homework JavaScript Begin

+ + + + + +
+

+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam ipsam veniam commodi inventore eius. Modi nisi minima harum eius, fuga itaque doloremque molestias, porro nemo exercitationem consequatur odio, veritatis perferendis. +

+

+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam ipsam veniam commodi inventore eius. Modi nisi minima harum eius, fuga itaque doloremque molestias, porro nemo exercitationem consequatur odio, veritatis perferendis. +

+

+ Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam ipsam veniam commodi inventore eius. Modi nisi minima harum eius, fuga itaque doloremque molestias, porro nemo exercitationem consequatur odio, veritatis perferendis. +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/JavaScript Begin/style.css b/JavaScript Begin/style.css new file mode 100644 index 0000000..ab0dc6c --- /dev/null +++ b/JavaScript Begin/style.css @@ -0,0 +1,39 @@ +*, +*::before, +*::after { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + background-color: #ffffff; +} + +.main { + margin: 0 auto; + padding: 20px; + max-width: 1200px; + height: 100vh; +} + +.title { + margin-bottom: 40px; + text-align: center; +} + +.input { + padding: 4px; +} + +.button { + padding: 4px 10px; +} + +.p-wrapper { + margin-top: 20px; +} + +.p-wrapper>p:not(:first-child) { + margin-top: 10px; +} \ No newline at end of file