Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/89: Рейтинг темы: голосов - 89, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 28

Самый-самый простой калькулятор на JS

20.09.2014, 00:21. Показов 16698. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
6) Даны два вещественных положительных числа х и у. арифметические действия над ними пронумерованы (сложение – 1, вычитание – 2, умножение – 3, деление - 4). Составить программу, которая по введённому номеру выполняет то или иное действие над числами.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<SCRIPT>
var x= prompt("Введите x?",100);  
var y= prompt("Введите y?",100);  
var z=promt("введите 1,что бы + 2,что бы - 3,что бы *,4 что бы /");
var result;
                                               
switch(z) {
  case '1':
result==x+y;
break;
  case '2':
result==x-y;
break;
  case 3:
result==x*y;
break;
  case 4:
result==x/y;
};
alent(result);
</script>
вот что я осилила за сегодняшний вечер,знаю,что для вас это будет смешно но все же....очень нуждаюсь в вашей помощи...первый день изучали этот язык и в первый день задали такую лабу,что скажете?помогите исправить/дописать итд.заранее спасибо!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.09.2014, 00:21
Ответы с готовыми решениями:

Самый простой подсчет+
К сожалению так и не смог освоить js. Вопрос такой. Есть у меня три импута текста. В каждом числовые значения. Первый задан, допустим 2,...

Самый простой локальный поиск
Здравствуйте, Перебрала уже кучу вариантов форм поиска, ни один скрипт не работает. Может знает кто, где можно найти самый простой...

Самый простой скрипт проверки пароля
Всем привет. Хотел сделать маленький скрипт, который проверял пароль. Никак не получается найти в интернете подобного (я не профи, сам...

10
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
20.09.2014, 06:25
Лучший ответ Сообщение было отмечено avuro1987 как решение

Решение

везде замените двойные == на одинарные =

ну и исправьте опечатку alert
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,531
20.09.2014, 07:36
Лучший ответ Сообщение было отмечено avuro1987 как решение

Решение

В JS одно = означает присвоение
два == означает не строгое сравнение
например
"1"==1 // даст равно
три === означают строгое равенство
предыдущий пример даст не равно, потому что сравниваем строку и число

тут есть табличка кто что вернет
В предложение, которое начинается с тега <p>, вставить значение переменной n
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 28
20.09.2014, 07:46  [ТС]
newJS, kalabuni спасибо большое вам за овтеты заменила на:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var x= prompt("Введите x?",100);  
var y= prompt("Введите y?",100);  
var z=promt("введите 1 2 3");
var result;
                                               
switch(z) {
  case '1':
result=x+y;
break;
  case '2':
result=x-y;
break;
  case 3:
result=x*y;
break;
  case 4:
result=x/y;
};
alert(result);
проблема осталась
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
20.09.2014, 08:12
Лучший ответ Сообщение было отмечено avuro1987 как решение

Решение

avuro1987, у тебя в case некоторые варианты с типом число, а prompt присваивает строку. У switch вроде строгое сравнение, вот и не работает

JavaScript
1
2
3
4
5
6
7
8
9
switch(+z) {
   case 1 : result = x + y;
                break; // незабываем про это, а то все выполнять будет
   case 2 : result = x - y;
                break;
   case 3 : result = x * y;
                break;
   default: result = x / y // по умолчанию будем делить
}
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 28
20.09.2014, 08:34  [ТС]
Thisman ,

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var x= prompt("Введите x?",100);  
var y= prompt("Введите y?",100);  
var z=promt("введите 1 2 3");
var result;
 
switch(+z) 
{
   case 1 : result = x + y;
                break; // незабываем про это, а то все выполнять будет
   case 2 : result = x - y;
                break;
   case 3 : result = x * y;
                break;
   default: result = x / y // по умолчанию будем делить
}
alert(result);
так?проблема с белым экраном после ввода xy осталась
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
20.09.2014, 09:05
Цитата Сообщение от avuro1987 Посмотреть сообщение
var z=promt("введите 1 2 3");
Тут ошибка, не promt , а prompt
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 28
20.09.2014, 09:16  [ТС]
Цитата Сообщение от Thisman Посмотреть сообщение
Тут ошибка, не promt , а prompt
ой,точно!!спасибо большое)))
теперь z тоже ввожу,теперь другая проблема)
какую бы цифру я не ввела он вполняет:

default: result = x / y
0
Модератор
 Аватар для Thisman
771 / 352 / 142
Регистрация: 17.07.2013
Сообщений: 992
20.09.2014, 09:20
avuro1987, у меня работает все адекватно, за исключением того, что сам попался на эту же ловушку
Там где x + y , напиши (+x) + (+y) ( а то там тоже строки)
0
0 / 0 / 0
Регистрация: 20.09.2014
Сообщений: 28
20.09.2014, 09:26  [ТС]
Цитата Сообщение от Thisman Посмотреть сообщение
avuro1987, у меня работает все адекватно, за исключением того, что сам попался на эту же ловушку
Там где x + y , напиши (+x) + (+y) ( а то там тоже строки)
огромное вам спасибо))и всем ответившим тоже))))все работает))
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,531
20.09.2014, 09:44
Цитата Сообщение от avuro1987 Посмотреть сообщение
Составить программу, которая по введённому номеру выполняет то или иное действие над числами.
один из возможных вариантов реализации, по простому без проверки криворукости пользователя
HTML5
1
2
3
4
5
6
7
8
<div>Введите первое число</div>
<div><input type="text" value="" name="one" id="one"></div>
<div>Введите второе число</div>
<div><input type="text" value="" name="two" id="two"></div>
<div>Введите нужное действие<br>сложение – 1, вычитание – 2, умножение – 3, деление – 4</div>
<div><input type="text" value="" name="three" id="three"></div>
<div><button onclick="clickMe();">Получите результат</button></div>
<div><input type="text" value="" name="res" id="res"></div>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function clickMe(){
var v1, v2, v3, v4;
v1=document.getElementById("one").value;
v2=document.getElementById("two").value;
v3=document.getElementById("three").value;
if(v3!=="1"&&v3!=="2"&&v3!=="3"&&v3!=="4"){alert("Что то вы ввели не то действие"); return};
if(v3==="1"){v4=(+v1)+(+v2)};
if(v3==="2"){v4=v1-v2};
if(v3==="3"){v4=v1*v2};
if(v3==="4"){v4=v1/v2};
document.getElementById("res").value=v4;
 };
а промтом пусть препод сам пользуется, чтоб ему эта дрянь на каждом сайте вылезала и по ночам снилась
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.09.2014, 09:44
Помогаю со студенческими работами здесь

создать стоку из n нулей, самый простой способ
пока придумал &quot;000000000000000000000000000000000&quot;.slice(0, n) з.ы. n = {0, 254}

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

Самый простой калькулятор цен
Есть следующий код который определяет события change на поле типа number и умножает его на цену. Сумма записывается в 2 поля сумма в графе...

Самый самый самый простой пример рекурсии
приведите самый прост пример рекурсии)))void main(int k) { int n=10; k=n; k++; n=k; if(n!=20)main(n); ...

Захотел написать самый простой калькулятор
Решил написать самый простой калькулятор, все вроде и работает, но проблемы с делением, можете помочь, как так же просто сделать деление? ...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru