Создаем три слоя
1)Action
2)Экран
3)кнопки
1)На слое Экран берём Text tool и рисуем наше табло
в properties ставим Dynamic text в Var вписываем переменную rez
2)На слое Action на первом кадре пишем
Делаем так, чтобы на табло изначально стоял ноль
rez="0"; FirstP=true; oper=""; stop();
3)Теперь самое основное, переходим на слой кнопки
и создаем наши цифры от 1 до 9 и 0 при помощи text tool
каждую из цифр конвертируем в символ и делаем её button
При нажатии на кнопку будет появляться 1
Единица:
on(press, keyPress "1"){
if(FirstP==true) {
rez="1";
FirstP=false;
}
else {
rez=rez+"1";
}
}следующие цифры имеют такой же код только с заменой 1 на соответствующую цифру
А вот для 0 код немного отличается делаем так, чтобы 0 нельзя было напечатать первым
on(press, keyPress "0"){
if(rez<>"0") {
rez=rez+"0";
FirstP=false;
}
}3)Теперь берем text tool и создаем С и СЕ (первое соответствует стиранию всего поля
а второе по одному символу)(не забудьте конвертировать их в кнопку)
С
on(press, keyPress "<Escape>"){
rez="0";
FirstP=true;
oper="";
}СЕ:
on(press, keyPress "<Backspace>"){
len=rez.length;
rez=rez.substring(0,len-1);
if(rez=="") {
rez="0";
FirstP=true;
}
}4) При помощи text tool создаем + и -
конвертируем их в символ и делаем кнопкой
Плюс:
on(press, keyPress "+"){
oper="plus";
a=Number(rez);
FirstP=true;
}Минус:
on(press, keyPress "-"){
oper="minus";
a=Number(rez);
FirstP=true;
}5)Теперь делаем корень и квадрат
Проделываем всё как обычно,берём text tool корень можно заменить на VX
А квадрат делается так: сначала печатаете X а потом 2 выделяем 2 и в properties
character position выставляем superscript
Конвертируем оба в символы и выбираем button
Корень:
on(press,keyPress "@"){
X=Number(rez);
X=Math.sqrt(X);
rez=String(X);
FirstP=true;
}Квадрат:
on(press,keyPress "@"){
X=Number(rez);
X=X*X;
rez=String(X);
FirstP=true;
}6)Ну и наконец берём text tool и создаем синус, арккосинус и равно
конвертируем в символы и вписываем код
Синус:
on(press){
X=Number(rez);
X=(X*Math.PI)/180;
X=Math.sin(X);
rez=String(X);
FirstP=true;
}Арккосинус:
on(press){
X=Number(rez);
if(Math.abs(X)<=1){
X=Math.acos(X);
X=(X*180)/Math.PI;
rez=String(X);
FirstP=true;
}
}Равно:
on(press, keyPress "="){
b=Number(rez);
if(oper=="plus") {
c=a+b;
rez=String(c);
}
if(oper=="minus") {
c=a-b;
rez=String(c);
}
FirstP=true;
}