Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 14.04.2016
Сообщений: 128

Калькулятор

19.12.2016, 20:00. Показов 839. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста, нужно добавить в этот калькулятор действие степени, чтобы находить степень.
Вот код:
PHP
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
require_once "system.php";
 
session_start();
 
$_SESSION['i'] = 1;
 
 if($_POST){
     if($_SESSION['x1'] == "На ноль делить нельзя!!!"){
         $_SESSION['x1'] = '';  
     }
 
    $val = array_shift($_POST);
 
     keys($val);
 
}
?>
 
<head>
  <link  rel="stylesheet" type="text/css" href="calkstyle.css"/>
 <title>Калькулятор</title>
</head>
<body>
  <form method="POST" >
   <div id="main">
     <table>
     <tr>
      <tr>
          <td colspan="4"><textarea rows="2" cols="20"><?= $_SESSION['x1']. $_SESSION['do']. $_SESSION['x2']?></textarea></td>
      </tr>
    <tr>
        <td><input name="1" value="1" type="submit"></td> 
     <td><input name="2" value="2" type="submit"></td> 
     <td><input name="3" value="3" type="submit"></td> 
        <td><input name="+" value="+" type="submit"></td> 
    </tr>  
   <tr>
        <td><input name="4" value="4" type="submit"></td> 
     <td><input name="5" value="5" type="submit"></td> 
     <td><input name="6" value="6" type="submit"></td>
     <td><input name="-" value="-" type="submit"></td>  
    </tr> 
  <tr>
        <td><input name="7" value="7" type="submit"></td> 
     <td><input name="8" value="8" type="submit"></td> 
     <td><input name="9" value="9" type="submit"></td>
     <td><input name="/" value="/" type="submit"></td>  
    </tr> 
    <tr>
           <td><input name="." value="." type="submit"></td>
        <td><input name="0" value="0" type="submit"></td>
        <td><input name="=" value="=" type="submit"></td>
          <td><input name="*" value="*" type="submit"></td> 
   </tr>
 <tr>
     <td colspan="4"><input name="C " value="C" type="submit"></td>
</tr>
     
   
</tr>
</table>
</div>
</form>
</body>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.12.2016, 20:00
Ответы с готовыми решениями:

Калькулятор
Хочу проверить каждое поле на пустоту, вот так пробую что-то не срабатывает. &lt;?php if(empty($_POST)) echo 'Пожалуйста,...

калькулятор
всем привет вопрос такой хочу вывести на экран данные которые записались в массив но не получается вот код: &lt;?php print_r($_POST);...

Калькулятор
Добрый день форумчане! Во вложении прототип Калькулятора, у него очень простой функционал человек вводит количество метров квадратных, в...

3
 Аватар для sad67man
2600 / 1504 / 689
Регистрация: 23.08.2015
Сообщений: 3,804
19.12.2016, 20:22
TheGrant, Скиньте файл system.php
0
0 / 0 / 0
Регистрация: 14.04.2016
Сообщений: 128
19.12.2016, 20:37  [ТС]
PHP
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?php
   
function keys($val){
   
     switch($val){
              case '.':
                 if($_SESSION['aux'] != 1 ){
                     $_SESSION['aux'] = 1;
                     $rez = '.';
               }
                   break;
              case 'C':
                $_SESSION = array();
                   break;
        case '+':
                       if($_SESSION['do'] == ''){
                 $_SESSION['do'] = "+";
                 $_SESSION['aux'] = 0;  
             } else{
                rezult();
            }       
                    break;
        case '-':
                 if($_SESSION['do'] == ''){
                 $_SESSION['do'] = "-"; 
                 $_SESSION['aux'] = 0;
             } else{
                rezult();
            }   
              break;    
        case '/':
                 if($_SESSION['do'] == ''){
                 $_SESSION['do'] = "/"; 
                 $_SESSION['aux'] = 0;
             } else{
                rezult();
            }       
                    break;
        case '*':
                 if($_SESSION['do'] == ''){
                 $_SESSION['do'] = "*";
                $_SESSION['aux'] = 0;   
             } else{
                rezult();
            }       
                    break;        
        case '=':
                   rezult();
                    break;
        case 0:
                 $rez ='0';
                  break;    
        case 1:
                 $rez ='1';
                  break;
        case 2:
                 $rez ='2';
                  break;
        case 3:
                 $rez ='3';
                  break;
        case 4:
                 $rez ='4';
                  break;
        case 5:
                 $rez ='5';
                  break;    
        case 6:
                 $rez ='6';
                  break;    
        case 7:
                 $rez ='7';
                  break;    
        case 8:
                 $rez ='8';
                  break;
        case 9:
                 $rez ='9';
                  break;                
         
    }
    if( $_SESSION['do']){
         $_SESSION['i']++;       
      }
    $_SESSION['x'. $_SESSION['i']] = $_SESSION['x'. $_SESSION['i']].$rez;
}
 
function rezult(){
  if ($_SESSION['do'] == '+'){
    $_SESSION['x1'] =  $_SESSION['x1'] +  $_SESSION['x2'];  
 }
  if ($_SESSION['do'] == '-'){
    $_SESSION['x1'] =  $_SESSION['x1'] -  $_SESSION['x2'];  
 }  
   if ($_SESSION['do'] == '*'){
    $_SESSION['x1'] =  $_SESSION['x1'] *  $_SESSION['x2'];  
 }  
   if ($_SESSION['do'] == '/'){
        if($_SESSION['x2'] == 0){
         $_SESSION['x1'] = "На ноль делить нельзя!!!";
      }else{
         $_SESSION['x1'] =  $_SESSION['x1'] /  $_SESSION['x2'];
     }  
 }
$_SESSION['do'] = '';
$_SESSION['x2'] = '';
}
?>
0
Эксперт PHP
 Аватар для Kerry_Jr
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
19.12.2016, 21:50
TheGrant,
PHP/HTML
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
<html><head><title>PHP Kalkulyator</title></head>
<Body>
<form method="POST" action=''>
первое число<input TYPE="text" name="a" value="10" /><br>
второе число<input TYPE="text" name="b" value="20" /><br><br>
<input TYPE="radio" name="operation" checked value='+'/>сложение
<input TYPE="radio" name="operation" value='-'/>разность
<input TYPE="radio" name="operation" value='*'/>произведение
<input TYPE="radio" name="operation" value='/'/>деление
<input type="radio" name="operation" value="^"/>степень<br><br> 
<input type='submit' name='vichislit' value='Вычислить'> 
<input type="reset" name='ochistit' value='Отменить'>  
</form> 
<?php
$a = $_POST['a'];
$b = $_POST['b'];
$radio=$_POST['operation'];
if ($_POST['vichislit'])
{
if ($radio=='+'){$c = $a + $b; echo "сумма=" . $c.'<br>';}
elseif ($radio=='-'){$d = $a - $b; echo "разность=" . $d.'<br>';}
elseif ($radio=='*'){$e = $a *$b;  echo  "произведение=" . $e.'<br>';}
elseif ($radio=='/'){$f = $a / $b; echo "деление=" . $f;}
elseif ($radio=='^'){echo "степень=".($a**$b);}
else echo "ошибка";
}
?>  
 </Body>
</html>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.12.2016, 21:50
Помогаю со студенческими работами здесь

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

Калькулятор
Доброго времени суток, прошу помощи, вот код калькулятора, но не работает. Подскажите что не так. &lt;html&gt; &lt;head&gt; ...

Калькулятор
&lt;?php //Проверяем есть ли такие поля со значениями if( isset($_POST) &amp;&amp; is_numeric($_POST) &amp;&amp; isset($_POST) &amp;&amp;...

Калькулятор
Создать проект, который дает возможность выполнить следующие действия: 1. Регистрация пользователя 2. Ввод двух чисел 3. Выбор...

Калькулятор
Не могу понять, почему не выводится результат? Вроде код правильный... &lt;?php $regexp = &quot;/^(+)(\+)|(\-)|(\*)|(\/)(+)$/i&quot;; ...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru