プログラマから出題。これができたら一人前!!!!!

このエントリーをはてなブックマークに追加
11
プログラマの問題集スレッドです。
このスレからプログラマが巣立ちます。
書籍などでは学習できないネタ歓迎。

22:02/04/25 02:47
2
3仕様書無しさん:02/04/25 02:48
デスマーチプロジェクトへの召喚回避
4仕様書無しさん:02/04/25 03:03
システム障害起こせ。
ミスから学べ。
間違っても運用始まってからは起こすなよ。
テスト段階でだ。
5仕様書無しさん:02/04/25 03:05
大便放出時に閃けるようになったら一人前じゃ。
6仕様書無しさん:02/04/25 03:08
ドラゴンボールを集めろ。
話はそれからだ。
77 ◆777sHKOE :02/04/25 03:11
8仕様書無しさん:02/04/25 03:16
運用段階で事故る
これ最強。
始末書や社損伝票書くときの虚しさ。
障害記録DBに始末書以上に詳細に事故の経緯と技術的な点を纏め上げる鬱さ。
日頃、大口を叩くSヨまでもが事故るといじられっこのような状態になるのが見ていて痛々しいぞ。
ソフト屋としてのわびさびがそこにある。
9NTTD:02/04/25 03:38
運用時に発生した事故!これを如何に穏便に済ますかが、プロ!
きずかぬように、さとれるように、やばいことにはふたおして!
時代遅れの、システムでいい!時代遅れのユーザには!
10マジレス屋1972:02/04/25 03:44
ハッシュ法のメリットとデメリットを書け。
11仕様書無しさん:02/04/25 03:54
メリット:
 基本的には定時間アルゴリズムになる。即ち、早いってこと。
デメリット:
 コンフリクトが多発する場合にデータの管理がややこしくなる。
 オープンハッシュでもクローズハッシュでもこれは変わらない。
 こういった場合、ハッシュ関数の選択は重要。
 ハッシュをやめてB木にするとかいったことも必要になるね。
12なぎさっち:02/04/25 19:00
【出題】

Q1:今日の夜食の献立を考えましょう。

Q2:今年のGWの出勤予定を提出してください。
13仕様書無しさん:02/04/25 23:04
プログラマなんて半分くらいはヒッキーだろうから、
コミュニケーションできるようになったら一人前。
14仕様書無しさん:02/04/25 23:08
>>13
コミュニケーションが一人前のPGは
マとして半人前という罠
15仕様書無しさん:02/04/25 23:13
>>14
それ、この業界の常識。
口が達者な奴ほど、技術者としては半人前。
16仕様書無しさん:02/04/25 23:15
ハッシュとマッシュポテトの違い・・・(以下略)
17仕様書無しさん:02/04/25 23:32
>>14,>>15
そんな嘘おしえんなや(藁

外部との折衝ができるようになって一人前。
18仕様書無しさん:02/04/25 23:37
>>4
「ミズホから学べ。」に見えた...
19仕様書無しさん:02/04/25 23:40
>>17
いや、その傾向はあるぞ。

#みんなそうだとは言わんよ。もちろん。
20仕様書無しさん:02/04/25 23:42
>>15
どこでもそうでしょ
中田、イチローなんかいい例でしょ
21仕様書無しさん:02/04/25 23:46
あ、やっぱそこ、この前動いてたときのほうがただしんだわ、もどしといてねー。
22仕様書無しさん:02/04/25 23:57
>>21
つまり初心者のうちからバージョン管理しろということですね:−)
23仕様書無しさん:02/04/26 00:24
まず、2週間風呂・シャワー無しで過ごせ。
洗面所の水で髪を洗うのは認めてやる。
24仕様書無しさん:02/04/26 00:27
個室トイレまで我慢するのを諦めて、近くの給湯室で吐くようにしろ。
25仕様書無しさん:02/04/26 00:35
プログラマとSEとコーダと営業の違いと使い分けをマスターできれば一人前だ。
26仕様書無しさん:02/04/26 00:38
プログラマもSEもコーダも営業も一人で出来たら一人前。
やってます。
本当です。
27仕様書無しさん:02/04/26 00:46
Oracle使えて何人前^-nですか?
28仕様書無しさん:02/04/26 00:46
>>26
それを人はフリーと呼ぶ
29仕様書無しさん:02/04/26 00:48
>>26
でも、どれもトップにはなれないという罠。
30仕様書無しさん:02/04/26 00:58
・コミュニケーション能力、技術力ともに× → 50%
・コミュニケーション能力、技術力ともに○ → 5〜10%
・どちらも並み → 残り

現実はこんなところだろ。一握りの優秀な人間と、その他多くの
平均的な人々、そして箸にも棒にもかからない大量の使えない
ヤシでこの業界は構成されている
31名無しさんに接続中…:02/04/26 01:00
業種をかえたら一人前
32仕様書無しさん:02/04/26 01:00
>>27
Oracle使うだけなら教えりゃ誰でも使える。
33仕様書無しさん:02/04/26 01:01
>>28
じゃこの会社の従業員はほとんどが「フリー」だ(w
34仕様書無しさん:02/04/26 01:02
>>33
どうせ全部中途半端なDQN会社だろ
35仕様書無しさん:02/04/26 01:03
部長にゲロぶっかけたら一人前に働いてると言える。
36仕様書無しさん:02/04/26 01:06
SEってよく聞くけど、何の略?何する人?
3726&33:02/04/26 01:06
>>34
当然そのとおりですが、なにか?
38仕様書無しさん:02/04/26 01:08
>>36
ソフトウェアエンジニア。
コンピュータを管理する人。
39仕様書無しさん:02/04/26 01:09
SEX ENGINEER
40仕様書無しさん:02/04/26 01:09
>>30
PGと限定すれば
・コミュニケーション能力◎、技術力△ → 5%
・コミュニケーション能力×、技術力◎ → 15%
程度か。
41仕様書無しさん:02/04/26 01:10
>>38
管理する人なら
Administratorかと。
42仕様書無しさん:02/04/26 01:11
リュック背負って出勤するようになったら
PGとして一人前。
43仕様書無しさん:02/04/26 01:13
>>41
アドミニストレータっていう呼び方、日本で普及してるの?
44仕様書無しさん:02/04/26 01:13
>>38 ありがとー
45仕様書無しさん:02/04/26 01:14
ダンボール造形が上手になったら
PGとして一人前。
46仕様書無しさん:02/04/26 01:14
一番事故るのは一番五月蝿い奴。
とゆうか、うちでここ5年間、欠陥製品社外流出させたのは、こいつと元派遣のCOBOLER課長の二人だけという状況。
どっちもよく喋る。
他の社員はあっても工場の検査でハネられるレベルの事故しかでてない。
47仕様書無しさん:02/04/26 01:15

                γ⌒/^^/^-
               ´,ゝ`/~ /~ /~  /⌒ 
              〈(_|  | |~  |~  /^ )
            (/~ /~ /~ /~ ~ /~ /^\
           ()/)/~ /~ |~    .|~ |~ |~ /)
           へ^〈,|,,、,,|,,、,,,,,|~,,,,、〈~,, 〈~ /⌒|)\
          |:::::::∵∴∵∵∴∵∵∴∵∴∵∬∴ヽ
          |∴∴∵∴∵∴∵∴∴∴∵∵∴∴∴ヽ
          |∴∴∵∵∴∵∴∴∴∵∴∴:<'◎;, |
         ┌―. - '"-ゞ,◎>∴∵∴∵∵∴∵∵∵|  
          | | ̄.∴∴∵∵∴∵∴∴∵∴∵∵∴∵.|
          ヽ.\{_∴∵∴∴∵∵∴ ( ○ ,:○∴∵ | 
           \\/.∴∴∴∵∴∵∵∵∵∵∵∵: |
             \_ヽ.∴∵∴∴∵:_,-'ニニニヽ .∵| 
..                ヽ.∴∵∴∵∴:ヾニ二ン" : |
                \∴∵∵∵∴∴∵∵∴∵∴|
                 |∴∵∴∴∴∵∵∴∵:.|
                 |∴∵∵∴∵∴∵∴∴:./
                 ヽ\∵∴∵∴∴∵∴∵∵/  
                  l  `ー-::、∵∴∴∵∴:.'|ヽ. 
                 :人      `ー――'''''  / ヽ
これで一人前。
48仕様書無しさん:02/04/26 01:16
System Engineerという名称は和製英語なので注意。
海外では通じません。
49仕様書無しさん:02/04/26 01:16
>>41
大半はOperatorだろ。
50仕様書無しさん:02/04/26 01:19
>>48
嘘つけ。向こうの連中もちゃんと使うぞ。ただし、意味する
ところは多少違うがな。
51仕様書無しさん:02/04/26 01:19
>>48
通じますが。。。
ただ、そのあとに「何のシステム?」と聞かれます。
52仕様書無しさん:02/04/26 01:19
ここ何のスレ?
53仕様書無しさん:02/04/26 01:19
良く喋る奴って勢いで仕事してっからな。
良く喋るPGの場合、技術ないのを口で補う。
それはそれでいいとは思うが。
54仕様書無しさん:02/04/26 01:21
>>50
どう違うのか教えてプリーズ
55仕様書無しさん:02/04/26 01:23
>>50
SEは和製英語だ。
ちょっと調べりゃ教えてもらわなくても分からねぇか?
56仕様書無しさん:02/04/26 01:24
>>53
喋る内容にもよるが、ちゃんと自己主張できない奴は
何やっても駄目だと思うぞ
57仕様書無しさん:02/04/26 01:28
>>55
どこで調べたか知らんが、実際に向こうの連中も使うし、通じる。
58仕様書無しさん:02/04/26 01:30
>>55
だから。。。
日本は固有名詞として通じるけど(それだって怪しいもんだが)、海外じ
ゃだめだってだけの話だろ。
59仕様書無しさん:02/04/26 01:37
>>58
固有名詞の意味分かってて使ってるか?
60仕様書無しさん:02/04/26 01:39
>>59
当たり前だ。
61仕様書無しさん:02/04/26 01:39
以下の行でエラーとなった。理由を述べよ。

printf("Hello\n");
62仕様書無しさん:02/04/26 01:40
>>61
Helloに対する指示語がありません。
ピリオドがありません。
63答え:02/04/26 01:41
>>61
仕様が不明
64仕様書無しさん:02/04/26 01:53
>>61
Worldがない。
>>61
実はBASICだった
66仕様書無しさん:02/04/26 01:57
>>62-64
想像力なさすぎ(w

想定できる現実的な回答がほしかった。。。
67仕様書無しさん:02/04/26 01:57
>>65
おまえもだ。
68仕様書無しさん:02/04/26 01:58
>61
そこだけ上司が書いた
69仕様書無しさん:02/04/26 01:58
>>61
ソースがその1行だけだった
70仕様書無しさん:02/04/26 01:59
>>69
そそ。そんな感じ
71仕様書無しさん:02/04/26 02:00
>>66
 ネタふりじゃなかったのかよ!
72仕様書無しさん:02/04/26 02:00
>>69 >>70
当り前すぎるよ。
73仕様書無しさん:02/04/26 02:01
>>66
みんな敢えて分かってて書いているんだと思われ。
74仕様書無しさん:02/04/26 02:01
ネタなのかマジなのか明確にしてホスィ。
75仕様書無しさん:02/04/26 02:02
見た目の1行に捕らわれないことが大切だ。
バグの原因が、よーーーくみれば解る凡ミスだったって、結構
あるだろ?
76仕様書無しさん:02/04/26 02:02
敢えて書いてるに決まってるだろうが。
77仕様書無しさん:02/04/26 02:03
どうせ全角が混じってるとかだろ?
よく見てないから知らんけど。
78仕様書無しさん:02/04/26 02:04
>>77
ハズレ
79仕様書無しさん:02/04/26 02:04
>>61
コンパイルしてなかった
80仕様書無しさん:02/04/26 02:05
>>61
エニアックで実行しようとした
81仕様書無しさん:02/04/26 02:05
printfの前のスペースに全角が混じってた。
82仕様書無しさん:02/04/26 02:06
正解見せられても、馬鹿にしたくなるような答えに違いない。
83仕様書無しさん:02/04/26 02:06
2chで質問したこと時代がそもそもの間違い
84仕様書無しさん:02/04/26 02:07
printfの仕様をイジッテたのを忘れてた。
85仕様書無しさん:02/04/26 02:07
>>83
「時代」じゃなくてたぶん「自体」だという間違い
86仕様書無しさん:02/04/26 02:07
時代は平成。
87仕様書無しさん:02/04/26 02:07
そんな>>83の発言はもっと間違い
88仕様書無しさん:02/04/26 02:08
>>85
敢えてだと思うが、
アゲアシトルノハカコワルイ
89仕様書無しさん:02/04/26 02:10
実務やるうえでは>>63のが一番現実的な模範解答だろ?
何やってるのか、言語は何かを先に把握できなきゃ目先でこれは「Cのソースだ」とか「includeしてないかも」と妄想するだけ時間の無駄だから。
これで
 #include <stdio.h> がないとか
 main(){} がないとかだったら
みんな納得しないだろうな・・・

>>61
おもろい正解をキボンヌ
911:02/04/26 02:11
良スレになるのを期待して立てたのですが、
その兆しがないですね。
世間話スレではありません。
92仕様書無しさん:02/04/26 02:12
コンパイルする際のメモリが足らなかった。
93仕様書無しさん:02/04/26 02:12
>>90
しない
94仕様書無しさん:02/04/26 02:12
#define printf (゚Д゚)
95仕様書無しさん:02/04/26 02:12
そもそも電源起動すらしてなかった
96仕様書無しさん:02/04/26 02:13
紙に書いただけだった
97仕様書無しさん:02/04/26 02:14
>>89
printf見た途端にC/C++だと推測できるだろ。
JavaScriptでprintfが動作しません!なんて言うDQNはいないと思われ
98仕様書無しさん:02/04/26 02:14
コンパイル中に宇宙線を受けてレジスタのbitが反転した。
99仕様書無しさん:02/04/26 02:16
>>97
コンパイラ自身はそんな推測できません
100仕様書無しさん:02/04/26 02:16
そのソースをコピペしたやつが、
paintf...........つまらんな。
101仕様書無しさん:02/04/26 02:18
高卒が書いたソースだった。
102仕様書無しさん:02/04/26 02:18
放射能の影響で
qrintf...........つまらんな。
103仕様書無しさん:02/04/26 02:19
そのソースにはコメントが全く無かった。
―――ずばりエラーになった原因はこれだろうな。
104仕様書無しさん:02/04/26 02:22
ソースじゃなくて醤油だった
105仕様書無しさん:02/04/26 02:24
コボラー発見。>>104
106仕様書無しさん:02/04/26 02:24
自作コンパイラの試験中にバグが現れた。
107仕様書無しさん:02/04/26 02:26
コンパイラではなくアセンブラ0Xだった
108仕様書無しさん:02/04/26 02:27
この謎を解いた奴が
一人前か?
誰かほかに問題ない?
正直、飽きた。
109仕様書無しさん:02/04/26 02:27
コンパイルが会社更生法を適用したため。
110仕様書無しさん:02/04/26 02:31
次の文章を日本語にしなさい。

To be, to be, ten made to be.
111仕様書無しさん:02/04/26 02:32
以前からそいつのことが気に入らなかったので、
トイレ逝ってる隙に、そこで落ちるように書き換えた。
112仕様書無しさん:02/04/26 02:33
#include <i_am.h>
#include <my_wife_is.h>
#include <allnight.h>

翌日どのような影響が出るか述べよ
113仕様書無しさん:02/04/26 02:33
飛べ飛べ天まで飛べ
114仕様書無しさん:02/04/26 02:34
そうであるために、10はそうであるために作りました。
115仕様書無しさん:02/04/26 02:34
>110
飛べ、飛べ、10メイド飛べ
116仕様書無しさん:02/04/26 02:35
timpo.hにバグがあって修正に時間かかる影響。
117仕様書無しさん:02/04/26 02:35
>>112
太陽が黄色くなる
118仕様書無しさん:02/04/26 02:37
>>113 シェーカイ
>>114 Σ(゚Д゚)
>>115 (*´д`) メイドて

119仕様書無しさん:02/04/26 02:38
次の文章を日本語にしなさい。

Free care cowards to become mid note.
120仕様書無しさん:02/04/26 02:40
古池や 河ず飛び込む 水の音
121仕様書無しさん:02/04/26 02:40
>>112
for(;;) fork();
122仕様書無しさん:02/04/26 02:41
>>120 シェーカイ

おわり。
123仕様書無しさん:02/04/26 02:42
PGにとって命の次ぎに大切なものを一つ挙げよ
124仕様書無しさん:02/04/26 02:42
>>119
中央のノートになる暇な注意臆病者。
125仕様書無しさん:02/04/26 02:43
>>124 Σ(゚Д゚) エェッ
126仕様書無しさん:02/04/26 02:44
>>124
これも正解
127仕様書無しさん:02/04/26 02:46
>>123
128仕様書無しさん:02/04/26 02:49
>>123
命より大事なのは納期らしいぞ
129仕様書無しさん:02/04/26 02:54
>>123
使い慣れたキーボード
130仕様書無しさん:02/04/26 02:55
センスだそうな>>123
131仕様書無しさん:02/04/26 02:58
うわ、俺の手首痙攣してる
132仕様書無しさん:02/04/26 02:59
>>123
息子(ティムポじゃなく男の子供)。
電磁波で精子のX染色体が死ぬ。
133仕様書無しさん:02/04/26 03:00
>>123
引きこもってる自分の部屋。
134仕様書無しさん:02/04/26 03:05
PGが口にしてはいけない言葉をあげよ。
135仕様書無しさん:02/04/26 03:06
>>134
明示的
136仕様書無しさん:02/04/26 03:07
>>134
「出来ない」
137仕様書無しさん:02/04/26 03:08
>>134
完璧です
138仕様書無しさん:02/04/26 03:08
>>134
辞めさせていただきます
139仕様書無しさん:02/04/26 03:08
お前ら、面白くないぞ。疲れてるんなら早く寝れ。
140仕様書無しさん:02/04/26 03:14
139>>邪魔田氏ね
141仕様書無しさん:02/04/26 03:15
>>134
お疲れ様でした
142仕様書無しさん:02/04/26 03:16
バグはなくなりました。
143仕様書無しさん:02/04/26 03:18
>>134
書籍(ネット上)で見たんで間違いありません。
144仕様書無しさん:02/04/26 03:23
直りました X
直しました ○
145仕様書無しさん:02/04/26 04:09
>>134
有給休暇
146仕様書無しさん:02/04/26 05:53
>>134
「できます」
147無有:02/04/26 07:16
>>134
「仕様です」
148仕様書無しさん:02/04/26 07:45
Cの標準ライブラリを全て自分で書けたら一人前だ
がむばれ
149仕様書無しさん:02/04/26 08:42
>>134
「ぶっ殺すッ」

「殺した」なら使ってもイイ。
150仕様書無しさん:02/04/26 08:58
>>149
不用意にJOJOってはいけません。
JOJOる時は名前欄にJOJO風キャラ名が必要です。
151”管理”工学科卒:02/04/26 10:21
>>148
できるだろ?めんどくせえだけで。
152仕様書無しさん:02/04/26 12:54
一人前じゃない俺が言うのもなんだけど、
ドラゴンボール全部集めたら一人前のような気がしないでもない。
153仕様書無しさん:02/04/26 17:20
>>150
やれやれ・・
154仁志 ◆15X1E7RU :02/04/26 18:32
おまえ達は一生半人前だ。
華麗な俺とは生まれた時点から決して覆すことの出来ない差があるんだからな。
しかもその差は刻々と開きつづけているんだからもうどうしようもないよな。
155仕様書無しさん:02/04/26 18:38
>>154
なんだ、どんどん離されてるって自覚あるんだ。
みんなはずっと先を行ってるので、もう追いつけないよ。
156仕様書無しさん:02/04/26 19:12
一生、半人前ってヤツは確かにいるけどね。
157仕様書無しさん:02/04/27 00:59
ネタスレ判別プログラム
作って
158仕様書無しさん:02/04/27 03:38
>>157
ではネタスレを定義してください。
159仕様書無しさん:02/04/27 05:26
>>158
1の文が10行もしくは600バイト以上ある。
1の文の最後に「?」がついている。
開始から10レス以内に「クソスレ」「重複」「氏ね」「板違い」が2つ以上ある。
開始から10レス以内に1と同じIDが3つ以上ある
2争奪戦後の書き込みに10分以上の間隔がある。
1と2のIDが同じである。
開始〜100レス以内に「同意」が1つもない
日下部陽一の書き込みが全体の2%以上に及んでいる
160159、追加:02/04/27 05:29
1の文が1行で30バイト以下である
161 :02/04/27 05:42
問題:人間の絶頂感を画面上で高速表示するDirectPinkに必要なシステム
用件を述べよ。
162仕様書無しさん:02/04/27 07:14

クイックソートのプログラム作れ
163仕様書無しさん:02/04/27 07:36
標準ライブラリを使うかデータ構造を再検討するので作る必要はないです。
164仕様書無しさん:02/04/27 09:45
>>158
1つのレスの平均のデータサイズは50バイト以下である。
165仕様書無しさん:02/04/27 09:58
#define getchar() fgetc(stdin)
#define putchar(c) fputc((c),stdout)
166仕様書無しさん:02/04/27 12:56
>>159
各項目は AND? OR?
167仕様書無しさん:02/04/27 17:04
>166
クソスレ全部に日下部が書き込んでいるのかよ!?
168仕様書無しさん:02/05/17 15:36
1日1うんこ。
169仕様書無しさん:02/05/17 15:39
便秘なので1日1うんこは無理です
せいぜい3日に1うんこ
170仕様書無しさん:02/05/17 19:00
>>169
海藻をたくさん食べてください。
171仕様書無しさん:02/05/27 18:33
アプセトネデブ覚えろ。
172仕様書無しさん:02/05/27 20:01
質問。
マジで。

質問してくれマジで。

「分からなかったんでこうしてみました」

  て め ぇ 何 様 だ ! ! ? ?
173仕様書無しさん:02/05/27 20:03
>>172
出直せアフォ
174仕様書無しさん:02/05/27 20:06
>>173>>172の後輩に認定
175仕様書無しさん:02/05/27 21:53
そして、>>170>>169の3つ違いの兄、と
176仕様書無しさん:02/05/27 22:02
OSI7?
177仕様書無しさん:02/05/28 02:34
Webを漁ってて見つけた問題。

> 1. 次のCプログラムに一行追加し、このコード自体を標準出力に吐くプログラムにせよ(Unix中級 ○5点)。
>
> 1 #include <stdio.h>
> 2
> 3 int main()
> 4 {
> 5 int C = 0;
> 6 if (C++ < C) /* compare C with C++ */
> 7 printf("C > C++\n");
> 8 return 0;
> 9 }
> 2. 上のプログラムの2行目を変更し、C > C++ と表示するようにせよ(C言語初級○2点)
>
> 3. 2でマクロを使わない解を示せ(C言語中級○10点)
>
> 4. C++の場合は他に解はあるか(C++言語初級○5点)
178仕様書無しさん:02/05/28 02:42
これは思いっきり副作用を伴うんじゃあ・・・・(´Д`;)
179仕様書無しさん:02/05/28 02:47
1. 冒頭に echo << __END

2. 3. 4. 変更しなくても、すでにそうなってるじゃん
180仕様書無しさん:02/05/28 02:52
>>177
面白いんだけど、今までに一度も書いたことのない&これからも書くことがない
コードで中級とか初級とか言われても・・・。
181仕様書無しさん:02/05/28 02:55
#!/bin/sh
echo << '
#include <stdio.h>

int main()
{
int C = 0;
if (C++ < C) /* compare C with C++ */
printf("C > C++\n");
8 return 0;
9 } '
182仕様書無しさん:02/05/28 02:58
変な問題だね。
183仕様書無しさん:02/05/28 03:43
元作者の意図してたのはこっちだったのかな?

#include <stdio.h>

int main()
{
int C = 0;
if (C++ > C) /* compare C with C++ */
printf("C < C++\n");
return 0;
}
184仕様書無しさん:02/05/29 02:34
いや、C++ > C は 1 > 1だから偽になる。故になにも表示されない。
185仕様書無しさん:02/05/29 02:37
そういうわけで、2は #define > >= だな
3 はわからん。だれかわかるか?
186仕様書無しさん:02/05/29 06:47
>>177
1. >>179
2. 2行目を「int main(){ /*」に変更
3. 2行目を「int main(){ /*」に変更
4. 何に対する解か不明。問題不適格。よって全員正解扱い
187仕様書無しさん:02/05/29 15:27
>>186
おお、そういうことか。わかってしまえばなんてことないが、
ちょっと目が覚めた気分。
188仕様書無しさん:02/05/29 19:55
>>162
qsort
189仕様書無しさん:02/05/30 00:59
>>188
「qsortの実装はクイックソートでなければならない」って規定されてたっけ?
190仕様書無しさん:02/05/30 11:28
>>189
標準ライブラリの規定、ということ?
191189:02/05/31 00:06
>190
そう。man qsortにも書いてないし。
192仕様書無しさん:02/06/01 00:06
中途採用の面接試験で出した問題だけど、誰一人正解者がいなくて
人事部と一戦あった問題です。(爆

ある配列Aに乱数が幾つか入っています。
その中から x 番目に大きい(小さい)数を求める
関数を作成しなさい。

int function(String hoge [],int x){
int b=0,cnt=0;
String boke = new String[hoge.lenth];
if(hoge.lenth >= x)
for (int i=0; hoge.lenth-1 > i; i++)
if( i > x)exit for;
for (int j=i+1; hoge.lenth > i; i++){
if( hoge[i] > hoge[j] ){
b = hoge[i];
hoge[i] = hoge[j];
hoge[j] =b ;
}
}
return hoge[x];
}
194仕様書無しさん:02/06/01 00:38
>ある配列Aに乱数が幾つか入っています。

いくつだよ。-1が終端だとかいわねーよな。
195仕様書無しさん:02/06/01 00:51
あーおれから問題ね。
πを求めよ、桁数はHDDがぶっ壊れるまでね。
はい、どぞ
196仕様書無しさん:02/06/01 00:55
求めました!
197仕様書無しさん:02/06/01 00:55
やったーうちのはHDD40MBだからラッキー
198仕様書無しさん:02/06/01 01:02
void main()
{
printf( "3.1415926535897932384626433832795" ) ;
for(;;) printf( "%c", '0'+(rand()%10) ) ;
}
199仕様書無しさん:02/06/01 01:15
>192
どうよ。

#include<stdio.h>


int pussy(int* Hairetu,int x){
int suck=0;
int r=0;

for(int i=0;Hairetu[i];i++){
for(int j=0;Hairetu[j];j++){
if(Hairetu[i]<Hairetu[j]){//いれかえ
int t=0;
t=Hairetu[j];
Hairetu[j]=Hairetu[i];
Hairetu[i]=t;
}
}
}
return Hairetu[x-1];

}
int main(){
int H[10]={3,2,1,5,9,8,7,6,4};
int r=pussy(H,2);
printf("%d",r);
return 0;
}
200仕様書無しさん:02/06/01 01:16
>>177 
2の別解:
#define return printf("C > C++");
201仕様書無しさん:02/06/01 01:33
>>199
初心者だね、自由さを感じられない。
202仕様書無しさん:02/06/01 01:35
>201
ほほう。一応これはこれで動作するのですが、どういうところに自由さを感じられないのか教えてもらいましょうか。
203仕様書無しさん:02/06/01 01:40
おっぱいが一個。おっぱいが二個。おっぱいが三個。
204仕様書無しさん:02/06/01 01:44
> おっぱいが三個。
あぁ、「トータルリコール」に出てた、あの。
205仕様書無しさん:02/06/01 01:45
>203
すみませんがわかりません。H[10]のことを言ってるのでしょうか。mainの中身はあくまでサンプルとして見てください。
206仕様書無しさん:02/06/01 01:45
>201
関数名といいツッコミどころマンサイの方が適切かも(w
207仕様書無しさん:02/06/01 01:52
>>202
> 一応これはこれで動作するのですが
ほほう。
208仕様書無しさん:02/06/01 01:55
言いたいことがあるならハッキリ言えよ。俺、陰口言われるのが最高むかつくんだよな。
209仕様書無しさん:02/06/01 02:04
>>208
(プ
210仕様書無しさん:02/06/01 02:06
おまえらかわいいなぁ
食べちゃいたい。
211sage:02/06/01 03:35
>199
ま、識別子がなめてるのは別として
1.suck、rが使用されていない
2.配列に対するループの終了条件が環境依存
3.受け取った配列を勝手にソートしている
つーのはイヤーン
212仕様書無しさん:02/06/01 05:07
>>208
付き合ってくれ
213仕様書無しさん:02/06/01 05:31
>>192
ほれ。

#include <algorithm>
#include <functional>
#include <vector>
#include <list>

using namespace std;

template <typename TYPE, typename BinaryPredicate>
TYPE xmax(const vector<TYPE>& array, size_t x, BinaryPredicate comp)
{
 typedef vector<TYPE>::const_iterator vctiterator;
 typedef list<TYPE>::iterator lstiterator;

 if(array.size() < x)
  return *max_element(array.begin(), array.end(), comp);

 list <TYPE> large;

 vctiterator itArray = array.begin();
 large.push_back(*itArray);

 for(++itArray; itArray != array.end(); ++itArray)
 {
  for(lstiterator itLarge = large.begin();
    itLarge != large.end(); ++itLarge)
  {
   if(comp(*itArray, *itLarge))
    break;
  }
  large.insert(itLarge, *itArray);
  if(large.size() > x)
   large.pop_back();
 }
 return *large.rbegin();
}
214仕様書無しさん:02/06/01 06:34
>>192

(2354, 924, 524383, 2954, 625, 15, 7754, 1, 2365, 56564569)

正解:15
215仕様書無しさん:02/06/01 06:53
>>211
> 2.配列に対するループの終了条件が環境依存
いや、動くのが奇跡みたいなモンでしょ。
あとついでに言えば、無駄に回り過ぎ。
i<=j の時に Hairetu[i] と Hairetu[j] を比較しても意味無いし、
x 番目以降のソートまでする必要もないよ。
(しかし、こんな問題で正解者がいなかったとは…トホホン)
216215:02/06/01 06:55
バカ違うよ!i>=jだよ。
俺こそトホホンだったな…
217仕様書無しさん:02/06/01 07:19
MSDNのサンプル見てしこります。
218仕様書無しさん:02/06/01 13:01
>213
テンプレとSTL使うのは邪道だ!C言語だったらどうするんだ!
219仕様書無しさん:02/06/01 14:00
>>199
>int main(){
>int H[10]={3,2,1,5,9,8,7,6,4};

あれ、この場合の H[9] って0に初期化される事が
保証されていたっけ?
ただし、この質問は>>199に聞いている訳ではないよ。

誰かまともな奴、教えてくれ。
220仕様書無しさん:02/06/01 14:03
>>219
VBで同じ内容なら0に初期化は保証されてて、
JavaScriptの場合は、未定義値になります。

Cの場合はどうなんだろうな?
221仕様書無しさん:02/06/01 14:05
Cも未定。
static なら0。
222仕様書無しさん:02/06/01 14:25
>>221
static じゃなけりゃコンパイルエラー。




とか言ってみるテスト
223764:02/06/01 15:21
>219
H[9]でなくてH[10](というかHから数えて11個目)でしょ?
当然未定だけど。
つか、>>199は技術的なことより、そのあとの「自分は間違ってねーよ」てその自信がどっからくるのか不思議だよ。
もし現役だったら今すぐやめてホスイ。
224211=764:02/06/01 15:36
よくよく見たら要素9個しか定義してなかったのな。
cygwinのgccで試したら初期値以外は0だたよ。
#include <stdio.h>
int main(){
int a[1000]={1}, i;
for(i=0;i<1000;i++)printf("%d-",a[i]);
}
225仕様書無しさん:02/06/01 16:02
>>213
やっぱコードをウプするときは
s/\t/ /g;
するべきでね。
226仕様書無しさん:02/06/01 16:12
プログラム系の板では<pre>タグ可にしてもらえないものか・・・
227199 :02/06/01 18:53
STLつかってもいいってわかってれば、もっとマシなもの組めたんだよ。
最初から言えって。この場合、出題者の説明が腐ってんだろが。
228仕様書無しさん:02/06/01 19:08
>>227は偽者と見た。
229重箱の隅をブッ刺す:02/06/01 19:12
>>213>>199も、
>ある配列Aに乱数が幾つか入っています。
>その中から x 番目に大きい(小さい)数を求める
>関数を作成しなさい。
の要件を満たしてないぞ。
230213:02/06/01 20:31
Cで組んでみた。

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

typedef struct ___intlist_t
{
 size_t index;
 struct ___intlist_t* p_next;
 struct ___intlist_t* p_prev;
} intlist_t;

static size_t xmax(
 const void* v_array, size_t elemsize,
 size_t numelem, size_t x, int (*fp_comp)(const void*, const void*))
{
 const char* array = (const char*)v_array;
 intlist_t root; // 最初の要素を保持するノード
 intlist_t* p_buffer; // 作業用のバッファ
 size_t i;

 // メモリの一括確保
 p_buffer = (intlist_t*)calloc(x, sizeof (intlist_t));
 if(p_buffer == NULL)
  exit(1);

 // 初期化
 root.index = 1; // バッファに保存した要素の数
 root.p_next = &p_buffer[0]; // 最初の要素
 root.p_prev = root.p_next; // 最後の要素

 // 最初の要素の初期化
 root.p_next->index = 0;
 root.p_next->p_next = &root;
 root.p_next->p_prev = &root;
231続き:02/06/01 20:32
 for(i = elemsize; i < elemsize * numelem; i += elemsize)
 {
  intlist_t* p_elem;
  intlist_t* p_insert;

  for(p_elem = &root; p_elem->p_next != &root; p_elem = p_elem->p_next)
  {
   // array[i] > array[p_elem->p_next->index]
   if(fp_comp(&array[i], &array[p_elem->p_next->index]))
    break;
  }

  if(root.index < x)
  {
   p_insert = &p_buffer[root.index++];
  }
  else
  {
   // バッファにある全てのものより小さい時は次に進む
   if(p_elem->p_next == &root)
    continue;

   // 最後の要素を削除するのではなく、再利用する
   p_insert = root.p_prev;
   if(p_elem->p_next != p_insert)
   {
    p_insert->p_prev->p_next = &root;
    root.p_prev = p_insert->p_prev;
   }
  }
232これで最後:02/06/01 20:32
  p_insert->index = i;
  if(p_elem->p_next != p_insert)
  {
   // p_elem : p_insert : p_next
   intlist_t* p_next = p_elem->p_next;

   p_elem->p_next = p_insert;
   p_insert->p_next = p_next;
   p_insert->p_prev = p_elem;
   p_next->p_prev = p_insert;
  }
 }

 // 結果の退避とメモリの開放
 i = root.p_prev->index / elemsize;
 free(p_buffer);

 return i;
}
233_:02/06/01 21:05
長げーよ
234199 :02/06/01 21:05
ハゲドー
235_:02/06/01 21:32
こんなもんか?

#include <stdio.h>
#include <stdlib.h>
#include <limits.h>

int find(const int *A, int size, int x)
{
  int i, v = INT_MIN;

  for (; x > 0; x--) {
    int min = INT_MAX;
    for (i = 0; i < size; i++)
      if (A[i] > v && A[i] < min)
        min = A[i];
    v = min;
  }
  return v;
}

int main(int argc, char **argv)
{
  int i, n = 0, A[100];

  for (i = 2; i < argc; i++)
    A[n++] = atoi(argv[i]);
  printf("%d\n", find(A, n, atoi(argv[1])));
}
236ごめん、手抜き。:02/06/01 21:39
sub nth_max {
 my( $n, @a ) = @_;
 @a = sort { $b <=> $a } @a;
 return @a[$n];
}

sub nth_min {
 my( $n, @a ) = @_;
 @a = sort { $a <=> $b } @a;
 return @a[$n];
}

my( @a, $i );

srand( );
for( $i=0; $i<10;++$i ) { push @a, int(rand()*100); }
print "\@a=@a\n";
print "3rd_max of \@a = " . nth_max( 2, @a );
237仕様書無しさん:02/06/01 22:34
Perl かよ!。HSP で書いて。おながい。
238_:02/06/01 22:39
同じ値がある場合を考慮しなきゃだめ!
239鈴木:02/06/01 23:43
PL/SQLを使ってもいいのでしょうか?
CREATE FUNCTION FNC_ARRAY (X IN NUMBER) RETURN NUMBER IS NUM2
BEGIN
CREATE TABLE TBL_ARRAY( NUM NUMBER);
CREATE VIEW VW_ARRAY AS SELECT NUM FROM TBL_ARRAY ORDER BY NUM;
INSERT を配列数分
SELECT NUM INTO NUM2 FROM VW_ARRAY WHERE ROWID=X;
DROP TABLE TBL_ARRAY;
END;
みたいに書けばいいと思うのだが
今、手元にPL/SQLがないので試せない
240仕様書無しさん:02/06/01 23:48
#! /usr/local/env ruby
#A=[ 1244,35,4574,5687, ...] とあらかじめ定義されていると仮定
def answer_of_192(x)
A.sort[x]
end
241仕様書無しさん:02/06/01 23:50
間違えた。正しくはこっち。

#! /usr/local/env ruby
#A=[ 1244,35,4574,5687, ...] とあらかじめ定義されていると仮定
def answer_of_192(x)
 h= {}
 A.each{ |e| h[e]= true }
h.keys.sort[x]
end

242仕様書無しさん:02/06/02 00:46
>>193
何かおかしくない?
乱数混ざってるんだよ。
243236:02/06/02 09:23
Cでも作ってみた。エラーのチェックははしょってる。
n番目に大きい方も同様なのでこれも省略。

#include<stdio.h>
#include<stdlib.h>

int nth_min( size_t n, int *a, size_t size ) {
 int r, *l, *s;
 size_t i, ls=0, ss=0, es=0;

 if( size == 1 ) return *a;
 l = (int*)malloc( sizeof(int)*size );
 s = (int*)malloc( sizeof(int)*size );

 es++;
 for( i=1; i<size; ++i ) {
  if ( a[i] == a[0] ) es++;
  else if( a[i] < a[0] ) s[ss++]=a[i];
  else l[ls++]=a[i];
 }

 if ( n < ss ) r = nth_min( n, s, ss );
 else if( n < ss+es ) r = a[0];
 else r = nth_min( n-ss-es, l, ls );

 free(l);
 free(s);
 return r;
}

int main( )
{
 int a[] = { 3,5,2,7,5 };
 printf( "1st min of a = %d\n", nth_min( 0, a, sizeof( a )/sizeof( a[ 0 ])));
 printf( "2nd min of a = %d\n", nth_min( 1, a, sizeof( a )/sizeof( a[ 0 ])));
 printf( "3rd min of a = %d\n", nth_min( 2, a, sizeof( a )/sizeof( a[ 0 ])));
 printf( "4th min of a = %d\n", nth_min( 3, a, sizeof( a )/sizeof( a[ 0 ])));
 printf( "5th min of a = %d\n", nth_min( 4, a, sizeof( a )/sizeof( a[ 0 ])));
}
244236:02/06/02 11:14
も一つ。シェルスクリプト。
#!/bin/sh

# pickup nth max num
# $1=file, $2=n
nth_max( ) {
 RESULT=`sort -n -r $1 | head -$2 | tail -1`
}

# pickup nth min num
# $1=file, $2=n
nth_min( ) {
 RESULT=`sort -n $1 | head -$2 | tail -1`
}

touch /tmp/$$
echo "3" >> /tmp/$$
echo "5" >> /tmp/$$
echo "2" >> /tmp/$$
echo "7" >> /tmp/$$
echo "5" >> /tmp/$$

nth_max /tmp/$$ 1
echo "1st max: $RESULT"
nth_max /tmp/$$ 2
echo "2nd max: $RESULT"
nth_max /tmp/$$ 3
echo "3rd max: $RESULT"
nth_max /tmp/$$ 4
echo "4th max: $RESULT"
nth_max /tmp/$$ 5
echo "5th max: $RESULT"
rm -f /tmp/$$
245仕様書無しさん:02/06/02 11:20
「問題」
世界の人口が、地球の供給できる食糧の量を超える年月日を
正確に予測するプログラムを書け。

(提出期限、3日以内)
246仕様書無しさん:02/06/02 11:21
>>245
無理
247仕様書無しさん:02/06/02 11:29
>>245
あの〜、人口は食料供給量できまります。
食料供給量を越えた人口はどんどん死にますから、つねに人口は食料供給量以下です。 逆に食料供給量の伸びに従い、人口は増えます。


           も し か し て ネ タ で す か ?

248仕様書無しさん:02/06/02 11:51
>>245
かなり大雑把なので、こっちでなんでも決めていいんだな?
249199 :02/06/02 13:08
>243
あのさあ。サイズが最初っからわかってれば苦労なんてしないんだよ。
サイズを引数にとるのは邪道だね。
250199 :02/06/02 13:10
しかもsizeofなんて、もし動的な配列だったら判断できないだろが。駄目。
251仕様書無しさん:02/06/02 13:22
>>199 がいっちゃんレベル低いな
252199 :02/06/02 14:51
しーん。無視。
253199:02/06/02 15:07
お前らレベル低いねw
254199 :02/06/02 15:10
またまた無視・・・
255199:02/06/02 15:12
(俺ってやに必死なってんだろ?頭おかしくなったなぁ、、)
256仕様書無しさん:02/06/02 15:17
std::nth_element
257仕様書無しさん:02/06/02 15:18
>>247
正解です。
258199 :02/06/02 15:30
さらに無視。
259仕様書無しさん:02/06/02 15:37
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| 先輩、仕事中になにしてるんですか?

   ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
               / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   ∧_∧  ∧ ∧ < 「無視無視、さらに無視……」っと。
   ( ・∀・)  ( ゚Д゚)  \____________
 ̄ ̄∪ ̄∪ ̄(つ_つ__
 ̄ ̄ ̄日∇ ̄\| BIBLO | \
        ̄   =======   \
260仕様書無しさん:02/06/02 17:28
問題

www.ioccc.orgのコードを誰にでも読めるようにするプログラムを書け。
これができたら巣立てってよし。

261仕様書無しさん:02/06/02 18:13
# gcc a.cpp
# a.out
2033/09/21
#
>>192
で、以下の10のエントリがあったわけですが、
そのうちどれなら採用します?

>>193
>>199
>>213
>>230-232
>>235
>>236
>>239
>>241
>>243
>>244
263192:02/06/02 19:31
>262
こちらの意図していた回答は>243のアルゴリズムです。
ですから、私の立場から見た場合
第一候補としては>243になるでしょう。

264199 :02/06/02 20:23
>263
うそをつけうそを!そんなヌルイ解答要求するようじゃ先は長くないな!
265java厨:02/06/02 21:36
>>243みたいなコードを見ると、あーCやりたくねーなー
と思ってしまう。
266仕様書無しさん:02/06/02 21:42
199のが一番見やすい。いや199じゃないよ、俺は。
267仕様書無しさん:02/06/02 21:57
199必死だな(藁
268java厨:02/06/02 22:12
あのsizeofやらなんやらは何なの?malloc?free?何それ?って感じ。
ついでに言うなら++i。
269仕様書無しさん:02/06/02 22:14
270C++厨:02/06/02 22:15
java一生コーシィ-止まり。
271仕様書無しさん:02/06/02 23:20
では次の問題

歴代および現役を含むモー娘。全員の名前を処女である確率の高い順に
表示するプログラムを書け。

(制限時間1時間)
272243:02/06/02 23:23
>>265=268
ほれ、君の好きなjava版だ。
Vector等使わず配列なのはわざとだから念のため。

int nth_min( int n, int a[], int size ) {
 int l[], s[];
 int r, i, ls=0, ss=0, es=0;

 if( size == 1 ) return a[0];
 l = new int[size];
 s = new int[size];

 es++;
 for( i=1; i<size; ++i ) {
  if ( a[i] == a[0] ) es++;
  else if( a[i] < a[0] ) s[ss++]=a[i];
  else l[ls++]=a[i];
 }

 if ( n < ss ) r = nth_min( n, s, ss );
 else if( n < ss+es ) r = a[0];
 else r = nth_min( n-ss-es, l, ls );

 return r;
}

int nth_min( int n, int a[] ) {
 return nth_min( n, a, a.length );
}
273仕様書無しさん:02/06/02 23:26
10 randomaze:defint a-z
20 dim a(10),b$(10): (名前をb$へ代入する処理がここに入る)
30 for i=0 to 10:a(i)=i:next
40 for i=0 to 100
50 a=rnd(1)*11:b=rnd(1)*11
60 tmp=a(b):b$(a)=a(b):a(b)=tmp
70 next
80 for i=0 to 10
90 print b$(a(i))
100 next
274仕様書無しさん:02/06/02 23:29
>>271
追加
言語は特に指定しない。HSPでも可。ただしru*yは不可。
275アマグラマ1号 ◆r6Wx8cCc :02/06/03 00:10
こんなもんでええんでしょか。

int NthMax(
 const void* vpA, int nElemSize,
 int nNumElem, int x, int (*fpComp)(const void*, const void*))
{
 const char* pA = (const char*)vpA;
 int iPrev = -1;

 if(x < nNumElem)
  { x = nNumElem; }
 while(x > 0)
 {
  int iMax = -1;
  int nMax = 0;
  int i;

  // pA[iMax] < pA[i] && pA[i] < pA[iPrev]
  for(i = 0; i < nNumElem * nElemSize; i += nElemSize)
  {
   int bLess = (iPrev == -1 || fpComp(&pA[i], &pA[iPrev]) < 0);
   if(iMax == -1)
   {
    if(bLess)
     { iMax = i; nMax = 1; }
   }
   else
   {
    int fComp = fpComp(&pA[iMax], &pA[i]);
    if(fComp < 0 && bLess)
     { iMax = i; nMax = 1; }
    else if(fComp == 0)
     { nMax++; }
   }
  }
  iPrev = iMax;
  x -= nMax;
 }
 return iPrev / nElemSize;
}
276仕様書無しさん:02/06/03 00:23
オブジェクトの全機能を羅網したクラスを作れ。
277仕様書無しさん:02/06/03 00:29
>>276
それ愚問。オブジェクトの全機能はクラスのみでは実装無理。
278きゃー:02/06/04 01:53
int printf();
int main()
{
int a = 5 ;
printf ( "%c" , ( ++ a + a -- ) [ "ABCDEFGHIJKLMN" - a ] ) ;
}
[EOP]
STDOUT ?
279仕様書無しさん:02/06/04 23:05
>>278
不定
280278:02/06/05 01:57
>>279
不定だけど2通り
281仕様書無しさん:02/06/05 02:32
>>278
未定義
282278:02/06/05 08:24
>>281
だから、2通りしかないの
283278:02/06/05 14:03
ゴメソ
3通りある・・・
284仕様書無しさん:02/06/05 23:24
評価順は次の6通りの可能性があるので...
++a → a-- → ["..." - a] → (6+6)["..." - 5] → "..."[7] → H
a-- → ++a → ["..." - a] → (5+5)["..." - 5] → "..."[5] → F
++a → ["..." - a] → a-- → (6+6)["..." - 6] → "..."[6] → G
a-- → ["..." - a] → ++a → (5+5)["..." - 4] → "..."[6] → G
["..." - a] → ++a → a-- → (6+6)["..." - 5] → "..."[7] → H
["..." - a] → a-- → ++a → (5+5)["..." - 5] → "..."[5] → F
F,G,H の3通りだ。

こういうコードの結果が不定になって、
実際どういう風にまずいのかをこうやって見ることは
「そんなコード書くな (゚Д゚)ゴルァ!!」と言うだけよりは
それはそれで意味のあることなのやもしれぬのぅ。
285278:02/06/06 01:11
正しい答えに気付いたの >>283 なので僭越ですが
出題者として一応・・・ >>284 正解です
それでわ
286仕様書無しさん:02/06/06 07:19
>>278
おーい、評価順にまったく関係なく未定義なんですが。
つまり、コンパイラが一つの式の中で++aとa--を使っていることを
認識した時点で鼻から悪魔が出るコードにコンパイルしても正しい動作なんですが。
287仕様書無しさん:02/06/06 21:16
自分がコンパイラを作ることがあったら、
>>728
とか
http://pc.2ch.net/test/read.cgi/tech/1022045622/713
みたいなコードを見つけたらやヴぁいコードを吐くように作りたいと真に思う。
288仕様書無しさん
ついでに、void main();のとき、core吐くようにしといてくれ。