Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/22: Рейтинг темы: голосов - 22, средняя оценка - 4.73
 Аватар для Golovastik
11 / 11 / 2
Регистрация: 25.05.2009
Сообщений: 435

Доработать код калькулятора

14.02.2011, 23:11. Показов 4674. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Решил калькулятор сделать. Вот пока такой код написал. Посоветуйте как его сделать,ну чтоб считало, с чего начинать хотя б в моём коде.
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
<style type="text/css">
.otstup{margin-right:10px; width:30px; height:30px; margin-bottom:10px;}
.forma{margin-top:100px; margin-left:500px; border:1px solid black; 
width:160px; padding:10px;}
.vvod{width:150px; margin-top:-20px; margin-bottom:20px; text-align:right;}
</style>
<?php
echo '<pre>';
echo "<form class='forma'>
 
<input class='vvod'  readonly='true' type='text' value='0' maxlength='14' ><br>";
for($i=7; $i<=9; $i++){
echo "<input  class='otstup'  type='button' value='$i'>";
}
echo "<input  class='otstup' type='button' value='/'>";
echo "\n";
//2 stroka
for($i=4; $i<=6; $i++){
echo "<input  class='otstup'  type='button' value='$i'>";
}
echo "<input  class='otstup' type='button' value='*'>";
echo "\n";
//3 stroka
for($i=1; $i<=3; $i++){
echo "<input   class='otstup'   type='button' value='$i'>";
}
echo "<input class='otstup' type='button' value='-'>";
echo "\n";
 
echo "<input  class='otstup' type='button' value='0'>";
echo "<input  class='otstup' type='button' value='.'>";
echo "<input  class='otstup' type='button' value='='>";
echo "<input  class='otstup' type='button' value='+'>";
 
echo "</form>";
echo '</pre>';
?>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.02.2011, 23:11
Ответы с готовыми решениями:

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

Нужно доработать код калькулятора
В общем нужно сделать так чтоб при попытке ввести новое значение прежний результат исчезал и нужно расписать функцию расчета остатка от...

Помогите доработать программу калькулятора на c#
-//-Все работает,только нужно,чтобы работали кнопочки &quot;(&quot; и &quot;)&quot; На макете калькулятора они есть..-//- using System; using...

14
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
15.02.2011, 01:48
вот те мой конкулатор )
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
<?php
    
    echo '<html>';
    echo '<head>';
    echo '<title> Calculator </title>';
    echo '</head>';
    echo '<body>';
 
    echo '<form action = "sum.php" method = "post">';   
        
    echo '<input type = "submit" value = "+" name = "onclick"/>';
    echo '&nbsp';
    echo '<input type = "submit" value = "-" name = "onclick"/>';
    echo '&nbsp';
    echo '<input type = "submit" value = "*" name = "onclick"/>';
    echo '&nbsp';
    echo '<input type = "submit" value = "/" name = "onclick"/>';
    echo '<br/>';
    echo '<input type = "text" name = "a" value = '.$_POST['a'].'>';
    echo '  ';
    echo '<input type = "text" name = "b" value = '.$_POST['b'].'>';
 
 
// проверка на заполненость полей    
    if (($_POST['a'] !== 0) && ($_POST['b']) !== 0) {
 
        $a = $_POST['a'];
        $b = $_POST['b'];
 
    // проверка вводимых данных
    // если числа  
        if ((is_numeric($a)) && (is_numeric($b))) {
            switch ($_POST['onclick']) {
                case '+':
                    $result = ($a + $b);
                    echo ' = ' . $result;
                    break;
                case '-':
                    $result = ($a - $b);
                    echo ' = ' . $result;
                    break;
                case '*':
                    $result = ($a * $b);
                    echo ' = ' . $result;
                    break;
                case '/':
                    if ($b == 0) {
                        echo ' = ' . "на 0 делить нельзя!";
                        break;
                    }
                    else {
                        $result = ($a /$b);
                        echo ' = ' . $result;
                        break;
                    }
            }
        }
    // если не числа
        elseif  (!is_numeric($a) or !is_numeric($b))
            echo "  введите число!";    
    // в любых других возможных случаях     
        else 
            echo "";
    }   
    echo '</form>';
    echo '</body>';
echo '<html>';
    
?>
1
 Аватар для tomaticus
51 / 51 / 5
Регистрация: 02.01.2011
Сообщений: 503
15.02.2011, 12:19
moy)
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
<form name="" action="" method="post">
Введите первое число :&nbsp; <input name="one" type="text" value=""> <br>
Введите действие :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="d" type="text" value=""> (-,+,*,/) <br>
Введите второе число : &nbsp;<input name="two" type="text" value=""> <br>
 <input type="submit" value="Send" name='press'>
</form>
<?php
$a=$_POST['one'];
$b=$_POST['two'];
$c=$_POST['d'];
$d=$_POST['press'];
if ($d==true){
if ($c=="-"){
    $res1=($a - $b);
    echo "<center>","Ваш результат : ",$res1,"</center>";
    }
      }
if ($d==true){
if ($c=="+"){
    $res1=($a + $b);
    echo "<center>","Ваш результат : ",$res1,"</center>";
    }
      }
      if ($d==true){
if ($c=="*"){
    $res1=($a * $b);
    echo "<center>","Ваш результат : ",$res1,"</center>";
    }
      }
      if ($d==true){
if ($c=="/"){
    $res1=($a / $b);
    echo "<center>","Ваш результат : ",$res1,"</center>";
    }
      }
?>
1
84 / 84 / 8
Регистрация: 12.04.2010
Сообщений: 324
15.02.2011, 13:04
А на мой взгляд калькулятор на php это не очень хорошо, т.к. зачем перезагружать страницу для вычисления результата простого арифметического действия, лучше делать на javascript. Конечно всё зависит от конкретной задачи...
0
 Аватар для Golovastik
11 / 11 / 2
Регистрация: 25.05.2009
Сообщений: 435
15.02.2011, 21:49  [ТС]
Love_and_Peace я так понял отправка у вас идёт в файл sum.php, а что писать в sum.php?
0
191 / 191 / 31
Регистрация: 04.10.2010
Сообщений: 505
15.02.2011, 21:52
Так это и есть sum.php
Можно вообще убрать из <form> атрибут action = "sum.php"
0
 Аватар для Golovastik
11 / 11 / 2
Регистрация: 25.05.2009
Сообщений: 435
15.02.2011, 22:53  [ТС]
Дело в том что у меня работает, версия 5,3 пхп, у друга старая версия, но не сильно старая, и выдаёт вот такое:
Code
1
2
3
4
5
6
7
Notice: Undefined index: one in z:\home\test1.ru\www\index.php on line 9
 
Notice: Undefined index: two in z:\home\test1.ru\www\index.php on line 10
 
Notice: Undefined index: d in z:\home\test1.ru\www\index.php on line 11
 
Notice: Undefined index: press in z:\home\test1.ru\www\index.php on line 12
0
191 / 191 / 31
Регистрация: 04.10.2010
Сообщений: 505
15.02.2011, 23:08
В начале надо написать
PHP
1
error_reporting(E_ALL ^ E_NOTICE);
0
 Аватар для Golovastik
11 / 11 / 2
Регистрация: 25.05.2009
Сообщений: 435
15.02.2011, 23:35  [ТС]
Пробу писать так, чего-то не работает.
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
30
31
32
33
34
35
36
37
<form name="" action="" method="post">
Введите первое число :&nbsp; <input name="one" type="text" value=""> <br>
Введите действие :&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="d" type="text" value=""> (-,+,*,/) <br>
Введите второе число : &nbsp;<input name="two" type="text" value=""> <br>
 <input type="submit" value="Send" name='press'>
</form>
      <?php
error_reporting(E_ALL ^ E_NOTICE);
$a=$_POST['one'];
$b=$_POST['two'];
$c=$_POST['d'];
$d=$_POST['press'];
if ($d==true){
if ($c=="-"){
        $res1=($a - $b);
        echo "<center>","Ваш результат : ",$res1,"</center>";
        }
      }
if ($d==true){
if ($c=="+"){
        $res1=($a + $b);
        echo "<center>","Ваш результат : ",$res1,"</center>";
        }
      }
      if ($d==true){
if ($c=="*"){
        $res1=($a * $b);
        echo "<center>","Ваш результат : ",$res1,"</center>";
        }
      }
      if ($d==true){
if ($c=="/"){
        $res1=($a / $b);
        echo "<center>","Ваш результат : ",$res1,"</center>";
        }
      }
?>
0
 Аватар для __PION__
960 / 801 / 85
Регистрация: 21.07.2010
Сообщений: 3,522
17.02.2011, 14:14
Golovastik, похоже твой РНР 5.3 требует файл index.php, переименуй файл с sum.php на index.php.
должно заработать
0
 Аватар для tomaticus
51 / 51 / 5
Регистрация: 02.01.2011
Сообщений: 503
18.02.2011, 13:15
поставь denwer всё окей будет. от сюда можно
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 8
15.03.2016, 01:30
Всем доброй ночи. Подскажите пожалуйста почему калькулятор все время только выполняет сложение?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function calc($num1,$num2,$action) { 
    if ($action ='plus') {
      $temp = $num1+$num2;  
    } elseif ($action ='minus') {
      $temp = $num1-$num2;  
    } elseif ($action = 'multiply') {
      $temp = $num1*$num2;  
    } elseif ($action = 'divided') {
      $temp = $num1/$num2;  
    }
    return $temp;
}
    echo calc (4,3,'divided');
0
 Аватар для j_gangster
3 / 3 / 2
Регистрация: 16.11.2010
Сообщений: 39
15.03.2016, 02:12
у тебя присвоение стоит, а не приведение на равенство. поставь еще 1 знак = и все норм будет
1
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 8
15.03.2016, 11:37
Спасибо большое за ответ.
0
0 / 0 / 0
Регистрация: 15.03.2016
Сообщений: 8
25.03.2016, 23:08
Парни подскажите а могу ли я к функции:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function calc($num1,$num2,$action) { 
    if ($action =='plus') {
      $result = $num1+$num2;    
    } elseif ($action =='minus') {
      $result = $num1-$num2;    
    } elseif ($action == 'multiply') {
      $result = $num1*$num2;    
    } elseif ($action == 'divided') {
      $result = $num1/$num2;    
    }
    return $result;
}
echo calc (4,10,'multiply');
прикрутить форму, чтобы значения переменных задавались через текстовые поля:
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<form action="" method="post"> 
  <div>Введите первое число <input type="text" name="num1"></div>
  <div>Введите второе число <input type="text" name="num2"></div>
    <div>
    Выберите действие:<br>
    <label>+<input type="radio" name="action" value="+"></label>
    <label>-<input type="radio" name="action" value="-"></label>
    <label>*<input type="radio" name="action" value="*"></label>
    <label>/<input type="radio" name="action" value="/"></label>
  </div>
  <div><input type="submit" name="submit" value="="></div>
</form>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.03.2016, 23:08
Помогаю со студенческими работами здесь

Нужно доработать скрипт калькулятора
Всем доброго времени суток! Очень прошу помощи в решении следующей задачи (в js я полный ноль, могу лишь прикрутить к сайту готовый...

Код калькулятора
Помогите написать код. Буду благодарен

Код для калькулятора
Добрый всем. Прошу помочь одним или несколькими советами. Писал калькулятор на подобие. Но по коду у меня один вопрос. Какой...

Дописать код калькулятора
Пытался я значит сделать не совсем простой калькулятор, не тот код которого в Интернете помечен как &quot;Простой калькулятор на...

Дополнить код калькулятора
Добрый вечер! Уже создан код (указан ниже) для калькулятора, но нужно еще выполнить условие - арифметические операци активируется черех...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
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
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru