0 / 0 / 0
Регистрация: 09.03.2013
Сообщений: 37
1

Правильно ли написан код?

10.02.2016, 09:13. Показов 966. Ответов 21
Метки нет (Все метки)

Здравствуйте.

Вношу кое-какие изменения в сайт.
Решил не обращаться к программисту, сделать сам. Тем более, это, насколько я понял, простейшие вещи.
У меня сомнения по поводу конструкции if-elseif-else.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php 
$str = ($data['montag']+$data['montag_price']);
$com = $data['comment'];
$pp = "123";
$ppp = "456";
$bsp = "<b>$com</b>";
$all = "789";
if ($data['code'] > 10118 && $data['code'] < 10129 ){
echo $pp;
}elseif ($data['code'] >= 10129){
echo $ppp;
}else{
  if ($data['montag_price'] > 1) 
  echo $all. $com;
  if ($data['montag_price'] < 1000) 
  echo $bsp;
}
 
?>
Добавлено через 11 минут
Забыл упомянуть, что код работает, и работает как мне нужно. У меня сомнения в правильности самого кода.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.02.2016, 09:13
Ответы с готовыми решениями:

Правильно ли написан код
Построить график z = f(W, L) по схеме, нарисованной на вложении. Формула Z=R+jX X=wL=2пf*L ...

правильно ли написан код в с++?
#include &lt;iostream&gt; #include &lt;map&gt; #include &lt;fstream&gt; using namespace std; int main() { ...

Правильно ли написан код?!
Нахождение факториала: model small .stack 100h .data N DW 1121h digit DW ? .code...

Правильно ли написан код
Извините, подправьте плиз, всем заранее огромное спасибо #include&lt;iostream.h&gt;...

21
1 / 1 / 5
Регистрация: 10.02.2016
Сообщений: 30
10.02.2016, 09:18 2
Кучу if else можно заменить на case.
0
Хитрая блондиночка $)
1469 / 984 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
10.02.2016, 09:35 3
Не знаю... Я не вижу ничего плохого...
Ну может быть я бы написала так:
PHP
1
2
3
4
5
echo "".($data['code'] > 10118 && $data['code'] < 10129)?$pp:(
             ($data['code'] >= 10129)?$ppp:(
              ($data['montag_price'] > 1)?($all. $com):(($data['montag_price'] < 1000)?$bsp)
             )
           );
Но это дело вкуса.
Как по мне: Если работает - значит все хорошо.
0
Эксперт PHP
3101 / 2586 / 1219
Регистрация: 14.05.2014
Сообщений: 7,231
Записей в блоге: 1
10.02.2016, 09:40 4
Цитата Сообщение от HOMEP13 Посмотреть сообщение
Кучу if else можно заменить на case.
Серьезно? Замените в данном случае, а я посмотрю, как вы это сделаете. Здесь нужны не конкретные значения, как в case'ах, а диапазоны.

Добавлено через 1 минуту
Цитата Сообщение от Hikari Посмотреть сообщение
я бы написала так:
Городить огороды, сложные для чтения, тоже ни к чему хорошему не приведут.
0
Gcom
10.02.2016, 10:52
  #5

Не по теме:

Цитата Сообщение от Hikari Посмотреть сообщение
Как по мне: Если работает - значит все хорошо.
Это самое главное правило: не трогай то что работает :)

0
Хитрая блондиночка $)
1469 / 984 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
10.02.2016, 11:17 6
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
Городить огороды, сложные для чтения, тоже ни к чему хорошему не приведут.
Ну это да. Тут не поспоришь.
0
Эксперт PHP
4810 / 3828 / 1592
Регистрация: 24.04.2014
Сообщений: 11,239
10.02.2016, 12:01 7
Цитата Сообщение от Hikari Посмотреть сообщение
PHP
1
echo "".(/*blah-blah-blah*/);
Не первый раз вижу такую запись (пустая строка в начале конкатенации). Какой в этом смысл?
0
Хитрая блондиночка $)
1469 / 984 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
10.02.2016, 12:37 8
Цитата Сообщение от Jewbacabra Посмотреть сообщение
Какой в этом смысл?
Сакральный
Да... да... да... Знаю. Сейчас набегут "знатоки" и начнут поучать...
"Ты делаешь не так", "Зачем писать быдлокод?"... Это мы все проходили, поэтому мне проще согласиться, что это быдлокод, чем объяснять свое видение программирования.
0
Gcom
10.02.2016, 12:43
  #9

Не по теме:

Цитата Сообщение от Hikari Посмотреть сообщение
Это мы все проходили, поэтому мне проще согласиться, что это быдлокод, чем объяснять свое видение программирования.
Быдло код от хитрой блондиночки :D :bravo:

0
Hikari
10.02.2016, 13:08
  #10

Не по теме:

Цитата Сообщение от Gcom Посмотреть сообщение
Быдло код от хитрой блондиночки
Иногда стереотипы о блондинках сильнее меня :confusion:

0
Jodah
10.02.2016, 13:18
  #11

Не по теме:

Цитата Сообщение от Hikari Посмотреть сообщение
Сейчас набегут "знатоки" и начнут поучать...
И всё же, зачем там пустая строка? Просто интересно. Поучать не буду, обещаю. :)

0
Gcom
10.02.2016, 13:20
  #12

Не по теме:

Цитата Сообщение от Jodah Посмотреть сообщение
И всё же, зачем там пустая строка? Просто интересно. Поучать не буду, обещаю.
Да да очень интересный вопрос, на который охота и ответ получить.

0
Эксперт PHP
4810 / 3828 / 1592
Регистрация: 24.04.2014
Сообщений: 11,239
10.02.2016, 13:45 13
Цитата Сообщение от Hikari Посмотреть сообщение
поэтому мне проще согласиться, что это быдлокод, чем объяснять свое видение программирования.
ой все!
Поучать кого-то нет желания абсолютно, мне и так есть чем заняться. Но дело в том, что такое я вижу не первый раз у разных людей. Был бы это 1 раз, посчитал бы случайностью.
0
Gcom
10.02.2016, 13:48
  #14

Не по теме:

Цитата Сообщение от Jewbacabra Посмотреть сообщение
Но дело в том, что такое я вижу не первый раз у разных людей. Был бы это 1 раз, посчитал бы случайностью.
Это секретный код мега нинзя джидаев :D

0
Хитрая блондиночка $)
1469 / 984 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
10.02.2016, 14:32 15
Цитата Сообщение от Gcom Посмотреть сообщение
Да да очень интересный вопрос, на который охота и ответ получить.
От палачи... Пытают конфетками, разве так можно?
Ладно поделюсь. Это давняя привычка. Иногда я получаю длинные выражения (зачастую не мною написанные) в строку. Мне не нравится. что в строке около 1000 символов - прокручивать для анализа не удобно. Поэтому я разношу его по строкам. Получается примерно так:
Код
Переменка=''
 +<Тут часть выражения>
 +<Тут часть выражения>
 +<Тут часть выражения>
... Иногда тут сотня строк
 +<Тут конец выражения>
;
Если я не напишу Переменка='' то попадусь на ошибку синтаксическу.
а если я напишу первую часть выражения без плюса, то это будет смотреться черти-как.
К тому же если мне понадобится перед первой частью вставить еще часть, я просто могу забыть поставить +. И опять синтошибка. В общем для красивого и удобного форматирования кода согласно моему мировозрению я прибавляю к сложным выражениям некую инициализирующую величину.
Вот примерно такие мотивы

P.S. Я уверена, что тут найдутся супермега спецы, которые фыркнут "Нуитупаааая.." Таким скажу просто - делайте по своему, и не мешайте другим. Мы уже подобные комментарии от умников, считающих себя мегакрутыми кулхацкерами слышали сотни раз, поэтому гневность попрошу оставить при себе - я пишу так, как мне нравится, а поскольку в команде я не работаю, меня вполне все устраивает. Без обид.
0
Jodah
10.02.2016, 14:51
  #16

Не по теме:


Эх, а я думал, там какое-то приведение к типам...

Цитата Сообщение от Hikari Посмотреть сообщение
P.S. Я уверена, что тут найдутся супермега спецы, которые фыркнут "Нуитупаааая.."
Ну я бы не сказал, что прибавление пустой строки ради удобства может дать повод для таких обидных ярлыков. :)

0
Hikari
10.02.2016, 15:53
  #17

Не по теме:

Цитата Сообщение от Jodah Посмотреть сообщение
я бы не сказал, что прибавление пустой строки ради удобства может дать повод для таких обидных ярлыков.
Ну в том то и дело, что находились ботаны, которые мне такие ярлыки наклеевали. Потому и говорю сразу и в лоб :gwitch:
Иногда проще ударить первой, чем потом получить от всех жаждущих - истина жизни.

0
133 / 133 / 48
Регистрация: 26.04.2013
Сообщений: 1,356
10.02.2016, 23:15 18
Цитата Сообщение от Gcom Посмотреть сообщение
Быдло код от хитрой блондиночки
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16842 / 6720 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
10.02.2016, 23:30 19
Цитата Сообщение от Kerry_Jr Посмотреть сообщение
Серьезно? Замените в данном случае, а я посмотрю, как вы это сделаете
Ну, собственно, в php это можно сделать.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
switch(true)
{
    case ($data['code'] > 10118 && $data['code'] < 10129 ) :
        echo $pp;
    break;
    case ($data['code'] >= 10129) :
        echo $ppp;
    break;
    default:
        case ($data['montag_price'] > 1) :
            echo $all. $com;
        case ($data['montag_price'] < 1000) :
            echo $bsp;
}
Правда, смысла в этом ровно столько же, сколько и в if (имхо, вариант с if в данном случае выглядит все равно читабельнее, при условии нормального форматирования)

Не по теме:

Цитата Сообщение от Jewbacabra Посмотреть сообщение
Какой в этом смысл?
я, кстати, тоже никогда не понимал.

0
Эксперт PHP
3101 / 2586 / 1219
Регистрация: 14.05.2014
Сообщений: 7,231
Записей в блоге: 1
11.02.2016, 08:53 20
Цитата Сообщение от KOPOJI Посмотреть сообщение
в php это можно сделать.
если бы он был, как в Pascal, если не ошибаюсь
Pascal
1
2
3
case 10119..10128: { TO DO}
case 10129: {TO DO}
{ etc. }
Тогда да, был бы смысл. А в таком виде - бессмысленная конструкция.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.02.2016, 08:53
Помогаю со студенческими работами здесь

Правильно ли написан код .cpp?
Вот сам код #define _CRT_SECURE_NO_WARNINGS #include &lt;Windows.h&gt; #include &lt;HCNetSDK.h&gt; ...

Подскажите правильно ли написан код?
Подскажите правильно ли написан код? Желаемая клавиша жмется, а мышка не жмет в неактивном окне, в...

Правильно ли написан код программы?
Привет всем, подскажите пожалуйста правильно ли написан код? Если нет, что и где исправить нужно,...

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru