- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
// https://shitcode.net/557
int getChar(char charachter){
int returnValue = Z;
switch(charachter){
case 'A': returnValue = A; break;
case 'a': returnValue = A; break;
case 'B': returnValue = B; break;
case 'b': returnValue = B; break;
case 'C': returnValue = C; break;
case 'c': returnValue = C; break;
case 'D': returnValue = D; break;
case 'd': returnValue = D; break;
case 'E': returnValue = E; break;
case 'e': returnValue = E; break;
case 'F': returnValue = F; break;
case 'f': returnValue = F; break;
case 'G': returnValue = G; break;
case 'g': returnValue = G; break;
case 'H': returnValue = H; break;
case 'h': returnValue = H; break;
case 'I': returnValue = I; break;
case 'i': returnValue = I; break;
case 'J': returnValue = J; break;
case 'j': returnValue = J; break;
case 'K': returnValue = K; break;
case 'k': returnValue = K; break;
case 'L': returnValue = L; break;
case 'l': returnValue = L; break;
case 'M': returnValue = M; break;
case 'm': returnValue = M; break;
case 'N': returnValue = N; break;
case 'n': returnValue = N; break;
case 'O': returnValue = O; break;
case 'o': returnValue = O; break;
case 'P': returnValue = P; break;
case 'p': returnValue = P; break;
case 'Q': returnValue = Q; break;
case 'q': returnValue = Q; break;
case 'R': returnValue = R; break;
case 'r': returnValue = R; break;
case 'S': returnValue = S; break;
case 's': returnValue = S; break;
case 'T': returnValue = T; break;
case 't': returnValue = T; break;
case 'U': returnValue = U; break;
case 'u': returnValue = U; break;
case 'V': returnValue = V; break;
case 'v': returnValue = V; break;
case 'W': returnValue = W; break;
case 'w': returnValue = W; break;
case 'X': returnValue = X; break;
case 'x': returnValue = X; break;
case 'Y': returnValue = Y; break;
case 'y': returnValue = Y; break;
case 'Z': returnValue = Z; break;
case 'z': returnValue = Z; break;
case ' ': returnValue = _; break;
case '3': returnValue = B2; break;
case '<': returnValue = TEMP; break;
case '*': returnValue = FULL; break;
case '|': returnValue = LINE; break;
case '_': returnValue = _; break;
case ':': returnValue = COL; break;
case '-': returnValue = DASH; break;
case ')': returnValue = BRA2; break;
case '%': returnValue = SMILE; break;
case '.': returnValue = DOT; break;
case '^': returnValue = COLDOT; break;
}
return returnValue; //RETORNO DE INFORMAÇÃO
}
phpBidlokoder2 10.03.2020 19:33 # 0
IIIuMnAH3E 10.03.2020 19:52 # +1
1024-- 10.03.2020 19:55 # 0
bormand 11.03.2020 13:40 # 0
naxoM 11.03.2020 20:03 # +1
1024-- 11.03.2020 20:40 # 0
IIIuMnAH3E 10.03.2020 19:56 # +2
retorno de informaçinho
1024-- 10.03.2020 19:57 # 0
guest8 10.03.2020 20:00 # −999
gost 10.03.2020 20:02 # +4
1024-- 10.03.2020 20:08 # 0
Но во всех функциях, которые не пожирают временные ресурсы, эта питушня создаёт синтаксиальную переголову.
guest8 10.03.2020 20:10 # −999
1024-- 10.03.2020 20:14 # 0
Зато код выглядит как расстановка гардов и потом исполнение алгоритма на чистых данных.
1. Размер плохой? Садись на флешку!
2. Память не выделилась? Садись на флешку!
3. Кобенанта неворцеательная? Садись на флешку!
4. Вроде всё хорошо, исполняем код.
P.S. Ну и если багор случился где-то внутри двойного цикла, проще через return или goto отправиться на флешку, чем хитрожопить логику плавного выхода.
gost 10.03.2020 20:25 # +3
Да и выглядит оно не так уж и плохо, если сишку более-менее знать.
Простой, понятный, надёжный код, лучше можно сделать только с «RAII». Без «goto» это была бы лапша из ифов с кучей копипасты (освобождать f1 бы пришлось в трёх местах: после f2, после mem и перед нормальным выходом), при этом куча копипасты растёт квадратично от количества открываемых ресурсов.
gost 10.03.2020 20:27 # 0
guest8 10.03.2020 20:28 # −999
3OJIOTA9I_MAKAKA 11.03.2020 07:58 # +2
Правда, с бряком могут быть проблемы, если есть вложенные циклы.
3OJIOTA9I_MAKAKA 11.03.2020 08:01 # +4
Надеюсь, ничего не напутал.
bormand 11.03.2020 08:58 # +3
3OJIOTA9I_MAKAKA 11.03.2020 09:35 # 0
«Watcom C» в «Windows» (и в «OS/2») поддерживает try даже в няшной сишке посредством SEH. К сожалению, портабельный вариант они родить не смогли.
bormand 11.03.2020 08:56 # +1
gost 11.03.2020 08:57 # 0
3OJIOTA9I_MAKAKA 11.03.2020 08:58 # +2
https://www.php.net/manual/ru/control-structures.break.php
Хотя всё равно опасная конструкция: если обернёшь цикл другим, придётся у всех бряков менять значение аргумента.
gost 11.03.2020 09:05 # +2
То ли дело «Java»:
«Точно-точно не goto, зуб даю!»
bormand 11.03.2020 09:27 # +1
В общем-то в этих случаях код с goto неплохо читается, даже лучше чем без него.
3OJIOTA9I_MAKAKA 11.03.2020 09:45 # 0
gost 10.03.2020 20:12 # 0
guest8 10.03.2020 20:13 # −999
Fike 10.03.2020 20:31 # 0
3.14159265 13.03.2020 15:31 # +1
>я плохо знаком с одновозвратничеством, но краем уха слышал
ГК потихоньку деградирует.
За весь тред ни разу не всплыла фамилия Дейкстра.
>скорее всего, goto у них ещё в большей анафеме, чем многовозврат
https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf
MAPA6y 13.03.2020 16:01 # 0
guest8 13.03.2020 16:06 # −999
gost 13.03.2020 16:13 # +1
Повезло старику.
3.14159265 13.03.2020 16:42 # +3
Он умер в 2002. А пхп изобрели в 1995.
Сволочи. Довели деда.
guest8 13.03.2020 16:44 # −999
3.14159265 13.03.2020 16:39 # 0
Которое сводится к вводу различных сочетаний букв и символов, пока программа наконец не скомпилируется.
1024-- 13.03.2020 19:25 # +1
Нужен же какой-то баланс между случайным клацаньем по кнопкам и просчитыванием всего в голове вместо компьютера.
Математика - это хорошо, но она сама же покажет, что если есть реальная задача, которую надо сделать наиболее эффективно, то придётся искать компромиссную точку минимума, а не впадать в крайности.
guest8 13.03.2020 19:54 # −999
gost 13.03.2020 21:14 # +1
Наверное, дело в том, что во времена Дейкстры компьютеры действительно были инструментами математиков, так как пользователей в современном смысле в те времена попросту не существовало.
MAPA6y 13.03.2020 21:25 # 0
guest8 13.03.2020 21:28 # −999
3.14159265 13.03.2020 21:36 # +2
Да я каждый день пишу такие программы.
Выполняются они на каких-то удалённых компьютерах, которых я ни разу физически не видел.
guest8 13.03.2020 21:39 # −999
1024-- 13.03.2020 22:45 # +2
Вы думаете, что ПИ знает заметно больше того деда - например, про внутренние питух-коды процессора или напряжения на ножках процессора под конкретными номерами?
Или наоборот, дед вообще ничего не знал про старые ВМ*, и просто хреначил код на жс или брейнфаке под абстрактную ВМ**?
Я думаю, дед знал то же самое, что и ПИ (в пересчёте на ...). Иначе он мог бы быть только кем-то вроде заказчика, а его код потом материли, перезаклеивали и перетыкивали.
Разница с ПИ - пинг повыше и терминал картонный, а не пластиковый с магниевым сплавом. А так - что там, что там - частные имплементации SSH.
_________
* вычислительная машина
** виртуальная машина
kak 14.03.2020 05:45 # 0
Зее альзо: ксерокс, джинсы
3.14159265 14.03.2020 13:42 # +1
KOTuK 15.03.2020 08:05 # 0
gost 13.03.2020 16:05 # 0
В любом обсуждении goto Дейкстра упоминается неявно.