Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Калькурятор. Кнопка "равно" (http://www.flasher.ru/forum/showthread.php?t=112260)

Bustrui 22.05.2008 15:11

Доброго времени суток.

Пытаюсь сделать нечто похожее на калькулятор...

создал поле Inpu Text(назвал vvod) для ввода чисел

создал кнопки при нажатие которых вводятся числа от 0 до 9

создал кнопку сложения вот её код:
Код:

on (press) {
        perem = Number(vvod.text);
        plus = perem;
        vvod.text = "";
}

создал кнопку вычитания
Код:

on (press) {
        perem = Number(vvod.text);
        minus = perem;
        vvod.text = "";
}

и кнопку равно! вот её код
Код:

on (press) {
        perem = Number(vvod.text);
        // переменная perem получает число в из текстового поля vvod
        rovno = plus + perem;
        // создаётся переменная rovno равная сумме переменных plus и perem
        vvod.text = rovno;
}

принцип работы моего калькулятора:
1. в текстовое поле вводится число
2. нажимается кнопка плюс или кнопка минус(сморя что нам надо, сложить или вычесть)
3. с текстового поля всё стирается
4. вводим часло коротое нам надо прибавить или вычесть
5. нажимаем на кнопку "равно" и в текстовое поле выводится ответ

принцип работы кнопок плюс и минус видно в коде...

ВОПРОС!
немогу понять как сделать чтоб кнопка ровно понимала кагда надо дать ответ сложения или вычитания?
на данный момент(как видно в коде) она у меня может только слаживать...

Зарание благодарен.

вижу один способ но незнаю как это сделать...
Код:

on (press) {
        perem = Number(vvod.text);
        если переменная plus ничему не равна то
            переменная rovno = minus - perem
            vvod.text = rovno
           
            если переменная plus чемуто равна то
            переменная rocno = plus + perem
            vvod.text = rovno

при этом в кнопку плюс добавить чтото каманду чтоб при нажатие переменная минус становилась ничему не равна
и аналогично с кнопкой минус
короче какой камандой убрать значение переменной? :)

iNils 22.05.2008 15:40

Надо использовать кнопку http://www.flasher.ru/forum/images/r...ttons/edit.gif, а не создавать несколько сообщений подряд.

Psycho Tiger 22.05.2008 15:53

Ужасные заморочки...
Цитата:

короче какой камандой убрать значение переменной?
Код:

myVar=null;
myVar=undefined;
delete myVar;

Покатят все 3 варианта
Цитата:

ВОПРОС!
немогу понять как сделать чтоб кнопка ровно понимала кагда надо дать ответ сложения или вычитания?
Заведи логическую переменную, если она будет true - складывай, false - вычитай.
И вообще как это...
Более по простому - если тыкаем "минус" значение введенное во 2 раз умножаем на -1. И складываем.
Пример:
5+2=7
В программе:
a=5
b=2
s=a+b=7
5-2=3
a=5
b=2
b=b*-1=-2
s=b+a=5+ -2 = 3

Bustrui 22.05.2008 19:31

Цитата:

Сообщение от Psycho Tiger (Сообщение 740685)

Заведи логическую переменную, если она будет true - складывай, false - вычитай.

эээ.. это как?....
если не сложно дай ответ в коде к моей кнопке "плюс" и к кнопке "равно"

musat 22.05.2008 21:36

Сложение:

Код:

on (press) {
        operation = "plus";
        perem = Number(vvod.text);
        plus = perem;
        vvod.text = "";
}

Вычетание:

Код:

on (press) {
        operation = "minus";
        perem = Number(vvod.text);
        minus = perem;
        vvod.text = "";
}

Равно:

Код:

on (press) {
        perem = Number(vvod.text);
        if (operation == "plus") {
                rovno = plus + perem;
        } else if (operation == "minus") {
                rovno = minus - perem;
        }
        vvod.text = rovno;
}

В переменной operation задается название функции. Так удобней, потому что легко добавить функции умножение, деление, корень и т.д.

Bustrui 23.05.2008 11:43

Цитата:

Сообщение от musat (Сообщение 740788)

В переменной operation задается название функции. Так удобней, потому что легко добавить функции умножение, деление, корень и т.д.

спасибо!
ща буду пытаться добавить остальные функции в мой калькулятор )


Часовой пояс GMT +4, время: 15:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.