Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/29: Рейтинг темы: голосов - 29, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 15.02.2020
Сообщений: 25

Создание калькулятора квадратных уравнений на JavaScript

26.09.2020, 16:41. Показов 6319. Ответов 1

Студворк — интернет-сервис помощи студентам
Здравствуйте, дорогие пользователи Киберфорума! На одном из первых занятий по JavaScript задали написать калькулятор для квадратных уравнений. Прошу, пожалуйста, проверить мой код и его соответствие заданию. Еще не совсем понятна логика языка, поэтому не могу выполнить последние условие задания.
Вот задание:
У пользователя последовательно спрашиваются параметры A, B, C. Высчитываются X1 и X2.

Пользователь может ввести положительные и отрицательные цифры, буквы, строки, пробелы, оставить значение пустым – сделать любое действие. Программа должна обработать все эти значения и ни разу не выдать ошибку. Кроме того, значения X1 и X2 должны рассчитать правильно, когда это возможно.
Вот мой код:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
        'use strict'
        let a = prompt('Введите A:', 0);
        let b = prompt('Введите B:', 0);
        let c = prompt('Введите C:', 0);
 
        let d = b**2 - 4*a*c;
 
        let x1 = 0;
        let x2 = 0;
 
        if (d = 0){
          x1 = (-b + Math.sqrt(d)) / 2*a;
          alert(`Корень равен ${x1}`);
      }
        if (d > 0){
          x1 = (-b + Math.sqrt(d)) / 2*a;
          x2 = (-b - Math.sqrt(d)) / 2*a;
          alert(`Корни равны: ${x1}, ${x2}`);
        }
        if (d < 0){
          alert('Корней нет');
        }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
26.09.2020, 16:41
Ответы с готовыми решениями:

Создание калькулятора в JavaScript
Возникла такая проблема. Есть кнопки и их значение записывается в ячейку &quot;rez&quot;. Требуется совершить арифметические действия используя...

Создание калькулятора в JavaScript
Возникла такая проблема. Есть кнопки и их значение записывается в ячейку &quot;rez&quot;. Требуется совершить арифметические действия используя...

Реализация калькулятора квадратных уравнений
#include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; int main() { setlocale(0, &quot;&quot;); int a, b, c; cout &lt;&lt; &quot;Введите...

1
 Аватар для Ovederax
604 / 404 / 212
Регистрация: 30.04.2017
Сообщений: 744
Записей в блоге: 1
26.09.2020, 18:01
Лучший ответ Сообщение было отмечено KProgramGirl как решение

Решение

JavaScript
1
2
if (d == 0){
  x1 = (-b) / (2*a);
Условие: d == 0
Формула: -b / (2*a)
В других строках учесть xxx / (2*a)

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<body>
<div>
  <div>
    <label>a</label>
    <input id="inputA" />
  </div>
  <div>
    <label>b</label>
    <input id="inputB" />
  </div>
  <div>
    <label>c</label>
    <input id="inputC" />
  </div>
  <br />
  <div>
    <label>x1</label>
    <input id="inputX1" />
  </div>
  <div>
    <label>x2</label>
    <input id="inputX2" />
  </div>
</div>
<script>
  const inputA = document.getElementById('inputA');
  const inputB = document.getElementById('inputB');
  const inputC = document.getElementById('inputC');
  const inputX1 = document.getElementById('inputX1');
  const inputX2 = document.getElementById('inputX2');
 
  function onInput(e) {
    e.preventDefault();
    let a = Number(inputA.value);
    let b = Number(inputB.value);
    let c = Number(inputC.value);
 
    let d = b * b - 4 * a * c;
 
    let x1 = 0;
    let x2 = 0;
 
    inputX1.value = '';
    inputX2.value = '';
 
    if (d == 0) {
      x1 = -b / (2 * a);
      inputX1.value = x1;
      inputX2.value = x1;
    }
    if (d > 0) {
      x1 = (-b + Math.sqrt(d)) / (2 * a);
      x2 = (-b - Math.sqrt(d)) / (2 * a);
      inputX1.value = x1;
      inputX2.value = x2;
    }
    if (d < 0) {
      inputX1.value = 'Корней нет';
      inputX2.value = '';
    }
  }
 
  inputA.oninput = inputB.oninput = inputC.oninput = onInput;
</script>
</body>
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.09.2020, 18:01
Помогаю со студенческими работами здесь

Создание програмы для решения квадратных и кубических уравнений
Здравствуйте Уважаемые форумчане, с недавнего времени я задался целью сделать программу для решения квадратных и кубических уравнений (да я...

Среди N квадратных уравнений с заданными коэффициентами подсчитать количество уравнений
Среди N квадратных уравнений с заданными коэффициентами подсчитать количество уравнений, имеющих различные действительные корни, определить...

Решение квадратных уравнений
Нужно написать программу решения набора квадратных уравнений (ax2 + bx + c=0). Помогите.

Решение квадратных уравнений
Требуется написать программу, которая решает введённое из файла квадратное уравнение ax^2+bx+c и добавляет в конец этого же файла корни...

Решение квадратных уравнений в VB
Люди может кто помочь? нужна програма решаюшая уравнения несколькими способами. Почти все сделаль не могу только разабраться как именно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru