- 1
- 2
В УЗБЕКИСТАНЕ ДАН СТАРТ МАСШТАБНОМУ ПРОЕКТУ ONE MILLION UZBEK CODERS
https://uznews.uz/ru/article/17817
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
0
В УЗБЕКИСТАНЕ ДАН СТАРТ МАСШТАБНОМУ ПРОЕКТУ ONE MILLION UZBEK CODERS
https://uznews.uz/ru/article/17817
Проект представляет собой дистанционное бесплатное обучение населения посредством онлайн-портала по четырем IT-специальностям.
0
# Если вы желаете ограничить диапазон "снизу",
# то просто производите генерацию псевдослучайных чисел в цикле до тех пор,
# пока не получите число большее нижней границы.
FLOOR=200
number=0 # инициализация
while [ "$number" -le $FLOOR ]
do
number=$RANDOM
done
echo "Случайное число, большее $FLOOR --- $number"
https://www.opennet.ru/docs/RUS/bash_scripting_guide/x4812.html
0
//замена главной диагонали с n-м столбцом в матрице с менюшкой и печеньками
#include "pch.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <stdlib.h>
#include <ctime>
#include <iomanip>
using namespace std;
int a[100][100], n = 3;
void inputN();
void filling(int);
void manualfill(int);
void showmass(int);
void solving();
void menu();
int main()
{
setlocale(0, "rus");
menu();
srand(time(NULL));
return 0;
}
void inputN() {
system("cls");
cout << "Введите n = "; cin >> n;
if (n < 3) {
cout << "\nИспользован стандартный размер массива 3х3\n\n";
n = 3;
}
showmass(2);
cout << "\n\n";
system("pause");
}
void filling(int n) {
system("cls");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
a[i][j] = rand() % 100 + 1;
}
}
showmass(3);
}
void manualfill(int n) {
system("cls");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
printf(" a[%d][%d] = ", i + 1, j + 1); cin >> a[i][j];
}
}
system("pause");
}
void showmass(int status) {
if (status == 2 or status == 3) cout << "\n\n";else system("cls");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cout << setw(5) << a[i][j];
}
cout << endl;
}
if (status==1 or status == 3)system("pause");
}
void solving() {
system("cls");
showmass(2);
int c = 0;
int stolb = 0;
cout << "\nКакой столбец меняем?\n>>"; cin >> stolb;
stolb--;
for (int i = 0; i < n; i++) {
c = a[i][i];
a[i][i] = a[i][stolb];
a[i][stolb] = c;
}
printf("\n\n----гл. диагональ меняется с %d столбцом----\n\n",stolb+1);
showmass(3);
for (int i = 0; i < n; i++) {
c = a[i][i];
a[i][i] = a[i][stolb];
a[i][stolb] = c;
}
}
void menu() {
system("cls");
int ch = 0;
while (true) {
cout << " МЕНЮ\n\n";
ъуъ
0
begin 644 /dev/stdout
M,$M$4FMD0V<P6E11;TU+=S!+1%%H9$-H,%I046]D0T1,0T11;TU+,3!+2%%G
M.4-G=W)V46].1U))3D-H-&]#83!+2&EG3&MG,$M(:6=+2%%O3D=2,$M(:6=*
M<E%O34MW,$M$0W1D0V@T;TMS,$M(46EI1%%O9$--,$M(:6=*<E%O3D=624,P
M=$E.0V<P26)1;V5+075D0V<T;U-7,$M$4VMD0V<P6D5G,$M$46AD0V=W<D%G
M,$M(46<Y0V<P26)1;V1#4#!+1$-T.4-H,$EO9S!+2%%G.4-H,$E,46].1U8P
42TAI9TM(46].0T8P2T12;%$]/0H`
`
end
+1
<?php
function split_hash($hash, $sizes) {
$cnt = count($sizes); // количество словарей
$partSize = floor(128/4/$cnt); // размер части хэша в тетрадах
$result = array();
foreach($sizes as $size) {
$tmp = substr($hash, 0, $partSize); // разбиваем хэш по тетрадам на равные части
$hash = substr($hash, $partSize);
$result[] = gmp_intval(gmp_mod(gmp_init($tmp, 16), $size)); // возвращаем остаток от деления фрагмента хэша
// на размер словаря
}
return $result;
}
function R($hash, $dicts) {
$sizes = array_map(function($val){return count($val);}, $dicts); // получаем размеры каждого словаря
$indices = split_hash($hash, $sizes);
$result = '';
foreach($indices as $dictNumber=>$index) {
$result .= $dicts[$dictNumber][$index]; // сцепляем слово из частей
}
return $result;
}
function make_chain($start, $length, $dicts) {
for($i = 0; $i < $length; ++$i) {
$hash = md5($start);
echo $hash . ' : ' . $start . PHP_EOL;
$start = R($hash, $dicts);
}
}
make_chain('свинособака', 10, array(
array('свино', 'овце', 'тигро', 'косатко', 'зубро', 'волко', 'кото'),
array('собака', 'бык', 'лев', 'дельфин', 'бизон')
));
Выводит:
360629d3cf05cee0240a23e1251c58a0 : свинособака
1f7ad860b089c0e1141de02ac1e6e3ef : волкобизон
6f2e4e3025c9dd840f1fa4a78792ef31 : котобизон
d5812761186013ecca674a2704d5a081 : зубробык
b4499d259156939bb74cbc1743632c8d : овцебизон
c28ad194fcc581f538d109f8acb6b1f5 : волкобык
663a3e06c88185db8fd4f81829e66b85 : котодельфин
30bb70e972bf073c7aa4ec93c8d5b9a0 : косаткодельфин
cc31cd8554c1add0128013bba2e47317 : волколев
d88e78b7340637370628848b1957b4c2 : котособака
0
var infScroll = throttle(function() {
if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight) {
$scope.loadMoreResults();
}
}, 1500);
var infScrollListener = function(ev) {
if ((window.innerHeight + window.pageYOffset) >= document.body.offsetHeight) {
infScroll();
}
};
window.addEventListener('scroll', infScrollListener);
$scope.$on('$destroy', function() {
infScroll.cancel();
window.removeEventListener('scroll', infScrollListener);
});
Какой бесконечный скроллинг )))
0
var a = ['a', 'b', 'c'];
var b = ['d', 'e', 'f'];
b.forEach(item => a.push(item)); // a == ["a", "b", "c", "d", "e", "f"]
// Но:
var a = ['a', 'b', 'c'];
var b = ['d', 'e', 'f'];
b.forEach(a.push.bind(a)); // a == ["a", "b", "c", "d", 0, Array(3), "e", 1, Array(3), "f", 2, Array(3)]
Кто поймёт, что за хуйня, тому нихуя.
−102
Фу, пока.
Оставайтесь, а мне нужно дальше - в Париж.
+3
<?
function russian_date($input) {
$date=explode("-", date("Y-m-d",strtotime($input)));
switch ($date[1]) {
case 1: $m='ЯНВАРЬ'; break;
case 3: $m='МАРТ'; break;
case 4: $m='АПРЕЛЬ'; break;
case 5: $m='МАЙ'; break;
case 6: $m='ИЮНЬ'; break;
case 2: $m='ФЕВРАЛЬ'; break;
case 7: $m='ИЮЛЬ'; break;
case 8: $m='АВГУСТ'; break;
case 9: $m='СЕНТЯБРЬ'; break;
case 10: $m='ОКТЯБРЬ'; break;
case 11: $m='НОЯБРЬ'; break;
case 12: $m='ДЕКАБРЬ'; break;
}
echo ($m.' '.$date[0]);
}
?>
Образцовый код из одного мегапроекта от профессионалов.
Такие монстры рождаются, когда не знаешь о локали.
0
function sortWithIndeces(toSort: any) {
for (let i = 0; i < toSort.length; i++) {
toSort[i] = [toSort[i], i];
}
toSort.sort(function(left: any[], right: any[]) {
return left[0] < right[0] ? -1 : 1;
});
toSort.sortIndices = [];
for (let j = 0; j < toSort.length; j++) {
toSort.sortIndices.push(toSort[j][1]);
toSort[j] = toSort[j][0];
}
return toSort;
}
sortWithIndeces(arr);
arr.sortIndices.forEach((item: any, index: number) => {
result[index] = data[item];
});
Нашёл в гите у нас на проекте этот божественный код )
Сортировка выглядит так, ни одного коммента в коде.
В ходе анализа стало понятно что таким образом автор пытался восстановить порядок сортировки.