- 1
- 2
- 3
- 4
- 5
- 6
for($i = 0; $i < $count; ++$i){
  $result_formatted[$i][] = $result[$counter];
  ++$counter;
  $result_formatted[$i][] = $result[$counter];
  ++$counter;
}Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+157
for($i = 0; $i < $count; ++$i){
  $result_formatted[$i][] = $result[$counter];
  ++$counter;
  $result_formatted[$i][] = $result[$counter];
  ++$counter;
}Magic operations
−111
Set rs = CurrentDb.OpenRecordset(sql, dbOpenDynaset)
    If rs.RecordCount > 0 Then
        rs.MoveLast
        rscnt = rs.RecordCount
        rs.MoveFirst
        If rscnt >= 2 Then
            ApllyActions = 1
            lActionText.Visible = True
            rs.Edit
            rs!Cost = rs!CostSrc * (100 - discount) / 100
            rs!Summa = rs!CostSrc * (100 - discount) / 100
            rs!discount = -discount
            rs.Update
            If rscnt >= 4 Then
                rs.MoveNext
                rs.Edit
                rs!Cost = rs!CostSrc * (100 - discount) / 100
                rs!Summa = rs!CostSrc * (100 - discount) / 100
                rs!discount = -discount
                rs.Update
                If rscnt >= 6 Then
                    rs.MoveNext
                    rs.Edit
                    rs!Cost = rs!CostSrc * (100 - discount) / 100
                    rs!Summa = rs!CostSrc * (100 - discount) / 100
                    rs!discount = -discount
                    rs.Update
                    If rscnt >= 8 Then
                        rs.MoveNext
                        rs.Edit
                        rs!Cost = rs!CostSrc * (100 - discount) / 100
                        rs!Summa = rs!CostSrc * (100 - discount) / 100
                        rs!discount = -discount
                        rs.Update
                        If rscnt >= 10 Then
                            rs.MoveNext
                            rs.Edit
                            rs!Cost = rs!CostSrc * (100 - discount) / 100
                            rs!Summa = rs!CostSrc * (100 - discount) / 100
                            rs!discount = -discount
                            rs.Update
                            If rscnt >= 12 Then
                                rs.MoveNext
                                rs.Edit
                                rs!Cost = rs!CostSrc * (100 - discount) / 100
                                rs!Summa = rs!CostSrc * (100 - discount) / 100
                                rs!discount = -discount
                                rs.Update
                                If rscnt >= 14 Then
                                    rs.MoveNext
                                    rs.Edit
                                    rs!Cost = rs!CostSrc * (100 - discount) / 100
                                    rs!Summa = rs!CostSrc * (100 - discount) / 100
                                    rs!discount = -discount
                                    rs.Update
                                    If rscnt >= 16 Then
                                        rs.MoveNext
                                        rs.Edit
                                        rs!Cost = rs!CostSrc * (100 - discount) / 100
                                        rs!Summa = rs!CostSrc * (100 - discount) / 100
                                        rs!discount = -discount
                                        rs.Update
                                        If rscnt >= 18 Then
                                            rs.MoveNext
                                            rs.Edit
                                            rs!Cost = rs!CostSrc * (100 - discount) / 100
                                            rs!Summa = rs!CostSrc * (100 - discount) / 100
                                            rs!discount = -discount
                                            rs.Update
                                            If rscnt >= 20 Then
                                                rs.MoveNext
                                                rs.Edit
                                                rs!Cost = rs!CostSrc * (100 - discount) / 100
                                                rs!Summa = rs!CostSrc * (100 - discount) / 100
                                                rs!discount = -discount
                                                rs.Update
                                                If rscnt >= 22 Then
                                                    rs.MoveNext
                                                    rs.Edit
                                                    rs!Cost = rs!CostSrc * (100 - discount) / 100
                                                    rs!Summa = rs!CostSrc * (100 - discount) / 100
                                                    rs!discount = -discount
                                                    rs.Update
                                                    If rscnt >= 24 Then
                                                        rs.MoveNext
                                                        rs.Edit
                                                        rs!Cost = rs!CostSrc * (100 - discount) / 100
                                                        rs!Summa = rs!CostSrc * (100 - discount) / 100
                                                        rs!discount = -discount
                                                        rs.Update
                                                    End If
                                                End If
                                            End If
                                        End If
                                    End If
                                End If
                            End If
                        End If
                    End If
                End IfКод старшего программиста для проведения продажи "3 товара по цене двух". Опыт -10 лет. Если в чеке единиц товара больше 24, => не сработает.
−125
КоличествоСтраницПриПечати = Цел(ТабличныйДокумент.ВысотаТаблицы /  40.417) + 1 + 1;Разработчик 1С вооруженный линейкой опасен в 1+1 раз.
−121
Функция ПереформатироватьДату(Дата)
 Год  = Формат(Дата, "ДФ=гггг");
 Месяц = Формат(Дата, "ДФ=ММ");
 День = Формат(Дата, "ДФ=дд");
 Час  = Формат(Дата, "ДФ=Ч") ;
 Минута  = Формат(Дата, "ДФ=мм");
 Секунда = Формат(Дата, "ДФ=сс");
 ПолученнаяДата = Год+Месяц+День+Час+Минута+Секунда;
 Возврат ПолученнаяДата; 
КонецФункцииТворчечство стажера. Надо было в скл -запрос подсунуть дату в виде строки. Должно быть Формат(Дата, "ДФ=yyyyMMddhhmmss"). Да и отдельной функции не надо
−99
public static function leftJoin(collection: ArrayCollection, joinCollection: ArrayCollection): ArrayCollection
{
	var result: Array = [];
	var object: Object;
	for each (object in collection)
	{
		if (!joinCollection.contains(object))
		{
			result.push(object);
		}
	}
	
	return new ArrayCollection(result);
}Ну, можно забить на то, что это никакой ни джоин, но блин, квадратное время на пустом месте...
−89
public static function getSourceArray(array: Object): Array
{
	if (array is ArrayCollection)
	{
		array = ArrayCollection(array).source;
	}
	if (array is IList)
	{
		array = IList(array).toArray();
	}
	return array as Array;
}Очевидно, опять построчная оплата. ArrayCollection реализует IList... :(
+132
https://github.com/stulluk/FFmpeg-Cedrus
Хотел клонировать реп. Ждал час. Ждал другой. Посмотрел внутрь
            Видимо человек встретился с git впервые.
Хорошо хоть,что он исходник в .gitignore не хранит.
        
−90
public static function padToTwoDigits(value:int):String
{
	if(value < 10)
		return "0" + value.toString();
	else
		return value.toString();
}
/**
 * returns 00:00 format
 * 
 * @param  miliseconds 
 */
public static function time_format(miliseconds:Number):String{
	var recorded_time_lbl:String = '';
	
	var seconds:Number = miliseconds/1000;
	var minutes:uint = seconds / 60;
	var seconds_remain:uint = seconds - (minutes*60);
	var sec_lbl:String = '';
	if(seconds_remain<10){
		sec_lbl = '0'+seconds_remain;
	}else{
		sec_lbl = ''+seconds_remain;
	}
	var min_lbl:String = '';
	if(minutes<10){
		min_lbl = '0'+minutes;
	}else{
		min_lbl = ''+ minutes;
	}
	
	recorded_time_lbl = min_lbl + ':' + sec_lbl;
	return recorded_time_lbl;
	//--
	var recorded_time:String = (miliseconds/100000).toFixed(2) ;
	
	if(recorded_time.length == 5) // 23.22
		recorded_time_lbl = recorded_time.substr(0,2)+':'+recorded_time.substr(3);
	else if(recorded_time.length == 4) // 4.26
		recorded_time_lbl = '0'+recorded_time.substr(0,1)+':'+recorded_time.substr(2);
	
	return recorded_time_lbl;
}
/**
* limits a string to a specified length and adds '...' at the end of it
*/ 
public static function trim(s:String,limit:uint):String{
	if(s.length > limit){
		s = s.substr(0,limit-4) + '...';
	}
	return s;
}
public static function formatTime(value: Number): String
{
	if (isNaN(value) || (value < 0))
	{
		return "0:0";
	}
	var formatedTime: Array = formateTimeToIntArr(value);
	var minutes: int = formatedTime[1];
	if (minutes < 0)
	{
		return "0:0";
	}
	var seconds: int = formatedTime[0];
	var timevalue: String = minutes + ":";
	if (seconds < 10)
	{
		timevalue += "0";
	}
	timevalue = timevalue + seconds;
	return timevalue;
}
public static function formateTimeToIntArr(value: Number): Array
{
	var result: Array = [0, 0];
	if (!isNaN(value))
	{
		var minutes: int = value / 60;
		var seconds: int = value % 60;
		if (!(minutes < 0))
		{
			result = [seconds, minutes];
		}
	}
	return result;
}Я понимаю, что много, но количество тут играет определенную роль. Это только небольшая часть файла вспомогательных функций для форматирования времени, дат и т.п. В какой-то степени удручает еще и неизобретательность автора, последовательно наступающих на те же самые грабли и даже ни на секунду не задумавшегося о предназначении...
+130
Я не жду чтобы меня плюсовали, но давайте сделаем небольшую игру, ломающую стереотипы?
Например рогалик в небольшое кол-во строк. В качестве главного героя можно взять крутого парня ломающего черепа.
+161
<?php
/**
 * Округляет число до заданного количества знаков после запятой.
 * @param float $v	- округляемое число.
 * @param int $prec - количество знаков после запятой (по-умолчанию: 0).
 * @param str $mode - режим округления: ceil | floor | round (по-умолчанию: round).
 * @return float округлённое число.
 */
function round2($v, $prec = 0, $mode = "round") {
	for ($k = 1, $i = 0; $i < $prec; $i++, $k *= 10)
		;
	switch ($mode) {
		case "ceil" : $v = ceil($k * $v) / $k;
			break;
		case "floor" : $v = floor($k * $v) / $k;
			break;
		default : $v = round($k * $v) / $k;
	}
	return $v;
}