- 1
- 2
- 3
- 4
- 5
- 6
foreach (var item in text.Split(' ')) {
if (!string.IsNullOrEmpty(item)) {
text = item;
break;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+141
foreach (var item in text.Split(' ')) {
if (!string.IsNullOrEmpty(item)) {
text = item;
break;
}
}
переменная text всегда содержит несколько пробелов и затем идентификатор.
+989
stek* getLast(){
stek* result = first;
while (!isLast(*result)){
result = result->next;
}
return result;
}
void push( char* string ){
stek* anew = new stek;
anew->string = string;
anew->next = NULL;
anew->first = first;
getLast()->next = anew;
}
void printList(){
if (first != NULL){
stek* element = first;
puts( element->string );
while (!isLast(*element)){
element = element->next;
puts( element->string );
}
}
else{
puts( "List is empty" );
}
}
stek* getPrev( stek* element ){
stek* result = first;
while (result->next != element){
result = result->next;
}
return result;
}
void changeFirstInList( stek* newFirst ){
stek* element = first;
while (element != NULL){
element->first = newFirst;
element = element->next;
}
}
void deleteElement( stek* element )
{
if ( element->first == element ){
first = element->next;
changeFirstInList( first );
}
else{
stek* prev = getPrev( element );
stek* next = element -> next;
prev->next = next;
}
}
void deleteElements( int length ){
stek* element = first;
while (element != NULL){
stek* next = element->next;
if (strlen(element->string) < length) {
deleteElement( element );
}
element = next;
}
}
int _tmain(int argc, _TCHAR* argv[]){
char *token;
char st1[80];
int minLength = 4;
int n=0;
printf("Enter string: ");
gets( st1 );
printf("Enter minimal length: ");
scanf( "%d", &minLength );
first=NULL;
first=new stek;
first->next=NULL;
first->first=first;
token=strtok(st1," ");
first->string=token;
token=strtok(NULL," ");
while( token != NULL){
push(token);;
token=strtok(NULL," ");
}
stek* element = first;
while (element != NULL){
stek* next = element->next;
if (strlen(element->string)<3) n++;
element = next;
}
puts("Initial stack:");
printList();
deleteElements( minLength );
printf("Slov dlinoi less than 3: %d\n",n);
puts("After deleting:");
printList();
getch();
}
Лабораторная работа, написанная двумя студентами первого курса. Задание: "Дана строка 80 символов, разбить её на слова (разделитель - пробел), удалить слова меньше опр. длины и вывести количество слов с длиной меньше 3-ех".
Почти каждая строчка в main'e - перл.
З.Ы. Форматирование кода тоже доставляет.
+160
http://habrahabr.ru/blogs/about_cms/130082/
facepalm.png
dlemaser (aka WebKill), хабр ниторт^Wговно
+160
window.alert = function(){
events.event(arguments[0],arguments[1],arguments[2],arguments[3],arguments[4]);
}
И это - в продакшене. Писано - для военных
+160
HRESULT GetOutlookVersionString(LPSTR* ppszVer, BOOL* pf64Bit)
{
HRESULT hr = E_FAIL;
LPSTR pszTempPath = NULL;
LPSTR pszTempVer = NULL;
TCHAR pszaOutlookQualifiedComponents[][MAX_PATH] = {
TEXT("{1E77DE88-BCAB-4C37-B9E5-073AF52DFD7A}"), // Outlook 2010
TEXT("{24AAE126-0911-478F-A019-07B875EB9996}"), // Outlook 2007
TEXT("{BC174BAD-2F53-4855-A1D5-0D575C19B1EA}") // Outlook 2003
};
int nOutlookQualifiedComponents = _countof(pszaOutlookQualifiedComponents);
int i = 0;
DWORD dwValueBuf = 0;
UINT ret = 0;
*pf64Bit = FALSE;
for (i = 0; i < nOutlookQualifiedComponents; i++)
{
ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.x64.exe"),
(DWORD) INSTALLMODE_DEFAULT,
NULL,
&dwValueBuf);
if (ERROR_SUCCESS == ret) break;
}
if (ret != ERROR_SUCCESS)
{
ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.exe"),
(DWORD) INSTALLMODE_DEFAULT,
NULL,
&dwValueBuf);
}
else
{
*pf64Bit = TRUE;
}
if (ret == ERROR_SUCCESS)
{
dwValueBuf += 1;
pszTempPath = (LPSTR) malloc(dwValueBuf * sizeof(TCHAR));
if (pszTempPath != NULL)
{
if ((ret = MsiProvideQualifiedComponent(
pszaOutlookQualifiedComponents[i],
TEXT("outlook.exe"),
(DWORD) INSTALLMODE_EXISTING,
pszTempPath,
&dwValueBuf)) != ERROR_SUCCESS)
{
goto Error;
}
pszTempVer = (LPSTR) malloc(MAX_PATH * sizeof(TCHAR));
dwValueBuf = MAX_PATH;
if ((ret = MsiGetFileVersion(pszTempPath,
pszTempVer,
&dwValueBuf,
NULL,
NULL))!= ERROR_SUCCESS)
{
goto Error;
}
*ppszVer = pszTempVer;
pszTempVer = NULL;
hr = S_OK;
}
}
Error:
free(pszTempVer);
free(pszTempPath);
return hr;
}
Говнокод от САМОГО Билли... 21 век на дворе, а у нас в C++ коде goto Error написано (точнее - накакано).
Источник - http://msdn.microsoft.com/en-us/library/dd941331.aspx
+167
const StringId sidPathName = [=]() -> const char* const
{
switch (path)
{
case PATH_TOWN_HERO:
return "game/careers/town_hero";
case PATH_MAD_SCIENTIST:
return "game/careers/mad_scientist";
case PATH_SPECIAL_AGENT:
return "game/careers/special_agent";
case PATH_PSYCHIC_PAINTER:
return "game/careers/psychic_painter";
default:
RZT_ASSERT(false);
return "";
}
}();
Не удержался: давно мечтал о возможности ставить const на такие переменные, не отказываясь при этом от свитчей!
+141
#include <stdio.h>
int main() {
unsigned d,t,k;
scanf("%d",&d);
t=d;
for(k=0;t!=0;k++) //определяем кол-во значащих битов
t>>=1;
//обнуляем старший значащий бит
d<<=sizeof(d)*8-k+1;
d>>=sizeof(d)*8-k+1;
return 0;
}
Вот такое вот обнуление старшего бита
+52.6
#include <iostream.h>
#include <conio.h>
using namespace std;
int main (int argc, char *argv[])
{
system ("Title Kaлькyлятop");
int x, y, otvet;
char znak;
cin >> x >> znak >> y;
if (znak == '+') otvet = x+y;
if (znak == '-') otvet = x-y;
if (znak == '*') otvet = x*y;
if (znak == '/') otvet = x/y;
system ("cls");
cout << x << znak << y << "=" << otvet;
getch();
return 0;
}
Kaлькyлятop
+42.3
/// Однажды придумал от скуки :) the1st.net.ru
if(!function_exists('function_exists')) {
function function_exists($f) {
return function_exists($f);
}
}
Придумано от скуки на досуге. Довольно спонтанно вырвалась мысль и была сразу воплощена в жизнь :)
0
С днём защитника жопы Борманда вас, питухи!
День защитника Путина.