Об игре
Новости
Войти
Регистрация
Рейтинг
Форум
0:19
2763
 online
Требуется авторизация
Вы не авторизованы
   Форумы-->Форум для внеигровых тем-->
1|2

Авторпомощь по с++
для Йа_ельф:
то есть в короткой форме просто нужно добавлять else?
для Humanoid:
короткая форма выполнения проги, ибо в твоем случае будет выполнение 3-х операторов условия каждый запуск.
для Йа_ельф:
то есть в короткой форме просто нужно добавлять else?

нет, это полная форма, верная полная форма
короткая форма что то типа такого

X<A? X+=A : X-=A;
Если использовать else будет быстрее выполняться, на счёт избавления от лишних проверок. Но короче от этого точно не станет.

if ( x= 5)
Это условие выполняется всегда, так что его вообще можно одно оставить.

Короткая форма записи условий - оператор ?.
то есть в короткой форме просто нужно добавлять else?
Запомни, пригодиться: каждый if всегда закрывается else, в твоем варианте у тебя 3 условия проверялись при каждом варианте, в моем проверяется минимум одно, максимум 3, зависит от варианта введенного.
И да, в моем примере, ибо скопировал твой тоже х=5, поменяй на х==5
чет программисты нынче не ахти)
x<1? y=1/x + 4 - 0.65 * x + 8 :
{ 1!=x<5? y=...:}

Тогда скорее так
y=1/x+4- (x<1?(0.65 * x + 8):(1!=x<5?(atan(x) + (x + 6,1) + e+x):
и так далее, главное правильно скобки расставить
чет программисты нынче не ахти)
От дня программиста не отошли ещё))
для Янеч о_О:
Да я ни в жись не юзал краткую запись условия
для Akron:
черт а так намного логичнее выглядит. Это все потому, что я такой способ видел только в примерах)
какая гадость эта краткая форма ...
какая гадость эта краткая форма ...
Чё сразу гадость? Удобная вещь, просто не стоит тыкать её повсюду. Например:

String s = "12345" + (t > 0 "6789" : "4321");

выглядит гораздо симпотичнее, чем:

s = "12345"
if (t > 0) s+= "6789";
else s+= "4321";
или
if (t > 0) s+= "123456789";
else s+= "123454321";

Особенно, когда таких вставочек в строке хотя бы штук 5.
черт а так намного логичнее выглядит
Короче явно, а по наглядности на порядок хуже. Честно говоря, я бы за такую запись бил бы по рукам, но раз тс-у надо..
для Akron:
Да, имхо для чтения не удобно использовать такое ветвление с краткой записью. А для примера в 33, конечно да, удобно.
для Humanoid:
Вот краткая форма твоего алгоритма расчета y, вставь это вместо своих if ... else и проверь на всякий расчетами в уме, написал по памяти, а си давно не трогал:
(x < 1) ? y = 1/x + 4 - 0.65 * x + 8 : ((1!=x) and (x < 5) ? y = 1./x + 4 - atan(x) + (x + 6,1) + e+x : y = 1/x + 4 - sqrt (1.+ sqrt(x)));
для Humanoid:
И мне не совсем понятно, зачем ты в (x + 6,1) запятую поставил, а не точку между 6 и 1. Складываться же тогда с иксом будет только единица в этом случае.
для MaprapuH:
y = 1/x + 4 - повторяется в каждом случае, так что этот кусок можно вынести за условие, сократив ещё больше
(1 != x < 5) -> (!(x < 5)) -> (x >= 5)
1|2
К списку тем
2007-2025, онлайн игры HeroesWM