Jump to content
  • 0

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


psywalker
 Share

Question

Приветствую!

Значит решил попробовать сделать калькулятор на JS, своими силами, т.е. руководствуясь только своими знаниями. Думаю, так будет лучше, так как в силу долгих мучений, это наверняка принесёт свои плоды.

Но вот всё-же в итоге попал в тупик и хочу узнать некоторые вещи, чтобы двинуться дальше.

(На код не смотрите, он ужасен, просто это первый вариант, второй уже надеюсь будет лучше)

Вопросы:

1) Как мне написать в условии if(), что типа Если в value у моего импута уже есть (допустим) две Точки (.) или один знак Минус (-), то больше поставить нельзя, сколько бы я не нажимал на эти кнопки?

2) Как мне кнопкой ( << ) тупо убрать последний символ из строки, при этом не нарушив работу калькулятора?

(Это кнопка для того, чтобы, Если я например случайно написал не то число, то стереть его)

3) После того, как я жму знак Равно (=), то у меня вроде-бы всё высчитывается, НО проблема в том, что далее чтобы считать новые числа, мне приходится всё сбрасывать, а мне хотелось-бы просто допустим продолжать дальше считать с получившегося результата. Как это сделать?

Ссылка:

http://www.psywalker.ru/Forum/JS/Primitive/calculat.html

Link to comment
Share on other sites

  • Answers 71
  • Created
  • Last Reply

Top Posters For This Question

Recommended Posts

  • 0

psywalker,

Никто не ссорится. Про квадратный корень см выше (#23).

Мой "калькулятор" еще проще :unsure:

var exmpl = prompt('Введите пример', '');
document.write(exmpl + ' = ' + eval(exmpl));

Upd. Кстати. В своё время (когда в школе изучала паскаль и бейсик) очень помогало в написании програм предварительное составление алгоритмов и блок-схем.

Edited by sigma77
Link to comment
Share on other sites

  • 0

Второй заход! Сразу хочу сказать, что в ИЕ6 работает только функционал, оформление хандрит, будем лечить, но пока это неважно. Во всех остальных браузерах всё ок. Далее сам функционал пока скудненький, но это всё, что я смог сотворить, на что хватила опыта)

Жду замечаний, что не так, что надо изменить, переделать и вообще все косяки.

http://psywalker.ru/Forum/JS/Primitive/cal...t/calculat.html

:unsure:

Link to comment
Share on other sites

  • 0
Сразу хочу сказать, что в ИЕ6 работает только функционал

Вот оформление мне понравилось, а функционал подкачал ужасно!

Сброс вообще не пашет и в итоге после предыдущих действий, в новых появляется неверный результат (проверял в мозиле).

Я к стати делал как-то калькулятор, но не совсем такой вот тут, но там не все я делал, большую часть мне помогали конечно, так как в js тоже не особо силен.

Edited by rus
Link to comment
Share on other sites

  • 0

Да, согласен, что-то в скрипте я напутал ужасно. Но ладненько, будем думать ещё, всё же учимся, как говорится :unsure:

Да, согласен, что-то в скрипте я напутал ужасно. Но ладненько, будем думать ещё, всё же учимся, как говорится :)

А вот щас кое-что подправил, зацените, лучше не стало?

http://psywalker.ru/Forum/JS/Primitive/cal.../calculat.html#

Я к стати делал как-то калькулятор, но не совсем такой вот тут, но там не все я делал, большую часть мне помогали конечно, так как в js тоже не особо силен.

Рус, для меня это жёстко очень) http://www.perolon.ru/calc/index.php

Link to comment
Share on other sites

  • 0
Всё равно правильно считает только первый раз.

Ну да, согласен. Считаю, что тут нужно всё заново уже с умом переписывать, весь скрипт передумывать с нуля. Ладненько, тогда надеюсь в ближайшем будущем мне удастся осилить эту вещь, да в любом случае какой то опыт будет. :unsure:

Link to comment
Share on other sites

  • 0

Уфф, ну вроде-бы сделал, а точнее эмулировал функционал калькулятора винды, можете проверить, сравнить(вроде-бы ничего не упустил). Работает так-же хорошо, так что жду обсуждения косяков. :)

Кстати, считает и продолжает считать, он только при знаке (=)

http://psywalker.ru/Forum/JS/Primitive/cal.../calculat2.html

Link to comment
Share on other sites

  • 0
А что происходит когда я на "R" жму???

Ну это я придумал сам)) Короче это типа коробка с результатами, когда их уже набирается допустим 2,3 и. т. То при нажатии на неё, они выводятся через запятую. А вообще это хрень не очень важна, я её так, для прикола придумал))

Как тебе вообще сама работа калькулятора?

Link to comment
Share on other sites

  • 0
Ну вроде работает :)

Молодец в общем - пятерка :)

Спасиб, я старался. Но это детский калькулятор, такой дети в яслях на тихом часу делают. Пока знаний хватает только на такой к сожалению, но в будущем планирую сделать достойный, который будет считать при нажатии на знаки (+, -, /, *), а не только на знак (=). Ну и добавить конеш уже настоящие %, корни и прочие вещи :P

Теперь следующий шаг - инженерный калькулятор)

Заодно в обхекте Math освоишься

Согласен, этот шаг необходим, но пока рано ещё. Я слишком молод, чтобы такое осилить... Ну ты в курсе :P

Link to comment
Share on other sites

  • 0
Послушай, я тебе так скажу на все твои вопросы сразу. Ты лучше не спрашивай ничего, а делай, так как языком у тебя точно мало что выйдет)

Я не задавал вопросов дружище, ты не в тему написал к сожалению.

Link to comment
Share on other sites

  • 0

Снова собрался сделать этот чудо прибор, но возник вопрос:

Возможно ли сделать так, чтобы я мог набирать числа на клавиатуре, как сделано в виндоусовском калькуляторе?

Link to comment
Share on other sites

  • 0
А почему нет? Копай в сторону event.keyCode и string.fromCharCode().

Ахренеть, ну ты прикалолся))) Мне до этого ещё ппц скока пилить. Если не сложно дружище, покажи пример хотябы связи с одной кнопочкой, как это вообще делается и т.д. ? ^_^

Link to comment
Share on other sites

  • 0
Макс, у тебя кнопка % не работает, или там надо как-то хитро через как? в общем тупо посчитать 10% от ста у меня не получилось

Это не знак процентов в математике. Это знак остатка (точнее оператор деления по модулю) в JS :)

Edited by sigma77
Link to comment
Share on other sites

  • 0
Это не знак процентов в математике. Это знак остатка в JS :)

+1 :)

LunatiK:

А кстати как именно должно происходить расчёты %? Если я например хочу вычислить, сколько будет 20% от 80%, то как он должен работать?

Link to comment
Share on other sites

  • 0
Это не знак процентов в математике. Это знак остатка (точнее оператор деления по модулю) в JS :D

:) просто в калькуляторе это процент и в виндовом и в обычных, что у тёток на рынке

+1 :)

LunatiK:

А кстати как именно должно происходить расчёты %? Если я например хочу вычислить, сколько будет 20% от 80%, то как он должен работать?

Пуск->Выполнить-> calc :)

Там всё чётко паказывается 20% от 80 или от 80 процентов будет одно и тоже число тока размерность будет разнае в первом случае единицы, а во втором проценты

в уме я это считаю так:

20% => 1/5

80*1/5 => 16 (либо единиц, либо %)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy