Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/25: Рейтинг темы: голосов - 25, средняя оценка - 4.76
BF07
1

калькулятор JS

09.12.2012, 23:45. Показов 4656. Ответов 1
Метки нет (Все метки)

доделать нужно мучаюсь уже две недели

Реализовать на языке HTML, CSS, JavaScript калькулятор.
Требования:
1.При наведении курсора на цифровые кнопки и кнопки операций вид курсора меняется на «указатель»
2.При наведении курсора на поле вывода вид курсора меняется на «текстовый»
3.Проверка на ввод не более 5 символов в операнде
4.Проверка на ввод не более одной операции (65*+89 — ошибка!)
5.Проверка на ввод не более одной точки в операнде (2.01+8.76 — верно; 2.2.3*7 — неверно)
6.Проверка на пустоту операции и второго операнда для унарных операций (корень и 1/х)
7.Проверка деления на 0 (выводить сообщение в поле вывода!)
8.Проверка на невозможность ввести более одного нуля подряд, если первый символ ноль (000 — неверно, 1.008; 1000 — верно)
9.После вычисления число в поле вывода должно считаться первым операндом для дальнейших действий (3+5=8 — число 8 в поле вывода должно быть первым операндом, при последующем нажатии на 5 должно получится 85, далее при нажатии на «+» - 85+ и.т.д.)

«x2», «xy», «sin», «cos», «tg», «градусы<—>радианы»

Код:


код HTML
HTML5
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
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/JavaScript" src="calc.js"></script>
    </head>
    
        <body onload="init()">
        <table width="200px" height="200px" border="2px" align="center">
    <tr>
        <td colspan="4" id="inputTd"></td>
        <td onclick="clr()">C</td>
    </tr>
     <tr>
        <td onclick="addDigit(0)">0</td> 
        <td onclick="addDigit(1)">1</td>
        <td onclick="addDigit(2)">2</td>
        <td onclick="setOperation('-')">-</td>
        <td onclick="setOperation('+')">+</td>
    </tr>
     <tr>
        <td onclick="addDigit(3)">3</td>
        <td onclick="addDigit(4)">4</td>
        <td onclick="addDigit(5)">5</td>
        <td onclick="setOperation('*')">*</td>
        <td onclick="setOperation('/')">/</td>
    </tr>
     <tr>
     
        <td onclick="addDigit(6)">6</td>
        <td onclick="addDigit(7)">7</td>
        <td onclick="addDigit(8)">8</td>
        <td onclick="addDigit(9)">9</td>
        <td onclick="calculate()">=</td>
    </tr>
     
    </table>
  
 
    </body>
</html>
Код:


Код JavaScript
Javascript
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
var inputStr = "";
var currentOperation = "";
var operant1="";
var operant2="";
 
 var inputObj;
function addDigit(x){
    if(operant1.length <4){
    inputStr = inputStr + x;
 inputObj.innerHTML = inputStr;
 operant1+=x;
}else {if((currentOperation !="")&&(operant2.length<4)){
        operant2+=x;
        inputStr+=x;
        inputObj.innerHTML=inputStr;
}
}
}
function init(){
    inputObj = document.getElementById("inputTd");
}
function clr(){
    operant1="";
    operant2="";
    inputStr="";
    inputObj.innerHTML = inputStr;
    currentOperation="";
    
}
function setOperation(o){
    if(currentOperation.length<1){
    currentOperation = o;
    inputStr = inputStr + o;
    inputObj.innerHTML = inputStr;}
}
function calculate(){
     if((inputStr[inputStr.length-2]=="/")&&(inputStr[inputStr.length-1]==0)){
        alert("Ошибка деление на 0");
        return;
    }
    var tmp=eval(inputStr);
    clr();
    inputObj.innerHTML=tmp;
    
    
}

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.12.2012, 23:45
Ответы с готовыми решениями:

Как преобразовать обычный калькулятор в калькулятор использующий класс стек?
#include &lt;iostream&gt; int main(){ int a = 0; int b = 0; char operation; ...

Простой калькулятор и калькулятор с парсингом
Ребят я совсем не давно только начал изучать сишку, решил написать простенький калькулятор который...

Калькулятор
Доброго времени суток! Ребята, у меня проблема вот в чем, хочу сделать калькулятор. Пример, есть...

Калькулятор
Решил написать калькулятор с графическим интерфейсом, который будет реагировать на мышь. Основу...

1
425 / 167 / 48
Регистрация: 05.12.2012
Сообщений: 855
11.12.2012, 00:20 2
BF07, ну, тут сделанного на половину, многое предстоит доделывать и переделывать
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.12.2012, 00:20

Калькулятор
Здравствуйте! Задача такая: написать калькулятор, но не простой, а читающий пример из файла. Узнал,...

Калькулятор
Калькулятор хотел создать на Дельфи не получается я новичок еще помагите пожалуйста

Калькулятор
Не могу понять как работает javascript в коде HTML может чего- то забыл написать... А точнее не...

Калькулятор
проблема с калькулятором на виндовс 7. на калькуляторе видно пол рабочей облости, а цифры...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.