Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Я новичок помогите. (https://javascript.ru/forum/misc/82173-ya-novichok-pomogite.html)

kargabob 26.03.2021 21:27

Я новичок помогите.
 
Не выдает ошибок и вывода в последней строке 1-ой функции.
function click() {
    const v1 = document.getElementById("v1").value;
    const X1 = 6.903 + 0.047 * v1;
    const X2 = 0.553 * pol;
    const X3 = 0.614 * pol1;
    const X4 = 0.536 * pol5;
    const X5 = 1.149 * pol2;
    const X6 = 0.734 * pol3;
    const X7 = 1.03 * pol4;
    const X = X1 + X2 + X3 + X4 + X5 + X6 + X7;
    const S = 1+Math.exp(-X);
    const Y = 1/(1+S);
    if (Y > 0.044) {
        const rez = "Прогноз : смерть.";
    }else{
        const rez = "Прогноз : жизнь.";
    };
    document.getElementById("resultat").innerHTML = rez;
};
function m() {
    let pol = 1;
};
function g() {
    let pol = 0;
};
function  hbs1() {
    let pol1 = 1;
};
function hbs0() {
    let pol1 = 0;
};
function  hbp1() {
    let pol2 = 1;
};
function hbp0() {
    let pol2 = 0;
};
function  hbd1() {
    let pol3 = 1;
};
function hbd0() {
    let pol3 = 0;
};
function  hbdd1() {
    let pol4 = 1;
};
function hbdd0() {
    let pol4 = 0;
};
function gip1() {
    let pol5 = 1;
};
function gip0() {
    let pol5 = 0;
};

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <p>Возраст.</p>
    <input id="v1"/><p></p>
    <p>Пол.</p>
    <p><button onclick="m()">М</button> / <button onclick="g">Ж</button></p>
    <p>Хроническое заболевание сердца.</p>
    <p><button onclick="hbs1()">Да</button> / <button onclick="hbs0()">Нет</button></p>
    <p>Хроническое заболевание почек.</p>
    <p><button onclick="hbp1()">Да</button> / <button onclick="hbp0()">Нет</button></p>
    <p>Сахарный диабет.</p>
    <p><button onclick="hbd1()">Да</button> / <button onclick="hbd0()">Нет</button></p>
    <p>Деменция.</p>
    <p><button onclick="hbdd1()">Да</button> / <button onclick="hbdd0()">Нет</button></p>
    <p>Гипертензия.</p>
    <p><button onclick="gip1()">Да</button> / <button onclick="gip0()">Нет</button></p>
    <button onclick="click()">Расчитать вероятность COVID 19</button>
    <p id="resultat"></p>
    <script src="script.js"></script>
</body>
</html>

ksa 26.03.2021 21:35

Цитата:

Сообщение от kargabob
function m() {
    let pol = 1;
};

Почитай как работает let... По выходу из блока переменной не станет.

ksa 26.03.2021 21:39

Цитата:

Сообщение от kargabob
    const X1 = 6.903 + 0.047 * v1;
    const X2 = 0.553 * pol;
    const X3 = 0.614 * pol1;
    const X4 = 0.536 * pol5;
    const X5 = 1.149 * pol2;
    const X6 = 0.734 * pol3;
    const X7 = 1.03 * pol4;
    const X = X1 + X2 + X3 + X4 + X5 + X6 + X7;

Зачем столько констант? :blink:

let X = 6.903 + 0.047 * v1;
X += 0.553 * pol;
X += 0.614 * pol1;
X += 0.536 * pol5;
X += 1.149 * pol2;
X += 0.734 * pol3;
X += 1.03 * pol4;
X = 1+Math.exp(-X);
X = 1/(1+X);

ksa 26.03.2021 21:43

Цитата:

Сообщение от kargabob
<p><button onclick="hbs1()">Да</button> / <button onclick="hbs0()">Нет</button></p>

Такое лучше делать не кнопками, а радиокнопками... Или селектами...
Так будет видно что человек выбрал и выбирал ли вообще...

Aetae 26.03.2021 21:51

kargabob, код жуть, верная примета: если одно и то же повторяется больше 2х раз, значит что-то ты делаешь не так. Но с этим ты со временем разберёшься. То что не даёт твоему коду работать - const и let видны только в рамках блока(фигурных скобочек) в котором заданы. Закрылась скобочка - за ней жизни нет.

OlesiaBOM 28.03.2021 11:53

https://learn.javascript.ru/let-const

lysenkora 17.01.2022 14:37

закрытая скобка


Часовой пояс GMT +3, время: 00:23.