- 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
#include <stdio.h>
int Sravn (int a, int b)
{
if (a=b)
{return 1;}
else
{return 0;}
}
int main()
{
int A[5]={1, 4, 7, 4, 4}, rez1, rez2, rez3, rez4, rez5;
int i=0;
rez1=Sravn(A[i], A[i+1])+Sravn(A[i], A[i+2])+Sravn(A[i], A[i+3])+Sravn(A[i], A[i+4]);
rez2=Sravn(A[i+1], A[i])+Sravn(A[i+1], A[i+2])+Sravn(A[i+1], A[i+3])+Sravn(A[i+1], A[i+4]);
rez3=Sravn(A[i+2], A[i])+Sravn(A[i+2], A[i+1])+Sravn(A[i+2], A[i+3])+Sravn(A[i+2], A[i+4]);
rez4=Sravn(A[i+3], A[i])+Sravn(A[i+3], A[i+1])+Sravn(A[i+3], A[i+2])+Sravn(A[i+3], A[i+4]);
rez5=Sravn(A[i+4], A[i])+Sravn(A[i+4], A[i+1])+Sravn(A[i+4], A[i+3])+Sravn(A[i+4], A[i+2]);
if (rez1>rez2 && rez1>rez3 && rez1>rez4 && rez1>rez5)
{printf ("/d", A[i]);}
else if (rez2>rez1 && rez2>rez3 && rez2>rez4 && rez2>rez5)
{printf ("/d", A[i+1]);}
else if (rez3>rez2 && rez3>rez1 && rez3>rez4 && rez3>rez5)
{printf ("/d", A[i+2]);}
else if (rez4>rez2 && rez4>rez3 && rez4>rez1 && rez4>rez5)
{printf ("/d", A[i+3]);}
else if (rez5>rez2 && rez5>rez3 && rez5>rez1 && rez5>rez4)
{printf ("/d", A[i+4]);}
return 0;
}
Ищет в массиве наиболее часто повторяющийся элемент. Написано мною. Нифига не работает, но ошибок не выдает.
wvxvw 16.12.2012 19:34 # 0
Но тут и задумка сама по себе херовая... но это все равно ж учебное задание... а так - в любой другой ситуации использовали бы хеш таблицу, или какой-то ее аналог (блум фильтр, например).
myaut 16.12.2012 21:10 # +9
http://ideone.com/TNRFIU
TarasB 16.12.2012 21:17 # 0
а, не, это из-за таба, в одной стороке табы, в другой пробелы, в итоге разнесло
inkanus-gray 16.12.2012 21:26 # +6
TarasB 16.12.2012 21:20 # +2
http://ideone.com/xiQYgC
сука бля у идеона в окне редактирования и окне просмотра разные табы!!!
http://ideone.com/U5blkU
roman-kashitsyn 17.12.2012 00:18 # +1
На linux.org.ru кто-то уже высказывался за такой стиль форматирования (только там это назвали лисп-стилем: все закрывающиеся скобки оканчиваются на одной строке), но ссылку я найти не смог. По мне так в сишке оно 1) смотрится ужасно 2) совершенно непрактично.
TarasB 17.12.2012 09:45 # 0
Я конечно понимаю, что за строчки деньги платят, но это же пиздец лютый.
defecate-plusplus 17.12.2012 09:50 # +3
и вообще, прекращай писать код на нетбуке с атомом на 2003 студии
roman-kashitsyn 17.12.2012 11:42 # +2
На самом деле у компактного кода есть преимущества даже при наличии широких мониторов и мощного процессора. Если раньше широкий код просто не помещался на экран, то сегодня это влияет на кол-во одновременно открытых файлов на одном экране.
Мне, например, удобнее работать с несколькими окнами и буферами (в терминологии vim/emacs), чем с несколькими вкладками, просматривая по 4-6 файлов на одном экране, без переключения вкладок. Компактность кода в такой конфигурации - вещь довольно важная.
defecate-plusplus 17.12.2012 12:00 # +2
Guy Júlio César нервно покуривает в сторонке
компактность - это про скалу, хаскел, что угодно, но не про с++03
roman-kashitsyn 17.12.2012 12:22 # +3
Ты просто не пробовал, это очень удобно :)
Справа хедер, слева реализация + хедер зависимого файла и консоль, а в где-то в невидимых буферах ещё болтается открытый мэйкфайл и ещё десяток файлов проекта
defecate-plusplus 17.12.2012 13:01 # 0
тыкаешь правой кнопкой по объявленному, но не реализованному методу в .hpp, он заботливо создает в верном .cpp в нужном неймспейсе с закоментированными умолчательными значенями этот метод
зачем держать на виду .hpp файл вообще не пойму
может быть при обращении к объекту этого класса? так мне выпадающего списка всех методов этого объекта достаточно
про мейкфайл вообще молчу, я его смотрю раз в год (вы все еще кипятите редактируете мейкфайл руками?)
roman-kashitsyn 17.12.2012 13:41 # 0
из коробки не нашёл, но в принципе, реализовать это на базе cedet вроде не особо сложно. Возможно, займусь на досуге. Есть ещё вот такая вещь (http://www.lazycplusplus.com/), но я ей не пользуюсь.
> зачем держать на виду .hpp файл вообще не пойму
Возможно, у тебя с твоим опытом получается писать идеальные хедеры с первого раза, мне приходится постоянно добавлять в хедер всякие вспомогательные приватные методы, дописывать доки.
> вы все еще кипятите редактируете мейкфайл руками?
нет, за меня его генерит .gyp файл, который я редактирую руками
defecate-plusplus 17.12.2012 14:26 # +2
при кодировании видеть два окна вертикально или горизонтально монитор позволяет, но использую ну очень редко
последний раз - когда рефакторил плохо написанное говно в нормально написанное говно, сохраняя логическую последовательность проверок и действий, слева новый код, справа старый
место на мониторе еще пригождается при показе окон с результатами типа find all references, ну и при отладке, конечно
а так в редакторе хватает один файл, одна вкладка, одно окно кода, ein Führer
roman-kashitsyn 17.12.2012 15:18 # 0
roman-kashitsyn 17.12.2012 15:25 # +5
пользователю roman-kashitsyn вынесено предупреждение за нарушение правил русского языка
LispGovno 17.12.2012 16:02 # 0
moderator 17.12.2012 16:13 # +2
Помни, Гумно, за тобой могут следить!
wvxvw 17.12.2012 16:41 # 0
Слева узкой полоской speedbar (это то, что в студии наверное назвали бы project manager, т.е. буффер, который показывает файловую структуру / outline известных типов). Иногда эта полоска делится надвое, (если это ECB) и в нижней части экрана - история открытия файлов.
Следующий за ней буффер (справа): исходный редактируемый код, как правило, во всю высоту экрана.
Остальное пространство справа делится горизонтально на 2-3 буффера, и это обычно буфферы с сообщениями о результатах компиляции, REPL, терминал с шеллом, окно отладчика со свойствами рассматриваемого объекта, jabber или окно с черновиками, иногда данные, если они отдельным файлом, веб станица / ман страница с документацией или какие-нибудь служебные окна, типа результат работы find-dired / find-grep / occurences и т.д.
Как бы есть чем пространство заполнить.
defecate-plusplus 17.12.2012 16:49 # +2
всё ясно
roman-kashitsyn 17.12.2012 16:50 # +2
wvxvw 17.12.2012 18:59 # +1
roman-kashitsyn 17.12.2012 09:50 # +2
я даже не против двухпробельного отступа, хотя 4 тоже вполне неплохо
inkanus-gray 17.12.2012 09:57 # 0
roman-kashitsyn 17.12.2012 10:01 # 0
they actually are sometimes
inkanus-gray 17.12.2012 10:08 # +1
roman-kashitsyn 17.12.2012 10:17 # +3
inkanus-gray 17.12.2012 10:20 # 0
LispGovno 17.12.2012 10:32 # +1
http://liveworkspace.org/code/1mFc7q$4
LispGovno 17.12.2012 10:36 # +2
Алсо: TVTableB
bormand 17.12.2012 10:46 # +3
LispGovno 17.12.2012 10:53 # +2
bormand 17.12.2012 11:04 # +3
absolut 17.12.2012 11:29 # +2
bormand 17.12.2012 11:32 # +1
Это просто развдвоение личности.
defecate-plusplus 17.12.2012 11:36 # +4
у них и аватары одинаковые
и у теб... oh shi...
LispGovno 17.12.2012 11:43 # 0
Пративные!
LispGovno 17.12.2012 15:57 # 0
С чего ты взял, что мы подобны или совпадаем? Мы абсолютно противоположны: Один любит лисп, другой нет. Один тролль, а другой нет. И так можно продолжать и дальше.
absolut 17.12.2012 11:23 # 0
Всегда было интересно - кому денег не жалко.
TarasB 17.12.2012 10:29 # 0
Стиль вайтсмита и стиль ГНУ - говно
bormand 17.12.2012 10:34 # 0
Ага, еще какое, никогда не понимал зачем так писать.
P.S. А стиль гну навевает мысли о паскале: Только в паскале это смотрится терпимо, а на си со скобками как сраное говнище.
TarasB 17.12.2012 10:46 # 0
Не, мне питонолисповый стиль больше всего нравится, крестобляди должны им гордиться, потому что Паскаль не даст так сделать, ибо end;end;end;end; смотрится пиздецово.
bormand 17.12.2012 10:49 # +4
inkanus-gray 17.12.2012 10:53 # +1
Во всех ли реализациях сишки логические выражения вычисляются по сокращённой схеме?
bormand 17.12.2012 10:56 # +7
Да, если я еще не совсем потерял память - об этом написано в стандарте.
P.S. Опции компилятора, меняющие семантику программ - ёбаный пиздец. Особенно в этом плане отличился пых с его горой меджик квотов, регистер глобалсов и прочего неведомого говна.
defecate-plusplus 17.12.2012 10:56 # +6
не вижу смысла менять это ключевое поведение настройками компилятора
bormand 17.12.2012 11:09 # +4
Золотые слова. Чем меньше опций меняющих семантику - тем проще поддерживать программы, и переносить их на другие платформы.
TarasB 17.12.2012 11:26 # +2
bormand 17.12.2012 11:34 # +2
TarasB 17.12.2012 11:41 # +1
bormand 17.12.2012 11:57 # +1
LispGovno 17.12.2012 10:57 # +2
PS: Аааа.... Суть понял, красиво. Не отвечайте.
LispGovno 17.12.2012 11:05 # +2
bormand 17.12.2012 11:25 # +2
Лишп машт флоу.
LispGovno 17.12.2012 11:38 # +1
LispGovno 17.12.2012 11:39 # 0
bormand 17.12.2012 12:06 # +1
fxd
LispGovno 17.12.2012 13:07 # +1
PS: вижу, как код на говнокод перепостил и сравнить получилось. не отвечай. return 0; В чем дело было?
roman-kashitsyn 17.12.2012 10:39 # +1
absolut 17.12.2012 11:40 # +2
Steve_Brown 17.12.2012 10:27 # +1
LispGovno 17.12.2012 10:50 # +2
Раз ты пользуешься функциями высшего порядка, то пользуйся выводом типов по максимуму. http://ideone.com/hIvNWf
TarasB 17.12.2012 11:02 # +1
не просто какой-то там рейлен, а сам Тестар Рейлен
absolut 17.12.2012 11:42 # +2
myaut 17.12.2012 12:06 # +3
LispGovno 17.12.2012 13:49 # 0
scriptin 16.12.2012 20:20 # +3
Еще не написано, но уже отлажено!
bormand 16.12.2012 20:28 # +8
inkanus-gray 16.12.2012 21:10 # +4
inkanus-gray 16.12.2012 21:24 # +1
1. Не режет ли глаза A[5], rez1, rez2, rez3, rez4, rez5, а именно вереница переменных рядом с массивом?
2. Обоснован ли полный отказ от циклов, когда нужно обрабатывать массив?
3. printf ("/d", ...)
Elvenfighter 18.12.2012 00:00 # +2
:)
2ТС: НаSravn - убери за собой.
absolut 16.12.2012 22:10 # 0
LispGovno 17.12.2012 00:12 # +3
KostylMaster 17.12.2012 06:44 # −1
int a1,
int a2,
int a3,
int a4,
int a5,
int a6,
int a7,
int a8,
int a9,
int a10,
int a11,
int a12,
//...
int an);