Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
2 / 2 / 9
Регистрация: 12.05.2011
Сообщений: 291

Сложение трех переменных

01.04.2013, 16:37. Показов 1543. Ответов 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
<?php
if(isset($_POST['send'],$_POST['zd'],$_POST['sq'],$_POST['am'])) {
 $type = trim($_POST['type']);
 $zd = trim($_POST['zd']);
 $sq = trim($_POST['sq']);
 $am = trim($_POST['am']);
 
if ($type = '1') {$one = '9900';}
elseif ($type = '2') {$one = '15900';}
elseif ($type = '3') {$one = '21900';}
 
elseif ($zd = '1') {$two = '0';}
elseif ($zd >= '2' && $zd <= '4') {$two = '2200';}
elseif ($zd >= '6' && $zd <= '8') {$two = '2400';}
elseif ($zd >= '9' && $zd <= '11') {$two = '2700';}
elseif ($zd >= '12' && $zd <= '14') {$two = '3000';}
elseif ($zd >= '15' && $zd <= '18') {$two = '3300';}
elseif ($zd >= '19' && $zd <= '21') {$two = '3600';}
elseif ($zd >= '22' && $zd <= '24') {$two = '3900';}
elseif ($zd >= '25') {$two = '4200';}
 
elseif ($sq < '1000') {$three = '0';}
elseif ($sq > '1000') {$three = '3000';}
elseif ($sq > '10000') {$three = '6000';}
 
elseif ($am <= '1'){$four = '0';}
elseif ($am > '1' && $am < '1.5' ){$four = '450';}
elseif ($am >= '1.5' && $am < '2' ){$four = '900';}
elseif ($am > '2' && $am < '2.5' ){$four = '1350';}
elseif ($am >= '2.5' && $am < '3' ){$four = '1800';}
elseif ($am > '3' && $am < '3.5' ){$four = '2250';}
elseif ($am >= '3.5' && $am < '4' ){$four = '2700';}
elseif ($am > '4' && $am < '4.5' ){$four = '3150';}
elseif ($am >= '4.5' && $am < '5' ){$four = '3600';}
elseif ($am > '5' && $am < '5.5' ){$four = '4050';}
elseif ($am >= '5.5' && $am < '6' ){$four = '4500';}
 
$sum = $one+$two+$three+$four;
 
 
 if(empty($zd) || empty($sq) || empty($am) ) { #если что то не ввели
   echo 'Заполните все поля';
  }
  else { echo $sum;
  }
}?>
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.04.2013, 16:37
Ответы с готовыми решениями:

Сложение переменных
Вот такой вот пример у меня сработал: $a = 1; $b = 2; $a += $b; echo $a; //Вывелось значение 3 Теперь такое же надо проделать...

Найти простейшую формулу от трёх переменных, принимающую значение 1 только на следующих наборах значений переменных
2. Найти простейшую формулу от трёх переменных, принимающую значение 1 только на следующих наборах значений переменных: F(0,0,0) =...

Сложение переменных
Всем привет! Есть 2 файла txt, в которых числа в 3 столбика через запятую. Первые 2 столбца одинаковые, третьи отличаются. Мне нужно было...

3
1 / 1 / 1
Регистрация: 31.03.2013
Сообщений: 16
01.04.2013, 16:44
все "elseif" замени на "if"... а дальше смотреть надо что получится
0
0 / 0 / 0
Регистрация: 17.03.2013
Сообщений: 7
01.04.2013, 16:45
Допускаю, что мои замечания будут неуместны
Если столько условий, лучше использовать switch case.
И места не экономить, в одну строчку не писать условие и оператор.
А по делу, мне кажется - в одном условии, условия для всех четырёх переменных, и при определении $type дальше не идёт.
0
 Аватар для andrei_z
5 / 5 / 1
Регистрация: 09.03.2013
Сообщений: 31
01.04.2013, 17:26
PHP
1
2
3
if ($type = '1') {$one = '9900';}
elseif ($type = '2') {$one = '15900';}
elseif ($type = '3') {$one = '21900';}
вместо =(присваивание) нужно ==(сравнение)

Добавлено через 17 минут
А зачем вы все время число в кавычки берете когда присваиваете и сравниваете переменные
PHP
1
 $two = '2200'
Так же нужно разбить условия для каждой переменной на отдельные "if"
Вот работает все
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
<?php
if(isset($_POST['send'],$_POST['zd'],$_POST['sq'],$_POST['am'])) {
    $type = trim($_POST['type']);
    $zd = trim($_POST['zd']);
    $sq = trim($_POST['sq']);
    $am = trim($_POST['am']);
 
    if ($type == 1) {$one = 9900;}
    elseif ($type == 2) {$one = 15900;}
    elseif ($type == 3) {$one = 21900;}
 
    if ($zd = 1) {$two = 0;}
    elseif ($zd >= 2 && $zd <= 4) {$two = 2200;}
    elseif ($zd >= 6 && $zd <= 8) {$two = 2400;}
    elseif ($zd >= 9 && $zd <= 11) {$two = 2700;}
    elseif ($zd >= 12 && $zd <= 14) {$two = 3000;}
    elseif ($zd >= 15 && $zd <= 18) {$two = 3300;}
    elseif ($zd >= 19 && $zd <= 21) {$two = 3600;}
    elseif ($zd >= 22 && $zd <= 24) {$two = 3900;}
    elseif ($zd >= 25) {$two = 4200;}
 
    if ($sq <= 1000) {$three = 0;}
    elseif ($sq > 1000 && $sq < 10000) {$three = 3000;}
    elseif ($sq >= 10000) {$three = 6000;}
 
    if ($am <= 1){$four = 0;}
    elseif ($am > 1 && $am < 1.5 ){$four = 450;}
    elseif ($am >= 1.5 && $am < 2 ){$four = 900;}
    elseif ($am > 2 && $am < 2.5 ){$four = 1350;}
    elseif ($am >= 2.5 && $am < 3 ){$four = 1800;}
    elseif ($am > 3 && $am < 3.5 ){$four = 2250;}
    elseif ($am >= 3.5 && $am < 4 ){$four = 2700;}
    elseif ($am > 4 && $am < 4.5 ){$four = 3150;}
    elseif ($am >= 4.5 && $am < 5 ){$four = 3600;}
    elseif ($am > 5 && $am < 5.5 ){$four = 4050;}
    elseif ($am >= 5.5 && $am < 6 ){$four = 4500;}
 
    $sum = $one+$two+$three+$four;
 
 
    if(empty($zd) || empty($sq) || empty($am) ) { #если что то не ввели
        echo 'Заполните все поля';
    }
    else { echo $sum;
    }
}
?>
Когда шли проверки для переменной $three не очень корректно были заданы условия. Например если я бы написал 20000, по это число подошло бы под 2 условия, а если бы написал 10000 то не под одно. Я немного изменил их.

Добавлено через 5 минут
а еще зачем делать вот это?
PHP
1
2
3
4
5
if(empty($zd) || empty($sq) || empty($am) ) { #если что то не ввели
        echo 'Заполните все поля';
    }
    else { echo $sum;
    }
Можно же сразу после суммирования выводить echo $sum
а else { echo 'Заполните все поля';} можно добавить к самому первому if где вы проверяете существование переменных.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.04.2013, 17:26
Помогаю со студенческими работами здесь

Сложение переменных
Доброго времени суток уважаемые форумчане! Уже вторые сутки пытая всезнающего гугла ломаю себе голову. В программирование я не...

сложение переменных
Добрый день друзья.Помогите пожалуйста вот в каком вопросе.. у меня есть txt файл 20.09.2010 17:35:54 y 25 ...

Сложение двух переменных
Пытаюсь сложить два числа. #! /usr/bin/python3 print (&quot;введите первое число&quot;) Var1 = input() print (&quot;введите второе...

Сложение символьных переменных
Подскажите как можно сложить\преобразовать в строку и сложить переменные типа Char. Суть проста, надо написать программу которая...

Сложение переменных в UPDATE
Здравствуйте, на сцене есть 10 tooble и мне нужно выбрать три из 10. например, при выборе второго к переменной k добавляется 15 , а при...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru