Skip to content

Commit 2000a4b

Browse files
committed
add decimal and create second project for 2 point
1 parent 9a62d4d commit 2000a4b

File tree

2 files changed

+111
-36
lines changed

2 files changed

+111
-36
lines changed

bjs/07_Number_and_string/script.js

Lines changed: 13 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -77,25 +77,28 @@ document.getElementById('btn_0').addEventListener('click', function () {
7777
})
7878

7979
document.getElementById('btn_sum').addEventListener('click', function () {
80-
lastOperand = parseInt(inputWindow.value);
80+
lastOperand = parseFloat(inputWindow.value);
8181
operation = 'sum';
8282
inputWindow.value = '';
83+
if (inputWindow.value.includes('-') == false) {
84+
inputWindow.value += "-";
85+
}
8386
})
8487

8588
document.getElementById('btn_def').addEventListener('click', function () {
86-
lastOperand = parseInt(inputWindow.value);
89+
lastOperand = parseFloat(inputWindow.value);
8790
operation = 'def';
8891
inputWindow.value = '';
8992
})
9093

9194
document.getElementById('btn_mult').addEventListener('click', function () {
92-
lastOperand = parseInt(inputWindow.value);
95+
lastOperand = parseFloat(inputWindow.value);
9396
operation = 'mult';
9497
inputWindow.value = '';
9598
})
9699

97100
document.getElementById('btn_dev').addEventListener('click', function () {
98-
lastOperand = parseInt(inputWindow.value);
101+
lastOperand = parseFloat(inputWindow.value);
99102
operation = 'dev';
100103
inputWindow.value = '';
101104
})
@@ -112,7 +115,7 @@ document.getElementById('btn_sqrt').addEventListener('click', function () {
112115
})
113116

114117
document.getElementById('btn_unar').addEventListener('click', function () {
115-
lastOperand = parseInt(inputWindow.value);
118+
lastOperand = parseFloat(inputWindow.value);
116119
operation = 'unar';
117120
inputWindow.value = '';
118121

@@ -126,21 +129,14 @@ document.getElementById('btn_unar').addEventListener('click', function () {
126129

127130
document.getElementById('btn_point').addEventListener('click', function () {
128131
lastOperand = parseFloat(inputWindow.value);
129-
operation = 'point';
130-
inputWindow.value = '';
131-
132-
if (operation === 'point') {
133-
const result = +inputWindow.value + '.';
134-
operation = null;
135-
lastOperand = 0;
136-
inputWindow.value = result;
132+
if (inputWindow.value.includes('.') == false) {
133+
inputWindow.value += ".";
137134
}
138-
139135
})
140136

141137
document.getElementById('btn_calc').addEventListener('click', function () {
142138
if (operation === 'sum') {
143-
const result = lastOperand + parseInt(inputWindow.value);
139+
const result = lastOperand + parseFloat(inputWindow.value);
144140
operation = null;
145141
lastOperand = 0;
146142
inputWindow.value = result;
@@ -154,14 +150,14 @@ document.getElementById('btn_calc').addEventListener('click', function () {
154150
}
155151

156152
if (operation === 'mult') {
157-
const result = lastOperand * parseInt(inputWindow.value);
153+
const result = lastOperand * parseFloat(inputWindow.value);
158154
operation = null;
159155
lastOperand = 0;
160156
inputWindow.value = result;
161157
}
162158

163159
if (operation === 'dev') {
164-
const result = lastOperand / parseInt(inputWindow.value);
160+
const result = lastOperand / parseFloat(inputWindow.value);
165161
operation = null;
166162
lastOperand = 0;
167163
inputWindow.value = result;

bjs/08_if_else/script.js

Lines changed: 98 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,125 @@
1-
let minValue = parseInt(prompt('Минимальное знание числа для игры','0'));
2-
let maxValue = parseInt(prompt('Максимальное знание числа для игры','100'));
1+
let minValue = parseInt(prompt('Минимальное знание числа для игры', '0'));
2+
let maxValue = parseInt(prompt('Максимальное знание числа для игры', '100'));
3+
4+
if (isNaN(minValue) || isNaN(maxValue)) {
5+
minValue = 0;
6+
maxValue = 100;
7+
}
8+
9+
(minValue < -999) ?
10+
minValue = -999 :
11+
minValue;
12+
13+
(maxValue > 999) ?
14+
maxValue = 999 :
15+
maxValue;
16+
17+
18+
19+
320
alert(`Загадайте любое целое число от ${minValue} до ${maxValue}, а я его угадаю`);
4-
let answerNumber = Math.floor((minValue + maxValue) / 2);
21+
let answerNumber = Math.floor((minValue + maxValue) / 2);
522
let orderNumber = 1;
623
let gameRun = true;
7-
24+
825
const orderNumberField = document.getElementById('orderNumberField');
926
const answerField = document.getElementById('answerField');
1027

1128
orderNumberField.innerText = orderNumber;
12-
answerField.innerText = `Вы загадали число ${answerNumber }?`;
29+
30+
answerField.innerText = `Вы загадали число ${answerNumber } ?`;
31+
1332

1433
document.getElementById('btnRetry').addEventListener('click', function () {
15-
minValue = 0;
16-
maxValue = 100;
17-
orderNumber = 0;
18-
})
34+
if (!gameRun || gameRun) {
35+
minValue = parseInt(prompt('Минимальное знание числа для игры', '0'));
36+
maxValue = parseInt(prompt('Максимальное знание числа для игры', '100'));
37+
if (isNaN(minValue) || isNaN(maxValue)) {
38+
minValue = 0;
39+
maxValue = 100;
40+
}
41+
42+
(minValue < -999) ?
43+
minValue = -999 :
44+
minValue;
45+
46+
(maxValue > 999) ?
47+
maxValue = 999 :
48+
maxValue;
49+
50+
alert(`Загадайте любое целое число от ${minValue} до ${maxValue}, а я его угадаю`);
51+
answerNumber = Math.floor((minValue + maxValue) / 2);
52+
orderNumber = 1;
53+
gameRun = true;
54+
55+
orderNumberField.innerText = orderNumber;
56+
answerField.innerText = `Вы загадали число ${answerNumber }?`;
57+
}
58+
59+
})
1960

2061
document.getElementById('btnOver').addEventListener('click', function () {
21-
if (gameRun){
22-
if (minValue === maxValue){
23-
const phraseRandom = Math.round( Math.random());
62+
if (gameRun) {
63+
if (minValue === maxValue) {
64+
const phraseRandom = Math.round(Math.random());
2465
const answerPhrase = (phraseRandom === 1) ?
2566
`Вы загадали неправильное число!\n\u{1F914}` :
2667
`Я сдаюсь..\n\u{1F92F}`;
2768

2869
answerField.innerText = answerPhrase;
2970
gameRun = false;
3071
} else {
31-
minValue = answerNumber + 1;
32-
answerNumber = Math.floor((minValue + maxValue) / 2);
72+
minValue = answerNumber + 1;
73+
74+
answerNumber = Math.floor((minValue + maxValue) / 2);
3375
orderNumber++;
3476
orderNumberField.innerText = orderNumber;
35-
answerField.innerText = `Вы загадали число ${answerNumber }?`;
77+
const overPhraseRandom = Math.round(Math.random() * 4);
78+
const overAnswerPhrase = (overPhraseRandom === 1) ?
79+
`Вы загадали число ${answerNumber }?` : (overPhraseRandom === 2) ?
80+
`Я почти у верен, вы загадали число ${answerNumber }?` : (overPhraseRandom === 3) ?
81+
`Ну и число вы загадали, это ${answerNumber }?` :
82+
`Так я могу и проиграть, это число ${answerNumber }?`;
83+
answerField.innerText = overAnswerPhrase;
3684
}
3785
}
3886
})
3987

40-
document.getElementById('btnEqual').addEventListener('click', function () {
41-
if (gameRun){
42-
answerField.innerText = `Я всегда угадываю\n\u{1F60E}`
43-
gameRun = false;
88+
document.getElementById('btnLess').addEventListener('click', function () {
89+
if (gameRun) {
90+
if (minValue + 1 === maxValue) {
91+
const phraseRandom = Math.round(Math.random());
92+
const answerPhrase = (phraseRandom === 1) ?
93+
`Вы загадали неправильное число!\n\u{1F914}` :
94+
`Я сдаюсь..\n\u{1F92F}`;
95+
96+
answerField.innerText = answerPhrase;
97+
gameRun = false;
98+
} else {
99+
maxValue = answerNumber;
100+
answerNumber = Math.floor((maxValue + minValue) / 2);
101+
orderNumber++;
102+
orderNumberField.innerText = orderNumber;
103+
const lessPhraseRandom = Math.round(Math.random() * 4);
104+
const lessAnswerPhrase = (lessPhraseRandom === 1) ?
105+
`Вы загадали число ${answerNumber }?` : (lessPhraseRandom === 2) ?
106+
`Я почти у верен, вы загадали число ${answerNumber }?` : (lessPhraseRandom === 3) ?
107+
`Ну и число вы загадали, это ${answerNumber }?` :
108+
`Так я могу и проиграть, это число ${answerNumber }?`;
109+
answerField.innerText = lessAnswerPhrase;
110+
}
44111
}
45112
})
46113

114+
document.getElementById('btnEqual').addEventListener('click', function () {
115+
if (gameRun) {
116+
const equalPhraseRandom = Math.round(Math.random() * 3);
117+
const equalAnswerPhrase = (equalPhraseRandom === 1) ?
118+
`Я всегда угадываю\n\u{1F60E}` : (equalPhraseRandom === 2) ?
119+
`Ну и легко же я отгадываю\n\u{1F601}` :
120+
`Угадайка непобедим!!!\n\u{1F525}`;
121+
122+
answerField.innerText = equalAnswerPhrase;
123+
gameRun = false;
124+
}
125+
})

0 commit comments

Comments
 (0)