- 1
- 2
- 3
<a href="/login">
<?php echo( 'В'. ($isLogged ? 'ы' : '') . 'ход'); ?>
</a>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+8
<a href="/login">
<?php echo( 'В'. ($isLogged ? 'ы' : '') . 'ход'); ?>
</a>
+5
//Модуль 1
Функция хуй() экспорт
возврат хуйбазовый();
конецфункции
//Модуль 2
Функция хуйбазовый() экспорт
возврат хуйразширеный();
конецфункции
//Модуль 3
Функция хуйстандартный() экспорт
возврат хуйособый();
конецфункции
//Модуль 4
Функция хуйособый() экспорт
возврат хуйуправляемый();
конецфункции
//Модуль 5
Функция хуйуправляемый() экспорт
возврат получитьхуй();
конецфункции
//Модуль 6
Функция получитьхуй() экспорт
возврат хуйстандарт();
конецфункции
и т.д.
Нахуя?
0
if (cond1)
{
do_shit1();
}
else if (cond2)
{
do_shit2();
}
else if (cond3)
{
do_shit3();
}
else if (cond4)
{
do_shit4();
}
Вот например есть такая вот типичная хуита, предположим что я знаю, что среди этих cond1 cond2 ... только один может быть true, остальные условия всегда будет ложными.
И в этой сраной цепочке из if - else if можно перемещать if блоки без изменения логики. НО в языке Си (да и в C++ я уверен тоже) нет способа сказать компилятору что-то вроде "только одно из условий true, так что ты, сраный компилятор, можешь переделывать эту хуиту, и даже убрать else, если процессор в таком случае (при if(cond1) {do_shit1();}; if(cond2) {do_shit2();}; ... ) будет эту ссанину быстрее обрабатывать".
Какие-нибудь языки программирования такую оптимизацию вообще умеют?
−10
Вопрос
Кто знает, как динамически выделить память, заполнить её нужными инструкциями, и исполнить этот код, не испытав при этом анальной боли и не получить Segmentation Fault ?
−1
<?php
switch ($type) {
case 'text';
echo 'А вы знали';
break;
case 'number';
echo 'что так можно?';
break;
}
−1
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
cin>>a>>b;
if(a==0&&b==0&&c==0)
cout<<"Black";
if(a==1&&b==0&&c==0)
cout<<"Red";
if(a==0&&b==1&&c==0)
cout<<"Green";
if(a==0&&b==0&&c==1)
cout<<"Blue";
if(a==1&&b==1&&c==0)
cout<<"Yellow";
if(a==1&&b==0&&c==1)
cout<<"Magenta";
if(a==0&&b==1&&c==1)
cout<<"Cyan";
if(a==1&&b==1&&c==1)
cout<<"White";
}
не спрашивайте, для чего
0
char bytes[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
function1(bytes);
(void)(bytes[0] = 10), (void)(bytes[1] = 11), (void)(bytes[2] = 12); //WTF?
function2(bytes);
Вот такую байду требует написать XCode при присвоении элементов массива через запятую, иначе warning.
Гейкорп и их главпидор Кук совсем охренели, мало того что последие хуйкоды крашатся и виснут по фазам луны, мало того что встроенный гуй систем контроля версий работает как говно, так оно еще и ворининги выдает на ровном месте - качество apple - blyad.
0
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
int files_hidden = 0; int files_dirs = 0; int files_files = 0;
#define MEGA 1007
void nextDir(char *path, FILE *f, const char *verbose)
{
DIR *dir = opendir(path);
if(dir)
{
struct dirent *ent;
while((ent = readdir(dir)) != NULL)
{
if(strcmp(ent->d_name, ".") == 0) continue;
if(strcmp(ent->d_name, "..") == 0) continue; if(ent->d_name[0] == '.') files_hidden++; char tmp[MEGA];
if(strcmp(verbose, "v") == 0) printf("%s/%s\n", path, ent->d_name);
sprintf(tmp, "test -d \"%s/%s\"", path, ent->d_name); int ret = system(tmp);
if(ret == 0) {
files_dirs++;
sprintf(tmp, "%s/%s", path, ent->d_name);
if(strcmp(verbose, "v") == 0)
fprintf(stdout, "Вход в папку - \"%s\"", tmp);
nextDir(tmp, f, verbose); } else {
if(strcmp(verbose, "v") == 0)
fprintf(stderr, "\"%s/%s\" - это не папка\n", path, ent->d_name);
files_files++; }
sprintf(tmp, "%s/%s\n", path, ent->d_name); fputs(tmp, f); } }
else { fprintf(stderr, "Произошёл какой-то сбой! Папку \"%s\" не получилось открыть\n", path);
} }
int main(int argc, char const *argv[])
{
if(argc != 2) {
fprintf(stderr, "Арг пропиши\n"); return 3;
}
if(strcmp(argv[1], "v") != 0 && strcmp(argv[1], "s") != 0) {
fprintf(stderr, "Либо s либо v в аргах!\n"); return 4;
}
printf("Начинается сбор...\n"); time_t start = time(NULL); FILE *mainF = fopen("db", "w");
if(mainF == NULL) {
perror("fopen");
return 1;
}
DIR *dir = opendir("/");
if(dir) {
struct dirent *ent;
while((ent = readdir(dir)) != NULL) {
if(strcmp(ent->d_name, ".") == 0) continue; if(strcmp(ent->d_name, "..") == 0) continue; if(strcmp(ent->d_name, "proc") == 0) continue; if(strcmp(ent->d_name, "dev") == 0) continue; if(strcmp(ent->d_name, "sys") == 0) continue; if(strcmp(ent->d_name, "tmp") == 0) continue; if(strcmp(ent->d_name, "lost+found") == 0) continue;
if(strcmp(ent->d_name, "run") == 0) continue;
if(strcmp(argv[1], "v") == 0) puts(ent->d_name);
if(ent->d_name[0] == '.') files_hidden++;
char tmp[MEGA];
sprintf(tmp, "test -d \"/%s\"", ent->d_name);
int ret = system(tmp);
if(ret == 0) {
files_dirs++;
sprintf(tmp, "/%s", ent->d_name);
if(strcmp(argv[1], "v") == 0)
fprintf(stdout, "Вход в папку - \"%s\"\n", tmp);
nextDir(tmp, mainF, argv[1]);
}
else {
if(strcmp(argv[1], "v") == 0)
Пришлось строки многие подряд написать чтоб вместилось сюда!
Эта прога сканирует все файлы на линукс а пишет их в файл. И в конце ещё статистику выдаёт.
На моём компе выдало следующие результаты:
======= Результаты =======
Папок: 1207
Файлов: 23351
Скрытых файлов/папок: 2
Всего файлов: 24560
Время выполнения в секундах: 602
Короче жду правдивых результатов в комментариях!
А также критику, прога ещё недоделана и глюкает!
А утилиту test использует потому что если я сделал без неё прога вышла бы слишком сложной, а всё гениальное просто
−1
n = int(input())
matrix = [[0] * n for i in range(n)]
num = 1
end = n
start = 0
while num != num**2:
for i in range(start, end):
if num == num**2:
break
for j in range(start, end):
if num == num**2:
break
matrix[i][j] = num
num += 1
if j + 1 == end:
for k in range(start+1, end):
if num == num**2:
break
matrix[k][j] = num
num += 1
if k + 1 == end:
for l in range(-end+1, -start):
if num == num**2:
break
matrix[k][l] = num
num += 1
if l + 1 == start:
for m in range(-end+1, -start-1):
if num == num**2:
break
matrix[m][l] = num
num += 1
end -= 1
start += 1
for i in range(n):
for j in range(n):
print(matrix[i][j], end='\t')
print()
у меня на выходе только нули, не понимаю где нагадил,вот условие:
Выведите таблицу размером n×n, заполненную числами от 1 до n**2 по спирали, выходящей из левого верхнего угла и закрученной по часовой стрелке, как показано в примере (здесь n=5):
Sample Input:
5
Sample Output:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
+4
void delslovo(char *a)
{
static int i = 0;
static bool j = false;
if (a[i++] != '\0') delslovo(a);
else i--;
if (!j)
{
if (a[i] != ' '&&a[i] != '\n'&&a[i] != '\0')
{
j = true;
i++;
}
}
if (j)
{
if (a[i - 1] == ' ') return;
a[i - 1] = a[i];
}
i--;
}
вот так надо удалять последнее слово из строки