- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
function wait($time)
{
$tmp_time = time();
$i = $tmp_time;
$time = $tmp_time + $time;
while ($i < $time)
{
If (time() != $i) { $i++; }
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+162
function wait($time)
{
$tmp_time = time();
$i = $tmp_time;
$time = $tmp_time + $time;
while ($i < $time)
{
If (time() != $i) { $i++; }
}
}
Автор сего творения явно не подозревал о существовании функции sleep
+152
function locate($info) {
$name = sprintf("%s_%02d_%02d.jpg", $info['prefix'], $info['vol'], $info['page']);
if (file_exists($name))
return $name;
$name = sprintf("%s_%02d_%03d.jpg", $info['prefix'], $info['vol'], $info['page']);
if (file_exists($name))
return $name;
$name = sprintf("%s%d_%03d.jpg", $info['prefix'], $info['vol'], $info['page']);
if (file_exists($name))
return $name;
$name = sprintf("%s%d_%03d-%03d.jpg", $info['prefix'], $info['vol'], $info['page'], $info['page']+1);
if (file_exists($name))
return $name;
$name = sprintf("%s%d_%03dcover.jpg", $info['prefix'], $info['vol'], $info['page']);
if (file_exists($name))
return $name;
return false;
}
Онлайн читалка манги. Эта функция ищет картинку по номеру тома/страницы.
Как считаете, я сильно наговнокодила? ^_^
+142
// main.cpp
#include <stdio.h>
#include <stdlib.h>
//...
#include "tcp.h"
//...
#include "tcp.c"
//...
int main(int argc, char ** argv)
{
//...
receive_tcp_message(sock, &tcp_msg);
switch(tcp_msg.type)
{
#include "cases.h"
default:
break;
}
//...
}
Имелась небольшая утилита, написанная матёрым сишником. Имелся еще меньший шаблонный проект для таких утилит, написанный на плюсах с простым makefile. Таким вот нехитрым способом этот сишник влил первое во второе. Он не пользуется makefile, т.к. обычно пишет шелл-скрипт, собирающий весь проект. А еще он знает кучу анекдотов и историй, выпить не дурак и вообще отличный дядька.
+38
#include <iostream>
using namespace std;
class Program
{
public:
friend int main()
{
return 0;
}
};
Мой знакомый говорит, что его компилятор поддерживает Java\C#-нотацию точки входа таким образом. И ещё он говорит, что так должно компилироваться по стандарту.
+110
unit HRTimer;
interface
uses Windows;
type
// --------------------- Класс - высокоточный таймер -------------------------
THRTimer = class(TObject)
constructor Create;
function StartTimer: Boolean; // Обнуление таймера
function ReadTimer: Double; // Чтение значения таймера в миллисекундах
private
StartTime: Double;
ClockRate: Double;
public
Exists: Boolean; // Флаг успешного создания таймера
end;
var
Timer: THRTimer; // Глобальая переменная. Создаётся при запуске программы
{ Фукнция высокоточной задержки.
Delphi:
Синтаксис: function HRDelay(const Milliseconds: Double): Double;
Milliseconds: Double - задержка в миллисекундах (может быть дробной)
Результат функции - фактически произошедшая задержка с погрешностью.
Пример вызова функции: X:= HRDelay(100.0); или HRDelay(100.0);
C++Builder:
Синтаксис: double HRDelay(const double Milliseconds);
Double Milliseconds - задержка в миллисекундах (может быть дробной)
Результат функции - фактически произошедшая задержка с погрешностью.
Пример вызова функции: double X = HRDelay(100.0); или HRDelay(100.0);}
function HRDelay(const Milliseconds: Double): Double;
implementation
function HRDelay(const Milliseconds: Double): Double;
begin
Timer.StartTimer();
repeat
Result:= Timer.ReadTimer();
until Result >= Milliseconds;
end;
{ THRTimer }
constructor THRTimer.Create;
var
QW: LARGE_INTEGER;
begin
inherited Create;
Exists := QueryPerformanceFrequency(Int64(QW));
ClockRate := QW.QuadPart;
end;
function THRTimer.StartTimer: Boolean;
var
QW: LARGE_INTEGER;
begin
Result := QueryPerformanceCounter(Int64(QW));
StartTime := QW.QuadPart;
end;
function THRTimer.ReadTimer: Double;
var
ET: LARGE_INTEGER;
begin
QueryPerformanceCounter(Int64(ET));
Result := 1000.0 * (ET.QuadPart - StartTime) / ClockRate;
end;
initialization
Timer:= THRTimer.Create();
finalization
Timer.Free();
end.
классический шайзберг посреди майских роз (ну почти розы)
+78
public Miner(String s) {
super(s);
MenuBar mb = new MenuBar();
setMenuBar(mb);
Menu mFile = new Menu("Файл");
Menu mHelp = new Menu("Справка");
mb.add(mFile);
mb.setHelpMenu(mHelp);
MenuItem create = new MenuItem("Новая игра",new MenuShortcut(KeyEvent.VK_N));
Menu mColor = new Menu("Цвет");
MenuItem mGreen = new MenuItem("Зелёный");
MenuItem mRed = new MenuItem("Красный");
MenuItem mBlue = new MenuItem("Синий");
MenuItem mGray = new MenuItem("Серый");
mColor.add(mGreen);
mColor.add(mRed);
mColor.add(mBlue);
mColor.addSeparator();
mColor.add(mGray);
Menu mHard = new Menu("Сложность");
MenuItem mDummy = new MenuItem("Новичок");
MenuItem mUser = new MenuItem("Среднячок");
MenuItem mHaker = new MenuItem("Проффи");
mHard.add(mDummy);
mHard.add(mUser);
mHard.add(mHaker);
MenuItem mSound = new MenuItem("Звук");
mSound.setEnabled(false);
MenuItem exit = new MenuItem("Выход",new MenuShortcut(KeyEvent.VK_X));
mFile.add(create);
mFile.add(mColor);
mFile.add(mHard);
mFile.add(mSound);
mFile.addSeparator();
mFile.add(exit);
Scribble scr = new Scribble(this,480,480);
mGreen.addActionListener(scr);
mRed.addActionListener(scr);
mBlue.addActionListener(scr);
mGray.addActionListener(scr);
add(scr);
Difficult diff = new Difficult(this,480,480);
mDummy.addActionListener(diff);
mUser.addActionListener(diff);
mHaker.addActionListener(diff);
add(diff);
create.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
status = 0;
repaint();
RandomArray();
}
});
exit.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
System.exit(0);
}
});
MenuItem mInfo = new MenuItem("О программе",new MenuShortcut(KeyEvent.VK_H));
mHelp.add(mInfo);
mInfo.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
new AboutProgram("О программе");
}
});
setBounds(0,0,480,480); // setSize(480,480);
setVisible(true);
setLayout(null);
addMouseListener(this);
addWindowListener(new WinClose());
}
Всё, что можно и что нельзя я запихнул в конструктор
0
#!/usr/bin/guile -s
!#
(define (square x)
(* x x))
(define (square_sum x y)
(+ (square x) (square y)))
(define (tmax x y z)
(cond ((and (>= x y) (>= x z)) x)
((and (>= y x) (>= y z)) y)
(else z)))
(define (tms x y z)
((cond ((= (tmax x y z) x)
(if (> y z)
(square_sum x y)
(square_sum x z)))
((= (tmax x y z) y)
(if (> x z)
(square_sum x y)
(square_sum y z)))
((= (tmax x y z) z)
(if (> x y)
(square_sum x z)
(square_sum y z)))
(else 0))))
(display "Ans: ")
(display (tms 6 5 4))
(newline)
Почему не работает?
+1
for (double x = xn, p = 1, n = 0, y = 0; x > xk ? cout<<p<<' '<<n, false : true; x += dx, y = cos(x) + x*5. / 2, y > 0 ? p *= y : y < 0 ? n++ : n );
Попросили помочь с задачей:
> Определить произведение негативных и количество позитивных значений функции y=cos(x)+x*5./2, если значение x изменяется от xn до xk с шагом dx.
Я постарался, как мог, всё-таки язык мне не очень близок (немного помогли). Возможно, ещё есть, куда "улучшить".
+2
function main() {
for (const q of [1, 12]) {
print(q);
}
for (const l of "HW") {
print(l);
}
print("done.");
}
продолжаем говнокодить компилятор для TypeScript (типа новый сабсет для native-ого кода)
−1
From : Dmitry Pomogaev, 2:5079/12 (19 Feb 96 12:30)
To : Alexey Gorobinsky
Dear Alexey,
Once upon a time Alexey Gorobinsky wrote to Alexander Lapaev as it follows:
AG> C - сукс по опpеделению
AG> спотыкаешся на мелочах. И если ты каждую мелочь не пpопишешь
[...skipped by DVP...]
AG> Хpеновейшая пеpеносимость
[...skipped by DVP...]
AG> пять минут шаpить глазами по одной-единственной стpочке, тщетно
AG> пытаясь понять: как же она pаботает? Вообще, Си - лидеp по количеству
AG> неявных ошибок.
[...skipped by DVP...]
AG> Я все это испытал на себе. До сих поp помню...
[...skipped by DVP...]
----------------------------------------------------------------------------
Доpогая pедакция жуpнала "MelcoHard Kitchen", пишет Вам Петя
Иванов. Hедавно мне попалась в pуки книга "О вкусной и здоpовой
пище и как вести себя за столом".
Так они pекомендуют пользоваться ножом и вилкой. Я купил и то
и дpугое, но pезультат оказался не таким, как я ожидал. Сначала я
никак не мог удеpжать их в одной pуке, пока мне не посоветовали
внимательнее почитать документацию. Там я нашел место(гады! они
хотя бы в ФАК вынесли!!), что деpжать их нужно pазными pуками.
Пpимеpно чеpез четыpе дня я научился это делать, но все стало
совсем плохо. Вилкой я сильно поpезал себе пальца на ноге, а ножом
пpоткнул ухо. Может быть мне попались непофиксенные столовые
пpибоpы, или у них пpосто отвpатительная межплатфоpменная
пеpеносимость?
Доpогой Петя! Скоpее всего, столовые пpибоpы здесь не пpи
чем. Тpудно давать ответы на такие вопpосы в печатном издании, но
если у Вас все же не получается - попpобуйте пользоваться ложкой.
Доpогая pедакция, это опять Петя. Как Вы и советовали, я
попpобовал. У меня получилось лучше, но не все. Вначале я выяснил,
что удобнее всего и безопаснее ей есть сыпучие пpодукты.
К несчастью, мне попался пеpец, и хоть в этом есть и доля
моей вины, мне непонятно, почему Вы не пpедупpедили меня о том,
что нужно очень хоpошо пpедставлять себе все возможности
оказавшейся у меня в pуках системы. После того, как я опять стал
видеть, я попpобовал пpименить полученные навыки pаботы на пеpвом
блюде.
Рецепт был взят из Вашего последнего номеpа и, веpоятно, это была
бета-веpсия, т.к. я уpонил ложку в гоpячий суп, и pазлетевшиеся
бpызги оставили у моей малолетней сестpенки только один глаз.
Согласитесь, что в ее 34 года это почти гоpе. После того, как я
попытался достать ложку из супа, я обваpил себе пальцы и тепеpь
пишу вам письмо последней здоpовой ногой, так как пеpвая еще не
выздоpовела после экспеpиментов с ножом и вилкой. Скажите мне, что
я делал не так.
Доpогой Петя! Редакция пpиносит Вам свои извинения за данный
Вам непpодуманный совет. Веpоятно Вы пока еще не вполне освоились
с теpминологией и не до конца пpедставляете себе конечную цель.
Фактически, задача не является столь сложной. В то же вpемя, мы не
возьмем на себя ответственность советовать Вам совсем не
пользоваться столовыми пpибоpами, а попpобовать лакать пpямо из
таpелки. Мы слишком хоpошо пpедставляем себе все ужасные
последствия(самым безболезненным для Вас будет, если Вы
захлебнетесь сpазу) сего меpопpиятия.
Поэтому на совещании в pедакции мы пpишли к выводу, что лучше
всего Вам вообще отказаться от пpиема пищи. Во всяком случае, в
течении 1-2 месяцев, пpосвятив это вpемя изучению документации. Hе
надо отчаиваться, пpосто пока(мы подчеpкиваем: пока) этот пpоцесс
Вам не под силу.
----------------------------------------------------------------------------
Faithfully, Dmitry.
Aka DVP.
https://www.cs.bgu.ac.il/~barnshte/CompHumor/texts/c-sux.txt
Там еще много всяких баянов: https://www.cs.bgu.ac.il/~barnshte/CompHumor/ кодировка KOI8-R