1-100の足し算を一番ひどいコードで書いた奴が優勝

1 :仕様書無しさん:2014/03/17(月) 01:57:59.72 .net
バッドノウハウ共有。
言語名は必須。
とりあえず何も考えずに。

C#
int sum = 0;
for(int i = 1; i <= 100; ++i)
{
  sum += i;
}

156 :仕様書無しさん:2014/03/27(木) 18:56:28.21 .net

電卓を外している俺には使えないな

372 :仕様書無しさん:2015/01/31(土) 22:02:37.56 .net

引き算だけ使って1から100までの和を求めてみた。

#include <stdio.h>
#include <limits.h>
main() {
 int sum = INT_MAX;
 for (; ; sum–) {
  int i, rest = sum;
  for (i = 100; i >= 1; i–)
   rest -= i;
  if (rest == 0) {
   printf(“%d¥n”, sum);
   break;
  }
 }
}

古いマシンほど早く答えが出るのがひどい。

63 :仕様書無しさん:2014/03/20(木) 00:44:37.52 .net

可読性が下がるからバッドノウハウであるという点を除けば微妙に勉強になるスレだな

288 :仕様書無しさん:2014/04/19(土) 17:18:27.45 .net

>>286
%と/を使わない方法でやってみた

//C
#include <stdio.h>

int mod(int left,int right){
while( left >= right )
left -= right;
return left;
}

int main(void){
int i;

for( i = 1 ; i <= 100 ; i++ ){
if( mod(i,15) == 0 )
printf(“FizzBuzz¥n”);
else if( mod(i,3) == 0 )
printf(“Fizz¥n”);
else if( mod(i,5) == 0 )
printf(“Buzz¥n”);
else
printf(“%d¥n”,i);
}

return 0;
}

3 :仕様書無しさん:2014/03/17(月) 02:13:56.25 .net

>>2を超えるコードが見たい

3 :仕様書無しさん:2014/03/17(月) 02:13:56.25 .net

>>2を超えるコードが見たい

152 :仕様書無しさん:2014/03/27(木) 17:54:49.40 .net

Java

public class 一から百の足し算をする酷いクラス
{
  static int 合計 = 0;
  static int カウンター = 1;

  public static void main(String… つかわない)
  {
    Arrays.stream(new Object[100]).forEach(o -> 合計 += カウンター++);
    System.out.println(合計);
  }
}

「ひどさ」にもいろいろな種類があると思う

167 :仕様書無しさん:2014/03/28(金) 01:18:45.58 .net

//これ実行してのを実行してくださいたぶん動くから
#include<iostream>
int i;void main()
         {
for(i=0;i<=100;i=i+1)
      switch(i)
     {
case 0:printf(“#include<iostream>¥nvoid main(){printf(¥”%%d¥”,0″);break;
case 1:printf(“+%d”,1);break;
case 2:printf(“+%d”,2);break;
case 3:printf(“+%d”,3);break;
case 4:printf(“+%d”,4);break;
case 5:printf(“+%d”,5);break;
case 6:printf(“+%d”,6);break;
case 7:printf(“+%d”,7);break;
case 8:printf(“+%d”,8);break;
  (中略)
case 93:printf(“+%d”,93);break;
case 94:printf(“+%d”,94);break;
case 95:printf(“+%d”,95);break;
case 96:printf(“+%d”,96);break;
case 97:printf(“+%d”,97);break;
case 98:printf(“+%d”,98);break;
case 99:printf(“+%d”,99);break;
case 100:printf(“+%d”,100);break;
     }
 printf(“);}”
);     }

235 :仕様書無しさん:2014/04/08(火) 07:49:17.75 .net

このレス番が素数じゃない

109 :仕様書無しさん:2014/03/22(土) 21:49:22.08 .net

1+sum(1..100)に見えるのは俺だけか

15 :仕様書無しさん:2014/03/17(月) 11:58:00.38 .net

int s=5050; //電卓で計算済み

384 :仕様書無しさん:2015/08/07(金) 16:43:46.66 .net

>>1
1-100は引き算だろ

34 :仕様書無しさん:2014/03/18(火) 20:35:02.71 .net

C++

#include <iostream>

int main()
{
int a=0,b=0,c;
for(int i=1; i<=100; ++i){
b=a&amp;i; a^=i;
while(b){ b<<=1; c=a; a^=b; b&amp;=c; }
}
std::cout << “a=” << a << std::endl;
return 0;
}

216 :仕様書無しさん:2014/04/01(火) 01:35:34.98 .net

366 :仕様書無しさん:2014/07/02(水) 18:43:55.10 .net

>>364
自分語りはいいから駄コード書けよ

47 :仕様書無しさん:2014/03/19(水) 01:02:57.89 .net

linuxのshell script(bash)で、、

i=0
sum=0
while [ $i -lt 100 ]
do
i=`expr $i + 1`
sum=`expr $sum + $i`
done
echo $sum

159 :149:2014/03/27(木) 19:26:58.70 .net

そういや電卓が入ってないPC想定してなかったわw
本当の意味で酷いな・・・

315 :仕様書無しさん:2014/04/28(月) 09:14:55.68 .net

人に言われて動いていると自分が自分でなくなるというわけか。
考えさせられるなw

177 :仕様書無しさん:2014/03/28(金) 21:10:31.51 .net

C
int sum = 0;
int i;
for(i = 1 ; i<=100 ; i++){
sum += i;
}

8bitコンパイラを想定してないからひどいコードだよね?

41 :仕様書無しさん:2014/03/18(火) 22:29:23.03 .net

駄スレかと思って開いたらすごくおもしろいスレだな
毎週違う問題のこんなコードを見てみたい
誰かWikiつくったりしてやらないかな…

310 :仕様書無しさん:2014/04/26(土) 22:42:17.84 .net

50 goto 20

368 :仕様書無しさん:2014/07/03(木) 00:14:25.89 .net

+/1+i.100

164 :仕様書無しさん:2014/03/28(金) 00:28:18.40 .net

>>163
また途中から雑なw

229 :仕様書無しさん:2014/04/06(日) 17:29:24.78 .net

ブルドッグかオタフクだな。

81 :仕様書無しさん:2014/03/21(金) 11:34:02.79 .net

# perl (らしいこと何もしてないけど)
$sum=0;
for ($i=1; $i<=100; ++$i) {
 for ($c=0; $c<$i; ++$c) {
  ++$sum;
 }
}
print “$sum”;

367 :仕様書無しさん:2014/07/02(水) 21:50:46.42 .net

1-100の足し算
引き算なのに足し算
眠れなくなる

414 :仕様書無しさん:2016/11/10(木) 21:35:48.58 .net

VBScript
1〜100の和を 1000^101 / 999^2 の商を利用して計算。
投稿規制に引っかかったので等号は全角にしてます。

n = 100
nn = n * 10
a = nn ^ 2
b = (nn – 1) ^ 2

q = Int(a / b)
s = CStr(q)
For i = 2 To n
a = (a – b * q) * nn
q = Int(a / b)
s = s & “,” & Right(“00” & CStr(q), 3)
Next

WScript.Echo “sum(1…” & CStr(n) & “) = ” & Eval(Replace(s, “,”, “+”))

202 :仕様書無しさん:2014/03/30(日) 05:21:52.92 .net

>>201
今知ったけどすごいアルゴリズムだな…

281 :仕様書無しさん:2014/04/18(金) 00:55:30.51 .net

お題 >>261 サイコロ
Ruby

def dice
 (Time.now.to_i%6).to_i
end

149 :仕様書無しさん:2014/03/27(木) 11:53:50.14 .net

最も酷いのは電卓を呼び出してキーイベントで電卓叩くプログラムじゃないかな

132 :仕様書無しさん:2014/03/24(月) 18:57:16.28 .net

俺基準ひどいコード
・長い
・周りくどい
・読みにくい
・スパゲッティ
・明らかなタイポ
・裏で深刻なエラー
・ルール理解してない
・画像で描かれている
・コンパイラが存在しない

91 :仕様書無しさん:2014/03/21(金) 23:27:57.85 .net

int i;
i = 1;
i = i + 1;  i = i + 2;  i = i + 3;  i = i + 4;  i = i + 5;
i = i + 6;  i = i + 7;  i = i + 8;  i = i + 9;  i = i + 10;
i = i + 11;  i = i + 12;  i = i + 13;  i = i + 14;  i = i + 15;
i = i + 16;  i = i + 17;  i = i + 18;  i = i + 19;  i = i + 20;
i = i + 21;  i = i + 22;  i = i + 23;  i = i + 24;  i = i + 25;
i = i + 26;  i = i + 27;  i = i + 28;  i = i + 29;  i = i + 30;
i = i + 31;  i = i + 32;  i = i + 33;  i = i + 34;  i = i + 35;
i = i + 36;  i = i + 37;  i = i + 38;  i = i + 39;  i = i + 40;
i = i + 41;  i = i + 42;  i = i + 43;  i = i + 44;  i = i + 45;
i = i + 46;  i = i + 47;  i = i + 48;  i = i + 49;  i = i + 50;
i = i + 51;  i = i + 52;  i = i + 53;  i = i + 54;  i = i + 55;
i = i + 56;  i = i + 57;  i = i + 58;  i = i + 59;  i = i + 60;
i = i + 61;  i = i + 62;  i = i + 63;  i = i + 64;  i = i + 65;
i = i + 66;  i = i + 67;  i = i + 68;  i = i + 69;  i = i + 70;
i = i + 71;  i = i + 72;  i = i + 73;  i = i + 74;  i = i + 75;
i = i + 76;  i = i + 77;  i = i + 78;  i = i + 79;  i = i + 80;
i = i + 81;  i = i + 82;  i = i + 83;  i = i + 84;  i = i + 85;
i = i + 86;  i = i + 87;  i = i + 88;  i = i + 89;  i = i + 90;
i = i + 91;  i = i + 92;  i = i + 93;  i = i + 94;  i = i + 95;
i = i + 96;  i = i + 97;  i = i + 98;  i = i + 99;  i = i + 100;

150 :仕様書無しさん:2014/03/27(木) 12:20:42.10 .net

さすがSE様、コードは書かねえ

304 :仕様書無しさん:2014/04/25(金) 23:13:43.31 .net

>>1   1から100の足し算結果を出力
>>228  素数探し
>>261  サイコロ(1〜6からランダムに出力)
>>286  FizzBuzz問題
>>299  数学関数(round,pow,sqrt)
>>312  自分探し

116 :仕様書無しさん:2014/03/23(日) 14:22:17.65 .net

いい言語だ

data Nat = Zero | Succ Nat deriving Show

add Zero x = x
add (Succ x) y = Succ $ add x y

mul Zero _ = Zero
mul (Succ x) y = add y $ mul x y

iota Zero = []
iota x@(Succ x’) = x : iota x’

one = Succ Zero
two = add one one
ten = mul two $ add two $ add two one
hund = mul ten ten

main = print $ foldl add Zero $ iota hund

308 :仕様書無しさん:2014/04/26(土) 12:04:41.01 .net

素敵な素数の素子

142 :141:2014/03/25(火) 00:51:39.60 .net

「捨てられない」なんて思っているのは俺ではない。いい忘れた

75 :仕様書無しさん:2014/03/21(金) 06:48:16.61 .net

else if (i == 50) a+= 51;else if (i == 51) a+= 52;else if (i == 52) a+= 53;else if (i ==53) a+= 54;
else if (i == 54) a+= 55;else if (i == 55) a+= 56;else if (i == 56) a+= 57;else if (i == 57) a+= 58;
else if (i == 58) a+= 59;else if (i == 59) a+= 60;else if (i == 60) a+= 61;else if (i == 61) a+= 62;
else if (i == 62) a+= 63;else if (i == 63) a+= 64;else if (i == 64) a+= 65;else if (i == 65) a+= 66;
else if (i == 66) a+= 67;else if (i == 67) a+= 68;else if (i == 68) a+= 69;else if (i == 69) a+= 70;
else if (i == 70) a+= 71;else if (i == 71) a+= 72;else if (i == 72) a+= 73;else if (i == 73) a+= 74;
else if (i == 74) a+= 75;else if (i == 75) a+= 76;else if (i == 76) a+= 77;else if (i ==77) a+= 78;
else if (i == 78) a+= 79;else if (i == 79) a+= 80;else if (i == 80) a+= 81;else if (i == 81) a+= 82;
else if (i == 82) a+= 83;else if (i == 83) a+= 84;else if (i == 84) a+= 85;else if (i == 85) a+= 86;
else if (i == 86) a+= 87;else if (i == 87) a+= 88;else if (i == 88) a+= 89;else if (i == 89) a+= 90;
else if (i == 90) a+= 91;else if (i == 91) a+= 92;else if (i == 92) a+= 93;else if (i == 93) a+= 94;
else if (i == 94) a+= 95;else if (i == 95) a+= 96;else if (i == 96) a+= 97;else if (i == 97) a+= 98;
else if (i == 98) a+= 99;else if (i == 99) a+= 100;
}

155 :仕様書無しさん:2014/03/27(木) 18:53:38.37 .net

>>154
おお、動いた。計算中 フォーカスを電卓以外に移すと(w

コンパイルこんな感じ → cl ファイル名.cpp user32.lib shell32.lib

111 :仕様書無しさん:2014/03/22(土) 23:27:23.84 .net

>>106
>>95のリンク先にBlocklyから変換されたPythonとDartとJavaScriptのコードがある
Blocklyすげぇ

65 :仕様書無しさん:2014/03/20(木) 01:16:23.03 .net

ruby

def sum(start, end)
 raise ‘バリデーションエラー’ unless start == 1 and end == 100
 5050
end

285 :仕様書無しさん:2014/04/19(土) 13:52:00.70 .net

そこら辺の領域をゴミごと拾って初期化せず使うからランダム(に見える)
忠実なコンパイラは通すが頭がいいコンパイラは初期化してないって怒る

355 :仕様書無しさん:2014/06/23(月) 05:06:31.69 .net

#include <stdio.h> /*おまじない*/

main() /*メイン関数*/
{ /*波カッコ*/
int goukei=0; /*合計に0を代入*/
int kazu=1; /*数に1を代入*/
for(kazu=1;kazu<101;kazu++) /*繰り返す*/
{ /*波カッコ*/
goukei+=kazu; /*合計に数を足す*/
} /*波カッコ*/
printf(“kekkaha%ddesu”,goukei); /*プリントf関数を使う*/
} /*波カッコ*/

412 :仕様書無しさん:2016/11/06(日) 19:24:20.00 .net

vbs
 ってかExcel二番煎じ

Rem

305 :仕様書無しさん:2014/04/26(土) 00:08:09.33 .net

自分探し?

181 :仕様書無しさん:2014/03/29(土) 01:42:29.02 .net

俺はコードを100本持っているが
お前らには貸さん

1から100まで貸さんコード

157 :仕様書無しさん:2014/03/27(木) 19:00:03.43 .net

Java
import static java.lang.System.*;import static java.util.Arrays.*;
class I{public static void main(String… i){out.println(new I(){int i;int j;{stream(new I[100]).forEach(l->i+=++j);}}.i);}}

読み辛いだけでも十分ひどいコード
コードの中身は大体>>152と同じ。マルチバイト名やめて匿名クラスを追加してLIJ多用

————–
JavaScript
javascript:(function(){var a=”1″;for(i=2;i<101;i++)a+=”%252B”+i;location.href=”https://www.google.com/search?q=”+a})()

>>144の派生。発想は>>149
Chromeだと、ブラウザに貼り付けた時に消される”javascript:”を頭につけてあげれば実行できる
他のブラウザは知らんです

2 :仕様書無しさん:2014/03/17(月) 02:03:42.52 .net

C#
int sum = 1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+
21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+
41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+
61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+
81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100;

330 :仕様書無しさん:2014/06/04(水) 15:41:40.62 .net

Javaで

public class GaussSum {

public static void main(String[] args) {
// ワイならこう考えるやで
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += 101;
}
System.out.println(sum);

}

}

72 :仕様書無しさん:2014/03/21(金) 03:49:39.94 .net

(* Standard ML *)
local val t = ref 0 in val sum1_100 = (hd o rev o List.tabulate) (101, fn i =>
(t := !t + i; !t)) end ;

(* assertion *)
val true = sum1_100 = foldl (op +) 0 (List.tabulate(101, fn i => i));

参考になったらSNSでシェアお願いします!

レスを投稿する(名前省略可)

この記事を読んだ方へのおすすめ

最近のコメント

匿名 : 【いちゃ部屋】株式会社SHIFT【5ch出張所】
 新入社員はわかいそう、 在宅勤務でe-ラニングうけとけ、 ... (6/18)
匿名 : 【残業代】福井 株式会社アスタ【未払い】
 プライド高いところあるけど清輝あるなら大丈夫や (5/28)
匿名 : 【残業代】福井 株式会社アスタ【未払い】
 プライド高いところあるけど清輝あるなら大丈夫か (5/07)
ページTOPへ↑