- 1
Вчера в полдень страшно завыла сирена и напугала меня. У вас тоже воют, или только у нас?
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
Вчера в полдень страшно завыла сирена и напугала меня. У вас тоже воют, или только у нас?
Не к добру это. Ох, не к добру.
+1
int my_strcmp(const char *out, const char *in ){
for( ;*(in) , *(out) && *(in) == *(out); *out++,*in++ );
return *in <= *out ? *out > *in : -1 ;
}
Бульк
+1
package main
import "log"
func foo(x int) (int, error) {
return x + 1, nil
}
func main() {
x := 5
if x % 2 == 1 {
x, err := foo(x)
if err != nil {
log.Fatalf("Error")
}
log.Println(x)
}
log.Println(x)
}
Счастливой отладки, суки.
https://godbolt.org/z/6GWsq7W7q
+1
#!/bin/sh
[ ${SHELL} = "/bin/bash" ] || exit "Bash required!"
+1
$ss_n = 0;
$ss_nf = 0;
$ss_f = 0;
$ss_n_pl = 0;
$ss_nf_pl = 0;
$ss_f_pl = 0;
$ids_count = count($ids);
for ($i=0;$i < $ids_count;$i++) {
$key = $w_dates[$z]."|1|".$ids[$i];
$ss_n += $w_n_s[$key]*1;
$ss_nf += $w_nf_s[$key]*1;
$ss_f += $w_f_s[$key]*1;
$key = $w_dates[$z]."|2|".$ids[$i];
$ss_n += $w_n_s[$key]*1;
$ss_nf += $w_nf_s[$key]*1;
$ss_f += $w_f_s[$key]*1;
$key = $w_dates[$z]."|3|".$ids[$i];
$ss_n += $w_n_s[$key]*1;
$ss_nf += $w_nf_s[$key]*1;
$ss_f += $w_f_s[$key]*1;
}
$ids_count = count($ids);
for ($i=0;$i < $ids_count;$i++) {
$key = $w_dates[$z]."|1|".$ids[$i];
$ss_n_pl = $ss_n_pl + $w_n_s_pl[$key]*1;
$ss_nf_pl = $ss_nf_pl + $w_nf_s_pl[$key]*1;
$ss_f_pl = $ss_f_pl + $w_f_s_pl[$key]*1;
$key = $w_dates[$z]."|2|".$ids[$i];
$ss_n_pl = $ss_n_pl + $w_n_s_pl[$key]*1;
$ss_nf_pl = $ss_nf_pl + $w_nf_s_pl[$key]*1;
$ss_f_pl = $ss_f_pl + $w_f_s_pl[$key]*1;
$key = $w_dates[$z]."|3|".$ids[$i];
$ss_n_pl = $ss_n_pl + $w_n_s_pl[$key]*1;
$ss_nf_pl = $ss_nf_pl + $w_nf_s_pl[$key]*1;
$ss_f_pl = $ss_f_pl + $w_f_s_pl[$key]*1;
}
echo "<td class='Field' rowspan='3' style='vertical-align: middle;'><b>".OutNF($ss_n,$ss_nf,$ss_f)."</b></td>\n";
echo "<td class='Field' rowspan='3' style='vertical-align: middle;'><b style='color:#aa0000;'>".OutNF($ss_n_pl,$ss_nf_pl,$ss_f_pl)."</b></td>\n";
echo "</tr><tr>";
////////////////////////////////////////////////////////////
echo "<td class='Field' width='40' style='vertical-align: middle;'><b>II</b></td>\n";
$s_n = 0;
$s_nf = 0;
$s_f = 0;
$s_n_pl = 0;
$s_nf_pl = 0;
$s_f_pl = 0;
for ($i=0;$i < count($ids);$i++) {
$key = $w_dates[$z]."|2|".$ids[$i];
$s_n = $s_n + $w_n_s[$key]*1;
$s_nf = $s_nf + $w_nf_s[$key]*1;
$s_f = $s_f + $w_f_s[$key]*1;
$s_n_pl = $s_n_pl + $w_n_s_pl[$key]*1;
$s_nf_pl = $s_nf_pl + $w_nf_s_pl[$key]*1;
$s_f_pl = $s_f_pl + $w_f_s_pl[$key]*1;
if ($edti_stat[$key]==1){
echo "<td class='Field'>".OutNF($w_n_s[$key],$w_nf_s[$key],$w_f_s[$key])."</td>\n";
}
if ($edti_stat[$key]==0){
$link_dat = explode("|", $key);
$link_dat2 = $link_dat[0];
$link_dat3 = $link_dat[1];
echo "<td class='Field'><a target='_bland' href='index.php?do=show&formid=64&p0=".$link_dat2."&p1=".$link_dat3."'><b style='color:#aa0000;'>".OutNF($w_n_s_pl[$key],$w_nf_s_pl[$key],$w_f_s_pl[$key])."</b></a></td>\n";
}
}
echo "<td class='Field'></td>\n";
echo "<td class='Field'><b>".OutNF($s_n,$s_nf,$s_f)."</b></td>\n";
echo "<td class='Field'></td>\n";
echo "<td class='Field'></td>\n";
echo "<td class='Field'><b style='color:#aa0000;'>".OutNF($s_n_pl,$s_nf_pl,$s_f_pl)."</b></td>\n";
echo "<td class='Field'></td>\n";
////////////////////////////////////////////////////////////
+1
https://hr.cetera.ru/tests-developers/
Какой мяуздец )))
Внимание, кандидаты в стажёры!
Тестовое задание (поле анкеты «Ссылку на выполненное тестовое задание (ТОЛЬКО ДЛЯ СТАЖЁРОВ).») требуется выполнять сразу. Анкеты без тестового задания не рассматриваем, отказываем сразу. Этот тест — первое, на что смотрит проверяющий анкеты. Если поле пустое или там написано что-то вроде «сделаю потом» — «потом» не будет.
+1
ЗапросБезСЛ = Новый Запрос;
ЗапросБезСЛ.Текст = "ВЫБРАТЬ
| КарточкаСделкиТовары.Ссылка.Ссылка КАК СсылкаКС
|ИЗ
| Документ.КарточкаСделки.Товары КАК КарточкаСделкиТовары
|ГДЕ
| КарточкаСделкиТовары.Ссылка.Завершена = ЛОЖЬ
| И КарточкаСделкиТовары.Ссылка.ПометкаУдаления = ЛОЖЬ
| И (КарточкаСделкиТовары.СтатусСтроки = &СтатусСтрокиПлан
| ИЛИ КарточкаСделкиТовары.СтатусСтроки = &СтатусСтрокиПланХочуВЗаказано
| ИЛИ КарточкаСделкиТовары.Ссылка.Клиент = &Электросистем
| И КарточкаСделкиТовары.СтатусСтроки <> &СтатусСтрокиЗавершено)
| И КарточкаСделкиТовары.КонтрактнаяДата < НАЧАЛОПЕРИОДА(&ТекДата, ДЕНЬ)
| И КарточкаСделкиТовары.Ссылка.Подразделение В ИЕРАРХИИ(&ДРП)
| И КарточкаСделкиТовары.Ссылка.ДляПланаПроизводства = ЛОЖЬ
| И КарточкаСделкиТовары.Ссылка.Дата > &ПрошлыйГод
| И КарточкаСделкиТовары.Ссылка.Статус <> ЗНАЧЕНИЕ(Справочник.СтатусыКарточекСделки.Завершена)
//| И КарточкаСделкиТовары.Ссылка.Номер = ""180010002""
|
|СГРУППИРОВАТЬ ПО
| КарточкаСделкиТовары.Ссылка.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| КарточкаСделкиТовары.Ссылка.Дата УБЫВ";
ЗапросБезСЛ.УстановитьПараметр("СтатусСтрокиПлан", Справочники.СтатусыСтрокКарточкиСделки.Запланировано);
ЗапросБезСЛ.УстановитьПараметр("СтатусСтрокиПланХочуВЗаказано", Справочники.СтатусыСтрокКарточкиСделки.Заказано);
ЗапросБезСЛ.УстановитьПараметр("ТекДата", ТекущаяДата());
ЗапросБезСЛ.УстановитьПараметр("ДРП",Справочники.ФункциональныеОтделыПродаж.НайтиПоКоду("d16"));
ЗапросБезСЛ.УстановитьПараметр("Электросистем", Справочники.Контрагенты.НайтиПоКоду("140755"));
ЗапросБезСЛ.УстановитьПараметр("СтатусСтрокиЗавершено", Справочники.СтатусыСтрокКарточкиСделки.Завершено);
ЗапросБезСЛ.УстановитьПараметр("ПрошлыйГод", НачалоГода(НачалоГода(ТекущаяДата())-3 * 86400));
Выборка = ЗапросБезСЛ.Выполнить().Выбрать();
сПользователь = Справочники.Пользователи.НайтиПоКоду("17 644").Руководитель;
НоваяКонтрДата = ОбщиеПроцедурыИФункции.ОпределитьДатуЗавершения(сПользователь, ТекущаяДата(), 3600*8*1);
Пока Выборка.Следующий() Цикл
КС = Выборка.СсылкаКС.ПолучитьОбъект();
НеобходимоЗаписать = Ложь;
Если ЗначениеЗаполнено(Выборка.СсылкаКС.КодSL) Тогда
Для каждого Изделие из КС.Товары Цикл
СтатусСтроки = ПолучитьСтатусСтрокиВSL(Выборка.СсылкаКС.КодSL,Изделие.НомерСтроки,Выборка.СсылкаКС.Склад);
Если СтатусСтроки <> Неопределено И СтатусСтроки <> "F" //выполн.
и СтатусСтроки <> "C" //завершено
Тогда
Если Изделие.КонтрактнаяДата < НачалоДня(ТекущаяДата()) Тогда
Если (Изделие.СтатусСтроки = Справочники.СтатусыСтрокКарточкиСделки.Запланировано
или Изделие.СтатусСтроки = Справочники.СтатусыСтрокКарточкиСделки.Заказано) ИЛИ (Изделие.СтатусСтроки <> Справочники.СтатусыСтрокКарточкиСделки.Завершено И Выборка.СсылкаКС.Клиент = Справочники.Контрагенты.НайтиПоКоду("140755")) Тогда
Изделие.КонтрактнаяДата = НоваяКонтрДата;
НеобходимоЗаписать = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если НеобходимоЗаписать Тогда
КС.Записать();
Документы.КарточкаСделки.ОбновитьПараметрыКарточкиСделкиВSL(КС);
rs = Неопределено;
КонецЕсли;
Иначе
Для каждого Изделие из КС.Товары Цикл
Если Изделие.КонтрактнаяДата < НачалоДня(ТекущаяДата()) Тогда
Если (Изделие.СтатусСтроки = Справочники.СтатусыСтрокКарточкиСделки.Запланировано
или Изделие.СтатусСтроки = Справочники.СтатусыСтрокКарточкиСделки.Заказано) ИЛИ (Изделие.СтатусСтроки <> Справочники.СтатусыСтрокКарточкиСделки.Завершено И Выборка.СсылкаКС.Клиент = Справочники.Контрагенты.НайтиПоКоду("140755")) Тогда
Изделие.КонтрактнаяДата = НоваяКонтрДата;
НеобходимоЗаписать = Истина;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если НеобходимоЗаписать Тогда
КС.Записать();
rs = Неопределено;
КонецЕсли;
КонецЕсли;
КонецЦикла;
+1
public class Spot {
private Piece piece;
private int x;
private int y;
public Spot(int x, int y, Piece piece)
{
this.setPiece(piece);
this.setX(x);
this.setY(y);
}
public Piece getPiece() // метод возвращает объект фигуру
{
return this.piece;
}
public void setPiece(Piece p)
{
this.piece = p;
}
public int getX()
{
return this.x;
}
public void setX(int x)
{
this.x = x;
}
public int getY()
{
return this.y;
}
public void setY(int y)
{
this.y = y;
}
}
Дизайн шахматной игры
Эти виды вопросов задаются на интервью, чтобы судить о навыке объектно ориентированного дизайна кандидата. Итак, прежде всего, мы должны подумать о классах.
https://habr.com/ru/post/660003/
+1
Ёбаный openconnect
openconnect -- это свободная реализация протоколоа CISCO AnyConnect VPN.
В первом комменте опишу проблему.
+1
math.Min(float64, float64) float64
math.Max(float64, float64) float64
В goвне нету math.Min для integer. Даже в анскильном "Си" это есть.
https://www.pixelstech.net/article/1559993656-Why-no-max-min-function-for-integer-in-GoLang