ダディクールがC/C++の宿題を片づけます 32代目

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ にC/C++の宿題を片づけて見せます。
    /\___/ヽ
   /''''''   '''''':::::::\    ――【注意点】――――――――――――――――――――――
  . |(●),   、(●)、.:| + ・使用する言語(C/C++)や環境(CUI/GUIなど)は必ず書きましょう。
  |   ,,ノ(、_, )ヽ、,, .::::|.    ・問題文は、ちゃんと解いてもらう方にわかりやすいように全文を
.   |   `-=ニ=- ' .:::::::| +   書きましょう。
   \  `ニニ´  .:::::/  + ・計算問題は必ず数式自体をあげ、どのような計算をするのか
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   ・エラーは、その行とエラーの詳細を書きましょう。
:   |  '; \_____ ノ.| ヽ i   エラーメッセージが出た場合はそのままコピーしてください。
    |  \/゙(__)\,|  i |  ・後になって問題につけたしをするのはやめましょう。
    >   ヽ. ハ  |   ||.  解いてもらっている方に失礼になってしまいます。
                   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html

【歴代スレは>>2-10
2ぼるじょあ ◆yBEncckFOU :04/10/12 23:57:08
>>1
(・3・)エェー ぼるじょあですYO!
3ぼるじょあ ◆yBEncckFOU :04/10/13 00:00:03
今度はダディクールかYO!
4デフォルトの名無しさん:04/10/13 00:00:28
>>1
AAキモイよ(;´д`)
5デフォルトの名無しさん:04/10/13 00:06:41
>>1
何故真面目にスレ立てないかな
死んでしまえ
6あぼーん:あぼーん
あぼーん
7デフォルトの名無しさん:04/10/13 00:07:23
31代目: http://pc5.2ch.net/test/read.cgi/tech/1095075678/
30代目: http://pc5.2ch.net/test/read.cgi/tech/1091954342/
29代目: http://pc5.2ch.net/test/read.cgi/tech/1090765027/
28代目: http://pc5.2ch.net/test/read.cgi/tech/1089974839/
27代目: http://pc5.2ch.net/test/read.cgi/tech/1089448445/
26代目: http://pc5.2ch.net/test/read.cgi/tech/1088860889/
25代目: http://pc5.2ch.net/test/read.cgi/tech/1087929711/
24代目: http://pc5.2ch.net/test/read.cgi/tech/1086612317/
23代目: http://pc5.2ch.net/test/read.cgi/tech/1085149383/
22代目: http://pc5.2ch.net/test/read.cgi/tech/1083050221/
21代目: http://pc5.2ch.net/test/read.cgi/tech/1078157730/
20代目: http://pc5.2ch.net/test/read.cgi/tech/1075217631/
19代目: http://pc5.2ch.net/test/read.cgi/tech/1073566342/
18代目: http://pc5.2ch.net/test/read.cgi/tech/1071407728/
17代目: http://pc5.2ch.net/tech/kako/1070/10704/1070469896.html
16代目: http://pc5.2ch.net/tech/kako/1069/10698/1069837000.html
15代目: http://pc5.2ch.net/tech/kako/1068/10689/1068950713.html
14代目: http://pc5.2ch.net/tech/kako/1067/10671/1067175933.html
13代目: http://pc5.2ch.net/tech/kako/1064/10645/1064541405.html
12代目: http://pc5.2ch.net/tech/kako/1060/10607/1060706382.html
11代目: http://pc5.2ch.net/tech/kako/1058/10582/1058283913.html
10代目: http://pc5.2ch.net/tech/kako/1057/10570/1057070174.html
9代目: http://pc5.2ch.net/tech/kako/1055/10559/1055944101.html
8代目: http://pc5.2ch.net/tech/kako/1055/10550/1055056940.html
7代目: http://pc5.2ch.net/tech/kako/1053/10539/1053963794.html
6代目: http://pc5.2ch.net/tech/kako/1053/10530/1053045530.html
5代目: http://pc5.2ch.net/tech/kako/1051/10515/1051594046.html
4代目: http://pc5.2ch.net/tech/kako/1045/10450/1045074808.html
3代目: http://pc5.2ch.net/tech/kako/1041/10419/1041992392.html
2代目: http://pc3.2ch.net/tech/kako/1039/10397/1039772622.html
8ぼるじょあ ◆yBEncckFOU :04/10/13 00:07:28
何か問題あるんだろうか。
9デフォルトの名無しさん:04/10/13 00:07:51
終了

削除依頼出してきてくれ
10デフォルトの名無しさん:04/10/13 00:08:33
11デフォルトの名無しさん:04/10/13 00:08:39
自分でだせばー?口だけ野郎
12デフォルトの名無しさん:04/10/13 00:12:14
さぁ毎度お馴染みの最悪な空気です
とりあえず、>>1 氏ね
13デフォルトの名無しさん:04/10/13 00:13:42
新スレが立つたびに荒らしにくる奴がいるな
14デフォルトの名無しさん:04/10/13 00:16:44
エエーあらされるためにふざけたスレ立てしてるんじゃないのかよー
(@u@)
15デフォルトの名無しさん:04/10/13 00:21:42
やっぱり前スレでネーミング批判しといた方が良かったかな…
このスレは放棄すべきだと思った。
削除希望
16デフォルトの名無しさん:04/10/13 00:21:59
>>1
なにそのスレタイ、ふざけてんの?
17デフォルトの名無しさん:04/10/13 00:24:18
なんでおまいらスレタイに執着してんの?
18デフォルトの名無しさん:04/10/13 00:25:42
>>17
スレタイによってスレッドのイメージが決まる。
ネタっぽいタイトルだと、やはりろくなレスを返さない。
19デフォルトの名無しさん:04/10/13 00:25:53
>>17
第三者の目から見ると
執着しているのは>>1だろ・・・
20デフォルトの名無しさん:04/10/13 00:26:18
殺伐としたスレにようかんマンが参上(AA略
21デフォルトの名無しさん:04/10/13 00:27:02
なんで1が削除しろとわめくんだろう(笑)
22デフォルトの名無しさん:04/10/13 00:28:23
>>21
尻拭いをしろ、と。
23デフォルトの名無しさん:04/10/13 00:29:00
今までずっとこうやってきただろ・・・
24デフォルトの名無しさん:04/10/13 00:30:26
>>23
だから?この馬鹿らしいやりとりは何かの儀式?
25デフォルトの名無しさん:04/10/13 00:32:04
>>24
は?
スレタイのことを言っているんだけど。
味も素っ気もないタイトルなんてなかっただろ(大昔は知らないが)。
26デフォルトの名無しさん:04/10/13 00:33:37
>>25
だから?この馬鹿らしいやりとりは何かの儀式?
27あぼーん:あぼーん
あぼーん
28デフォルトの名無しさん:04/10/13 00:41:25
あ〜ら、大変!
ガーベッジコレクタ早く早く!!
29デフォルトの名無しさん:04/10/13 00:48:45
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に答えるとなると
    /\___/ヽ
   /''''''   '''''':::::::\    無駄に容量食ってしょうがないな
  . |(●),   、(●)、.:| + 
  |   ,,ノ(、_, )ヽ、,, .::::|.    レスするたびにこの顔見なきゃいけないのか
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + あまりこのAA好きじゃないんだがな
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  1は回答者用のテンプレ作れや
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
30デフォルトの名無しさん:04/10/13 00:51:23
━━━━━━━━━━━━━━━━━━━━━━━━━━
では、質問をどうぞ。
━━━━━━━━━━━━━━━━━━━━━━━━━━
31 . |(○),   、(○)、.:| +:04/10/13 00:52:03
クールに答えたい人は名前欄に . |(●),   、(●)、.:| +を入れるだけでいいよ。
32デフォルトの名無しさん:04/10/13 00:53:37
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  良くねえよ
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
33デフォルトの名無しさん:04/10/13 00:56:17
次スレはヘーベルハウスきぼん

       /|
       |/__
       ヽ| l l│<ハーイ
       ┷┷┷
34デフォルトの名無しさん:04/10/13 01:04:19
この儀式は宿題が投下されるまで続行です
35デフォルトの名無しさん:04/10/13 01:04:22
    _, ,_  パーン
  ( ゜д゜)  
   ⊂彡☆====== /|
       __       |/
      ヽ| l l│
      ┷┷┷
36デフォルトの名無しさん:04/10/13 01:06:08
よくここまでたどり着いたな。それは誉めてやろう。
だが、すでに鐘は4回鳴らしている。あと一度鐘を鳴らせば、下の娘は死ぬのだ。
お前にこの儀式の意味を教えてやろう。
このイースにはかつての神官の子孫が存在する。これは彼らを見つけ出し、抹殺する為の見せしめの儀式なのだ。
さあ、最後の鐘の音をじっくりと味わうがいい。ハッハッハ…!
37デフォルトの名無しさん:04/10/13 01:11:20
1.
単純選択法で、配列は一つでありながら9999のような数を使わないプログラムを完成せよ。

2.
上記のプログラムを参考にし、整列が終了している部分は次に小さな値を探す時にはもう一度なぞらなくてもすむような形に改良せよ。


ダディクールしか頼れる人がいません。助けてください。よろしくお願いします。
38デフォルトの名無しさん:04/10/13 01:14:26
    /\___/ヽ                      //            ヽ
   /''''''   '''''':::::::\                  ,' ,' ,' ,:' / / ,:',:' ,:'  ゙、     ゙、
  . |(●),   、(●)、.:| +                '‐'= '-'、_/ / ,' ,' ,'  r--、ヽ    ',
  |   ,,ノ(、_, )ヽ、,, .::::|                     ヾl -ミヽ,/_,' ,'ミ=L_,`冂二 ̄| !  
.   |   `-=ニ=- ' .:::::::| +                  | `h、ヽ\ヾ>‐-‐ /7゙|`、  ̄ l
   \  `ニニ´  .:::::/     +             ___ノ  ,リ );;    ミ‐-‐/| | ',   !
,,.....イ.ヽヽ、ニ__ ーーノ゙-、.  まあ、なんて素敵な.   .',  ‐''-      '⌒ヽ_| |  |  |
:   |  '; \_____ ノ.| ヽ i                  :ヽ//// ::::::......  (゙ノ ノ | |  |
    |  \/゙(__)\,|  i |    人なんでしょう・・・    }        -‐' /   ̄   |
    >   ヽ. ハ  |   ||                 /,,~、_          ,'  /      ',
                                 ,-( {__}、7゙ク ゙̄',   ', (   ,'     ヽ
                                 ∧_}   ヽ {   |--‐ \ ゙、 (       `ヽ
                                ( ヽ,     ゙、 r‐ノL__,,, 、-‐-、ヽ、        ヽ
                                /(゙"       ノ /0/  /    ヽ ヽ      ゙、 ゙、
39デフォルトの名無しさん:04/10/13 01:59:10
そして月日は流れ・・・

 │    __〃   /  ̄/       /
 │ / __ _/   ./ ―― / /
  |/    /   /  _/    _/ /_/
         /〃/| | l  /  /,/  l l |   l   `、
        // / _,l-H、/| / l l /l_/l ||   l    l
        // | |_,!ュ=ト' | | | l'/´l/ト、ll   l    l
       //)_/ '''''' ' l { |l/''''''   ト、l  l   l   +
      〈 / / / )(●),   、(●) .:::::、l` l  | i  l
        ∧i レ ハ  ,,ノ(、_, )ヽ、,  .:::::,ルド| l   |l  l
      ヽ l ! | ト、 `-=ニ=- '   .:::::::'7 ! |l |l  |l  | +
      ハト ` \  `ニニ´   .:::::::/ l || ||  |l  !      +
     ノノ| l\    \ `    .:::::,/ /l /i lト、 ll  !  
   / ノl/ノリ\    )__,,. -‐ ''" //イ| l| | ト、ヽヾ丶、
   ´ 〃/ノ//|l i>  /_|     〃/ || || !| i \ーニヽ
  ー=彡/〃 ___/   / \   ノ/-|| ||/ |l ト、\`ー-ニ二

40デフォルトの名無しさん:04/10/13 02:16:44
歴代最悪な流れの予感 ていうかキモすぎ
よりによってダディクールかよ
41デフォルトの名無しさん:04/10/13 02:23:16
だれか宿題うpしる
42デフォルトの名無しさん:04/10/13 02:36:37
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  こんな時間に
  . |(●),   、(●)、.:| +  こんな時間に
  |   ,,ノ(、_, )ヽ、,, .::::|.    宿題やってる奴いんのかよ
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
43デフォルトの名無しさん:04/10/13 02:47:26
コワイヨー
44デフォルトの名無しさん:04/10/13 02:57:21
なんだこのスレw
45デフォルトの名無しさん:04/10/13 03:16:55
>>42
やーいばーか
46 ◆FIcNi4f8js :04/10/13 04:45:32
このまま1000まで?
47デフォルトの名無しさん:04/10/13 10:33:41
前スレの893が答え貰えなくて暴れてんだろ
48デフォルトの名無しさん:04/10/13 10:44:48
宿題まだー?
ちんちん
49デフォルトの名無しさん:04/10/13 11:45:06
そろそろ麻衣子に宿題してもらいたい
50デフォルトの名無しさん:04/10/13 11:47:44
二つ前のスレとかなかなかネタが利いてたなあ、、、
51デフォルトの名無しさん:04/10/13 12:40:14
なんかいってよ!
52デフォルトの名無しさん:04/10/13 12:41:30
なんか
53デフォルトの名無しさん:04/10/13 12:42:07
>>52
ばか!ばか!まんこ!!
54デフォルトの名無しさん:04/10/13 13:07:47
>>49
          ,,. : ‐'' "´;;;;;``'ー- 、..,,_
          /. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヽ,
       ,,./. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .\
      〃. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヽ
     , 彳. ;,;;;;;;;;;;;;;;;;;;;;;;;/バ;ヾメ;:`ミ_;;;;;;;;;;;;;;;;;;;;;;;,; .゙、
    //. ;,;;;;;;;;;;;;;;;;;;;;;;;;;//:7- __ _  ヾ;;;;;;;;;;;;;;;;;;;;;,; .ヽ
    ´/. ;,;;;;;;;;;;;;;;;;;;;;;;;;//_/ ̄      ゙、;;;;;;;;;;;;;;;;;;;;;,; .',
   〃. ;,;;;;;;;;;;;;;;;;;;;;;;;// /      _,,._ i;;;;;;;;;;;;;;;;;;;;;;;,; .゙,
   《, ;,;;;;;;;;;;;;;;;;;;;;;;;;;∧ヾ、    ,;ii〃"゙`ミ;.i;;;;;;;;;;;;;;;;;;;;;;;,; .i|
  、{. ;,;;;;;;;;;;;;;;;;;;;;;;/ト〈、`゙,.  , ´ ,._.,.,、,_ `゙|;;;;;;;;;;;;;;;;;;;;;;;;,; .゙,
  i". ;,;;;;;;;;;;;;;;;;;;;;リヘソ,> Y! i〃 <.(;・),゙ゞノ;;;;;;;;;;;;;;;;;;;;;;;,; .《
  ((. ;,;;;;;;;;;;;;;;;;;;;;;;人"´`.:;;l l;.゙ `^''ーヾ`,リ!;;;;;;;;;;;;;;;;;;;;;;;;;,; .リ
  ソ. ;,;;;;;;;;;;;;;;;;i      r'(;. );:..      l |;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヾ,
 ゞ. ;,;;;;;;;;;;;;;;;;;;i┘    ヽヘ、;ハ ,)      /!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ゞ
ヾ". ;,;;;;;;;;;;;;;;;;;;;|ヾ;:            ,:; 人;;;;;;;;;;;;;;;;;;;;;;;;;,; .((._  呼んだ?
.`゙》. ;,;;;;;;;;;;;;;;;;;;| :;;i 、-‐‐:v.‐-:、_  〃;:  !;;;;;;;;;;;;;;;;;;;;;;;;;;,; .〃
.ノリ. ;,;;;;;;;;;;;;;;;;;;;゙、:;| `ヾニゞ‐;;;;ニフ  j|;.  /;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .{{
((. ;,;;;;;;;;;;;;;;;;;;;;;;;;;`、   - ̄    ,./;:. /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ソ,
_.)). ;,;;;;;;;;;;;;;;;;;;;;;;;/ilヽ、._  ;,.    ,.:-‐'"/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ノノ
彡. ;,;;;;;;;;;;;;;;;;;;;;;;;;;i;;》 \ニ ;`  ̄  . ::;〃─ン;;;;;;;;;;;;;;;;;;,; .'"<
55デフォルトの名無しさん:04/10/13 13:15:15
んなもん探してくんな!
56あぼーん:あぼーん
あぼーん
57デフォルトの名無しさん:04/10/13 13:22:32
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
58麻衣子 ◆K96Jk4jthA :04/10/13 16:07:49
宿題手伝います
59麻衣子 ◆K96Jk4jthA :04/10/13 16:12:29
訂正です。暇なときに宿題手伝います
60デフォルトの名無しさん:04/10/13 16:12:46
>>58
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  オレの邪魔するな
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
61なななし:04/10/13 18:46:26
宿題あるのですがよろしいですか?
62デフォルトの名無しさん:04/10/13 18:50:54
よろこんで
63なななし:04/10/13 18:55:16
ありがとうございます、すごく初心的な問題なんです@@;
環境先に書いたほうがよいですか?おしえて君でモウシワケナイです
64なななし:04/10/13 19:07:32
問題は「キーボードから値を入力し、入力された値を底辺とする中抜け二等辺三角形を底辺が右側になるように描画しなさい。
なお、入力された値は1ごとに*一つで描画しなさい。」です

C(LSI-C)コンパイラを使っています
エディッターはクールミントというのを使っています
65デフォルトの名無しさん:04/10/13 19:15:15
次の質問どうぞ
66デフォルトの名無しさん:04/10/13 19:49:00
>>64
描画する中抜け二等辺三角形ってのは、
     *
   **
  ***
 ****
*****
こういうのを指すのだろうか。
67デフォルトの名無しさん:04/10/13 19:50:31
>>66
中抜けだから
     *
   **
  * *
 *  *
*****

じゃないの?
68デフォルトの名無しさん:04/10/13 19:50:58
>>66
抜けてないし底辺右じゃないし。
69デフォルトの名無しさん:04/10/13 19:55:43
<|
みたいなのを*で書けってことか?
    *
   **
  * *
 *  *
*   *
 *  *
  * *
   **
    *
という風に書くとして、入力された値が偶数だったら
    *
   **
  * *
 *  *
 *  *
  * *
   **
    *
でいいのか?
70デフォルトの名無しさん:04/10/13 19:55:45
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  よしオレが答えてやろう
  |   ,,ノ(、_, )ヽ、,, .::::|.    #include <stdio.h>
.   |   `-=ニ=- ' .:::::::| +   #include <stdlib.h>
   \  `ニニ´  .:::::/  +  int main(void)
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    {int i,in,n;
:   |  '; \_____ ノ.| ヽ i   scanf("%d",&in);
    |  \/゙(__)\,|  i |   for (i = 0; i < in; i++)
    >   ヽ. ハ  |   ||.  {for( n = 0; n <= abs(in / 2 - i); n++ )printf("%s"," ");
printf("%s","*");
for( n = 0; n <= in / 2 - abs(in / 2 - i); n++ )printf("%s"," ");
printf("%s","*\n");
}
return 0;
}
71あぼーん:あぼーん
あぼーん
72なななし:04/10/13 20:09:28
>69さん
そうです、今まで作ったプログラムを参照にこっちでも組んでいたのですが
どうも中抜け以前のやつができなくて@@;
73デフォルトの名無しさん:04/10/13 20:11:03
>>72
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  貴様、答えたオレを無視しやがったな!!
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
74なななし:04/10/13 20:14:12
>ダディ
モウシワケナイです@@;
USBケーブルで逝ってきます
75なななし:04/10/13 20:21:05
んとコンパイルして実行したら結構いびつな感じになってます
これはソフトウェアや環境の違いなんでしょうか?


76デフォルトの名無しさん:04/10/13 20:23:14
>>71
肝杉
77デフォルトの名無しさん:04/10/13 20:24:09
>>73
ワロタ
78デフォルトの名無しさん:04/10/13 20:24:31
>>75
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  わかってねえなお前
  |   ,,ノ(、_, )ヽ、,, .::::|.    少し変更すればちゃんと出るようになる
.   |   `-=ニ=- ' .:::::::| +   これはお前への宿題だ
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
79なななし:04/10/13 20:27:25
っは!!!
確かに、このまま頼ってたら(´・ω・`)ショボーンのままですね
少し自分でいじくり倒してみます
ダディ、ありがとう
80デフォルトの名無しさん:04/10/13 20:27:39
ずっとこの調子なのか?このスレ
81デフォルトの名無しさん:04/10/13 20:32:50
すべて>>1のクソ野郎のせいだ
82デフォルトの名無しさん:04/10/13 20:49:15
このままAAスレになるのか・・・?
83デフォルトの名無しさん:04/10/13 20:51:37
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  ダディクールスレでこのAA使って何が悪い?
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
84デフォルトの名無しさん:04/10/13 20:54:59
やるのは構わんけど、もう少し小さいAAに仕様変更してくれないか。
85デフォルトの名無しさん:04/10/13 20:55:09
>>83
いつから「ダディクールスレ」になったんだ?

宿題回答スレだろうが!
86ぼるじょあ ◆yBEncckFOU :04/10/13 20:59:08
(・3・)エェー せめてぼるじょあサイズにしてくれYO
87デフォルトの名無しさん:04/10/13 21:02:44
>>85
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  違う!オレ様が宿題を片付けるスレだ!
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
88デフォルトの名無しさん:04/10/13 21:39:36
むしゃくしゃして立てた。
まさかAAスレになるとは思わなかった。
今では反省している。
89デフォルトの名無しさん:04/10/13 22:06:11
なんか暇そうだからここで宿題以外のこと聞いていい?
90デフォルトの名無しさん:04/10/13 22:08:13
>>89
どうぞ
91デフォルトの名無しさん:04/10/13 22:19:52
C言語でダディを書いてみました!

┏━†† ━━━††  ┏━┓      ┃┃
┃━┫ ━┳━    ┃  ┃ ━━ ┃┃
    ┃   ┃   ┳┛   ┃      ┃┃┃
    ┛   ┃   ┃     ┛    ━┛┗┛
  ┏━┓    ┏━┓
  ┃  ┗━━┛  ┃
┏┛''''''     '''''' ::::::┗┓
┃ (●),  、(●)、: ::::┃ ╋
┃   ,,ノ(、_, )ヽ、,, .::::::┃
┃   `-=ニ=- '  .::::::::┃╋
┗┓  `ニニ´ .::::::::┏┛    ╋
  ┃━      ━━┫
━╋┳┳┓    ┏╋┳┓
  ┃┗╋╋┳┳╋┫  ┃
  ┃  ┗╋┫┣┛┃  ┃
92デフォルトの名無しさん:04/10/13 22:21:44
C言語で書くと線が太くなるのですか
9389:04/10/13 22:32:57
最終的にC/C++使いたいんだけど一番最初はやっぱりBasicから入るのがいいの?
いきなりCから入るのってやばい?
板違いか、、、
94デフォルトの名無しさん:04/10/13 22:39:31
Cからでいいよ
95デフォルトの名無しさん:04/10/13 22:40:39
>>93
どちらからでも良いと思います。
というのも、どちらの言語も別に難しいところは何もないからです。
Cをいきなり覚えても差し支えはありません。
96デフォルトの名無しさん:04/10/13 22:41:34
>>93
むしろ、最初からC++でいい。
97デフォルトの名無しさん:04/10/13 22:43:55
JAVA→C++→C
オブジェクト指向のセンスを身に着けたいならこの順だな。
BASICは必要になったときに勉強すればいい。
98デフォルトの名無しさん:04/10/13 22:44:19
    /\___/ヽ
   /''''''   '''''':::::::\    
  . | (C),   、(C)、.:| + 
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
9989:04/10/13 22:44:26
>>94>>95>>96
サンキューダンディ!!
10089:04/10/13 22:45:13
ごめんダディだった・・・
101デフォルトの名無しさん:04/10/13 22:45:16
BASIC も 30分くらいは勉強した方が、ときたま話題にあがったときに取り残されないで済むからいいと思われ
102デフォルトの名無しさん:04/10/13 22:45:32
98のダディの中にC++が見えるぞ‥‥
103デフォルトの名無しさん:04/10/13 23:22:47
あっちが埋まればこっちもいつも通りの宿題スレになるんだろうな。
104デフォルトの名無しさん:04/10/13 23:26:06
原因を作ったお前が悪い
105デフォルトの名無しさん:04/10/13 23:27:47
誰に言っているんだろう
106デフォルトの名無しさん:04/10/13 23:28:48
>>105
心当たりあるんですね:)
107デフォルトの名無しさん:04/10/13 23:33:33
1/10消費したが、ほとんどネタ書き込みとはな。
次からシンプルなスレ立てにしてくれよ・・・
108デフォルトの名無しさん:04/10/13 23:38:46
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +  宿題片付けます
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
109あぼーん:あぼーん
あぼーん
110デフォルトの名無しさん:04/10/13 23:58:43
俺は思うんだか、何でC/C++なんだ。
CとC++の区別もできないのか。
111デフォルトの名無しさん:04/10/14 00:00:40
>>110
はァ?
112デフォルトの名無しさん:04/10/14 00:05:58
>>110
俺は思うんだか、何で分けなければいけないんだ。
両方受けるという解釈もできないのか。
113あぼーん:あぼーん
あぼーん
114デフォルトの名無しさん:04/10/14 00:21:02
 何で同じスレに両方扱うのか分からん。
 CをプログラムするときはCで推奨するやり方を、C++をプログラムするときは
C++で推奨するやり方を使い分けられないのか。
115デフォルトの名無しさん:04/10/14 00:23:35
>何で同じスレに両方扱うのか分からん。
頭が固いというか、悪いというか…
116デフォルトの名無しさん:04/10/14 00:24:11
>>114
何故このスレが存在するのか考えろ
ここはCスレとC++スレに宿題持ってくる奴を隔離するためのスレだ
それだけのためだけに存在しているスレである
117デフォルトの名無しさん:04/10/14 00:33:59
C++はCの拡張言語だから、まったくの別物ではない。
簡単なものはCで書いた方がわかりやすい場合と、
複雑な物はC++で書いた方がわかりやすい場合があり、課題によってどちらが
ふさわしいか判断するのに、それぞれ人の考えかたが違ったりするので、
同じスレでもっとも良いと思われる答えを議論できれば良いと思う。
118デフォルトの名無しさん:04/10/14 00:39:26
アホか。馬鹿か。池沼か。
宿題なんだからCかC++か指定あるだろ。
テンプレにも指定しろと書かれてるし、ここは議論する所じゃ無い。
何を勘違いしてるんだこの阿保。
119デフォルトの名無しさん:04/10/14 00:48:34
>>118
君は言語実習の宿題しか期待していないのか。
いや、言語実習レベルの宿題しか解けないのか。
120デフォルトの名無しさん:04/10/14 00:48:53
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\
  . |(●),   、(●)、.:| +  C/C++の宿題片付けます
  |   ,,ノ(、_, )ヽ、,, .::::|.
.   |   `-=ニ=- ' .:::::::| +
   \  `ニニ´  .:::::/  +
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
121デフォルトの名無しさん:04/10/14 00:50:46
>>120
おまえを先に片付けてやろうか?
122デフォルトの名無しさん:04/10/14 00:53:10
>>119
そんな論議したければ適切なスレ行けって事だろ。大馬鹿者。
123デフォルトの名無しさん:04/10/14 00:58:38
scanf()を用いて以下の通り関数の値を出力するプログラムを作戦してください

1を入力したときにsin(x)の値
2を入力したときにcos(x)の値
3を入力したときにtan(x)の値

お願いします
124デフォルトの名無しさん:04/10/14 01:01:13
>>123
scanf("%d",a);
if(a==1){printf("%f\n",sin(x));}
if(a==2){printf("%f\n",cos(x));}
if(a==3){printf("%f\n",tan(x));}
125デフォルトの名無しさん:04/10/14 01:08:36
>>123
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\     x = 0.5
  . |(●),   、(●)、.:| +  scanf("%d",&a);
  |   ,,ノ(、_, )ヽ、,, .::::|.    if(a==1){printf("%f\n",sin(x));}
.   |   `-=ニ=- ' .:::::::| +   if(a==2){printf("%f\n",cos(x));}
   \  `ニニ´  .:::::/  +  if(a==3){printf("%f\n",tan(x));}
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   switch使うがな。普通。
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
126デフォルトの名無しさん:04/10/14 01:13:01
普通を定義してくれ
127デフォルトの名無しさん:04/10/14 01:13:57
>>126
ダディがクールに考えたことが普通なんだろ
128123:04/10/14 01:15:31
ありがとうございました
129デフォルトの名無しさん:04/10/14 01:20:14
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| + 
  ミ   ,,ノ(、_, )ヽ、,, .:::ミ|.    普通という事にしたいのですね
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
130デフォルトの名無しさん:04/10/14 01:58:49
*
* *
         * * *
         * * * *
* * * * *
C言語で↑を表示するプログラムを作りたいのですがわかりません。
お願いします
131デフォルトの名無しさん:04/10/14 02:00:32
    *
   * *
  * * *
 * * * *
* * * * *
です。すみません
132デフォルトの名無しさん:04/10/14 02:04:01
>>131
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  いくらクールなオレでも、お前は許せない
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
133デフォルトの名無しさん:04/10/14 02:08:51
>>131
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| + 
  ミ   ,,ノ(、_, )ヽ、,, .:::ミ|.
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.

#include <stdio.h>

int main(void)
{
puts("    *\n   * *\n  * * *\n * * * *\n* * * * *");
return 0;
}
134デフォルトの名無しさん:04/10/14 02:10:55
>>132
す、すみません・・・
135デフォルトの名無しさん:04/10/14 02:15:51
>>133
ありがとうございます。助かりました
for文使って作る方法ってありますか?
136デフォルトの名無しさん:04/10/14 02:19:26
>>135
#include <stdio.h>
int main()
{
char *a[]={
"    *",
"   * *",
"  * * *",
" * * * *",
"* * * * *"};
int i;

for(i=0;i<5;i++)
puts(a[i]);
return 0;
}
137デフォルトの名無しさん:04/10/14 02:27:22
はいはい、そろそろ消えてね。
#include <stdio.h>
int main(void)
{
  int i, j, n = 5;
  for(j = 1; j <= n; j++)
  {
    for(i = 0; i < n - j; i++) putchar(' ');
    for(i = 0; i < j; i++) printf("* ");
    putchar('\n');
  }
}
138デフォルトの名無しさん:04/10/14 02:29:11
>>136
すみません。ありがとうございます
139137:04/10/14 02:30:22
俺のは無視かい(-_-#)
140デフォルトの名無しさん:04/10/14 02:31:13
137の方がマジレスなのになw
141デフォルトの名無しさん:04/10/14 02:39:14
>>135
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に

   手伝ってあげようじゃないか

    /\___/ヽ        #include <string.h>
   /''''''   '''''':::::::\      #include <stdio.h>
  . |(●),   、(●)、.:| +  int main(void)
  ミ   ,,ノ(、_, )ヽ、,, .:::ミ|.   {
.   |   `-=ニ=- ' .:::::::| +    int n,a=strlen(" "),b=strlen("* ");
   \  `ニニ´  .:::::/  +   char *s1="     ",*s2="* * * * *";
,,.....イ.ヽヽ、ニ__ ーーノ゙-、      for(n=0;n<5;++n){
:   |  '; \_____ ノ.| ヽ i         printf("%s%s\n",s1+n*a,s2+(4-n)*b);
    |  \/゙(__)\,|  i |      }
    >   ヽ. ハ  |   ||.     return 0;
                 }
142デフォルトの名無しさん:04/10/14 02:57:44
    /\___/ヽ                      //            ヽ
   /''''''   '''''':::::::\                  ,' ,' ,' ,:' / / ,:',:' ,:'  ゙、     ゙、
  . |(●),   、(●)、.:| +                '‐'= '-'、_/ / ,' ,' ,'  r--、ヽ    ',
  |   ,,ノ(、_, )ヽ、,, .::::|                     ヾl -ミヽ,/_,' ,'ミ=L_,`冂二 ̄| !  
.   |   `-=ニ=- ' .:::::::| +                  | `h、ヽ\ヾ>‐-‐ /7゙|`、  ̄ l
   \  `ニニ´  .:::::/     +             ___ノ  ,リ );;    ミ‐-‐/| | ',   !
,,.....イ.ヽヽ、ニ__ ーーノ゙-、.  さすがダディクール、.   .',  ‐''-      '⌒ヽ_| |  |  |
:   |  '; \_____ ノ.| ヽ i                  :ヽ//// ::::::......  (゙ノ ノ | |  |
    |  \/゙(__)\,|  i |    なんて素敵なの・・    }        -‐' /   ̄   |
    >   ヽ. ハ  |   ||                 /,,~、_          ,'  /      ',
                                 ,-( {__}、7゙ク ゙̄',   ', (   ,'     ヽ
                                 ∧_}   ヽ {   |--‐ \ ゙、 (       `ヽ
                                ( ヽ,     ゙、 r‐ノL__,,, 、-‐-、ヽ、        ヽ
                                /(゙"       ノ /0/  /    ヽ ヽ      ゙、 ゙、
143デフォルトの名無しさん:04/10/14 03:19:20
そして月日は流れ・・・


 │    __〃   /  ̄/       /
 │ / __ _/   ./ ―― / /
  |/    /   /  _/    _/ /_/
         /〃/| | l  /  /,/  l l |   l   `、
        // / _,l-H、/| / l l /l_/l ||   l    l
        // | |_,!ュ=ト' | | | l'/´l/ト、ll   l    l
       //)_/ '''''' ' l { |l/''''''   ト、l  l   l   +
      〈 / / / )(●),   、(●) .:::::、l` l  | i  l
        ∧i レ ハ  ,,ノ(、_, )ヽ、,  .:::::,ルド| l   |l  l
      ヽ l ! | ト、 `-=ニ=- '   .:::::::'7 ! |l |l  |l  | +
      ハト ` \  `ニニ´   .:::::::/ l || ||  |l  !      +
     ノノ| l\    \ `    .:::::,/ /l /i lト、 ll  !  
   / ノl/ノリ\    )__,,. -‐ ''" //イ| l| | ト、ヽヾ丶、
   ´ 〃/ノ//|l i>  /_|     〃/ || || !| i \ーニヽ
  ー=彡/〃 ___/   / \   ノ/-|| ||/ |l ト、\`ー-ニ二
144デフォルトの名無しさん:04/10/14 05:16:46
#include <stdio.h>
#include <stdlib.h>

#define STR_MAX 256

int main(void)
{
FILE*fi, *fo;
charfin[80], fout[80];
charbuff[STR_MAX], *pd;
int line = 0, select;

printf("入力ファイル名:");
gets(fin);

printf("出力ファイル名:");
gets(fout);

while(1){
if((fo = fopen(fout, "r"))!=NULL){
fclose(fo);
printf("ファイルが既に存在してます。上書きしていいですか?(1:Yes/0:No)");
scanf("%d",&select);
if(select == 1){
break;
}else{
exit(1);
}
}else{
break;
}
}
145デフォルトの名無しさん:04/10/14 05:18:29
if((fi = fopen(fin, "r")) == NULL){
printf("入力ファイルがオープンできません\n");
exit(1);
}
if((fo = fopen(fout, "w")) == NULL){
printf("出力ファイルがオープンできません\n");
exit(1);
}
while(fgets(buff, STR_MAX, fi)){
++line;
pd = buff;
while(*pd != '\n'){
if(*pd == '*'){
*pd = '!';
}else if(*pd == '('){
*pd = '<';
}else if(*pd == ')'){
*pd = '>';
}else if(*pd == '%'){
*pd = '?';
}else if(*pd == '&'){
*pd = '@';
}
++pd;
}
fprintf(fo, "%d:%s", line, buff);
}
fclose(fi);
fclose(fo);
return(0);
}
146デフォルトの名無しさん:04/10/14 05:21:18
144-145
上書き、select=1を選択した場合、出力されたファイルが真っ白になります。
今日のAM10:30までも回答頂ければ幸いです。
147デフォルトの名無しさん:04/10/14 05:32:13
fclose()してないからじゃないの?
148デフォルトの名無しさん:04/10/14 05:34:38
すまん、してたわ。
なんでだろ?
149デフォルトの名無しさん:04/10/14 05:35:20
ちゃんと出来るぞ。
まさか入力ファイルと出力ファイルが同じってこたないよな?
150デフォルトの名無しさん:04/10/14 05:44:33
>>149
>まさか入力ファイルと出力ファイルが同じってこたないよな?
よくわかりませんが上書き処理は入出力に同じファイル名を入れます。
151デフォルトの名無しさん:04/10/14 05:58:12
>>150
fopen()の仕様を調べてらっしゃい。
152デフォルトの名無しさん:04/10/14 07:03:43
おせーて
153デフォルトの名無しさん:04/10/14 08:27:33
この宿題単位と進級掛かってるんで解決策10:30までになにとぞ!
解説もしていただけるとありがたいです。
154デフォルトの名無しさん:04/10/14 08:37:23
読み込みファイルを一時ファイルに保存
        ↓
書き込みファイルとしてオープンしたあと一時ファイルから読み込み
155デフォルトの名無しさん:04/10/14 09:02:39
>>153
メモリ内に全部読み込み、fclose()してから書き込みfopen()
156デフォルトの名無しさん:04/10/14 09:57:06
ソース書いて
157デフォルトの名無しさん:04/10/14 10:14:45
アホかい。
これだけヒントがあるのにそれでなんともならないなら素直に落第しとけ。
158デフォルトの名無しさん:04/10/14 10:16:11
scanfが原因
159デフォルトの名無しさん:04/10/14 10:36:38
落第しました
160デフォルトの名無しさん:04/10/14 10:49:15
これくらいなら2chで聞くより教科書開いて考えたほうが早いと思うんだが・・・・・・
161デフォルトの名無しさん:04/10/14 10:51:57
>>160
家に帰る最中に、雪をかぶっているお地蔵様に教科書をかぶせて帰ってきたので教科書がないのです
162デフォルトの名無しさん:04/10/14 11:00:01
普段、勉強なんてしない奴がこんな時だけ必死になってる。畜生、氏ね
163デフォルトの名無しさん:04/10/14 11:25:15
まあまあ、そんな鬼の首取ったかのように言わなくとも・・・
タイムリミットも過ぎたみたいだし彼の今後のためにも今回は煮え湯を飲ますと思って教えてあげては?
164デフォルトの名無しさん:04/10/14 11:26:46
鬼首って、ダディクールの元ネタコピペ……
165デフォルトの名無しさん:04/10/14 11:33:07
>>163
彼の今後のためを思うならスルーするべきだと思うが?
ヒントも出てるんだし。
166デフォルトの名無しさん:04/10/14 11:38:16
>>154-155の書き込みで回答があって、これが的確
これが8:30
2時間あって出来てないということは、自分から動いていない
少なくとも俺は学ぶ意思があるが実力が伴っていない奴に教えてやりたい
その意思がない奴に教えてもそいつのためにはならん
167146:04/10/14 11:48:46
>>152>>156 は私ではありません
168デフォルトの名無しさん:04/10/14 11:55:45
同じ事だ
169デフォルトの名無しさん:04/10/14 12:15:34
キーボードから入力された整数n(n>=3)が素数であるかを調べるプログラム。
判定方法は2からn-1までのすべての整数で割り算した結果、割り切れるものが1つもなければ
素数である。
{実行例}
n=7
素数。
n=12
素数ではない
170デフォルトの名無しさん:04/10/14 12:21:10
>>169
判定方法まで教えてもらってそれ以上何を教えればいいのかわからん・・・。
171デフォルトの名無しさん:04/10/14 12:24:18
そこをなんとか
172デフォルトの名無しさん:04/10/14 12:25:25
おだまる!
173麻衣子 ◆K96Jk4jthA :04/10/14 12:28:05
>>169
やっほー、麻衣子だよ!
お兄ちゃんの宿題解いてあげるよ!

#include <stdio.h>
int main()
int n,pr;

do{
scanf("%d\n",&n);
}while(n<3);
for(pr=2;pr<n;pr++)
while(n/pr)n/=pr;

printf(n?"素数ではありません\n":"素数でーす\n");
return 0;
}
174デフォルトの名無しさん:04/10/14 12:29:41
n-1までの全ての整数で割らなくても、それまでに判明した全ての素数で割るだけでよい。
175デフォルトの名無しさん:04/10/14 12:30:19
>C/C++の宿題を片づけます
あれ?おっかしーなあ
何度見てもスレタイは宿題を片付けると書いてあるよ・・・
なのに既に別の意味で二人斬り
176デフォルトの名無しさん:04/10/14 12:32:51
>>173
ありがとうございました!
すごいです!!
177デフォルトの名無しさん:04/10/14 12:34:16
現バージョンでは、旧形式の関数定義は対応していませんってでたよ
178デフォルトの名無しさん:04/10/14 12:36:53
>>176
ちょっとまて
179麻衣子 ◆K96Jk4jthA :04/10/14 12:42:04
えへへ、しっぱいしちゃった!

#include <stdio.h>
int main()
{
int n,m,pr;

do{
scanf("%d",&n);
}while(n<3);
m=n;
for(pr=2;pr<n;pr++)
while(m%pr==0)m/=pr;

printf((m==n)?"素数でーす\n":"素数ではありません\n");
return 0;
}
180デフォルトの名無しさん:04/10/14 12:43:03
#include<stdio.h>

main()
{
intn,
i;
charstr[100];

do {
printf("かまん>>");
sscanf(str, "%s", fgets(str, 100, stdin));

n = atoi(str);
puts("");
} while(n <= 2);

for(i = 2; i < (n / 2); i ++) {
if(n % i == 0) {
break;
}
}

printf("n = %d\n%s\n", n, n % i ? "素数" : "素数じゃない");

return 0;
}

ごめんこれが俺のせいいっぱいだ
まちがってるかm
181デフォルトの名無しさん:04/10/14 12:44:47
doってなんですか?使わずにできませんか?
182麻衣子 ◆K96Jk4jthA :04/10/14 12:44:51
何回もごめんね麻衣子ばかだから

m=1;
for(pr=2;pr<n;pr++)
if(n%pr==0){m=0;break;}
printf(m?"素数でーす\n":"素数ではありません\n");
183デフォルトの名無しさん:04/10/14 12:48:58
>>181
(゚Д゚ )ハァ?
184デフォルトの名無しさん:04/10/14 12:49:38
sscanf(str, "%s", fgets(str, 100, stdin));

???
185デフォルトの名無しさん:04/10/14 12:52:37
ワラタ
186あぼーん:あぼーん
あぼーん
187趣味プログラマ@180:04/10/14 12:53:38
キニシナイキニシナイ
188デフォルトの名無しさん:04/10/14 13:01:29
>>180
sscanf(str, "%s", fgets(str, 100, stdin));
何の意味も無いことするな。エラーでぬるぽだ。

すぐ下で
n = atoi(str);
やってるんだから
fgets(str, 100, stdin);
で充分
189180:04/10/14 13:08:33
入力時のスペース類を消したくて書いた。
まさかぬるぽだと思わなかった。
今ではガッしている。
190デフォルトの名無しさん:04/10/14 13:13:28
つーか、sscanfで読み取り元と格納先が同じって大丈夫だっけか
ヘルプひくのマンドクセ
191デフォルトの名無しさん:04/10/14 13:13:34
この宿題をお願いします↓
まず,ファイルにデータの個数nと,その個数分のデータ(整数データ)を保存する.
プログラムshell.cは,まずファイルからnを読み込み,その数だけデータを読み込み,シェルソートを実行する.そして最後にソート結果を表示する.ただし,シェルソートのhの系列として,

hm=1,
hk-1=3hk+1, k=m,m-1,...
とし,nを超える直前にh1となるように mを定めるものとする.
データ例↓
10
6
4
1
2
7
5
0
9
8
3
ちなみにC++です。
192コロ介 ◆YHMuLkVo/c :04/10/14 15:48:52
fgets(str,sizeof(str),stdin);
num=atoi(str);
定石なりよ
193デフォルトの名無しさん:04/10/14 16:01:38
>>192
fgets使っておきながらatoi使うのは愚の骨頂
194デフォルトの名無しさん:04/10/14 16:29:11
普通は以下の感じかな。
if(fgets(str, sizeof(str), stdin) == NULL) {エラー処理}
if(sscanf(str, "%d", &num) != 1) {エラー処理}
※2つの変数に入れるなら != 2

atoi使うなら、以下の感じかな。結果は同じだけど、
改行かなんかがひとつ余分についているから、取った方がいいらしい。
if(fgets(str, sizeof(str), stdin) != NULL) {エラー処理}
if(sscanf(str, "%s", str2) != 1) {エラー処理}
num = atoi(str2);
195194:04/10/14 16:30:57
>>194
2つ目のfgetsの戻り値のチェックが逆です。すまそ。
196通りすがり@Cで。。:04/10/14 18:13:33
円周率小数表示すると 3.1415926…となるが、小数第 500位までに
各数字が何回登場するのかを表示するプログラムを作成せよ。
例:小数第 7位までなら
1… 2回 2… 1回 3… 1回 4… 1回 5… 1回 6… 1回 9… 1回。
197デフォルトの名無しさん:04/10/14 18:18:23
>>196
πはどこから持ってくる?それの計算まで含むのか?
198通りすがり@Cで。。:04/10/14 18:18:28
…で、
結果は各数字の登場回数がはぼ等しくなるのだと。。
不思議だよねぇ(・.・;)。二重レススマソデス
199169:04/10/14 18:19:07
できた。
どうもありがと
200デフォルトの名無しさん:04/10/14 18:21:04
質問しといて「通りすがり」と称する根性が気に入らない
201デフォルトの名無しさん:04/10/14 18:21:58
(・.・;)
202デフォルトの名無しさん:04/10/14 18:22:13
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  こやつめ!>>197を無視しやがって!!!
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
203通りすがり@Cで。。:04/10/14 18:23:00
>>197
実際に何にもない所から出した方がいい。
現実問題として、スパコンで以下数億桁までやってるって言うし…
自分で計算しないとそういう問題に対処できなくなるから
204デフォルトの名無しさん:04/10/14 18:24:30
>>202
ダディ、クールに!
205本気の質問@Cで。。:04/10/14 18:25:27
>>200
ごめんよぅ。。名前変えた

>>202
あまりにもレス早かったから。。
無視してないですょ
206デフォルトの名無しさん:04/10/14 18:31:26
>>205
小数点以下500出せるソースがどんなものかわかってるのか?
207デフォルトの名無しさん:04/10/14 18:31:59
>>202
このきもいオッサン何者?
なんかモデルとかあるのか?
208デフォルトの名無しさん:04/10/14 18:33:24
>>203
π計算ちょーめんどくせー
209デフォルトの名無しさん:04/10/14 18:35:16
>>207
ダディクールのガイドライン Part5(偽)
http://that3.2ch.net/test/read.cgi/gline/1092704335/l50
アメリカ人のバーベキュー のガイドライン 2
http://that3.2ch.net/test/read.cgi/gline/1088420514/l50
210デフォルトの名無しさん:04/10/14 18:35:17
>>207
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  オレはお前だ。お前はオレだ。
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
211本気の質問@Cで。。:04/10/14 18:35:50
>>206
うまく頭を使って。。各値の分布状況が分かればいいから…
212デフォルトの名無しさん:04/10/14 18:36:45
>>211
氏ね。お前が頭使ってπの計算やれよ
213207:04/10/14 18:40:29
>>209
ありがと。
214デフォルトの名無しさん:04/10/14 19:01:41
まぁpai=πは計算されたとしてですよ

int cmp,i;
double pai;

for(i=0;i<=9;i++){
 cmp=pai-i;
   if(data==0){
     swich (i){
        case 1:cnt1++;
        case 2:cnt2++;
        以下略
     }
     pai=(pai-i)*10;
   }
}

本気の質問@Cで。。 さんのいう
>うまく頭を使って。。
ならば、↑のような感じでやるほかになんかあるわけですよね?
その方法をはげしくきぼんぬ
215デフォルトの名無しさん:04/10/14 19:03:51
少なくともdoubleで少数以下500桁のpiは無理だな
216デフォルトの名無しさん:04/10/14 19:06:19
>>215
彼なりのJOKEなんだよ
217デフォルトの名無しさん:04/10/14 19:09:17
アメリカンジョークの意味がわかんねえ。畜生、何がおかしいんだ、氏ね。
218デフォルトの名無しさん:04/10/14 19:15:10
おれの肉を食いやがって。畜生撃ち殺してやる。
219デフォルトの名無しさん:04/10/14 19:20:31
>>214
switchなんか使うなくても、配列でカウントすりゃいいだろ、畜生氏ね
220169:04/10/14 19:50:13
printf(m?"素数でーす\n":"素数ではありません\n");
これをif文で表すにはどうすればいいですか
221デフォルトの名無しさん:04/10/14 19:58:51
>>220
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  オレにとってその答えを書くのはたやすい
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   だが、それをやってしまうとお前は自分で調べ、考える
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    事ができない人間になってしまう
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
222デフォルトの名無しさん:04/10/14 20:01:26
ダディクール!
223デフォルトの名無しさん:04/10/14 20:16:10
>>220
簡単じゃないか。
if (printf(m ? "素数でーす\n" : "素数ではありません\n"));
224本気の質問@Cで。。:04/10/14 20:16:53
>>214
やっぱそんな形になるよねぇ(汗)。。

>>>うまく頭を使って。。
>>ならば、↑のような感じでやるほかになんかあるわけですよね?
ごめん。。先見の明なしで(謝)それに各値の登場回数を求めるよりも
π の小数表示求めるほうが難しいんだねぇ (@_@。無知でごめん。。
225デフォルトの名無しさん:04/10/14 20:21:28
>>224
πの計算は幾つも論文が出されているほどだ
それと、>>214のような浮動小数点で計算するような形では論外だし、その下の
書き込みも見てないだろ?
226デフォルトの名無しさん:04/10/14 20:32:11
VBの宿題どうかお願いできないでしょうか?
掛け算の99を表すプログラムを書きなさい
どうかよろしくお願いします
227デフォルトの名無しさん:04/10/14 20:33:10
>>226
VBスレでやれば?
228169:04/10/14 20:33:18
m?って数式にかえれないの
229デフォルトの名無しさん:04/10/14 20:34:41
mが条件式、真の場合は ? の後が、偽の場合は : 以降が評価される。
230デフォルトの名無しさん:04/10/14 20:42:43
すみませんが、どなたか教えてください。

1.
単純選択法で、配列は一つでありながら9999のような数を使わないプログラムを完成せよ。

2.
上記のプログラムを参考にし、整列が終了している部分は次に小さな値を探す時にはもう一度なぞらなくてもすむような形に改良せよ。

教えて君ですみません。どなたかお願いいたします。
231デフォルトの名無しさん:04/10/14 20:45:15
>>230
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  そんなネタはいらねえんだよ
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
232デフォルトの名無しさん:04/10/14 20:47:25
>>230は>37のコピペか
233デフォルトの名無しさん:04/10/14 20:49:15
234デフォルトの名無しさん:04/10/14 20:51:47
こっちの宿題お願いできないだろうか?
236デフォルトの名無しさん:04/10/14 22:28:11
237デフォルトの名無しさん:04/10/14 22:32:47
#include <stdio.h>

#define PI_MAX 2000

extern char *pi;

int main(void)
{
int count[10];
int i, n;

printf("(%%)\n");
for(n = 100; n <= PI_MAX; n += 100){
for(i = 0; i < 10; i++){
count[i] = 0;
}
for(i = 0; i < n; i++){
count[pi[i + 2] - '0']++;
}
printf("- %4d:", n);
for(i = 0; i < 10; i++){
printf("%7.2f", 1000.0 * count[i] / n);
}
printf("\n");
}

return 0;
}

238デフォルトの名無しさん:04/10/14 22:33:20
static char *pi = "3.\
14159265358979323846264338327950288419716939937510\
58209749445923078164062862089986280348253421170679\
82148086513282306647093844609550582231725359408128\
48111745028410270193852110555964462294895493038196\
44288109756659334461284756482337867831652712019091\
45648566923460348610454326648213393607260249141273\
72458700660631558817488152092096282925409171536436\
78925903600113305305488204665213841469519415116094\
33057270365759591953092186117381932611793105118548\
07446237996274956735188575272489122793818301194912\
98336733624406566430860213949463952247371907021798\
60943702770539217176293176752384674818467669405132\
00056812714526356082778577134275778960917363717872\
14684409012249534301465495853710507922796892589235\
42019956112129021960864034418159813629774771309960\
51870721134999999837297804995105973173281609631859\
50244594553469083026425223082533446850352619311881\
71010003137838752886587533208381420617177669147303\
59825349042875546873115956286388235378759375195778\
18577805321712268066130019278766111959092164201989\
\
239デフォルトの名無しさん:04/10/14 22:33:54
38095257201065485863278865936153381827968230301952\
03530185296899577362259941389124972177528347913151\
55748572424541506959508295331168617278558890750983\
81754637464939319255060400927701671139009848824012\
85836160356370766010471018194295559619894676783744\
94482553797747268471040475346462080466842590694912\
93313677028989152104752162056966024058038150193511\
25338243003558764024749647326391419927260426992279\
67823547816360093417216412199245863150302861829745\
55706749838505494588586926995690927210797509302955\
32116534498720275596023648066549911988183479775356\
63698074265425278625518184175746728909777727938000\
81647060016145249192173217214772350141441973568548\
16136115735255213347574184946843852332390739414333\
45477624168625189835694855620992192221842725502542\
56887671790494601653466804988627232791786085784383\
82796797668145410095388378636095068006422512520511\
73929848960841284886269456042419652850222106611863\
06744278622039194945047123713786960956364371917287\
46776465757396241389086583264599581339047802759009\
";

240デフォルトの名無しさん:04/10/14 22:51:55
ほほー、ほんとに100%に近づくんだなー面白い。
理屈はわからんが。
241デフォルトの名無しさん:04/10/14 23:04:15
e の場合偏りがある
1000 までの場合 5 が若干少ない
242デフォルトの名無しさん:04/10/14 23:19:14
|__/ヽ
| '''''':::::::\
| 、(●)、.:| +
|_, )ヽ、,, .::::|        
|-=- ' .:::::::| +
|ニ´  .:::::/     +
|__ ーーノ゙-、.
|_____ ノ.| ヽ i
|(__)\,|  i |
| ハ  |   ||
243デフォルトの名無しさん:04/10/14 23:45:25
円周率なんて約3でいいんだYO!
244あぼーん:あぼーん
あぼーん
245デフォルトの名無しさん:04/10/15 00:00:43
麻衣子COOL!!
246デフォルトの名無しさん:04/10/15 00:03:05
>>244
マジで気持ち悪いから。貼り付ける奴の気が知れない。
247デフォルトの名無しさん:04/10/15 00:29:31
>>244
麻衣子クールはC++の宿題を片付けてくれないの?
248デフォルトの名無しさん:04/10/15 00:38:13
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
249デフォルトの名無しさん:04/10/15 00:41:13
          ,,. : ‐'' "´;;;;;``'ー- 、..,,_
          /. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヽ,
       ,,./. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .\
      〃. ;,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヽ
     , 彳. ;,;;;;;;;;;;;;;;;;;;;;;;;/バ;ヾメ;:`ミ_;;;;;;;;;;;;;;;;;;;;;;;,; .゙、
    //. ;,;;;;;;;;;;;;;;;;;;;;;;;;;//:7- __ _  ヾ;;;;;;;;;;;;;;;;;;;;;,; .ヽ
    ´/. ;,;;;;;;;;;;;;;;;;;;;;;;;;//_/ ̄      ゙、;;;;;;;;;;;;;;;;;;;;;,; .',
   〃. ;,;;;;;;;;;;;;;;;;;;;;;;;// /      _,,._ i;;;;;;;;;;;;;;;;;;;;;;;,; .゙,
   《, ;,;;;;;;;;;;;;;;;;;;;;;;;;;∧ヾ、    ,;ii〃"゙`ミ;.i;;;;;;;;;;;;;;;;;;;;;;;,; .i|
  、{. ;,;;;;;;;;;;;;;;;;;;;;;;/ト〈、`゙,.  , ´ ,._.,.,、,_ `゙|;;;;;;;;;;;;;;;;;;;;;;;;,; .゙,
  i". ;,;;;;;;;;;;;;;;;;;;;;リヘソ,> Y! i〃 <.(;・),゙ゞノ;;;;;;;;;;;;;;;;;;;;;;;,; .《
  ((. ;,;;;;;;;;;;;;;;;;;;;;;;人"´`.:;;l l;.゙ `^''ーヾ`,リ!;;;;;;;;;;;;;;;;;;;;;;;;;,; .リ
  ソ. ;,;;;;;;;;;;;;;;;;i      r'(;. );:..      l |;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ヾ,
 ゞ. ;,;;;;;;;;;;;;;;;;;;i┘    ヽヘ、;ハ ,)      /!;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ゞ
ヾ". ;,;;;;;;;;;;;;;;;;;;;|ヾ;:            ,:; 人;;;;;;;;;;;;;;;;;;;;;;;;;,; .((._  マイコー
.`゙》. ;,;;;;;;;;;;;;;;;;;;| :;;i 、-‐‐:v.‐-:、_  〃;:  !;;;;;;;;;;;;;;;;;;;;;;;;;;,; .〃
.ノリ. ;,;;;;;;;;;;;;;;;;;;;゙、:;| `ヾニゞ‐;;;;ニフ  j|;.  /;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .{{
((. ;,;;;;;;;;;;;;;;;;;;;;;;;;;`、   - ̄    ,./;:. /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ソ,
_.)). ;,;;;;;;;;;;;;;;;;;;;;;;;/ilヽ、._  ;,.    ,.:-‐'"/;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,; .ノノ
彡. ;,;;;;;;;;;;;;;;;;;;;;;;;;;i;;》 \ニ ;`  ̄  . ::;〃─ン;;;;;;;;;;;;;;;;;;,; .'"<
250デフォルトの名無しさん:04/10/15 00:50:23
238はC素人
251デフォルトの名無しさん:04/10/15 01:35:27
もう1/4も消費してるのに
252あぼーん:あぼーん
あぼーん
253あぼーん:あぼーん
あぼーん
254デフォルトの名無しさん:04/10/15 06:45:31
ここはAAスレでつか?(つД`)
255デフォルトの名無しさん:04/10/15 07:15:50
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:|
  . |(●),   、(●)、.:|
  . |(●),   、(●)、.:|
  . |(●),   、(●)、.:|
  |   ,,ノ(、_, )ヽ、,, .::::|.
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
256デフォルトの名無しさん:04/10/15 11:33:38
    /\___/ヽ
   /''''''   '''''':::::::\    

  |   ,,ノ(、_, )ヽ、,, .::::|.
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
257麻衣子 ◆K96Jk4jthA :04/10/15 13:59:13
麻衣子をCOOLにしないで!

>>169

do{scanf("%d",&n);}while(n<3);
これは
n=0;while(n<3){scanf("%d",&n);}
こうなるね

printf(m?"素数でーす\n":"素数ではありません\n");

if(m){
printf("素数でーす\n");
}else{
printf("素数ではありません\n");
}
こうだよ
258デフォルトの名無しさん:04/10/15 15:13:46
ttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=123
どなたかこれを見て助けて下さい!お願いします
259デフォルトの名無しさん:04/10/15 15:24:04
>>258
とりあえず avg=total/5; を
avg=(float)total/5;
に変更しよう。その上で、avg を表示した後に
total=0;
for(i=0;i<5;i++){
total+=ten[i][j]*ten[i][j];
}
avg=(float)total/5-avg;
で、avg に標準偏差の2乗が入っているはず。平方根求めるには
#include <math.h>
をインクルードして
avg=sqrt(avg);
で求まる。後は任せた。
260デフォルトの名無しさん:04/10/15 15:25:18
名無しくーる!
261あぼーん:あぼーん
あぼーん
262あぼーん:あぼーん
あぼーん
263あぼーん:あぼーん
あぼーん
264デフォルトの名無しさん:04/10/15 18:48:03
このままだと、歴代で一番
回答数の少ないスレになりそうだな。

ちゃんと責任とれよ >>1
265デフォルトの名無しさん:04/10/15 18:50:23
そもそも質問がない、ここに限らず他の質問スレも今日は閑散。
266デフォルトの名無しさん:04/10/15 19:33:01
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| +
  . |(●),   、(●)、.:|  +
  . |(●),   、(●)、.:|     +
  . |(●),   、(●)、.:| +
  |   ,,ノ(、_, )ヽ、,, .::::|.    宿題答えてやれよ
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
267デフォルトの名無しさん:04/10/15 20:15:13
スレタイが悪いせいだよ。
次からは気を付けてね。
268デフォルトの名無しさん:04/10/15 20:31:19
>>261-263
あーあれだなとりあえずその三人が自分の娘だとしたら
262を男として育てるな俺
269デフォルトの名無しさん:04/10/15 20:33:14
>>262は一生子供なんだぞ!?
270デフォルトの名無しさん:04/10/15 21:19:06
【問題】
英文、プログラムなどの半角英数字のテキストデータを使い、
母音(aeiou)の出現頻度を調べ、出力するプログラムを作りなさい。
入力データは、各自独自のものを用意してeibun.datと名前をつけること。
また、余力あらば、Rubyでも同じことを試みてみよ。

Rubyはどうでもいいので、C言語のほうをよろしくお願いします。
当方の環境はUNIXです。Emaxを使ってます。
271デフォルトの名無しさん:04/10/15 21:48:24
出力フォーマットはぁ?
つか、Emaxだから何やねん。
272ぼるクール ◆yBEncckFOU :04/10/15 22:06:13
>>270
要はa,e,i,o,uの個数を調べればいいのか?
だんまりかよ

#include<memory.h>
#include<stdio.h>

#define INPUT_PATH "eibun.dat"

int main() {
    int table[0xff];
    FILE *file;
    int c;
    
    file = fopen(INPUT_PATH, "r");
    if (!file)
        return 1;
    
    memset(table, 0x0, sizeof(table));
    while((c = getc(file)) != EOF)
        ++table[c];
    
    fclose(file);
    
    printf("あ %d\n", table['a'] + table['A']);
    printf("い %d\n", table['i'] + table['I']);
    printf("う %d\n", table['u'] + table['U']);
    printf("え %d\n", table['e'] + table['E']);
    printf("お %d\n", table['o'] + table['O']);
    
    return 0;
}
             ,. - ─── - 、 
             /    ,       `ヽ. 
            /〃//,. ,ィl/|l ト、 !、 、  ヽ 
          ー'´| | l |1 | !l. l| ! | l.|ヽ ! !、 ', 
             YレV!ヒエ「! |l.「_ト!Ll」| l l  l 
           ! lハ(●), 、(●)| リ,! ! l. l | 
             |l |l.} ,,ノ(、_, )ヽ、_,ハl.lトl l. | l    ごめんね、麻衣子クールうっかりさんでごめんね
             |l ilト、`-=ニ=- '  ,1l|ィ| |l l |   table[]の型はsize_tとかunsignedの適当な型に置き替えてね♥
           _ 二,ニ^tュ--ェ_t1」l.|l !リ|_lノ   文字数がその型の範囲を超えた場合はダディが責任とってくれるよ
       r7´   f r┐| 〔/ミヽ>,-、 ̄´ 
       Y       ー个‐'t  ハ-、_'ゝ、 
        ヽ ._・ rく ̄ヽト-'丿  ヽ l 
        / (・__,)ゝi┬'´ハ`     '`| 
          |ヽ, イ   ノ┴くヽヽ、    / 
        `´ ゝ┬ヘ`ヽ   |  `ー‐1 
275あぼーん:あぼーん
あぼーん
276あぼーん:あぼーん
あぼーん
277デフォルトの名無しさん:04/10/15 23:36:22
270です。すみません。風呂入ってました。
>>272
そうです。ただ単に文章中のaeiouの個数を調べるだけです。
【例】
a;9
e;0
i;2
o;3
u;1
>>273
ありがとうございます。
tableとかはわからないのですが、参考にして頑張ってみます。
(当方、本当に単純なプログラムしか教えられてないので。)
278デフォルトの名無しさん:04/10/15 23:46:50
いっそのこともう33代目を立ててしまうか。賛成の人!
>>277
回答例のtable[]は文字数をカウントする為の配列だよ、パパ
>>270

     \∧_ヘ      / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     / \〇ノゝ     /  拙者C言語サムライ
    /三√ ゚Д゚)   <
     /三/| ゚C゚|\   |    もうすでに解答は出ているみたいだが、
      U (::::::::::)    |    老婆心とおもってくれい
      //三/|三|\   \  またつまらぬものを斬ってしまった・・・
      ∪  ∪      \________________

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1064150088&res=243






281デフォルトの名無しさん:04/10/16 00:02:44
switchを誰も使わないのは何故だろう…
282270:04/10/16 00:06:44
>>279
ありがとう。
よーし、パパがんばっちゃうぞー。
>>280
かたじけない。
ありがたく頂戴するでござる。
283デフォルトの名無しさん:04/10/16 01:06:10
宿題片付けてください。
入力した文字の順番を入れ替えるというやつで
例:abcdeの場合eabcdを表示させる感じです。
ポインタ使ってお願いします。ダディ。
284デフォルトの名無しさん:04/10/16 01:12:10
>>283
ここの>>1
http://pc5.2ch.net/test/read.cgi/tech/1097034002/335
あたりから読もうね
2851@正直スマンカッタ:04/10/16 01:16:53
#include <stdio.h>
#include <string.h>

int main()
{
    int i, length;
    char str[] = "abcde";

    puts(str);

    length = strlen(str);
    for(i = length; i > 0; i--) str[i] = str[i - 1];
    str[0] = str[length];
    str[length] = '\0';

    puts(str);

    return 0;
}
2861@正直スマンカッタ:04/10/16 01:19:12
しまった


    for(i = length; i > 0; i--) str[i] = str[i - 1];
    str[0] = str[length];
    str[length] = '\0';


    for(i = length; i > 0; i--) *(str + i) = *(str + i - 1);
    *str = *(str + length);
    *(str + length) = '\0';
287デフォルトの名無しさん:04/10/16 01:23:09
>>285
不快だから1と名乗るのは止めていただきたい
288デフォルトの名無しさん:04/10/16 01:28:56
彼が>>1だとすると、人の神経を逆撫でする天才だ。
289デフォルトの名無しさん:04/10/16 01:31:11
おまえらカルシウムたりなすぎ
牛乳飲んどけ
290デフォルトの名無しさん:04/10/16 01:32:05
>>289
君も飲んだほうがよさそうだね
291あぼーん:あぼーん
あぼーん
292デフォルトの名無しさん:04/10/16 01:34:41
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| +  ここはひとつ、オレの顔に免じてさやをおさめろ
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
293デフォルトの名無しさん:04/10/16 01:38:07
>>290
( ゚Д゚)ハァ?
てめーこそ小魚くっとけ
294デフォルトの名無しさん:04/10/16 01:40:29
>>293
君も小魚食べたほうがよさそうだね
295デフォルトの名無しさん:04/10/16 02:08:55
かっぱえびせん
296小魚クール:04/10/16 02:17:23
>>293-294
おまえら、これでも喰っとけ!
                           ト-、___
                     _,,-‐‐‐‐‐‐t-:、_ `‐、、_
                __,,,-‐'´     .:. ,,:.:``‐、;:;:;ヽ_
  ,,,_____,,..、_,,,,,-‐‐‐-、、_,,-'´    ............:.:/: .:.     ````ヽ、_
 〈=__,,,,__,,,,,,,,,,,,..::::::::::...  ;.:.:.:.:.:.:.:.:.:.:.:.:.:.:,;ノ::.            `‐、、
/ .._____.. .. . `````ヽ- '--‐‐'''''~~~'`::::ヽ:.:.:.....        、     ヽ、
ヒ;-'´  ````:‐:‐:-:-.:__,,、、、、、  ....:.:.:.:.:.:.`:.:.:.:,;,;,;,;.:.:.;,;...........ヽ、ヽT  (●)ヽ、
                 ````‐--:-:‐:':´:`:`´:: :::``:..、_:.:.:.:.:.:.:.ヽ、__ `-==,
                                 ````‐‐:-:-:-:-:‐"
297デフォルトの名無しさん:04/10/16 02:23:46
>>296
キモい。。。
298デフォルトの名無しさん:04/10/16 02:48:02
>>296
てめーがオチかよっ!

さっさと宿題もってこねーとCa論争つづけっぞ!


299デフォルトの名無しさん:04/10/16 02:57:08
>>298
あたしを食べて♥
                           ト-、___
                     _,,-‐‐‐‐‐‐t-:、_ `‐、、_
                __,,,-‐'´     .:. ,,:.:``‐、;:;:;ヽ_
  ,,,_____,,..、_,,,,,-‐‐‐-、、_,,-'´    ............:.:/: .:.     ````ヽ、_
 〈=__,,,,__,,,,,,,,,,,,..::::::::::...  ;.:.:.:.:.:.:.:.:.:.:.:.:.:.:,;ノ::.            `‐、、
/ .._____.. .. . `````ヽ- '--‐‐'''''~~~'`::::ヽ:.:.:.....        、     ヽ、
ヒ;-'´  ````:‐:‐:-:-.:__,,、、、、、  ....:.:.:.:.:.:.`:.:.:.:,;,;,;,;.:.:.;,;...........ヽ、ヽT  (●)ヽ、
                 ````‐--:-:‐:':´:`:`´:: :::``:..、_:.:.:.:.:.:.:.ヽ、__ `-==,
                                 ````‐‐:-:-:-:-:‐"
300デフォルトの名無しさん:04/10/16 02:58:44
カルシウム食っても日光に当たらないとビタミンDが活性化されずに
体に吸収されにくいらしいぞ
301デフォルトの名無しさん:04/10/16 03:00:13
>>299
                           ト-、___
                     _,,-‐‐‐‐‐‐t-:、_ `‐、、_
                __,,,-‐'´     .:. ,,:.:``‐、;:;:;ヽ_
  ,,,_____,,..、_,,,,,-‐‐‐-、、_,,-'´    ............:.:/: .:.     ````ヽ、_
 〈=__,,,,__,,,,,,,,,,,,..::::::::::...  ;.:.:.:.:.:.:.:.:.:.:.:.:.:.:,;ノ::.            :::`
/ .._____.. .. . `````ヽ- '--‐‐'''''~~~'`::::ヽ:.:.:.....        、:::   
ヒ;-'´  ````:‐:‐:-:-.:__,,、、、、、  ....:.:.:.:.:.:.`:.:.:.:,;,;,;,;.:.:.;,;...........ヽ、::::
                 ````‐--:-:‐:':´:`:`´:: :::``:..、_:.:.:::::
                                 `:::`::

今日は頭だけ食っといてやる!
302デフォルトの名無しさん:04/10/16 03:30:18
ドコサヘキサエン酸が多そうだ
303デフォルトの名無しさん:04/10/16 03:34:48
小魚のカルシウムは吸収されにくいし
牛乳はカルシウム溶かすし。
どうすりゃいいんだ?
304デフォルトの名無しさん:04/10/16 03:37:30
どうせ人間は死ぬんだよ
305デフォルトの名無しさん:04/10/16 04:10:59
俺天才だからDHAいらね
306デフォルトの名無しさん:04/10/16 11:31:46
307デフォルトの名無しさん:04/10/16 13:28:40
>>300
蛍光灯じゃだめですか?
308デフォルトの名無しさん:04/10/16 14:29:09
>307
ブラックライトでも浴びとけ。
309デフォルトの名無しさん:04/10/16 14:40:12
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子はブラック    {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 ライト浴びるから  {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
310デフォルトの名無しさん:04/10/16 16:00:16
ブラックライトでシリコン光りまくり
311デフォルトの名無しさん:04/10/16 16:49:34
               /\___/ヽ
              /''''''   '''''':::::::\
             . |(●),   、(●)、.:| +
             |   ,,ノ(、_, )ヽ、,, .::::|
             .|   ´トェェェイ` .:::::::| +
              \  `ニニ´  .:::::/     +
          _/,⌒ヽ/ヽ____ノ゙\ ̄]]
          ( 」 入 (^ヽ     /  ) TT
  ,/ ̄ ̄ ̄ ̄ ̄ ̄了 ̄ ̄ ̄P ̄ ̄ ̄三| ̄ ̄ ̄.|
  (○),   、(○) /     |       |     .|
 |   ,,ノ(、_, )ヽ、,,  |      |       |     .|     (´´
 |  `-=ニ=- '    |   ./⌒ヽ      | ./⌒ヽ |         (´⌒(´
 |  ____    |  _| ( 0) |_____|_| ( 0) |_/⊃≡3≡≡(´⌒;;;≡≡≡3
  ̄ ヽ人_ノ ̄ ̄ ̄ ヽ人_ノ     ヽ人_ノ   (´⌒(´⌒;;
312デフォルトの名無しさん:04/10/16 17:33:57
前スレのCASL アセンブラを作成せよってのは
CASL IIじゃなくてCASLだよな…。

やっぱり資料少ない…。
313デフォルトの名無しさん:04/10/16 17:38:32
情報技術試験の本にないの?今ってCASL IIのみになったのかな
314あぼーん:あぼーん
あぼーん
315デフォルトの名無しさん:04/10/16 18:10:24
なんだこのスレw
316デフォルトの名無しさん:04/10/16 19:07:12
>>315
笑うな!真面目に回答しようとする人間もいるんだ
317デフォルトの名無しさん:04/10/16 19:08:06
>>316
すすすいませんっ
318デフォルトの名無しさん:04/10/16 19:09:08
推奨NGワード
(●)
>>317
君もクールに片づけるんだ
320デフォルトの名無しさん:04/10/16 19:10:47
  ./  ̄/〃__〃      ./  ̄/       ./
    ―/  __ _/       ./ ―― / /
    _/   /   /   が  _/    _/ /_/ に
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| + というスレの趣旨にのっとって
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  真面目にクールに行こうじゃないか
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||.  
321デフォルトの名無しさん:04/10/16 20:02:21
真面目に次スレたてないか?
322デフォルトの名無しさん:04/10/16 20:47:38
>>319
なにげにかたづけてます(´ヘ`;)
323あぼーん:あぼーん
あぼーん
324デフォルトの名無しさん:04/10/16 21:26:45
>>321
AA貼りまくってるのはお前か!
何故そんなに宿題スレ潰したいのか?
325デフォルトの名無しさん:04/10/16 21:29:48
@ノハ@
( ‘д‘)<あいぼんがC/C++の宿題を(ry
326デフォルトの名無しさん:04/10/16 21:33:44
AA系のスレ立ては勘弁してくれ
327あぼーん:あぼーん
あぼーん
328デフォルトの名無しさん:04/10/16 21:44:48
>>321
もう次立てるんならヘーベルハウスきぼん
AA は >>33 あたり
329あぼーん:あぼーん
あぼーん
330デフォルトの名無しさん:04/10/16 21:57:28
次スレに質問テンプレを付け加えたほうがいいと思うんだが、次の他に
何かあるか?あれば要望を希望。

【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):
[3] 環境
 [3.1] OS:
 [3.2] コンパイラ(バージョン):
 [3.3] 言語:C/C++/どちらでも可 のいずれか
[4] 期限:yyyy年mm月dd日hh:mmまで/無期限 のいずれか
[5] その他の制限:
331デフォルトの名無しさん:04/10/16 21:59:13
質問者は1も見ないのにテンプレ見るとは思えないな
332330:04/10/16 22:01:01
>>331
テンプレに従わない質問に対しては「>>1嫁」というテンプレに
従うという方向で。
333あぼーん:あぼーん
あぼーん
334デフォルトの名無しさん:04/10/16 22:09:22
授業単元は消してもいいんじゃね?本質ではあるまいて
335デフォルトの名無しさん:04/10/16 22:12:17
ほんとに新スレ立っちゃうんだね。。
ダディよ… ((+_+))
336デフォルトの名無しさん:04/10/16 22:14:35
なんでカリカリしてるんだ?
質問があるなら書けよ、無いなら無関係だろうに。
337デフォルトの名無しさん:04/10/16 22:17:13
「次スレ立てないか」はただの煽り
重複スレで削除対象と分かってるから、自分では立てない
338デフォルトの名無しさん:04/10/16 22:19:45
このスレも、質問にはちゃんと答えてるからな・・・
ダディが多いのは>>1のせいだが。
339デフォルトの名無しさん:04/10/16 22:22:57
次スレ立てました。
このスレは終わっています。

暇な人がエレガントにC/C++の宿題片づけます 33代目
http://pc5.2ch.net/test/read.cgi/tech/1097932699/
340デフォルトの名無しさん:04/10/16 22:25:47
あーぁ、新スレ立っちゃったよ。。
ダディ支援してたのに…
341デフォルトの名無しさん:04/10/16 22:41:42
普通は100前後で荒れ終わるのがこのスレでは最後まで
荒れっぱなしだったからなぁ…

良くも悪くも、これでどちらのスレも落ち着きそうだ
342デフォルトの名無しさん:04/10/16 22:43:15
340で最後にされとるw
343デフォルトの名無しさん:04/10/16 22:48:27
うめうめ
344あぼーん:あぼーん
あぼーん
345デフォルトの名無しさん:04/10/16 22:59:23
プログラム板は数ヶ月の書き込みが無くてもDAT落ちは無い
ここは、次スレよりも長く残ってしまうかもしれない
次を立てるのが早過ぎたのだよ
こちらを使い切って次を使うほうが利口というものだが、どうだろう
346デフォルトの名無しさん:04/10/16 23:03:09
それがいいね。
あっちはこっちを使い切るまで放置。どうせ落ちないし。
347デフォルトの名無しさん:04/10/16 23:28:16
' @ノハ@
( ‘д‘)<あいぼんがC/C++の宿題を 34代目
348デフォルトの名無しさん:04/10/16 23:29:40
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
349デフォルトの名無しさん:04/10/17 00:31:26
ずーっと風呂ばっかじゃねーかっ!
350あぼーん:あぼーん
あぼーん
351あぼーん:あぼーん
あぼーん
352あぼーん:あぼーん
あぼーん
353デフォルトの名無しさん:04/10/17 04:12:11
質問しづらい雰囲気なんですけど・・・
354デフォルトの名無しさん:04/10/17 06:07:45
質問した方が収まる気がしないでもない.
355デフォルトの名無しさん:04/10/17 09:48:01
>>5>>9が荒らしているんだと思うけど、よほど嫌だったんだな。
356デフォルトの名無しさん:04/10/17 10:35:03
スレタイなんて
それが一体何なのさ
357デフォルトの名無しさん:04/10/17 12:13:29
麻衣子のはスレ立てないの?
358デフォルトの名無しさん:04/10/17 12:35:07
359258:04/10/17 15:23:36
以前ここで質問して>>259の方のアドバイスで頑張ってみたんですけどダメでした。
avg=(float)total/5;はtotalをfloatにしろってことですよね?
人間別と科目別のtotalは文字を変えた方がいいのかな?
どなたか宜しくお願いします!
360デフォルトの名無しさん:04/10/17 15:25:44
                           ト-、___
                     _,,-‐‐‐‐‐‐t-:、_ `‐、、_
                __,,,-‐'´     .:. ,,:.:``‐、;:;:;ヽ_
  ,,,_____,,..、_,,,,,-‐‐‐-、、_,,-'´    ............:.:/: .:.     ````ヽ、_
 〈=__,,,,__,,,,,,,,,,,,..::::::::::...  ;.:.:.:.:.:.:.:.:.:.:.:.:.:.:,;ノ::.            `‐、、
/ .._____.. .. . `````ヽ- '--‐‐'''''~~~'`::::ヽ:.:.:.....        、     ヽ、
ヒ;-'´  ````:‐:‐:-:-.:__,,、、、、、  ....:.:.:.:.:.:.`:.:.:.:,;,;,;,;.:.:.;,;...........ヽ、ヽT  (○)ヽ、
                 ````‐--:-:‐:':´:`:`´:: :::``:..、_:.:.:.:.:.:.:.ヽ、__ `-==,
                                 ````‐‐:-:-:-:-:‐"
361デフォルトの名無しさん:04/10/17 15:54:35
こんな感じ?


    float avg[3];
    float stdevp[3];
/* 略 */

    for(j = 0; j < 3; j++){ 
        total = 0;
        for(i = 0; i < 5; i++){ 
            total += ten[i][j]; 
        } 
        avg[j] = total / 5; 
        stdevp[j] = 0;
        for(i = 0; i < 5; i++){ 
            stdevp[j] += (avg[j] - ten[i][j]) * (avg[j] - ten[i][j]);
        } 
        stdevp[j] = sqrt(stdevp[j] / 5);
    } 
362デフォルトの名無しさん:04/10/17 16:56:53
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
363デフォルトの名無しさん:04/10/17 17:51:10
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 そのまま買い物   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  に行くから待っててね  ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
364デフォルトの名無しさん:04/10/17 17:55:17
>>363
猥褻物陳列罪でタイーホ
365デフォルトの名無しさん:04/10/17 18:32:41
━━━━━━━━━━━━━━━━━━━━━━━━━━
(@u@) ダディがクールにC/C++の宿題を片づけて見せます。
━━━━━━━━━━━━━━━━━━━━━━━━━━
では、質問をどうぞ。
━━━━━━━━━━━━━━━━━━━━━━━━━━
366デフォルトの名無しさん:04/10/17 18:35:27
もうこのやりとり飽きた。
こんなクソスレにした>>1も十分こりただろう。
おまえらAAはやめにしないか。
367常識人:04/10/17 19:40:16
>>366
AAを止めろというのが理解できません。
AAは2ちゃんねるの文化の一つであり、なぜ2ちゃんねるにて、AAを否定するのでしょうか?
それは単なるあなたの好みではないですか?
勝手なあなたの我がままを私たちに押し付けないで下さい。
本当に腹立たしいことです。
368デフォルトの名無しさん:04/10/17 19:46:36
問題:「常識人」と名乗る人は、例外なく常識が無いような気がするのは気のせいですか?
369デフォルトの名無しさん:04/10/17 19:52:23
                     _,,-‐‐‐‐‐‐t-:、_ `‐、 _            |
                __,,,-‐'´     .:. ,,:.:``‐、;:;:;ヽ_           |
  ,,,_____,,..、_,,,,,-‐‐‐-、、_,,-'´    ............:.:/: .:.     ````ヽ _ |
 〈=__,,,,__,,,,,,,,,,,,..::::::::::...  ;.:.:.:.:.:.:.:.:.:.:.:.:.:.:,;ノ::.            `‐、、 |
/ .._____.. .. . `````ヽ- '--‐‐'''''~~~'`::::ヽ:.:.:.....        、     ヽ、 |
ヒ;-'´  ````:‐:‐:-:-.:__,,、、、、、  ....:.:.:.:.:.:.`:.:.:.:,;,;,;,;.:.:.;,;...........ヽ、ヽT  (○)ヽ、 ノ
                 ````‐--:-:‐:':´:`:`´:: :::``:..、_:.:.:.:.:.:.:.ヽ、__ `-=ノ
                                 ````‐‐:-:-:-:-:‐"

>>367
>AAを止めろというのが理解できません。
本来このスレはC/C++の宿題を片づけるというのが目的であって
AAでレスしていくというのが目的ではないです。
目的の履き違えというのを指摘することはなんら間違っていないと思います。

常識人?名前を読んであきれるわ
370デフォルトの名無しさん:04/10/17 19:53:40
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
371デフォルトの名無しさん:04/10/17 19:54:06
                     __
                ,,r‐''"~~´:::::::::::::゙~''''‐-、,
              ,,r''´::::::::::::::::::::::::::::::::::::::::::::::::::゙丶、
            /:::::::::::::::::::::::::::::,r、::::::::::::::::::::::::::::::::\
           / ......::::::::::::ィ::::::::// ヽ:::::ト、::::::::::::::::........ヽ
           /:::::::::::,r::::::/ |:::::/ /  ゙、::l ヽ:::::::::、::::::::::::::゙、
           /:::::::::::/i::::/,,,,l:::/ /   ヽト‐-、:::::|',::::::::::::::::i
          i::::::i:::::/'|::/  |/  /     !  ヽ::|ヽ:::::i:::::::::l
         l:::::::|:::/ .i/              ヽ:| ゙、::::i:::::::::|
           |:::::::|/                 ゙'! ヽ,!:::::::::|
         |::::::;;;;i  ━┳        ━┳    |;;;;::::::::| 
          |::::::;;;;;|                        |;;;;:::::::::|
        |::::::::;;;;l                    l;;;;:::::::::|
         |:::::::;;;;;|                       |;;;;::::::::|美貴がC/C++の宿題をかたづけるよ 34代目
     _,,,r-┴、::;;;;ヽ、                   ノ;;;:::::-‐-、
    / 、  、 ヽヽ-,;;;゙ヽ、     \/       ,,,イr/´/ ,r  ゙'ヽ、
 ̄ ̄\,,,ヽ、,,i、,,,i、ノ' ̄ ゙゙̄'''‐- ...,,,,,,,,,,,,,,,,,,.... -‐'''~  ̄(,,しL,/,,,r'~,,,-‐' ̄ ̄
372デフォルトの名無しさん:04/10/17 19:54:48
このスレAAと雑談取ったらすごい圧縮率
373デフォルトの名無しさん:04/10/17 19:56:10
>>238-239
みたいなバカも居たんだな・・・
374デフォルトの名無しさん:04/10/17 19:57:29
お願いします。
C++を使い。BorlandC++コンパイラー5.5を使っています。
結果はDOS窓に表示させるヤツです。


金銭出納帳クラスを作成せよ。
 金銭出納帳は、収入と支出の記録をとる帳簿で、1件の記録の項目は、
「日付」、「費目」、「収入」、「支出」、「残高」、「備考」である。
機能としては、「入金登録」、「支払い登録」、「一覧表出力」、
「費目検索」、「日付検索」、「残高確認」がある。
内部のデータ構造は問わないが、1年分の(366)日以上の記録ができること。
 それを使った簡単なサンプルプログラムも作ること。

どうかよろしくお願いします。
375デフォルトの名無しさん:04/10/17 20:01:59
会計関連の用語がよくわからないー
もう少し具体的に
376デフォルトの名無しさん:04/10/17 20:07:56
>>375
日付…When?
費目…何に使ったか。
収入…入ってくるお金
支出…出て行くお金。
残高…残ったお金。
備考…メモ

この6つを入力と出力する機能と
一覧を出力する機能が欲しいのです。
また1年(366回)分以上の作業を記録させることができるようにしたいです。



377デフォルトの名無しさん:04/10/17 20:09:25
銀行にお金預けた場合は収入?それとも支出?
378デフォルトの名無しさん:04/10/17 20:09:26
いや、機能の方、「費目検索」、「日付検索」とか
379デフォルトの名無しさん:04/10/17 20:16:43
>>377
預金の機能はないです。
出納帳とか立派な名前がついてますが用は家計簿です。

>>378
その項目は無視して頂いて結構です。
実はこの問題の後に
「問1と参考に…」という派生問題がいっぱいあるのですが、それは自分で挑戦してみたいので
>>374というより>>376みたいな感じでお願いします。
380デフォルトの名無しさん:04/10/17 20:19:12
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| + >>379 全部自分でやりなさい。
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
381デフォルトの名無しさん:04/10/17 20:40:11
a → · b → =| a → || b → |cosθ
の”|”はなにを表していますか?
”→”はベクトルだと思うんですが。

したのページにあったんですけど、
ttp://www.crossroad.jp/mathnavi/math-b/math-b-index.html
よろしくお願いします。
382デフォルトの名無しさん:04/10/17 20:43:50
>>381
ベクトルの大きさ(ユークリッドノルム)
学校で習わなかったのか?
383デフォルトの名無しさん:04/10/17 20:48:16
>376
基本構造は、そういう構造体を作って、STL::VECTORに投げ入れるだけでいいと思うよ。
後は必要に応じて全検索すれば、目的のものは近いと思う。
あと、ロードとセーブもね。
384デフォルトの名無しさん:04/10/17 20:48:37
385デフォルトの名無しさん:04/10/17 20:50:18
>>366
糞スレにしたのは1じゃなくて荒らした奴だろ
386デフォルトの名無しさん:04/10/17 21:00:41
>382
まず、レスTHX!
僕は、工業高校だったのと、数学苦手なので、わからなかったです。
ttp://ja.wikipedia.org/wiki/%E3%83%8E%E3%83%AB%E3%83%A0
これ見る限りじゃ、この場合、距離のことみたいですね。
もうちょっと調べてみます。
ありがとうございました。
387デフォルトの名無しさん:04/10/17 21:06:16
>>383 STL::VECTOR
>>383 STL::VECTOR
>>383 STL::VECTOR
>>383 STL::VECTOR
388383:04/10/17 21:19:29
>387
なんか間違ったこといったけ?
設計が狂ってるとかならわからんでもないけど、
それともvectorがまずいなら、listでも何でもいいよ。
おかしいなぁ・・・。
389デフォルトの名無しさん:04/10/17 21:20:45
std::vectorじゃないの?
390デフォルトの名無しさん:04/10/17 21:22:41
お願いします。
初心者です。
C++でBorlandC++Compilerです。
CUI環境です。

問1
※四角形の領域を表すクラスを作成せよ。
 
 っていう問題なんですけど。
 まずある1個目四角形の縦と横の長さを決めて、
 次に2個目の四角形の縦と横の長さを決めます。
 それで1個目が2個目より大きかったら大きい。小さかったら小さいと出力させたいのです。

問2
※円の領域を表すクラスを作成せよ。
 
 これも上と同じような内容です。

お願いします。
391デフォルトの名無しさん:04/10/17 21:38:02
>389
あ、ネームスペースか。
これはうっかりしてた。
ごめんなさい。
392デフォルトの名無しさん:04/10/17 21:42:28
>390
問題両方とも面積を計算しましょう。
次に比較しましょう。
あとは、なすがままですよ。
393デフォルトの名無しさん:04/10/17 21:44:32
>>392
ただ比較をして出力すらならば、分かるんですが
クラスを作成せよってのが分からないんですよ。
正直、クラスが何者なのかすらわかってないです。
394デフォルトの名無しさん:04/10/17 21:51:10
template<class T> class Point {
private:
    T m_x;
    T m_y;
public:
    Point(T a_x = 0, T a_y = 0) : m_x(a_x), m_y(a_y) {
        return;
    }
    
    T distance(const Point& a_point) const {
        T dx = m_x - a_point.m_x;
        T dy = m_y - a_point.m_y;
        return sqrt(dx * dx + dy * dy);
    }
};

template<class T> class Quad {
private:
    Point<T> m_point[4];
public:
    Quad(const Point<T>& a_p1, const Point<T>& a_p2, const Point<T>& a_p3, const Point<T>& a_p4) {
        return;
    }
    
    T area(void) const {
        /* ('A`)マンドクセ */
    }
};

ごめん、面積マンドクサくなった('A`)
四角ってのが長方形、円が真円で回転無しなら簡単だけど
395デフォルトの名無しさん:04/10/17 21:51:53
>>391
大文字と小文字を区別するC/C++で「VECTOR」はないだろ。
396394:04/10/17 21:53:46
あ、Quadのコンストラクタもマンドクサです
397デフォルトの名無しさん:04/10/17 21:57:53
>395
あ、なるほど。
それは気づかなかった。
ごめんなさい。
398デフォルトの名無しさん:04/10/17 22:05:34
class rect{
public:
rect(int w,int h){
width=w;
height=h;
}
int menseki(){
return width*height;
}
int width,height;
};

int main(){
rect r1(100,100),r2(10,10);

if(r1.menseki()>r2.menseki()){
puts("一個目の方が大きい。");
}else{
puts("一個目の方が小さい。");
}
return 0;
}

>390
こういうの??
399デフォルトの名無しさん:04/10/17 22:16:17
>>398
そうゆうのです。
それで一つ目と二つ目を自分で入力したいのです。
400デフォルトの名無しさん:04/10/17 22:34:28
rect r1(100,100),r2(10,10);

この行を、

int x,y;
scanf("%d",&x);
scanf("%d",&y);
rect r1(x,y);
scanf("%d",&x);
scanf("%d",&y);
rect r2(x,y);

に変えるだけ。簡単ですよ。
401デフォルトの名無しさん:04/10/17 23:26:45
>>390
#include <iostream>

class rect_field {
private:
double height_;
double width_;

public:
rect_field()
: height_(0), width_(0) {};
rect_field(double height, double width)
: height_(height), width_(width) {}

~rect_field() {};

void set_value(double height, double width) {
height_ = height;
width_ = width;
}

double calc_rect() {
return height_ * width_;
}

bool operator < (rect_field r) {
return calc_rect() < r.calc_rect();
}

bool operator>(rect_field r) {
return calc_rect() > r.calc_rect();
}
402デフォルトの名無しさん:04/10/17 23:27:33

bool operator==(rect_field r) {
return calc_rect() == r.calc_rect();
}

bool operator<=(rect_field r) {
return calc_rect() <= r.calc_rect();
}

bool operator>=(rect_field r) {
return calc_rect() >= r.calc_rect();
}

bool operator!=(rect_field r) {
return calc_rect() != r.calc_rect();
}
};
403デフォルトの名無しさん:04/10/17 23:28:02
int main() {
rect_field r1(1, 5);
rect_field r2(2, 4);

if (r1 <= r2) std::cout << "r1 <= r2" << std::endl;
if (r1 >= r2) std::cout << "r1 >= r2" << std::endl;
if (r1 == r2) std::cout << "r1 == r2" << std::endl;
if (r1 < r2) std::cout << "r1 < r2" << std::endl;
if (r1 > r2) std::cout << "r1 > r2" << std::endl;

r1.set_value(2, 2);
r2.set_value(3, 1);

if (r1 <= r2) std::cout << "r1 <= r2" << std::endl;
if (r1 >= r2) std::cout << "r1 >= r2" << std::endl;
if (r1 == r2) std::cout << "r1 == r2" << std::endl;
if (r1 < r2) std::cout << "r1 < r2" << std::endl;
if (r1 > r2) std::cout << "r1 > r2" << std::endl;

return 0;
}
404390:04/10/17 23:38:51
みなさん、出来ました。
どうもありがとうございました。
405デフォルトの名無しさん:04/10/17 23:54:57
なんかスレタイが赤字で表示されてるんですけど・・・
こちらjane dow style 040829
406デフォルトの名無しさん:04/10/18 00:08:01
問題無いですけど・・・
navi2ch 1.7.5
407デフォルトの名無しさん:04/10/18 00:10:32
http://pc5.2ch.net/test/read.cgi/tech/1097034002/560-562
ここで質問したのですが、宿題スレへ誘導されましたのでこちらでお願いします。

a=11.2 b=9.3 c=7.2 d=6.3 という4つのレートがあったとします。
これらを組み合わせて、規定した値にもっとも近い組み合わせを出したい
のですが、いくら考えてもアルゴリズムが出てきません。
解は複数出て問題ありません。よろしくお願いいたします。

例:基準値を103とした場合、
11.2×4=44.8
9.3×2=18.6
7.2×2=14.4
6.3×4=24.2 で合計がぴったり103となります。

基準値が22の場合は、
9.3×1=9.3
6.3×2=12.6  で合計21.9が最も近い数字となります。
(7.2×3=21.6は最も近い組み合わせでないので不可)
408デフォルトの名無しさん:04/10/18 00:29:22
これは・・・ヤツのニオイがプンプンするぜ!
「ナップサック問題」と同じニオイだ!
409デフォルトの名無しさん:04/10/18 01:01:24
やってみなきゃわからんというやつだな。
410デフォルトの名無しさん:04/10/18 01:04:53
    /\___/ヽ

   /''''''   '''''':::::::\     

  . |(●),   、(●)、.:| + >>379 やせた?

  |   ,,ノ(、_, )ヽ、,, .::::|.    

.   |   `-=ニ=- ' .:::::::| +   

   \  `ニニ´  .:::::/  +  

,,.....イ.ヽヽ、ニ__ ーーノ゙-、    

:   |  '; \_____ ノ.| ヽ i   

    |  \/゙(__)\,|  i |

    >   ヽ. ハ  |   ||.
411デフォルトの名無しさん:04/10/18 01:17:54
他方にも書いたのですが、レスがなかったのでこちらにも書かせていただきます。
Linux 2.4.23 SCHED.C を修正してFair Share Schedulingにしなさい。
というものです。どうか、よろしくお願いします。





412デフォルトの名無しさん:04/10/18 01:31:10
おれっち、Linuxの事詳しくないんだけど、
それって作業のボリューム凄くね?
413デフォルトの名無しさん:04/10/18 01:38:20
>407
a,b,c,d それぞれの数に制限はないと思っていいの?
あと、複数でて問題ありませんっていうけど、1つだけでもいいの、全部ださなきゃいけないの?
414379:04/10/18 02:08:01
>>410
やせてないよ。
まだ、出来てないよ。
終わらないよ。
415デフォルトの名無しさん:04/10/18 02:54:28
>412 そんなに多くはないはずです。多分、goodness()の一部を変えるだけだと
思うのですが。。。
416デフォルトの名無しさん:04/10/18 04:18:19
>>415
weight += 20 - p->nice;

weight += 20;
に書き換える。
417デフォルトの名無しさん:04/10/18 06:44:27
>>416
/* .. and a slight advantage to the current MM */
if (p->mm == this_mm || !p->mm)
weight += 1;
weight += 20 - p->nice;

/* egid modifier */
/* group egids by priority */
if (p->egid >= 0 && p->egid <= 20) weight = weight * 10;
else if (p->egid >= 21 && p->egid <= 40) weight = weight * 5;
else if (p->egid >= 41 && p->egid <= 80) weight = weight * 2;
else weight = weight;

goto out;
こういう、感じでしょうか?ってこれは、他のクラスメートが書いたもので
これを、そのまま写して提出することも出来ないのですが、。
この、アルゴリズムがよくわかっていないのです。
egidのナンバーは、どこから取得するのでしょうか?上下のリミットは
あるのでしょうか?3つのグループに分けているのは??
418デフォルトの名無しさん:04/10/18 08:16:18
    /\___/ヽ
   /''''''   '''''':::::::\     
  . |(●),   、(●)、.:| + >>417 全部自分でやりなさい。
  |   ,,ノ(、_, )ヽ、,, .::::|.    
.   |   `-=ニ=- ' .:::::::| +   
   \  `ニニ´  .:::::/  +  
,,.....イ.ヽヽ、ニ__ ーーノ゙-、    
:   |  '; \_____ ノ.| ヽ i   
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
419デフォルトの名無しさん:04/10/18 11:38:44
お願いします。

int a=5, b=10;
int *p[4] = {NULL,&a.&b};
int **x = &(p[2]);

上のように変数が宣言され初期化されている時、次の値はどうなるか答えなさい

**(x-1)
*(*(x+1)+1)
*(++x)

ポインタ全然わっかんねぇ…
420デフォルトの名無しさん:04/10/18 11:44:44
>>419
**(x-1) → 5
*(*(x+1)+1) → ?
*(++x) → ?
421デフォルトの名無しさん:04/10/18 11:51:10
マンドクサがらずに図を書いてみなはれ

p[4]: | NULL | aへのポインタ | bへのポインタ | 不定 |
x: p[2]へのポインタ、p[2]はbへのポインタ

**(x-1): p[2]の前、つまりp[1]で、aへのポインタだから、aの値
*(*(x+1)+1): p[2]の次、p[3]は不定じゃねぇかこのヤロウ
*(++x): 不定だっつーのこのヤロウ
422419:04/10/18 11:53:27
>420-421
ありがdでした!!
下つはやっぱり不定ですよね?
私も「??」となってたんですが
2つも不定なのはアリかYO!と思いまして…
誤植じゃなかったらいいんですが…
423407:04/10/18 12:17:01
>413

解は全部ほしいです・・・
その中で、a,b,c,dの×(掛ける)いくつ の数の和が一番少なくて済むものを
選ぼうと思っているので、解は全部出してほしいです。

407の基準値103の場合はaが4、bが2、cが2、dが4なので計12です。
複数解がある場合、この合計値が一番小さくなるものを選びたいです。

a,b,c,d それぞれの数に制限はありません。
424デフォルトの名無しさん:04/10/18 12:43:57
425デフォルトの名無しさん:04/10/18 18:26:16
>>423
>a,b,c,d それぞれの数に制限はありません。

負数もあり?
426デフォルトの名無しさん:04/10/18 18:42:33
Cの課題です。
任意の文字列で初期化した文字列の中から、指定された文字列の数を数えるプログラムを作成。
ただし、文字列の指定はコマンド引数を使うこと。


文字列を"market share"で初期化
>./a.out ar
"market share" - ar : 2
>./a.out e
"market share" - e : 2
>./a.out data
"market share" - data : 0

おねがします!
427デフォルトの名無しさん:04/10/18 19:29:15
#include <stdio.h>
#include <string.h>

int main(int ac, char *av[])
{
char text[] = "market share", *t;
int n = 0;

if (ac == 2) {
for (t = text; (t = strstr(t, av[1])) != NULL; t++)
n++;
printf("\"%s\" - %s: %d\n", text, av[1], n);
}
return 0;
}
428407:04/10/18 19:45:09
>>425

負数はないです。小数点以下は1桁だけです。
また、種類も最大4種類(abcd)のみです。
429デフォルトの名無しさん:04/10/18 20:00:20
>>427
できました、ありがとうございますー
430デフォルトの名無しさん:04/10/18 20:26:20
>>407
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1064150088&res=244

解いたけど、ものすごく効率が悪い。
かなり重いです。
基準値が70超えると無理。

まあ、解き方の1つってことで
より効率の良いアルゴリズムを考えてください。
431デフォルトの名無しさん:04/10/18 20:27:41
std::stringで中身を空っぽにするときはどうすればいいんですか?
そういうメソッドってありますか?
432デフォルトの名無しさん:04/10/18 20:33:40
resize(0)とか空のオブジェクトか空文字列代入するとか
433デフォルトの名無しさん:04/10/18 20:43:23
>>430
DP(動的計画)法使えばもっと早く解けるだろ
434デフォルトの名無しさん:04/10/18 21:03:08
#include <stdio.h>
#include <string.h>

int main(void)
{
FILE *fp;
char buf[256], fname[256], sstr[256];
printf("検索されるファイル名 : ");
if (fgets(buf, sizeof buf, stdin) == NULL ||
sscanf(buf, "%s", fname) != 1) return 1;

fp = fopen(fname, "r");
if (fp == NULL) {
printf("ファイル %s が見つかりません\n", fname); return 1;
}

for (;;) {
printf("検索文字列 : ");
if (fgets(buf, sizeof buf, stdin) == NULL ||
sscanf(buf, "%s", sstr) != 1) break;
while (fgets(buf, sizeof buf, fp) != NULL)
if (strstr(buf, sstr) != NULL)
fputs(buf, stdout);
rewind(fp);
}

fclose(fp);
return 0;
}

このプログラムの検索文字列を入力した時に、検索ファイルに文字列が見つからなかった場合に、該当する文字列は存在しませんと出力するにはどうしたら良いのでしょうか?教えてください。
435デフォルトの名無しさん:04/10/18 21:21:27
>>434
if (strstr(buf, sstr) != NULL)
fputs(buf, stdout);

if (strstr(buf, sstr) != NULL) {
fputs(buf, stdout);
} else {
fputs("該当する文字列は存在しません\n", stdout);
}
436デフォルトの名無しさん:04/10/18 21:22:09
437デフォルトの名無しさん:04/10/18 21:31:30
>432
ありがとう。
438デフォルトの名無しさん:04/10/18 21:46:27
>>431
std::basic_string<>::clear()
439デフォルトの名無しさん:04/10/18 21:49:26
英語の辞書をアルファベット順にソートするプログラムなんですけど
僕が作ってみた↓のプログラムでは全然ソートできましぇん
エラーや警告もなくわからんちんです
ちなみに辞書のデータはCドライブのdata.txtに入っていて
英語 品詞 日本語の順で
z z z
a a a
y y y
b b b
x x x
という感じになっています
どうやったらうまくソートできるでしょうか
誰かやんわりと教えてくださいお願いします

#include<stdio.h>
#include<process.h>
#include <string.h>
440デフォルトの名無しさん:04/10/18 21:52:44
struct dictionary
{
char english[15],pos[10],japanese[15];
};

void main()
{
int i=0;
struct dictionary item[100],work;
FILE *fp;
if((fp=fopen("c:\\data.txt","r+"))==NULL)
{
printf("辞書のファイルが見つかりません。");
exit(1);
};

while(fscanf(fp,"%s %s %s\n",&item[i].english,&item[i].pos,&item[i].japanese)!=EOF)
{
i++;
};
int strcmp(const char *string1,const char *string2);
for(i=0;i<99;i++){
if(strcmp(item[i].english,item[i+1].english)>0){
work=item[i];
item[i]=item[i+1];
item[i+1]=work;
}
}
fprintf(fp,"%s %s %s\n",item[i].english,item[i].pos,item[i].japanese);
fclose(fp);
printf("ソート完了");
}
441デフォルトの名無しさん:04/10/18 21:56:26
442デフォルトの名無しさん:04/10/18 21:58:54
>>441
ありがとうございます
小一時間ほど考えてみます
443デフォルトの名無しさん:04/10/18 22:19:35
全然わからない・・・
444デフォルトの名無しさん:04/10/18 22:34:07
>>443
20分程度で音を上げるなよ。
445デフォルトの名無しさん:04/10/18 22:39:09
>>435さんお答えいただきありがとうございました。
435さんの言われたとおりにプログラムを変えてみたんですが、
文字検索を成功した時にも該当する文字列は存在しませんと出ました。
どうすればいいのでしょうか?教えてください。
446デフォルトの名無しさん:04/10/18 22:51:41
>>436
テンプレ使ってるからじゃないかな?
447デフォルトの名無しさん:04/10/18 23:04:25
ガウスの消去法ヒントな。
for(k=0;k<n-1;k++)
for(i=k+1;i<n;i++){

w[i][k]=w[i][k]/w[k][k];
m=w[i][k];
for(j=k+1;j<=n;j++)
w[i][j]=w[i][j]-m*w[k][j];
}
x[n-1]=w[n-1][n]/w[n-1][n-1];
for(k=n-2;k>=0;k--){
for(sum=0,j=k+1;j<n;j++)
sum+=w[k][j]*x[j];
x[k]=(w[k][n]-sum)/w[k][k];
}

まぁガンバレや。
448デフォルトの名無しさん:04/10/18 23:07:59
>>447
って、何への回答なんだ?
449デフォルトの名無しさん:04/10/18 23:26:33
http://www.geocities.jp/i035192/forksample.c
上のプログラムの実行結果をもとに
fork関数の使い方と親プロセスと子プロセスの処理について説明せよ

ネットワークアプリケーションとして複数のクライアントからの要求を受け付けるサーバプログラムの例をあげ説明せよ

すみませんが、この2つについて教えてください
450デフォルトの名無しさん:04/10/19 02:55:24
ageageageage
451449:04/10/19 03:04:00
すみません、マルチしてしまいました。
452デフォルトの名無しさん:04/10/19 05:20:28
453デフォルトの名無しさん:04/10/19 06:37:35
>>146
>上書き、select=1を選択した場合、出力されたファイルが真っ白になります。

if(select == 1) の break で抜けるのは while(1){ だろ?

当たり前だ。
454デフォルトの名無しさん:04/10/19 07:45:25
>>445
見つかったかどうかを示すフラグを用意しろ。
455デフォルトの名無しさん:04/10/19 08:00:33
>>453
何が問題なの?
同名のファイルがない場合でもbreakでwhile(1)を抜ける、
つまりselectに1を入れるのも上記の場合も全く同じ条件でしょ?
fclose(fo)に問題が?と思ってselectのelseの方に移動させたけどやっぱり真っ白。
456デフォルトの名無しさん:04/10/19 09:06:44
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=124
オペレータオーバーロードがうまくいきません。
どこがまずくて、それはどう直せばよいのでしょうか。
457デフォルトの名無しさん:04/10/19 09:17:46
>>456
なにがどう、うまくいかないんです?

エラーが何なのかわからないけど、とりあえず
>    complex(complex &c);
>    complex &operator=(complex c);
>    complex operator+(complex c);
このへんは引数をconstの参照にしとけ

complex(const complex &c);
complex &operator=(const complex &c);
complex operator+(const complex &c);
458デフォルトの名無しさん:04/10/19 09:17:46
>>456
ふつう Foo & operator=(const Foo & foo); とか?
459デフォルトの名無しさん:04/10/19 09:19:36
>>455
>166
いい加減にしいや。
460デフォルトの名無しさん:04/10/19 09:41:16
>>457-458
レスありがとうございます。
エラーはこんな感じででました。
complex.cpp: function 内の `int main()':
complex.cpp:31: error: no matching function for call to `complex::complex(
complex)'
complex.cpp:11: error: candidates are: complex::complex(complex&)
complex.cpp:31: error: initializing argument 1 of `complex&
complex::operator=(complex)'
言われたとおり引数をいじくるとエラーを出さなくなりました。
operator=()とかを参照にしなかったのはc=c1+c2*c3みなたいなことを
するときにまずいかなと思ってしたのですが。
思っただけで試してないので、今から試してみます。
constをつけた時の参照は、そうでない時の参照と動作が異なる。
例のソースだと加算結果の一時オブジェクトを参照で渡せなくてエラーになってるのかな。
# 代入演算子の引数が実体なんで、それを作る為にコピーコンストラクタが呼ばれてる
const付けとけば一時オブジェクトでもOK。
このへんはややこしい所だけど覚えとかないと後々エライ目にあう。
462デフォルトの名無しさん:04/10/19 09:57:42
complex &complex::operator=(const &c)
complex complex::operator+(const &c)
complex complex::operator*(const &c)
にしてやるとc=c1+c2*c3もコンパイルが通りました。
operator+()やoperator*()は一時的なオブジェクトを返すので、
それをoperator=()の引数に参照として渡すのはまずいと思った
のですが、コンパイルが通ったと言うことはまずくはないのですか?
463デフォルトの名無しさん:04/10/19 10:07:56
461にもあるがエラーになったのはoperator=()じゃなくcomplex(complex &c)の方。
正確には一時オブジェクトを引数にしてcomplex(complex &c)を呼べなかったわけだが。
const付きの参照が基本、実体だと代入の度にコピーコンストラクタがセットで呼ばれる事に。
464デフォルトの名無しさん:04/10/19 10:08:57
>>461
すごくややこしいですね。。
じつは行列のクラスを自作しててオペレータオーバーロードしたところが
妙な動作をする事があって収拾がつかなくなりまして。
それでまずは簡単なclassを作ってオペレータオーバーロードを
理解しようと思ったのですがconstやら&を引数に付けたときの動作が
いまひとつわかんないですね。。
465デフォルトの名無しさん:04/10/19 10:13:59
>>464
とりあえずプログラミング言語C++第3版のvalarrayの解説でも読んだほうがいいと思うが。
いいとっかかりになる。
466デフォルトの名無しさん:04/10/19 10:25:13
constだからok
467デフォルトの名無しさん:04/10/19 10:26:35
>>463
なるほど。complex(const &c)とするとほかのオペレータは値渡しでもいけました。
なんつーか、C++ってびみょーすぎ。。まぁC++始めて間もないからってのもあるでしょうけど。。
>>464
今ちょうど図書館から借りてきてるので読んでみます。
468デフォルトの名無しさん:04/10/19 11:08:24
>>453
何が問題なの?
同名のファイルがない場合でもbreakでwhile(1)を抜ける、
つまりselectに1を入れるのも上記の場合も全く同じ条件でしょ?
fclose(fo)に問題が?と思ってselectのelseの方に移動させたけどやっぱり真っ白。
469デフォルトの名無しさん:04/10/19 16:19:20
>438
遅くなったけど、ありがとう。
470デフォルトの名無しさん:04/10/19 16:45:16
1/2

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

#define size 3

int func(int a[][size], int b[][size]) {
int i, j, k, s, c[size][size];
for(i = 0; i < size; i++) {
for(j = 0; j < size; j++) {
s = 0;
for(k = 0; k < size; k++) {
s+= a[i][k] * b[k][j];
}
c[i][j] = s;
}
}
for(i = 0; i < size; i++){
for(j = 0; j < size; j++) {
printf(" %d ", c[i][j]);
}
printf("\n");
}
printf("\n");
return c;
}
471デフォルトの名無しさん:04/10/19 16:46:45
2/2
int main(int argc, char*argv[]) {
int i, j, k;
int a[size][size], b[size][size], c[size][size];
srand(clock());
for(i = 0; i < size; i++){
for(k = 0; k < size; k++) {
a[i][k] = rand()%10;
b[i][k] = rand()%10;}
}
for(i = 0; i < size; i++){
for(j = 0; j < size; j++) {
printf(" %d ", a[i][j]);
}
printf("\n");
}
printf("\n");
for(i = 0; i < size; i++){
for(j = 0; j < size; j++) {
printf(" %d ", b[i][j]);
}
printf("\n");
}
printf("\n");
c = func(a, b);
for(i = 0; i < size; i++){
for(j = 0; j < size; j++) printf(" %d ", c[i][j]);
printf("\n");
}
}
二次元配列に適当な値を入れて積を計算するプログラムなんですけど、コンパイルすると関数の
returnの所と、mainのcに関数の戻り値を入れる所でエラーが出ます。なぜでしょうか
472デフォルトの名無しさん:04/10/19 16:48:34
すみません、括弧の区切り方とか変になってしまいました
473デフォルトの名無しさん:04/10/19 16:58:56
・エラーは、その行とエラーの詳細を書きましょう。
エラーメッセージが出た場合はそのままコピーしてください。
474471-472:04/10/19 17:05:05
申し訳ないです
clock.c 28: Warning: illegal pointer combination(return)
clock.c 58: l-value required (=)

28行目は return c; で、58行目は c = func(a, b); の所です。
475デフォルトの名無しさん:04/10/19 17:11:01
>>474
funcにa,b,cを渡して処理するように作りかえれ。
476デフォルトの名無しさん:04/10/19 17:13:40
何故かというなら、どっちもcがintの二次元配列だから。
28行目の警告は、int型を返すべきfunc()で配列(ポインタとみなされる)を返そうとしているから。
58行目は、配列にintを代入しようとしている、型が違うしそもそも配列への代入はできない。
 l-value required : left-value、 左辺値、代入式で左側に置ける式が必要、というエラー。
477471-472:04/10/19 20:11:56
ありがとうございます。
度々すみませんが、>>471-472のプログラムでfuncの中のcを
戻り値として返すにはどうすればいいのでしょうか。
478デフォルトの名無しさん:04/10/19 20:13:30
>>477
475
479デフォルトの名無しさん:04/10/19 21:23:25
#include <stdio.h>
int main(void)
{int i;
int na=0,nb=0,nc=0;
char letter[100];
while(gets(letter)!=NULL)
for(i=0;i<strlen(letter);i++)
switch(letter[i])
{ case 'a':na++;break;
case 'b':nb++;break;
case 'c':nc++;break;
}
printf("a:%3d,b:%3d,c:%3d\n",na,nb,nc);
}

上記はデータを読み込んでa,b,cの文字の出現回数を調べるプログラムです。
例えば、aaaaaaabbbbbbbbbccというデータを読み込んだとすると、
出力例は a:7 b:9 c:2となります。
このプログラムを、aからzまでの文字を数えるプログラムに書き換えたいのですが、
このままだと case 'a':na++;break; が z まで繰り返されて見栄えが悪くなります。
どうにかして短くしたいのですが、どんな風にすればいいでしょうか?
480デフォルトの名無しさん:04/10/19 21:30:42
int array[26];
array[letter[i]-'a']++;

arrayは各文字のカウンタになっていて、出現した文字のカウンタを数え上げる.
481デフォルトの名無しさん:04/10/19 21:34:50
>>478
配列を戻り値とする場合、関数のデータ型は何にすればいいんですか?
482デフォルトの名無しさん:04/10/19 21:40:02
>>481
だからaとbとcのポインタ渡してそこで処理しろよ!
戻り値なんていらねえだろ!
483デフォルトの名無しさん:04/10/19 21:47:40
>>480
入力が標準入力で何入力するか分からんから、
if(letter[i] >= 'a' && letter[i] <= 'z') array[letter[i]-'a']++;
の方がいいんじゃない?
484デフォルトの名無しさん:04/10/19 21:58:47
>>483
islowerを使えよ
485デフォルトの名無しさん:04/10/19 22:22:18
>>480
ついでに
int array[26]={0}; もね
486デフォルトの名無しさん:04/10/19 22:25:39
#include<stdio.h>
#include<conio.h>

void main(void) {

charkey;


for(;;){

key = inp(0x60);
printf("%x\n",key);
if(key == 0x01){ /*ESCで終わります */

break;

}
}
}

外部シンボル'_inp'が未解決、と出ます。
お願いします。教えてください。(´Д`)
487デフォルトの名無しさん:04/10/19 22:28:41
>>486
もう逝っていいですよ
488デフォルトの名無しさん:04/10/19 22:29:51
>>486
inp(0x60)?
inp()を消したらどうなる?
int?
489デフォルトの名無しさん:04/10/19 22:32:08
>>486
その本と同じOS/言語/PC環境使ってるか?
490デフォルトの名無しさん:04/10/19 22:35:16
>>488
知らないなら答えなきゃいいのに
>>486
inp()を_inp()にしてみろ。
非標準の関数だから、_で始まる名前になってる可能性。
つか、使ってる環境くらい書けー
492486:04/10/19 22:39:47
インストールしないといけないとしてなかったみたいです(´Д`)
すいませんでした。
493486:04/10/19 22:40:33
>インストールしないといけないとしてなかったみたいです
                    の

訂正です。(´Д`)
494デフォルトの名無しさん:04/10/19 22:40:36
>>491
想像で書くなよ
馬鹿じゃねえの?
495デフォルトの名無しさん:04/10/19 22:41:41
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1098192835

このプログラムの
for (i = 0; i < l; i++) {
for (j = 0; j < n; j++) {
tmp = 0.0;
for (k = 0; k < m; k++) {
tmp += a[i*m+k]*b[k*n+j];
}
c[i*n+j] = tmp;
}
}
この部分を行列の加算ができるように書き換えたいのですがうまくいきません。
どのようにすればいいのでしょうか?
よろしくお願いします。
496デフォルトの名無しさん:04/10/19 22:42:42
>>192
使ってるのがMSのコンパイラなら、_inpだけど?
なに怒ってるの?
497デフォルトの名無しさん:04/10/19 22:43:07
あ、なんで192だ
>>494
498デフォルトの名無しさん:04/10/19 22:45:36
>>496
想像で書くなよ
馬鹿じゃねえの?
499デフォルトの名無しさん:04/10/19 23:52:29
>>496
使ってるのがMSのコンパイラなら、inpでも_inpでも動くけど?
なに言ってるの?
500デフォルトの名無しさん:04/10/20 00:30:09
>>482
どうしても配列を戻り値として返したい場合はどうすればいいんでしょうか
501デフォルトの名無しさん:04/10/20 00:30:57
>>500
氏ね
502デフォルトの名無しさん:04/10/20 00:43:05
>>500
mallocで配列を確保してそのポインタを返す
呼び出し元でfree忘れるとリークするけど
503デフォルトの名無しさん:04/10/20 00:44:56
>>502
相手のレベル見て教えような
504デフォルトの名無しさん:04/10/20 01:15:51
struct HOGE {
int hage[size][size];
};

HOGE func(〜) {
HOGE c;

return c;
}

int main(int argc, char*argv[]) {
HOGE c;

c = func(〜);
}
505デフォルトの名無しさん:04/10/20 01:42:16
>502より>504の方が奥が深いと感じるのは俺だけですか?
506デフォルトの名無しさん:04/10/20 01:46:07
すぐスタックが終わりそうだけどな
507デフォルトの名無しさん:04/10/20 01:48:37
スタックが終わる?なんで?
別に再帰使うわけじゃないだろ。
508デフォルトの名無しさん:04/10/20 01:52:05
>>507
意味がわからなければそれでいいよ。
509デフォルトの名無しさん:04/10/20 01:56:19
現状、すでに配列で確保してるソースを置き換えるんだろ?
510デフォルトの名無しさん:04/10/20 01:56:24
>>504
(・∀・)ソレダ!!
ありがとうございました
511デフォルトの名無しさん:04/10/20 02:09:26
>>480
>>483-485
ありがとうございます。
やってみます。
512359:04/10/20 02:23:24
亀レスですが答えて下さった方有難うございます。
似たような問題なのですが
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=125
これについてもどなたか力をお貸し下さい。お願いします
513デフォルトの名無しさん:04/10/20 02:26:18
>>512
ちっとは考えたの?
一人ずつの全科目の得点の合計が計算できて
一科目ずつの全員の得点の平均が計算できないわけがないと思うが。
514デフォルトの名無しさん:04/10/20 02:27:52
自分で考える人がここで聞くわけ無い
515デフォルトの名無しさん:04/10/20 03:27:18
平均って合計を人数で割るだけじゃん・・・
516デフォルトの名無しさん:04/10/20 06:41:54
517デフォルトの名無しさん:04/10/20 07:32:49
#include <stdio.h>
#include <string.h>

int main(void)
{
FILE *fp;
char buf[256],sstr[256];

fp = fopen("検索するファイル名","r");
if (fp == NULL) {
printf("ファイルが見つかりません\n");
return 1;
}

for (;;) {
printf("文字検索?");
if (fgets(buf, sizeof buf, stdin) == NULL ||
sscanf(buf, "%s", sstr) != 1) break;

while (fgets(buf, sizeof buf, fp) != NULL)
if (strstr(buf, sstr) != NULL)
fputs(buf, stdout);
printf("\n");
rewind(fp);
}

fclose(fp);
return 0;
}

このプログラムの検索文字列を入力した時に、検索ファイルに検索文字列が見つからなかった場合に、該当する文字列は存在しませんと出力するにはど
うしたら良いのでしょうか??(該当する文字列は存在しませんと出力後、また検索文字列を入力に戻る)どうぞ教えてください。
518時の旅人 ◆ahGjnhNBTw :04/10/20 07:35:10
>>500
たとえばA関数からB関数を呼び出して、A関数に配列を返したい時、
A関数で配列を作っておき、B関数からその配列を操作する、という形になります。
テスト用に.cファイルを作って、以下のようにやってみてください

#include <stdio.h>
#include <stdlib.h> //for calloc

void test(int *hairetu);

void main()
{
int *hairetu = calloc (sizeof(int),5);
test(hairetu);
//output result
printf("[0]=%d,[1]=%d,[2]=%d,[3]=%d,[4]=%d\n",
hairetu[0],hairetu[1],hairetu[2],hairetu[3],hairetu[4]);
}

void test(int *hairetu)
{
int i;
for (i=0;i<5;i++)
{
hairetu[i]=i*i;
}
}
519時の旅人 ◆ahGjnhNBTw :04/10/20 07:40:46
この場合、
>int *hairetu = calloc (sizeof(int),5);
で、hairetuと言うint型の(5つの箱を持つ)配列を確保しています。。
気持ち的にはint hairetu[5]; に近いです。。

もしchar型にしたいなら
char *hairetu = calloc (sizeof(char),5);
とすればいいです。ただし、test関数の宣言を
void test(char *hairetu);
とすることに気をつけてください。
長レス失礼しました。。
520時の旅人 ◆ahGjnhNBTw :04/10/20 07:52:48
>>517
while~fputsの3行を、
while (fgets(buf, sizeof buf, fp) != NULL)
if (strstr(buf, sstr) != NULL)
fputs(buf, stdout);
else
printf("該当する文字列は存在しません");

とするといいのではないですか?
521デフォルトの名無しさん:04/10/20 08:10:49
>>518-519
callocする意味がまったくわかんね。
testの中で要素数きめ打ちしちゃってるし。
522デフォルトの名無しさん:04/10/20 08:18:18
なんか最近質問者が粘着するケースが多いな。
少しは自助努力してみようとは思わんもんかね。
523デフォルトの名無しさん:04/10/20 08:51:27
>522
なんかもーね、趣味でプログラムやるんじゃなくて
授業でやらされてる感が漂ってくる。
524デフォルトの名無しさん:04/10/20 09:04:25
すれたいが宿題を片づけますだからな。
525デフォルトの名無しさん:04/10/20 09:15:11
質問者でも回答者でもない奴がバカやってんだろ
526デフォルトの名無しさん:04/10/20 10:23:05
http://web2.incl.ne.jp/yaoki/kazuire3.htm
ここの問1をプログラムで解きたいです。言語はCで、ハードはポケコンPC-G850V、50分以内での実行完了です。
今のところここまでで;;H、I、Jは計算で出して、最後にAを入れるように考えていたのですが・・・。
527526:04/10/20 10:24:40
char s[]="abcdefghij";
int t[10],n=6;
void check(void)
{
一致判定
}
void loop(void)
{
char *p;
--n;
p=s;
while(*p){
if(islower(*p)){
t[n]=*p-'a'+1;
*p=toupper(*p);
}
if(n){
loop();
}else{
check();
}
*p=tolower(*p);
}
p++;
}
n++;
}
528526:04/10/20 10:25:55
main()
{
loop();
printf(結果出力)
return 0;
}
529デフォルトの名無しさん:04/10/20 10:55:26
誰か>506の言っている意味を教えてくださいな!!
あまりにも大きいサイズの型値渡しで戻り値とするのは好ましくないとゆうことですか?
530デフォルトの名無しさん:04/10/20 10:56:30
みすった。
>サイズの型値渡しで戻り値
サイズの型を値渡しで戻り値
531デフォルトの名無しさん:04/10/20 11:09:16
自動変数、関数の引数や戻り値はスタックって領域に積まれる
532530:04/10/20 12:11:42
>>531
ん〜。なんていうか、当たり前のことだね。ボケてたわ。ごめん。
533デフォルトの名無しさん:04/10/20 12:36:11
このボケが!
534デフォルトの名無しさん:04/10/20 13:04:01
sinの逆関数ってasin()でいいんですよね?
rを求めたくて
r=asin(x*PI/180);
としたんですが計算機で求めた答えと違ってしまいます。
ちなみにx=0.107127で計算機だと6.14972、
プログラムの結果は0.00187になってしまいます。
535デフォルトの名無しさん:04/10/20 13:15:04
>>534
おいおい、asin()呼んでから角度変換するんだよ。
536534:04/10/20 13:25:05
>>535
なるほど〜、早速直してみたらうまくいきました。
ありがとうございました。
537デフォルトの名無しさん:04/10/20 13:49:01
☆保守性の良いプログラミング☆

条件テーブル名:「table.txt」とする
データは空白で区切られている
====================
(実行画面)
>プログラム名↓
点数?75↓
評価:良
点数?35↓
評価:不
点数?^Z

===================
(内容)
下限〜上限 評価
 0 59  不
60 69  可
70 79  良
80 100 優
===================

#inculde<stdio.h>
#inculde<process.h>

void main(void)
{
FILE *fp;
/* 以下をコーティングしてください */
538デフォルトの名無しさん:04/10/20 14:34:53
なんでprocess.hが要るのかと。
539デフォルトの名無しさん:04/10/20 14:39:15
    /\___/ヽ
   /''''''   '''''':::::::\
  . |(●),   、(●)、.:| +
  |   ,,ノ(、_, )ヽ、,, .::::|.
.   |   `-=ニ=- ' .:::::::| >>537 氏ね
   \  `ニニ´  .:::::/  +
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
540デフォルトの名無しさん:04/10/20 14:49:06
全角数字使わないと駄目なのか
めんどくさいからやめた
541デフォルトの名無しさん:04/10/20 14:57:57
このスレで教える側の人は日曜プログラマー?
542デフォルトの名無しさん:04/10/20 14:59:52
それはC/C++の宿題なのか?
543デフォルトの名無しさん:04/10/20 15:35:26
544デフォルトの名無しさん:04/10/20 15:42:03
>>543
いい加減にしろ
545デフォルトの名無しさん:04/10/20 16:59:56
>>543
納豆みたいwww
546デフォルトの名無しさん:04/10/20 17:10:27
>>541
僕はC習いたての趣味グラマーです
547デフォルトの名無しさん:04/10/20 18:22:55
>>500
mainの戻り値はintしかできない。(voidなんて言うなよ)
548デフォルトの名無しさん:04/10/20 18:24:11
>>547
お前、頭おかしいな
549547:04/10/20 18:29:08

       /|
       |/__
       ヽ| l l│<ハーイ
       ┷┷┷
550デフォルトの名無しさん:04/10/20 18:34:46

    _, ,_  パーン
  ( ゜д゜)  
   ⊂彡☆====== /|
       __       |/
      ヽ| l l│
      ┷┷┷
551デフォルトの名無しさん:04/10/20 18:51:32
>>547
正確にはそれは正しくないな。
552デフォルトの名無しさん:04/10/20 19:17:57
ちょっとエスーパーになってみる。
おそらく>547は>471のソースでmain関数がreturnを記入していないから
戻り値が無いぞと言いたいのでは。
でも、結局間違ったことを言ってるけど。
553ttt:04/10/20 20:20:26
悩んでるんですが、C++で任意の個数の配列に入った数字を並べ替えたものを
全パターン出力したいんです
例えば3つの1,2,3なら9パターンを出力したい。
4つの1,2,3,4なら16パターンを

この場合2元配列の方がいいんですか?
554デフォルトの名無しさん:04/10/20 20:27:51
>>553
悩む前に試せ。
555ttt:04/10/20 22:37:05
いや、今ひとつ書き方がわからず悩んでます。
どうやって任意の個数に対応させるもんでしょうか
556デフォルトの名無しさん:04/10/20 22:39:06
123
132
213
231
312
321
のこり3パターンは・・・
557デフォルトの名無しさん:04/10/20 22:41:29
>>553
next_permutation
558デフォルトの名無しさん:04/10/20 22:56:28
>>553
#include <iostream>
#include <algorithm>
template <typename T>
void print_array(const T& t){
  for(int i = 0; i < sizeof(t) / sizeof(t[0]); ++i) std::cout << t[i] << ' ';
  std::cout << std::endl;
}
int main(){
  int a[] = {1, 2, 3, 4};
  do{
    print_array(a);
  } while(std::next_permutation(a, a + sizeof(a) / sizeof(a[0])));
  return 0;
}
559デフォルトの名無しさん:04/10/20 23:41:34
for文を用いて

*
***
*****

とアスタリスクをピラミッド状に作るプログラムお願いします
できれば解説も含めて。特にFor文の制御部分
560デフォルトの名無しさん:04/10/20 23:45:40
>>559ではうまく表現できませんでしたけど

  *  
 *** 
*****
561デフォルトの名無しさん:04/10/20 23:45:42
>>559
ピラミッドは飽きた。
562デフォルトの名無しさん:04/10/20 23:46:07
>>561
。゚(゚´Д`゚)゜。ウァァァン
563デフォルトの名無しさん:04/10/20 23:47:17
散々概出だし
564デフォルトの名無しさん:04/10/20 23:50:20
じゃあヒント

□□□■
□□■■■
□■■■■■
■■■■■■■
565デフォルトの名無しさん:04/10/20 23:52:15
三重for文ですか・?
566デフォルトの名無しさん:04/10/20 23:53:43
暇だから作ってみよう
567デフォルトの名無しさん:04/10/20 23:56:14
>>559
#include <iostream>
#include <string>
#include <iomanip>
int main()
{
  static const int n = 3;
  for (int i = 1; i <= n; ++i)
    std::cout << std::setw(n + i - 1) << std::string(std::string::size_type(2 * i - 1), '*') << std::endl;
}
568123:04/10/20 23:59:02
標準入力からAij(i=1,2,j=1,2,3),Bjk(j=1,2,3,k=1,2)の値を読み込み下記の行列x,yの席を求めるプログラムを作成する。ただし、Aij,Bikは正整数とする
a11 a12 a13
x=a21 a22 a23

b11 b12
y=b21 b22
b31 b32


お願いします
569デフォルトの名無しさん:04/10/21 00:25:37
#include<stdio.h>
main() {
int n, i, j;
printf("enter the steps : ");
scanf("%d", &n);
for(i = 0; i < n; i++) {
for(j = 0; j < n-i; j++) {
printf(" ");
}
for(j = 0; j < i*2+1; j++) {
printf("*");
}
printf("\n");
}
}
570デフォルトの名無しさん:04/10/21 00:42:54
>>568
座席の予約はできません。
571デフォルトの名無しさん:04/10/21 00:51:28
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
[3] 環境
 [3.1] OS:winXP
 [3.2] コンパイラ(バージョン): Microsoft Visual Studio .NET 2003 のMicrosoft Visual C++
 [3.3] 言語:C
[4] 期限:今日中
[5] その他の制限:特に無し

C言語初心者です。課題で迷っています。
strcmp関数(文字列の比較する関数)と同じ働きをする関数αを作りたいですがどのように作れば良いのか分かりません。教えて下さい。
572デフォルトの名無しさん:04/10/21 00:53:18
>>571
お前!あっちこっちで聞いてんじゃねえよ!
573デフォルトの名無しさん:04/10/21 00:55:08
標準入力からAij(i=1,2,j=1,2,3),Bjk(j=1,2,3,k=1,2)の値を読み込み下記の行列x,yの席を求めるプログラムを作成する。ただし、Aij,Bikは正整数とする
  a11 a12 a13
x=a21 a22 a23

  b11 b12
y=b21 b22
  b31 b32


お願いします

間違えて名前に番号入れちゃったのでもう一度
574デフォルトの名無しさん:04/10/21 00:56:48
テンプレ使った質問はじめて見たな・・・
575デフォルトの名無しさん:04/10/21 00:58:53
ここまで酷いマルチも久々だが。
576デフォルトの名無しさん:04/10/21 00:59:58
>>571
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/
を買ったら、答えが載ってるよ!!
577571:04/10/21 01:00:51
int 関数名(const char *p)
{
return strlen(c);
}
はひょっとしたら利用不可能だったかも知れません。(うる覚え)
578571:04/10/21 01:02:12
↑今回の課題での制限です。
579デフォルトの名無しさん:04/10/21 01:06:57
FreeBSDあたりからstrcmpのソースパクってくれば?
580デフォルトの名無しさん:04/10/21 01:09:36
>>571
int strcmp(const char *str1, const char *str2)
{
  const char *p1 = str1, *p2 = str2;
  unsigned char c1, c2;
  while ((c1 = (unsigned char)*p1++) == (c2 = (unsigned char)*p2++)) if (!c1) return(0);
  return c1 - c2;
}
581デフォルトの名無しさん:04/10/21 01:12:36
582デフォルトの名無しさん:04/10/21 01:13:04
int alpha(const char *a, const char *b)
{
if (*a == 0 && *b == 0) {
return 0;
}
if (*a == 0) {
return -1;
}
if (*b == 0) {
return 1;
}
if (*a > *b) {
return 1;
}
if (*a < *b) {
return -1;
}
return alpha(a + 1, b + 1);
}
583デフォルトの名無しさん:04/10/21 01:14:14
>>582
すぐにスタックを食いつぶしそうだなw
584デフォルトの名無しさん:04/10/21 01:21:45
>>583
そうでもないよ
585512:04/10/21 01:23:57
>>513
のように言われたので頑張ってみたんですけど
いくらやっても縦方向の集計が上手くいきません。。
二次元配列の方は簡単だったのに、、、
どなたか力をお貸し下さい!
586デフォルトの名無しさん:04/10/21 01:26:37
一日考えて出来ないなんて・・・致命的・・・
587512:04/10/21 01:27:54
>>586
そういわずになんとかお願いします
588デフォルトの名無しさん:04/10/21 01:36:41
俺答え直書きするの好きじゃない人だから答え教えてあげられないけど。
とりあえず。

例の横方向の合計のプログラムは完璧に理解してる?
seiseki[i].ten[j]
で i 人目の j 科目目の得点を取ってこれるよね?(変数名のつけ方が腐ってるけど)
i を固定して j を 0<=j<3 の範囲で動かせば、横方向の統計が取れるわけだ。
んじゃ j を固定して i を動かせば縦方向の統計が取れるよね?
589512:04/10/21 01:48:06
for(j=0;j<3;j++){

goukei=0;
for(i=0;i<5;i++){
seiseki[j].total += seiseki[j].ten[i];
}
printf("%8d\n",seiseki[j].total);
}
ってのはずっとやってるんだけど
上手くいかないです

590512:04/10/21 01:49:16
goukei=0;じゃなくてtotal=0;でした
591デフォルトの名無しさん:04/10/21 01:55:05
それじゃ j 人目の i 科目目の得点を取ってきてるだろ。
変動させる変数を逆にしたって、添え字も逆にしたら元に戻っちまう。
相変わらず横方向の統計を取ってきてる。
# しかもインデックスはみ出て強制終了の危険すらある。

一行ずつ、何をやってるのか考えながら自分のコード読んでミソ?
出来ればそのときの変数の値とかもノートにメモりながら。
ループとかも、わかった気にならないで一文字も見逃さないつもりでしっかり解読してみ。
592571:04/10/21 02:35:41
このプログラム目的?は文字列の比較です。
このソースの合わしたいですが苦戦しています。
#include <stdio.h>
#include <string.h>
int strlen(char*);
void main(void)
{
/*文字列の構造体*/
char str1[81]; //str1の領域確保
char str2[81]; //str2の領域確保

int c;

printf("文字列を入力して下さい。\n");
scanf("%s",str1); //str1に文字列入力
printf("入力した文字(文字列)は『%s』です。\n",str1);
printf("文字列を入力して下さい。\n");
scanf("%s",str2); //str2に文字列入力
printf("入力した文字(文字列)は『%s』です。\n",str2);


if(strlen( str1, str2 )){
printf("入力された文字(文字列)は一致しませんでした。\n");}
else{
printf("入力された文字(文字列)は一致しました。\n");}

/*strlen関数の定義*/
593デフォルトの名無しさん:04/10/21 02:43:40
いいかげんstrlenという名前やめりゃいいのに
594デフォルトの名無しさん:04/10/21 03:12:42
>>592
>>580の関数名を変えるか>>581をそのまま写すか。
595デフォルトの名無しさん:04/10/21 03:13:45
>>592
int strlen(char*);なのか、int strlen(char*, char*);なのか、どっちだ?
そのソースの中に両方混じってるじゃないか。
596デフォルトの名無しさん:04/10/21 03:47:36
>>595
わかってるくせに(はーと)
597デフォルトの名無しさん:04/10/21 04:28:06
いつからstrcmpからstrlenにかわったんだ?
598デフォルトの名無しさん:04/10/21 05:58:58
599デフォルトの名無しさん:04/10/21 12:15:13
>>598
納豆またキタ━━━━ヽ('∀`)ノ━━━━!!!!
600デフォルトの名無しさん:04/10/21 13:30:48
あきらかに悪戯だろ
601デフォルトの名無しさん:04/10/21 15:23:45
#define alpha strcmp
602 ◆eOVcjsnTHM :04/10/21 15:50:16
あのー(´・ω・`)ショボーン。お願いがあるのですが、次の再帰プログラムを実行して答えがでるかどうか
試していただけないでしょうか?
なんか俺のPCスペックじゃ無理みたいなので。Q/Z(絶望バージョン)
ちなみに修正してもかまいません(再帰関数をつかうなら)。お願いします。

魔方陣NxNプログラム
※define N の値で決めてます。N=3ならば答えがでるのですが。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=127
603 ◆eOVcjsnTHM :04/10/21 15:51:45
たんにスタックオーバーなのかも?しれないですけど。
604常識人:04/10/21 16:16:56
>>602
あのー(´・ω・`)ショボーン

なんですか、これは。
のっけから(´・ω・`)ショボーンなんてしてたら、みんな読む気もなくなってしまいますよ。
ここは(´・ω・`)ショボーンという顔文字が嫌いな人が多いのですから。
なぜならここは顔文字が目的ではなく宿題をとくのが目的だからです。
思わず噴飯してしまいそうな論理ですが、実際にこんなことを言うやからがいるのです。(>>369、ここではAAですが)
わかりますか、あなた?
あなたのパソコンスペックでは無理であるとおっしゃっていますが、では、スペックを教えていただきたい。
私は、本当にスペック不足なのは、パソコンじゃなくて、あなたの頭だと思っていますので。
605デフォルトの名無しさん:04/10/21 16:20:11
>>602
・斜めの計の求め方に間違いあり。
・計を求めたら、fに積まずにその場で分岐せよ。
#つまり、fは要らない。
・論理値はbool型を使うべし。
606デフォルトの名無しさん:04/10/21 16:24:17
常識人さん。
私はあなたの態度が気に入りませんね。
確かに、あなたの言うことも一理ありますが、
だからといって、あなたがここで自演して(・∀・)イイ!!
道理はないでしょう。
常識人さん。
私にはあなたが、優れた才能を持っていて、これまで
数々の、無能なプログラマの宿題を手伝ってきたという
のは、あなたのレスからもよくわかります。
しかし、あなたのようなケンカごしのレスでは、誰も
幸せになれません。あなただって、そんなレスするのは
気分が悪かったはずです。もう止めましょうそういうのは。

皆さん。スレタイに関係ない内容のレスをだらだらしてしまってすみません。
立て読みとか、ネタとかじゃなくて、これは私の本心なんです。
常識人さんには一度きちんと、話しておかなければならないと思ったので。
607デフォルトの名無しさん:04/10/21 16:25:41
AA飽きたらコピペネタか
608 ◆eOVcjsnTHM :04/10/21 17:37:33
>>604
ごめん。顔文字が好きだから使っちゃいました。
スペックは
AMD800MHzでメモリが512KBです。
>>605
ななめの求め方に難ありとはどういうことですか。
ちょっといらないとこ削ってみましたのでもっと詳しくよろしくお願いします。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1060403548&res=128
609デフォルトの名無しさん:04/10/21 17:55:08
512KBって、、PC98ですか?
610デフォルトの名無しさん:04/10/21 17:55:26
>>608
斜めの計算、直ってるじゃん。
どっちみち、そのロジックだとちょっとやそっとじゃ終わらないと思うけどね。
処で、スタックオーバフローを懸念していたようだけど、有り得ないから大丈夫。
#何故有り得ないかは自分で考えてみよう。
611 ◆eOVcjsnTHM :04/10/21 18:09:33
>>609
ごめん512MBです。
>>610
>どっちみち、そのロジックだとちょっとやそっとじゃ終わらないと思うけどね
そうですか。でもハイスペックな最近のPCだと答えはすぐでるのでしょうか。

>処で、スタックオーバフローを懸念していたようだけど、有り得ないから大丈夫。
再帰が自身も入れて高々26回コールぐらいじゃ大丈夫ということですね。
612デフォルトの名無しさん:04/10/21 18:57:19
>>611
N=5でPen4 2.53GHz&DDR SDRAM 1GBでCPU時間を10分かけても無理。
613デフォルトの名無しさん:04/10/21 19:05:27
見ていて思うんだが、みな「strcmpは不等を-1または1で表す」と
勘違いしてないか?ISO/IEC 9899:1999で正(負)の数としか
規定されてないんだが。
614デフォルトの名無しさん:04/10/21 19:08:05
>>611
試しに判定ロジックを改良してみたけど焼け石に水。
メモリ使用量も大したことないけど、反復回数がN=3でも187769回だそうだから、
N=4だととんでもないことになるんでないかな?
#しかし、10万回オーダーの再帰突入が0.01秒か…時代は変わったなw
615デフォルトの名無しさん:04/10/21 19:10:39
見ていて思うんだが、既定されていないからと言って1や-1を返しちゃいけないと勘違いしてないか?
616 ◆eOVcjsnTHM :04/10/21 19:13:45
>>612
あわわ。まぢ。
試していただきありがとう。
でもちょっと気になったので計算してたらとんでもない数になった。
9^9では387420489回転を必要で
25^25では88817841970012523233890533447265625回転にも上る
処理数ですか。この差はでかいですね。
さっさと計算してみれば速かったみたい。
617デフォルトの名無しさん:04/10/21 19:14:40
他スレの回答も含めて見ていたら、わざわざ引き算しておきながら
三項間演算子使って-1か1にしていた輩が多かったもんでね。
618 ◆eOVcjsnTHM :04/10/21 19:16:57
>>614
>#しかし、10万回オーダーの再帰突入が0.01秒か…時代は変わったなw
ほほぉー。そんなに速いのか。ふむふむ。
619デフォルトの名無しさん:04/10/21 19:17:21
それは、その当該スレで言わんと意味不明なんでは?
620デフォルトの名無しさん:04/10/21 19:19:42
>>613
これでどう?

int mystrcmp(const char *s1, const char *s2)
{
int c, d;

while (!(c = *s1++ - (d = *s2++)) && d)
;
return c;
}
621デフォルトの名無しさん:04/10/21 19:21:58
>>618
ってことで、もっとましなアルゴリズムを実装するようにw
#つーか、アルゴリズム辞典見れば答えが出てたような。
全部詰め込んでからチェックするから遅いんだろうな。
詰め込み方を工夫するか、詰め込みながらチェックするか……
622デフォルトの名無しさん:04/10/21 19:22:26
>>620
ダメ
623デフォルトの名無しさん:04/10/21 19:46:27
問題文は「2つの配列namae[20],gyaku[20]を定義し、配列namae[20]に"abcdefghijklmn"と、初期化しなさい。次の配列namae[20]に格納したデータを逆から配列gyaku[20]に格納するプログラムを、ポインタアドレスの設定を利用し、作成しなさい。」
で未熟な私が作ったのは↓↓↓↓。当然だめぽです。はい。
#include <stdio.h>
void main(void)
{
char namae[20]={"abcdefghijklmn"};
char gyaku[20];
char *pd;
int i;
for(i=15;i>=0;i--){
*pd=namae[i];
printf("ナハハ%c\n",namae[i]);
*(pd+i)=namae[i];
}
for(i=0;i<15;i++){

printf("%%\n");
printf("牛%c",*(pd+i));
}
for(i=0;i<20;i++){
gyaku[i]=*pd;
printf("%c",gyaku[i]);
}

}

どうかお願いします
624デフォルトの名無しさん:04/10/21 19:53:28
> ポインタアドレスの設定を利用し
って、どっかにそんな設定項目あったっけ?
625デフォルトの名無しさん:04/10/21 19:58:42
>>553
「順列組み合わせ アルゴリズム」とかでgoogle検索してみ。
ちなみに最速アルゴリズムは最少順序変更法。
626デフォルトの名無しさん:04/10/21 20:11:33
>>623
#include <stdio.h>

char *func(char *a, char *b)
{
    if (*a) {
        b = func(a + 1, b);
        *b++ = *a;
    }
    return b;
}

int main(void)
{
    char namae[20] = "abcdefghijklmn", gyaku[20];

    *func(namae, gyaku) = '\0';
    printf("%s\n", gyaku);
    return 0;
}
627デフォルトの名無しさん:04/10/21 20:31:02
626様、本当にありがとうございます。
本当に失礼と思いますが「 *func」や「if (*a)」を使わないで作っていただきたい。。
あと、「char namae[20]={"abcdefghijklmn"}; char gyaku[20];」は使わないといけないのですが。。。
お願いします
628デフォルトの名無しさん:04/10/21 20:32:52
本 当 に 失 礼 だ な
629デフォルトの名無しさん:04/10/21 20:33:16
基礎の基礎もわかってないやつにこんな宿題出すなんてどうかしてる・・・できるわけねぇじゃん。
630デフォルトの名無しさん:04/10/21 20:36:36
>>629
講義ずっとサボってて課題が出たの知って
課題点だけもらおうって腹積もりだろ
631デフォルトの名無しさん:04/10/21 20:41:44
将来プログラマなんて低賃金で酷使される奴隷以下のやつらにならなくて済むからいいじゃないか
632デフォルトの名無しさん:04/10/21 20:48:15
>>627
というか、解らないなら 理解しようとしてくれよ。
俺は、文字列系の制御経験ないから あんま得意じゃないから
作ってといわれてもパッとは出来ないけれど、理解位はすぐにできるぞ。
というか、本当に丸投げだな。
633デフォルトの名無しさん:04/10/21 20:51:00
>>630
何しにこのスレに着てるの?
ああ、プログラムオタクのお前が唯一神になれるスレだもんな
たっぷり優越感に浸って明日も徹夜でのデバック頑張ってね^^
634デフォルトの名無しさん:04/10/21 20:55:05
>>632
>>626 は、かなりひねくれたコードだと思うが、

>俺は、文字列系の制御経験ないから あんま得意じゃないから
>作ってといわれてもパッとは出来ないけれど、

なんていっている奴でも、直ぐに理解できるのか?
635デフォルトの名無しさん:04/10/21 20:55:43
>>623
条件が不明瞭だから、こっちとしてもとりあえず書いて出してみるしかない罠

#include <stdio.h>
#include <string.h>
int main(void)
{
char namae[20], gyaku[20];
/* 問題文によると定義した後に初期化しなければいけないらしいから */
char *src, *dst;

strcpy(namae, "abcdefghijklmn");
src = namae;
dst = gyaku + strlen(namae);

*dst-- = '\0';
while(*src)
*dst-- = *src++;

/* 結果確認 */
printf("namae: %s\n", namae);
printf("gyaku: %s\n", gyaku);

return 0;
}

string.hは使うなとか言われそうだが
636デフォルトの名無しさん:04/10/21 21:02:30
>>634
あのひねくれ方と文字列制御の経験はたぶん無関係じゃないかな。
C/C++グラマにはこういうコードに快感を覚える変態が多いから理解は簡単かと。
637デフォルトの名無しさん:04/10/21 21:02:32
>>634
できますが?ようするに、C言語を理解していれば
扱うデータが異なっていようともあまり関係はありません。
関数って何? ポインタって何?
という事を理解していれば、後はソート方法の理解だけでしょう?
理解力と作成する能力って「=」じゃないでしょ?
638デフォルトの名無しさん:04/10/21 21:04:24
俺は作れないけど理解はできる!

ガキかよ…
639デフォルトの名無しさん:04/10/21 21:08:45
637の脳内理解

/* char *a, char *b を受け取って char * を返す関数 func の定義開始 */
char *func(char *a, char *b)
{
/* *a が 0 でなかったら */
if (*a) {
/* func に a+1 と b を渡して、結果を b に代入する */
b = func(a + 1, b);
/* b をインクリメントして、
インクリメント前の b のポイント先に a のポイント先の値を代入する */
*b++ = *a;
}
/* b を返す */
return b;
}

断片的には理解しているがなぜこれで目的の作業が出来るのかは理解していない。
640デフォルトの名無しさん:04/10/21 21:17:18
>>639
これを理解するのに、mainの解説が抜けている時点で
完全に勉強不足じゃないの?

人の理解力測る前に、結局は自分の理解力の範囲でしか物語れてない時点で
よく、こういうの書けるな。
付き合ってられん。
641デフォルトの名無しさん:04/10/21 21:25:05
必死だなw
642デフォルトの名無しさん:04/10/21 21:26:49
年を入力するとその年の年間カレンダーを表示するプログラムをC言語で
記述せよという問題です。(ただしある1年に注目した時、その年がうるう年か
どうかを調べる。)だれかお願いします
プログラムを実行すると以下のように結果を表示する。(例2004年)
1月 2004
日 月 火 水 木 金 土
1 2 3
4 5 6 7 8 9 10


2月 2004



注:ある1日に注目した時その日が何曜日であるかを調べる関数
int youbi(int year, int month, int date)
引数 int year 年 int month 月 int date 日にち
返戻値 int dow year年のmonth月のdate日の曜日(a day of the week)
0:日、1:月、2:火、3:水、4:木、5:金、6:土、とする
643デフォルトの名無しさん:04/10/21 21:28:11
642ですがなんか表示がおかしいですね・・・すいません
644デフォルトの名無しさん:04/10/21 21:29:23
>>642
括弧書きの「ただし・・・」と注がよくわからん。
そういう関数はすでに提供されているということか?
645デフォルトの名無しさん:04/10/21 21:34:38
1752年9月はどう表示すればいいんだ?
646デフォルトの名無しさん:04/10/21 21:39:06
>>645
勉強になった
647デフォルトの名無しさん:04/10/21 21:59:17
>>645
( ・∀・)つ〃∩ ヘェーヘェーヘェーヘェーヘェー
648デフォルトの名無しさん:04/10/21 22:08:21
man cal くらいしないのか?
649デフォルトの名無しさん:04/10/21 22:10:55
C:\>man cal
'man' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
650デフォルトの名無しさん:04/10/21 22:11:46
>>644
すいません。書き方が下手で。
関数はすでに提供されているということです。
括弧書きのところは、うるう年の年は2月の表示を29日にするということです。
651デフォルトの名無しさん:04/10/21 22:20:54
>>649
OS名は?
652デフォルトの名無しさん:04/10/21 22:22:27
>>651
Microsoft Windows2000 ServicePack4
653デフォルトの名無しさん:04/10/21 23:28:46
だからテンプレを使えと。
654デフォルトの名無しさん:04/10/21 23:31:26
簡単すぎたり面白みの無い宿題は食いつき悪いよね
655デフォルトの名無しさん:04/10/21 23:32:18
面白い宿題ってあんのか?
656デフォルトの名無しさん:04/10/21 23:34:54
嬉しい祝代
657デフォルトの名無しさん:04/10/22 00:33:25
Cの宿題です。
1.rand()関数を用いて1〜100までの乱数列をディスプレイ上に表示させよ。ただし、乱数列の種(seed)はキーボード上から読み込むものとする。
2.配列に格納されている乱数列をポインタを利用して昇順にソートし、ソート結果をディスプレイ上に表示せよ。ここで、ソート手法は特に問わない。
3.上記1〜2でディスプレイ上に表示した結果と同様なものをファイルに出力せよ。
658デフォルトの名無しさん:04/10/22 00:34:37
>>642
某古き良きホームページに感謝と追悼の念を込めて。
#include <stdio.h>
int days_of_month(int year, int month){
  static const int days[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  if (month < 1 || month > 12) month = 1;
  if (month == 2) return days[1] + (year % 4 == 0 && year % 100 != 0 || year % 400 == 0);
  else return days[month-1];
}
void calendar(int year){
  int i, k, month, days;
  for (month = 1; month <= 12; month++){
    printf("\n  %d年%d月\n", year, month);
    printf("日 月 火 水 木 金 土\n");
    k = youbi(year, month, 1);
    days = days_of_month(year, month);
    for (i = 0; i < k; i++) printf(" ");
    for (i = 1; i <= days; i++){
      printf("%2d ", i);
      if (++k % 7 == 0) printf("\n");
    }
    printf("\n");
  }
}
int main(){
  int year;
  printf("何年?:");
  scanf("%d", &year);
  calendar(year);
}
659デフォルトの名無しさん:04/10/22 00:38:29
>>657
int main() {
int i,n,seed;
scanf("%d",&seed);
srand(seed);
for(i = 0; i < n; i++)
printf("%d\n",(int)(100.0*rand()/(RAND_MAX+1.0)));
}

%
%sort -n
>>657
660デフォルトの名無しさん:04/10/22 01:45:33
グローバル変数宣言だけのファイルを作るにはどうすればいいのですか?
661デフォルトの名無しさん:04/10/22 01:47:58
>>660
ファイルを新しく作ってグローバル変数宣言だけ書く
662660:04/10/22 01:53:29
どもです。
Cの初心者なんで分からなかった。
分割コンパイルとかが詳しく書いてあるオススメ本ってありませんかね?
663デフォルトの名無しさん:04/10/22 01:57:25
>>662
ISBN: 4900900605 とかか?
664デフォルトの名無しさん:04/10/22 02:12:36
次のプログラムを得点と名前を入力すると、名前のアルファベット順にソートして出力するように改良したいのですが、どうしたら良いのでしょうか?教えてください。入力件数は最大10件とする。名前はローマ字表記とし、半角大文字で入力する。
名前入力の時に改行のみ入力するか、10件入力されたら、入力を打ち切る。
入力したデータは構造体の配列に記憶しておく。
構造体タグは
struct data {
char namae[21]; //名前
int tensu; //得点
};

#include <stdio.h>
#define size 10
void input(int*a)
{
int i;
for(i=0;i<size;i++){
printf("%d:",i+1);
scanf("%d",&a[i]);
}
}
void output(int*a)
{
int i;
printf("\n");
printf("\n");
printf("\n");
for(i=0;i<size;i++){
printf("%d ",a[i]);
}
printf("\n");
}

下に続きます。
665デフォルトの名無しさん:04/10/22 02:13:27
上の続きです。
void swap(int*a,int*b)
{
int w;
w = *a;
*a = *b;
*b = w;
}
void insert_sort(int*a)
{
int i,j,ichi;
for(i=1;i<size;i++){
ichi =a[i];
for(j=i-1;j>=0 && ichi>a[j];j--){
a[j+1] = a[j];
}
a[j+1] = ichi;
}
}
void main(void)
{
int a[size];
input(a);
insert_sort(a);
output(a);
}
666デフォルトの名無しさん:04/10/22 02:28:21
先ずはアップローダを使うことを覚えよう。
667デフォルトの名無しさん:04/10/22 03:08:39
>>662
コンパイルやリンク関係の記事でも読めば解かるだろうね。
/*hoge.h*/
/* #ifndef,#define,#endifのセットは何回もhoge.hを呼び出されないようにするための対処 */
#ifndef __HOGE_H_
#define __HOGE_H_
int hoge(int a);
#endif /* __HOGE_H_ */
/* hoge.c */
#include "hoge.h"
int hoge(int a) {
return a;
}
/* foo.h */
#ifndef __HOGE_H_
#define __HOGE_H_
int foo(int a);
#endif /* __HOGE_H_ */
/* foo.c */
#include "foo.h"
int foo(int a) {
return a;
}
668デフォルトの名無しさん:04/10/22 03:09:48
/* main.c */
#include "hoge.h"
#include "foo.h"
int main(void) {
int a, b;
a = hoge(1);
b = foo(2);
printf("%d, %d", a, b);
return 0;
}
こんなコードが有ったとすると、
gcc -c hoge.c
gcc -c foo.c
gcc -c main.c
でそれぞれのオブジェクトファイルを生成する。
オブジェクトファイルはgccの場合*.oの形式である。
gcc main.o foo.o hoge.o
でそれぞれのオブジェクトファイルをリンクする。
オブジェクトファイルやリンクの意味はWEBで調べるとよろしい。
669デフォルトの名無しさん:04/10/22 07:39:58
670デフォルトの名無しさん:04/10/22 13:15:36
2つの関数
double hoge(double a, double b){
 return a+b;
}
double sage(double c, dboule d, double e){
 return c+d-e;
}
をコマンドライン引数で任意にどちらか一方を呼び出すにはどうすれば
いいのですか?
671デフォルトの名無しさん:04/10/22 13:18:01
main()の引数argvを見て条件分岐
672 :04/10/22 14:47:03
(1)学籍番号、氏名、年齢の三つのメンバから構成される構造体(gakuseki)を定義しなさい。
メンバ名はそれぞれ学籍番号がno、氏名がname、年齢がageとし、noが大きさ7の文字配列、
nameが大きさ20の文字配列、ageが整数型としなさい。
(2)次に、定義した構造体の各メンバに対してキーボードから入力する次の仕様の関数を作成して
実行しなさい。
gakuseki input_data(void);
引数:なし
戻り値:gakuseki型データ
(3)次に入力したデータをディスプレイに表示する次の仕様の関数を追加して実行しなさい
void output_data(gakuseki);
引数:gakuseki型データ
戻り値:なし
(4)次にgakuseki型の配列を用いて複数人数分扱えるようにメイン関数を改変しなさい。
(5)次に入力したすべてのデータを年齢の昇順に出力する次の仕様の関数を追加して実行しなさい
void sort_data(gakuseki[],int);
第一引数:gakuseki型の配列
第二引数:配列の全要素数
戻り値:なし

(1)〜(5)をひとつのプログラムにまとめる。
誰かやってくれませんか?お願いします。
673デフォルトの名無しさん:04/10/22 15:15:15
    /\___/ヽ
   /''''''   '''''':::::::\
  . |(●),   、(●)、.:| +
  |   ,,ノ(、_, )ヽ、,, .::::|.
.   |   `-=ニ=- ' .:::::::|      よんだ?
   \  `ニニ´  .:::::/  +
,,.....イ.ヽヽ、ニ__ ーーノ゙-、
:   |  '; \_____ ノ.| ヽ i
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||.
674デフォルトの名無しさん:04/10/22 16:00:36
struct gakuseki{
char no[7];
char name[20];
int age;
} gakuseki;
675デフォルトの名無しさん:04/10/22 16:15:54
__declspec(dllimport) gakuseki input_data(void);
676デフォルトの名無しさん:04/10/22 16:16:14
gakuseki input_data(void);
void output_data(gakuseki);

「構造体渡し」に「構造体返し」か。

カッコイイな。
677デフォルトの名無しさん:04/10/22 16:33:39
>>676
何か文句あるんですか?
文句あるなら、率直にいったらどうです?
そんな遠まわしに人をバカにするようなやり方はフェアじゃないと
私は考えますね。
もう(・∀・)イイ!!かげん、そういうのに飽き飽きしてるんだ私は。
678676:04/10/22 16:38:46
>>677
>文句あるなら、率直にいったらどうです?

では言う。
「前途有望な学生の将来を潰すな」
679デフォルトの名無しさん:04/10/22 16:41:32
2chに聞いてる時点で有望も何もない
680デフォルトの名無しさん:04/10/22 16:47:03
681デフォルトの名無しさん:04/10/22 16:49:06
>>679
それは言いすぎだと思うが…
まぁこのスレに丸投げしてる香具師はそれに当てはまるだろうけどね
682680:04/10/22 17:00:52
683680:04/10/22 17:03:21
51,52行目のtmpをnかmに変えて。
684デフォルトの名無しさん:04/10/22 17:35:25
#include <stdio.h>
#include <stdlib.h>

#define STR_MAX 256

main(void){

int res = 0, num = 0, nokori = 0;
char ans[1000000];

while(1){
gets(ans);
if(ans == NULL){
goto >>144-146;
}else{
break;
}
}
685デフォルトの名無しさん:04/10/22 19:12:05
>>677
あなたは常識人さんですね?
あなたの仰ることは常に、正論だと思います。
だけど、あなたはどう考えても、このスレでは荒しであると認定せざるを得ません。
もし、あなたが本当に常識を持った人間であるなら
もう二度とこのスレに来ないで下さい。
私たちが、ある種の罪を抱えていることは解っています。
宿題の丸投げに喜んで解答を教える私たちは、確かに
あなたのような、常識を持った人からすれば、大変遺憾なことなのでしょう。
だけど、私たちはこのまま罪を背負って、スレを進めていきたいと思います。
いつか、きっと、その先に、私たちが欲しい真実(ほんとう)の答えが得られると信じて。
686デフォルトの名無しさん:04/10/22 19:18:45
我丸投げす、ゆえに我あり。
687デフォルトの名無しさん:04/10/22 19:20:23
継続は丸投げなり
688デフォルトの名無しさん:04/10/22 19:28:09
掲示板というものを 理解できていない人は ここに常識を持ち出すが
そもそも、一方的な投げあいなんだよ。
嘘も本当もない。正義も悪もない、カオスなんじゃあああ。
689デフォルトの名無しさん:04/10/22 19:37:22
馴れ合いは好きじゃないから
誤解されてもしょうがない
それでも、漏れは君(常識人)のこと
いつだって思い出すだろ。
690デフォルトの名無しさん:04/10/22 20:29:25
"常識"なんて、人の数ほどあるんだから。
月日が流れても「お互い変わらないね」って
笑いあえる仲になりたいね。
今正直に伝えたい。この気持ちを。
691デフォルトの名無しさん:04/10/22 20:33:20
ビクッ. ∧ ∧ ∧ ∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  Σ(゚Д゚;≡;゚д゚) < うおっ、なんかすげえ所に迷い込んじまったようだぞ、ゴルァ!
     ./ つ つ    \_________________________
  〜(_⌒ヽ ドキドキ
     )ノ `Jззз
692デフォルトの名無しさん:04/10/22 20:39:51
今の情報社会では、刻一刻と変わり続けるのが情報であって、
人は変わらない、人のアイデンティティは変わることはない、
と考える様になってしまったね。
本当は、情報こそ変わらないものなのに。
関が原の戦いで家康が勝ったということは変わらないことなのに。
693デフォルトの名無しさん:04/10/22 20:40:50
#include <stdio.h>
#include <stdlib.h>

#define STR_MAX 256

main(void){

int res = 0, num = 0, nokori = 0;
char ans[1000000];

while(1){
gets(ans);
if(ans == NULL){
goto >>144-146;
}else{
break;
}
}
694デフォルトの名無しさん:04/10/22 20:44:01
そろそろstdio.h使うの止めてくれ。
695デフォルトの名無しさん:04/10/22 20:49:42
なんでよ?
696デフォルトの名無しさん:04/10/22 21:02:55
「構造体渡し」と「構造体返し」は何で駄目なんですか?
697デフォルトの名無しさん:04/10/22 21:04:26
>>695
>>694はcstdioを使えといいたいC++信者なんだろう
698デフォルトの名無しさん:04/10/22 21:31:49
>>696
C/C++だと関数の引数と戻り値は値渡しだから構造体を直接渡す/返すとサイズが大きいからいちいちコピーする時間が掛かかる。
だからポインタとか参照とかにしろと言っている。
699デフォルトの名無しさん:04/10/22 21:39:19
>>696
まず、そんなことをやる奴は、プログラムの動作を
根本的に把握していないから駄目。

・・・と言うと、「こんなの Java なら普通の記述だよ」
なんて言い出す奴は、Java すら理解していないから
もっと駄目。
700デフォルトの名無しさん:04/10/22 22:07:40
>>696
どちらも動作を理解していれば何の問題もない。
Win32API などでも普通に POINT 構造体を渡す。
701デフォルトの名無しさん:04/10/22 22:10:04
問題ない と言い切るのはどうだろ…?
C/C++のメリットが無になってしまう
Basicにすれば?
702デフォルトの名無しさん:04/10/22 22:14:03
ま、その構造体があまり大きくなくて、speed-criticalな部分でもなければ、
そこまで神経質になることもないんじゃないか?
703デフォルトの名無しさん:04/10/22 22:15:41
const参照/ポインタ渡しにすると、その値の逆参照にコストがかかる。
POINTのような小さな構造体の場合値渡ししたほうが良い場合が多い。

構造体返しはコンパイラが最適化してくれるかもー。
704デフォルトの名無しさん:04/10/22 22:17:49
「最適化は解析の結果がそうしろと言った時だけしろ」
705デフォルトの名無しさん:04/10/22 22:32:56
706デフォルトの名無しさん:04/10/22 23:42:49
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html#1
↑に貼り付けたプログラムを教えてください。お願いします。
707デフォルトの名無しさん:04/10/22 23:58:22
また無理難題を…('A`)
708デフォルトの名無しさん:04/10/23 00:01:57
>>707
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1098456079&res=2&fi=no
一応書いたけど、ほとんど>>1からつくり直してるし、qsortとか使ってるし、inputがちょっと汚いし
まあ参考程度かな。
709デフォルトの名無しさん:04/10/23 00:02:42
>>706
名前の漢字に複数の読み方があるときはどの読み方を採用してアルファベットに変換すればよいのでしょうか?
710デフォルトの名無しさん:04/10/23 00:06:54
>>709
「名前はローマ字表記とし」とあるので心配ご無用。
711デフォルトの名無しさん:04/10/23 00:09:45
おおほんとだ、問題よんでねぇのばればれw
712デフォルトの名無しさん:04/10/23 02:48:48
test.cppとmoge.cpp の2つのソースファイルからhogehoge.exeを
作成するmakefileの記述方法を教えてください。
713デフォルトの名無しさん:04/10/23 02:56:21
環境は必ず書きましょう
714デフォルトの名無しさん:04/10/23 03:19:22
>712
まあ何事にも「とっかかり」は欲しいもんだからなあ。

CC = gcc
CFLAGS = -O2 -Wall
LDFLAGS =

all: test.o moge.o
  $(CC) $(CFLAGS) $(LDFLAGS) $^ -o hogehoge.exe

%.o: %.cpp
  $(CC) $(CFLAGS) -c $< -o $@

"$(CC)" の前の空白は必ず TAB ね。
記号の意味は自分で調べーな。
あと、正解はこれ一つじゃないし。
715デフォルトの名無しさん:04/10/23 03:59:07
Makefileって汚いよね〜いつも思うけれど。
716从*・ 。.・从 ◆SayuminPM. :04/10/23 07:45:09
スペースじゃなくてタブとかw
717デフォルトの名無しさん:04/10/23 08:27:51
普通、

# hogehoge依存部
PROGRAM = hogehoge.exe
SOURCES = test.cpp moge.cpp

#hogehoge非依存部
OBJECTS = $(SOURCES:%.cpp=%.o)

$(PROGRAM) : $(OBJECTS)
  $(CC) -o $(PROGRAM) $(OBJECTS) $(LDFLAGS) $(LDLIBS)

で充分だろ。
CC/CFLAGS/CPPFLAGS/LDFLAGSはお好みで。
#>714だと毎回リンクする罠。
718デフォルトの名無しさん:04/10/23 10:08:42
#include <stdio.h>
#include <stdlib.h>

#define STR_MAX 256

main(void){

int res = 0, num = 0, nokori = 0;
char ans[1000000];

while(1){
gets(ans);
if(ans == NULL){
goto >>144-146;
}else{
break;
}
}
719デフォルトの名無しさん:04/10/23 12:01:19
あんまり続くとつまらんね。
720デフォルトの名無しさん:04/10/23 13:57:44
>>144
--- 32-144.c2004-10-23 13:22:47.632338400 +0900
+++ 32-144.c2004-10-23 13:52:42.194838400 +0900
@@ -5,7 +5,8 @@
 
 int main(void)
 {
-    FILE *fi, *fo;
+    FILE *fi, *fo, *ft;
+    int len;
     char fin[80], fout[80];
     char buff[STR_MAX], *pd;
     int line = 0, select;
@@ -37,6 +38,17 @@
         printf("入力ファイルがオープンできません\n");
         exit(1);
     }
+    ft = tmpfile();
+    while (!feof(fi) && (len = fread(buff, 1, sizeof(buff), fi))) {
+        len = fwrite(buff, len, 1, ft);
+        if (len == 0 && ferror(fi) !=0 || ferror(ft) != 0) {
+            perror("Error");
+            return 1;
+        }
+    }
+    fclose(fi);
+    rewind(ft);
+    fi=ft;
     if ((fo = fopen(fout, "w")) == NULL) {
         printf("出力ファイルがオープンできません\n");
         exit(1);
721デフォルトの名無しさん:04/10/23 14:19:41
30分掛けてそれか。
722デフォルトの名無しさん:04/10/23 15:08:28
大学で課題が出たんですが
さっぱりもっさりです・・・

課題
a b c d 四つの整数を入力して
下記のような
行列の行列式を計算して
行列を画面に表示するプログラムを作りなさい
|a b|
|c d|
です!
誰か助けて!!!
723デフォルトの名無しさん:04/10/23 15:33:30
下のルールに従って、部外者1人とm(>0)人の人がじゃんけんをして、
勝ち残るn(<m)人が決定するまでのじゃんけんの回数とその確率などを知りたいのですが、
どうプログラムを組めばいいのかわからないので教えてください。

計算を実行するパターン確率の最低値PL(たとえばPL=0.001と入力すると
P(10,10)やP(10,9)など0.001以下の値は、1回目の確率の計算に使用した後は値が0になる)と
m,nを入力すると、出力として

じゃんけんの回数 確率    
1          0.1366   
2          0.2151   
…          …

順位 パターン       パターン確率(値の大きい順)
1   P(10,5)       0.1366
2   P(10,3)*P(7,2)  0.0799
…   …          …

と表示されるものをお願いします。

ルール
1回目のじゃんけんで、部外者に勝った人数がnより少ない(勝った人数をa(<n)とする)場合、
勝ったa人は勝ち残りが決定し、残りのm-a人で、n-a人が勝ち残るまで部外者とじゃんけんを続ける。
2回目以降も勝ち残る人数がn人に満たない場合、これと同じ規則を当てはまる。
つまり、m-a人のうち、勝った人(a'人とする)は決定し、勝てなかった残りの人(m-a-a'人)で残りのイス(n-a-a'人)を争う。
何回目かのじゃんけんで、部外者に勝った人数がnより多い(勝った人数をb(>n)とする)場合、
n人が勝ち残るまで、勝ったb人が部外者とじゃんけんを続ける。
724デフォルトの名無しさん:04/10/23 15:34:17
>>722
行列式の定義も知らないの?
2×2だからとても単純。
|A| = |a b| = ad-bc
|c d|
725723:04/10/23 15:34:51
例えば、部外者1人とm=10人の人がじゃんけんをして、勝ち残るn=5人を決めたいときに、
その5人が1回目で決定する確率は、PL=0.001、x人中y人が勝ち残る確率をP(x,y)とすると、
P(10,5)=(1/3)^5*(2/3)^5*10C5=0.1366となります。

5人が2回目のじゃんけんで決定するには、
1回目で10人が勝ち残り、2回目で5人が勝ち残る確率→ P(10,10)*P(10,5)=0 (P(10,10)は0になっているため)
…略 
1回目で6人が勝ち残り、2回目で5人が勝ち残る確率→
P(10,6)*P(6,5)=0.00094 (←PL以下なので3回目以降では0と見なす。)
1回目で4人が勝ち残り、2回目で残りの6人のうち1人が勝ち残る確率→ P(10,4)*P(6,1)=0.060
…略 
1回目で0人が勝ち残り、2回目で残りの10人のうち5人が勝ち残る確率→ P(10,0)*P(10,5)=0.0024
の10パターンだから、それらを合計して、2回目で決定する確率は0.2151となります。
726722:04/10/23 15:44:28
>724
いや、それはわかるんですけど
C言語初心者なもんで・・・
どんなプログラムかわかんないんすよ・・・
727723:04/10/23 16:02:39
>>725
P(10,6)*P(6,5)=0.00094 (←PL以下なので3回目以降では0と見なす。)
としたのは間違いでした。
P(10,6)*P(6,5)=0.00094は、そもそも2回目で終わるパターンなので、
3回目以降の計算に現れないです。
728デフォルトの名無しさん:04/10/23 16:08:25
>>726
行列式を求めて行列を表示するの意味がわからない。
729デフォルトの名無しさん:04/10/23 16:20:56
>>726 こんなかんじ?
#include <stdio.h>
#include <math.h>
#define max(x,y)((x)>(y)?(x):(y))

int main()
{
char buf[257], name[] = "abcd";
int a[4], i, c, w1, w2;

for (i = 0; i < 4; i++) {
do {
printf("%c? ", name[i]);
if (fgets(buf, sizeof(buf), stdin) == 0) {
printf("stdin: もうだめぽ.\n");
return 0;
}
c = sscanf(buf, "%d", a + i);
if (c < 1)
printf("入力が間違っています。再入力してください.\n");
} while (c < 1);
}

w1 = max(log10(a[0]) + 2, log10(a[2]) + 2);
w2 = max(log10(a[1]) + 2, log10(a[3]) + 2);

printf("\n| %*d %*d |\n| %*d %*d | = %d",
w1, a[0], w2, a[1], w1, a[2], w2, a[3],
a[0] * a[3] - a[1] * a[2]);
return 0;
}
730デフォルトの名無しさん:04/10/23 16:25:46
コマンドライン引数でa,b,cを取得するにはどうすればいいのですか?
a,b,cの順でお願いします。

double mogemoge(double a, double b, double c){
 return a + b - c;
}
int main(){
 double a, b, c;
 double AA = mogemoge(a, b, c);
 printf("%f\n", AA);
]
731デフォルトの名無しさん:04/10/23 16:28:29
mainの形式を変えないと無理だが?
732デフォルトの名無しさん:04/10/23 16:30:23
>>730
$ a.out 1 2 3

int main(int argc, char* argv[]) {
double a;
double b;
double c;

a = atof( argv[1] );
b = atof( argv[2] );
c = atof( argv[3] );
}
733デフォルトの名無しさん:04/10/23 20:38:22
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html#1
↑のプログラムを教えてください。お願いします。
734デフォルトの名無しさん:04/10/23 20:43:24
>>733
正しくリンクを貼ってください
735デフォルトの名無しさん:04/10/23 21:02:55
>>733
うるせー氏ね。
736デフォルトの名無しさん:04/10/23 21:45:58
>>733
で、何をするの?
737722:04/10/23 23:30:46
>728
プログラムを実行した時に
|a b|
|c d|
このように表示されれば良いと思うんですが・・
なにぶん低脳なもんで(´・ω・`)・・・
>729
見た感じ違うような・・・
もうだめぽ・・・
738デフォルトの名無しさん:04/10/24 01:15:02
>>722
>>729のどこが違うんだ?しっかりa〜dを聞いてきて、整数を入力したら
行列も行列式も、しかもご丁寧に行列をきちんとそろえて表示してくれるが?
739722:04/10/24 02:09:05
>>738
すいません!家にソフトがないもんで・・・
もうだめぽとか書いてあるから違うのかと・・・
>>729
マジでありがとうございますm(__)m

大変失礼なんですが、
自分が取ってる授業がC言語入門って授業なんで
ここまで難しいプログラムになるのかな?
と思ってるんですが・・・
740デフォルトの名無しさん:04/10/24 02:12:56
741738:04/10/24 03:04:42
>>739
もしかしてこんなレベルのものを望んでいるのか?
こんなんだとa〜dの桁数があっていないとズレまくりになるが。
#include <stdio.h>
int main(void){
  int a, b, c, d;
  printf("aは?:");
  scanf("%d", &a);
  printf("bは?:");
  scanf("%d", &b);
  printf("cは?:");
  scanf("%d", &c);
  printf("dは?:");
  scanf("%d", &d);
  printf("|%d %d|\n|%d %d|=%d", a, b, c, d, a * d - b * c);
}
742722:04/10/24 03:14:09
>>741
かなり近い物を感じます!
月曜に提出なんで朝一で入力して平気そうだったら出しちゃいますわ(`∀´)
マジで感謝ですm(__)m
743デフォルトの名無しさん:04/10/24 03:27:11
>>741
せめて %4d とかしてやれよ
744723:04/10/24 11:12:18
色々と考えて、以下のような手順で出来るのではないかと思ったのですが、
知識、経験がなくて、どうプログラムを組めばいいのかわかりません。
宿題ではないのですが、少し興味があることなのでいつでも構いませんのでどなたかお願いします。

準備 P(m,k)をP(m,k)=(1/3)^k*(2/3)^(m-k)*mCkと定義する。m(mは2以上),n(nは1以上m-1以下の値)を入力する。
    パターン確率の最低値PLを入力する。 "じゃんけんの回数" "確率" と画面に出力する。

(0.0) P(m,k1=0),…,P(m,k1=m)を計算する
(0.1) P(m,k1=0),…,P(m,k1=m)のうちで値がPL以下のものを0でおきかえる

(1.0) "じゃんけんの回数" の下に "1" と表示する
(1.1) P(m,k1)のうち、k1=nのものは、一時的にとっておく

(1.2) P(m,k1)のうち、k1>nのものには、各P(m,k1)に対してP(k1,k2=0),P(k1,k2=1),…,P(k1,k2=k1)を掛ける
     (例 m=10,n=5の場合、P(10,k1=10), P(10,k1=9), …, P(10,k1=6)のそれぞれに対して
         P(k1,k2=0),P(k1,k2=1),…,P(k1,k2=k1)を掛ける)

(1.3) P(m,k1)のうち、k1<nのものには、各P(m,k1)に対してP(m-k1,k2=0),P(m-k1,k2=1),…,P(m-k1,k2=m-k1)を掛ける
     (例 m=10,n=5の場合、P(10,k1=4), P(10,k1=3), …, P(10,k1=0)のそれぞれに対して
         P(10-k1,k2=0),P(10-k1,k2=1),…,P(10-k1,k2=10-k1)を掛ける)

(1.4) (1.1)で一時的にとっておいた値を、"じゃんけんの回数" の下の "1" の右("確率"の下)に表示する
(1.5) (1.2),(1.3)で計算された各値のうちで値がPL以下のものを0でおきかえる

   (続く)
745723:04/10/24 11:14:30
(2.1a) (1.2)で k2=n のものは、一時的にとっておく 
     (m=10,n=5の場合、P(10,10)*P(10,5), P(10,9)*P(9,5), …, P(10,6)*P(6,5)がこれに当たる)
(2.2a) (1.2)で k2>n のものは、各P(m,k1)*P(k1,k2)に対してP(k2,k3=0),P(k2,k3=1),…,P(k2,k3=k2)を掛ける
(2.3a) (1.2)で k2<n のものは、各P(m,k1)*P(k1,k2)に対してP(k1-k2,k3=0),P(k1-k2,k3=1),…,P(k1-k2,k3=k1-k2)を掛ける

(2.1b) (1.3)で k2=n-k1 のものは、一時的にとっておく
     (m=10,n=5の場合、P(10,4)*P(6,1), P(10,3)*P(7,2), …, P(10,0)*P(10,5)がこれに当たる)
(2.2b) (1.3)で k2>n-k1 のものは、各P(m,k1)*P(m-k1,k2)に対してP(k2,k3=0),P(k2,k3=1),…,P(k2,k3=k2)を掛ける
(2.3b) (1.3)で k2<n-k1 のものは、各P(m,k1)*P(m-k1,k2)に対してP(m-k1-k2,k3=0),P(m-k1-k2,k3=1),…,
     P(m-k1-k2,k3=m-k1-k2)を掛ける

(2.4) (2.1a),(2.1b)で一時的にとっておいたものを合計し、"1" の下の "2" の右にその値を表示する
(2.5) (2.2a),(2.3a),(2.2b),(2.3b)で計算された各値のうちで値がPL以下のものを0でおきかえる

以下これを繰り返し、最後に(1.1),(2.1a),(2.1b),…で一時的にとっておいた値を降順にソートし、

    パターン      パターン確率(値の大きい順)
1   (10,5)        0.1366
2   (10,3)(7,2)      0.0799
…   …          …
というように表示する。というものです。
746848:04/10/24 12:53:30
お願いします。

・c++
・入出力ストリーム
・配列
・反復  を用いて以下のプログラムを作成。

n人分のtest1,test2の得点を入力し、それぞれの入力した得点の
合計と平均を求めるプログラム。添字はtest1,test2で、入力は
test1,test2の得点を1回のループで一度に入力できるものとする。

また、同じ添字のtest1,test2は同一人物の得点とし、(1)test1>test2
(2)test1=test2(3)test1<test2に何人が該当するかを表示する処理も
つけ加えるること。
747デフォルトの名無しさん:04/10/24 13:01:33
>>746
めんどくさそうなので嫌
748 :04/10/24 13:28:10
>>682
まじでサンキュー
749常識人:04/10/24 13:53:07
>>746
746の分際で、848を気取るあなたは常識に欠けてる
と言わざるを得ません。
そんな常識のないあなたに、答えてくれる神を、
私も、待ち続けることにしましょう。
750デフォルトの名無しさん:04/10/24 14:16:22
常識人さん。
私は、本当にあなたに怒りを覚えますよ。
そんなこと、前に入力したときのものが残っていたに決まっているじゃないですか?
常識が本当にある者ならば、そんなことは明らなはずです。
常識人さん。
私は、あなたに、もうこのスレに二度と来ないで下さいと言ったはずですね?
どうして、言うことを聞けないのですか?日本語がわかりませんか?
今度、あなたがもし再びこのスレに来て、暴言を吐くような真似をしたら
私は、あなたをただじゃ置きませんよ?
覚悟してください。
751デフォルトの名無しさん:04/10/24 14:30:17
> 前に入力したときのものが残っていた
1個前のレスは正しいものですよ
752デフォルトの名無しさん:04/10/24 14:41:18
>>751
>749の言う、「848」とは、>746が「前に入力したときのもの」だってことくらい理解してください。
753746:04/10/24 15:18:22
すみません848は別のものです。残っていたのを
消し忘れてしまいました。
754デフォルトの名無しさん:04/10/24 16:04:05
>>746
#include <iostream>#include <vector>using namespace std;vector<int> test1,test2;
int main(){
 int n=0,i,sum[2],ave[2],more=0,equal=0,less=0;char c;
 while(true)
 {
  cout<<"test1["<<n<<"]=";cin>>i;test1.push_back(i);
  cout<<"test2["<<n<<"]=";cin>>i;test2.push_back(i);
  n++;cout<<"exit(y/n)";cin>>c;
  if(c=='y'||c=='Y')break;
 }
 for(i=0;i<2;i++) sum[i]=0;
 for(i=0;i<(int)test1.size();i++)
 {
  sum[0]+=test1[i];sum[1]+=test2[i];
  more+=(test1[i]>test2[i]);
  equal+=(test1[i]==test2[i]);
  less+=(test1[i]<test2[i]);
 }
 ave[0]=sum[0]/test1.size();ave[1]=sum[1]/test1.size();
 cout<<"test1合計点="<<sum[0]<<"\ttest1平均点="<<ave[0]<<endl;;
 cout<<"test2合計点="<<sum[1]<<"\ttest2平均点="<<ave[1]<<endl;;
 cout<<"(test1>test2)="<<more<<"人"<<endl;
 cout<<"(test1==test2)="<<equal<<"人"<<endl;
 cout<<"(test1<test2)="<<less<<"人"<<endl;
 cout<<"end"<<endl;cin>>c;return 0;}
755デフォルトの名無しさん:04/10/24 19:41:24
コマンドライン引数オプション -y 時に Result = 4 * SAGE を取得するには
どうすればいいのですか? gcc でお願いします

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1098614252
756デフォルトの名無しさん:04/10/24 20:36:10
>>755
case 'y'ラベルとbreakの間に処理を書けばよろし。
757755:04/10/24 22:37:18
>>756
ありがとうございます
758746:04/10/24 23:38:32
>>754
ありがとうございました。
759デフォルトの名無しさん:04/10/25 01:20:12
FitzHugh-Nagumo方程式の解軌跡を求めるプログラムを書き,
興奮性を示すx,yの初期値を一組探しグラフで結果を示せ.
ただし,a=0.7,b=0.8,c=20.0,z=1.0を初期値とし,
これらの値を変更しても構わない.

FitzHugh-Nagumo方程式:
dx/dt=c(x-x^3/3+y+z)
dy/dt=(a-x-by)/c

プログラム関連の知識がないし、そもそもどういう問題なのかもよくわかりません。
だれか分かる方おしえてもらえませんか??

http://pc5.2ch.net/test/read.cgi/tech/1097034002/897
こっちからきました
760デフォルトの名無しさん:04/10/25 01:21:32
>>579
プログラミングの知識がないのに何でそんな課題出されるんだよ。
とりあえず、授業で何を習ったのか書け。
761デフォルトの名無しさん:04/10/25 02:03:29
              ,,;:-‐''"⌒ ̄";;;;;;;⌒ ̄"ヾ、
              ='-‐''"/,::´ /::::::::::::::::ヽ :::`ヾ
              ァ'´.,:´/.::::::/i:: :::::. :; :::丶 ::::::ヾ、
             / / ::/.:  { l ヽ_,,,_`、 .:`、ヽ:::::::ヽ`
              {::/ァ' .i..:/i.::{::{.ヾ~::i:ヾ丶::::::.::::i:::::::::}
          、_ノ'.{ .::::{-{‐{:;iヾ{ '"T ヾ il.|'.:::.::}::::::::ト、
              l.:il :lヽi'"ヽ`、ヽ .l,'゚i!'〉リi}::i:::::l:::ノ::ハヽ、_
麻衣子は        {:| i .} } {'゚}.   ┴-' i}:ノl::::}::i:::::. l`ー"
 お風呂入るから   {、.ヾ-i ー´、    〃 ノ:::ノ::ノ::}:: ::. }
  ちょっと待っててね   ノト " っ   、_,;-':.:'/:::::::l: : l
                {:l:::`i::..、   ._.,.;:イシ:::/::ノ   l、
                iんV´iノノ` ツi iリノツ-‐''"  :: : ヽ 、
             _,-.r‐i {,-ト .i_,,ノ-‐-―/ : : :::ノ :::::.  } `、
            ( l ./ /~   /     .ノ/:::::/:  ::::::: : :l
           (.._,,iツvV   .,'     ,'::{:::;:::::   :::::::: :::i
          `ー7/::::{. '"~/     {;;;li/::::l::::::  :::::::::::::{
            {:l(ァ'  ,, '      l::;;|l/:::{i::::: : ::: :::: ::::l
            リァ' .,  ´       /メ{ {l:::/ {:::l:. :  :  ::::|
           /, ´      ノ // l {iメ {:::|i:: :    :::l
          /./       /::'/:/  {:i:|イ{ i::l::  i    ::}
          i' ´      /::::::/::/    l .:|::::|:l:::l : l :   ::l
          {      , イ´  /::;/  .ィ´:| }::::l:i::::i:i:. .| : :.  ::l
            i、__,, ィ i::::l  /:,:::l //l::::l .}::::li:::::l l::::} i: i  :::l
762デフォルトの名無しさん:04/10/25 02:17:01
>>760
じぶんで勉強してやってこいというような感じでした。
763762:04/10/25 02:17:34
そもそも、プログラミングとは関係のない授業なんです。
764デフォルトの名無しさん:04/10/25 06:15:39
765デフォルトの名無しさん:04/10/25 18:30:27
すいません!よろしくお願いします!(赤、緑、青、白、黒を示すプログラム)
赤、緑、青の数値の中で

(1)まず青の数値の割合が20〜26%の時に白
(2)次に赤、緑、青のうちで最も割合の多い色を示し
(3)それ以外は黒
とするプログラムを作成願います。
766762:04/10/25 18:33:22
>>764
それぼくじゃないですよ
同じ授業とってる人かな??
767デフォルトの名無しさん:04/10/25 18:33:26
>>765
マルチUzeeeeeeeeeeeeeeeeeeeeeeeee!!!!!!
作ってやったんだが出すのやめた!!!
768デフォルトの名無しさん:04/10/25 18:37:18
すいません!そこを何とかぁ。。
769デフォルトの名無しさん:04/10/25 18:38:28
もう消した。
770デフォルトの名無しさん:04/10/25 19:46:26
ここで甘やかしちゃいけない



って、そんな事いったらこのスレの存在意義がなくなるがw
771デフォルトの名無しさん:04/10/25 20:27:28
どなたか教えて下さい。お願いします。言語はCです。

スタックを配列により実現する。配列の最大値は10とする。
スタックが満杯のときの表示:"スタックが一杯です。"
スタックが空のときの表示:"スタックが空です。"
また、スタックにあるデータ数も表示する。
<実行例>
現在のデータ数:0/10
コマンド:push 1,pop 2,終了 0
1
data:15
現在のデータ数:1/10
コマンド:push 1,pop 2,終了 0
1
data:77
現在のデータ数:2/10
コマンド:push 1,pop 2,終了 0
1
data:82
現在のデータ数:3/10
コマンド:push 1,pop 2,終了 0
2
pop data > 82
現在のデータ数:2/10
コマンド:push 1,pop 2,終了 0
2
pop data > 77
現在のデータ数:1/10
コマンド:push 1,pop 2,終了 0
0
772デフォルトの名無しさん:04/10/25 20:46:28
>>771
#include <stdlib.h>
#include <stdio.h>
#define STACK_MAX    10

typedef struct _Stack {
  int   top;
  int   buf[STACK_MAX];
} Stack;
773デフォルトの名無しさん:04/10/25 20:46:51
Stack* stack_create(void)
{
  Stack* stack = (Stack*) malloc(sizeof(Stack));
  stack->top = 0;
  return stack;
}

void stack_free(Stack* stack)
{
  free(stack);
}

void stack_push(Stack* stack, int data)
{
  stack->buf[stack->top] = data;
  stack->top++;
}

int stack_pop(Stack* stack)
{
  stack->top--;
  return stack->buf[stack->top];
}
774デフォルトの名無しさん:04/10/25 20:47:40
void stack_print(Stack* stack)
{
  int i;
  printf("現在のデータ数:%d/%d\n", stack->top, STACK_MAX);
  if (stack->top > 0) {
    printf("データ:");
    for (i = 0; i < stack->top; i++) {
      printf(" %d", stack->buf[i]);
    }
    printf("\n");
  }
}
775デフォルトの名無しさん:04/10/25 20:48:14
int main(void)
{
  Stack* stack;
  stack = stack_create();

  stack_push(stack, 1);
  stack_print(stack);
  stack_push(stack, 2);
  stack_print(stack);
  stack_push(stack, 3);
  stack_print(stack);

  stack_pop(stack);
  stack_print(stack);
  stack_pop(stack);
  stack_print(stack);
  stack_pop(stack);
  stack_print(stack);

  stack_free(stack);
  return 0;
}
776771:04/10/25 20:54:28
>>772さん
助かりました!本当にありがとう。
777デフォルトの名無しさん:04/10/25 21:03:56
777ならここから中日奇跡の逆転劇
778デフォルトの名無しさん:04/10/25 21:21:45
後2イニングで7点取れると思えない。
779デフォルトの名無しさん:04/10/25 21:51:12
中日が優勝したら路上で脱糞する
780デフォルトの名無しさん:04/10/25 21:52:21
>>779
軽犯罪法で逮捕します
781デフォルトの名無しさん:04/10/25 21:52:51
>>779
いくら有り得ないからといって、そういう人迷惑はやめなさい。
782デフォルトの名無しさん:04/10/25 22:14:21
野球の話ヤメレ
783デフォルトの名無しさん:04/10/26 06:16:02
本当にまずいんです!よろしくお願いします!(赤、緑、青、白、黒を示すプログラム)
赤、緑、青の数値の中で

(1)まず青の数値の割合が20〜26%の時に白
(2)次に赤、緑、青のうちで最も割合の多い色を示し
(3)それ以外は黒
とするプログラムを作成願います。
自分はif文のただ羅列で行き詰ってしまったのでお手数ですが。
784デフォルトの名無しさん:04/10/26 07:48:00
だれかC/C++侍の時のログ持ってる人いませんか。
785デフォルトの名無しさん:04/10/26 09:23:40
int strtoi(const char *str)
{
int cnt;
int num=0;

return num;
}

atoi()と同じ動作をする関数を完成してくれませんか?
考えてもよく分かりませんでした。お願いします
786デフォルトの名無しさん:04/10/26 09:49:59
おまえ、マ板でも訊いてなかったか?
intの範囲越えた時とか、'0'から'9'が連続してない文字コード系はシラネ

int strtoi(const char *str)
{
    int num = 0;
    while('0' <= *str && '9' >= *str)
        num = num * 10 + *str++ - '0';
    return num; 
}
787デフォルトの名無しさん:04/10/26 09:50:16
>>783
ってかswitch文の方がらくじゃない?
ちなみにそれ何のプログラム?
788デフォルトの名無しさん:04/10/26 11:11:02
>>787
マルチ指摘されたのにもかかわらず再度マルチで、しかもいろいろ聞かれてるの無視してる香具師なんかほっとけ。
789デフォルトの名無しさん:04/10/26 12:22:19
>>783
何をする物かよく分からないけど、問題の通り出来ているかな?
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=312

>>788
すまん、リロードしていなく、作ってしまった。
790デフォルトの名無しさん:04/10/26 18:15:37
>>784
「C/C++の宿題は拙者が斬る! 29代目」
これか?これなら、OpenJaneのログがあるが。
791デフォルトの名無しさん:04/10/26 18:47:24
生年月日と計算したい年月日を入力し、身体、感情、知性の
バイオリズム数値を計算せよ。

という問題でバイオリズム数値をだす計算式が
うまくいかないのでご教授お願いします。

sin((生まれてから経過した日数)/23*2*PI)

関数電卓でこの計算に代入すると
ちゃんと出るのですが・・・

C++でwinXPです。
792デフォルトの名無しさん:04/10/26 18:53:03
>>791
どう上手く行かないのか、言えない理由を300字以内で述べよ
793デフォルトの名無しさん:04/10/26 18:56:31
どうせラジアンがらみじゃないの?
794デフォルトの名無しさん:04/10/26 18:58:29
勘で
sin((生まれてから経過した日数)/23.0*2*PI)
795デフォルトの名無しさん:04/10/26 19:37:59
生まれてから経過した日数の計算がめんどくさいだけとか
796デフォルトの名無しさん:04/10/26 19:42:39
そんな面倒でもないような
797デフォルトの名無しさん:04/10/26 19:53:31
まさか、
#define PI 3
じゃないだろうねぇ。
798デフォルトの名無しさん:04/10/26 20:41:05
Cには
#include
ってのがあるわけですが、これの種類って
#include <ヘッダファイル>

#include "ヘッダファイル"
の2つの記述しか無いですよね?
例えば
#include(なにか)
とか無いですよね?
上記2つは調べて普通に見つかるのですが、
他には記述法があるのか気になったので教えていただければ助かります。
799デフォルトの名無しさん:04/10/26 20:41:57
ありません。その二つだけです。
800デフォルトの名無しさん:04/10/26 20:44:50
boost::gregorian ですぐだしなあ
801791:04/10/26 20:51:56
プログラムはこんな感じです。
日数計算は年*365.25+月*30.6+日で指定されてます。
模範解答によると
生年月日1950 9 12
調べたい日1978 10 5
で身体-0.82 感情0.43 知性-0.62
となるようですが全く違う値が・・・

#include <stdio.h>
#include <math.h>

void main()
{
int a,b,c,d,e,f;
float j,k,l,pi=3.14,x,y,z;

printf("生年月日を入力(西暦):");
scanf("%d %d %d",&a,&b,&c);

printf("調べたい年月日を入力:");
scanf("%d %d %d",&d,&e,&f);

j=d*365.25+e*30.6+f;
k=a*365.25+b*30.6+c;
l=j-k;

x=sin(l/23.0*2*pi);
y=sin(l/28.0*2*pi);
z=sin(l/33.0*2*pi);

printf("身体:%.2f\n感情:%.2f\n知性:%.2f\n",x,y,z);
}
802798:04/10/26 21:12:38
>>799
ありがとございます。
頭の中のもやもやが消えました。
803デフォルトの名無しさん:04/10/26 21:14:18
>>801
pi を 3.141592653589 くらいまでやると
身体:-0.90
感情:0.56
知性:-0.71
になる他はワカンネ
804デフォルトの名無しさん:04/10/26 21:33:16
x=sin(l*2.0*pi/23.0);
y=sin(l*2.0*pi/28.0);
z=sin(l*2.0*pi/33.0);
805デフォルトの名無しさん:04/10/26 21:49:20
つーか、doubleにしとけ。
806デフォルトの名無しさん:04/10/26 21:53:33
>>805
ハァあ?
807デフォルトの名無しさん:04/10/26 22:31:41
Mathematicaで厳密な(全部1度小数を有理数にして)計算をしたけれども、
x=-0.109055,y=0.834573,z=-0.856349になる。その結果が正しいとするならば、
計算式のどこかが間違っている。
808デフォルトの名無しさん:04/10/26 22:42:25
>>806
三角関数の引き数がdoubleである以上、その前の段階で必要以上に精度を落とす必要が無い。
つーか、精度ギリギリじゃない?
809デフォルトの名無しさん:04/10/26 22:45:29
古い参考書とかはfloat使っていることも多いよね。
あと、
function(a, b, c)
int a;
int b;
int c;
{;}
というのもよく見かける。
810デフォルトの名無しさん:04/10/26 22:49:13
>>807
どれをどう計算した? その数値にはどうしてもならないのだけど。
811807:04/10/26 22:52:33
>>810
スマン、数値を間違った。
j := d*Rationalize[365.25] + e*Rationalize[30.6] + f;
k := a*Rationalize[365.25] + b*Rationalize[30.6] + c;
l := j - k;
x := Sin[l/Rationalize[23.0]*Rationalize[2.0]*Pi];
y := Sin[l/Rationalize[28.0]*Rationalize[2.0]*Pi];
z := Sin[l/Rationalize[33.0]*Rationalize[2.0]*Pi];
{a, b, c} = {1950, 9, 12};
{d, e, f} = {1978, 10, 5};
{x, y, z} // N
結果:{-0.900121, 0.550897, -0.703733}
812808=810:04/10/26 22:56:17
おし、大分判ってきた。

日数計算をサボらずにきちんと行なうと>801の例の場合10250日となる。
この数値を元に三角関数で計算すると、例のように-0.82/0.43/-0.62になる。

処が、>791の書いたプログラムでは日数が10250.6日になってしまい、
それを計算すると-0.90/0.55/-0.70になった。
813807:04/10/26 23:00:54
ま、lだけintにすればいいことなんだろうな。
814デフォルトの名無しさん:04/10/26 23:03:01
printf または cout でファイル(hogehoge.datやsage.csv等)を
出力したいのですが、任意のフォルダまたは実行ファイルと同じフォルダ
に書き出す方法を教えてください。
815デフォルトの名無しさん:04/10/26 23:05:44
>>814
printf や cout 使うんなら、コマンドラインでリダイレクトするのが一番簡単だよ。
標準入出力のファイルデスクリプタを再定義したいとか、そういう話なんですか?
816808=810=812:04/10/26 23:07:37
>>813
確かに。本来ならきちんと計算すべきだけど指定されているんじゃ仕方ないね。

>>801=791
そういうわけで、lの整数化と円周率はmath.hにあるであろうM_PIを使用すること。
#ないなら3.14159265358979323846だ。
floatで問題が発生するかは検証してないけど、その辺はまぁ、適当に。
817807:04/10/26 23:11:06
floatで大丈夫みたい。
818デフォルトの名無しさん:04/10/26 23:12:59
>>814
コマンドラインのリダイレクトを使わないなら

freopen("hello.txt", "w", stdout);
printf("Hello, World!");
fclose(stdout);

みたくstdoutそのものをfreopenでファイルにリダイレクトさせるというのが妥当かと
819791:04/10/26 23:22:31
皆様ありがとうございます。
後は自分でがんばって見ます。
820デフォルトの名無しさん:04/10/26 23:57:32
どなたか教えてください。お願いします。言語はC++です。

得点と名前を入力すると、名前のアルファベット順にソートして出力する。
入力したデータは構造体の配列に記憶しておく。
構造体タグは↓を使用すること。
  struct data {
char namae[21]; //名前
int tensu; //得点
};
入力件数は最大10件とする。名前はローマ字表記とし、半角大文字で入力する。  
名前入力の時に改行のみ入力するか、10件入力されたら、入力を打ち切る。
ソートは単純交換法を用いること。
<実行例>
1:[名前]NISINA AKMEI
1:[得点]80
2:[名前]KIMURA HIROKO 
2:[得点]136
3:[名前]ISIMITU YUICHI
3:[得点]30
4:[名前]SASAKI TAKASHI
4:[得点]100
5:[名前]ASAMIYA MASAKO
5:[得点]84
6:[名前]
----------------------------
1:ASAMIYA MASAKO84
2:ISIMITU YUICHI30
3:KIMURA HIROKO136
4:NISINA AKEMI80
5:SASAKI TAKASHI100
821デフォルトの名無しさん:04/10/27 00:15:32
#include <stdio.h>
void hyoji(char *str)

{
printf("%s\n",str);
}

void main(void)
{
int suti;
char jyukugo[3][10]={"あいうえ","かきくけ","さしすせ"};
do{
printf("数値1~3の範囲で入力してください:");
scanf("%d",&suti);
}

while(suti<1||suti>3);
hyoji(&jyukugo[suti-1][0]);
}

超初心者、言語はCです。
同じ結果が出るように、これを改変した別のプログラムを教えてください。
822デフォルトの名無しさん:04/10/27 00:48:28
コマンドライン引数で -a ってのをできるようになったんですが、
-age とか -sage ってできないんですか?
できるならやり方を教えてください。
823デフォルトの名無しさん:04/10/27 00:49:59
なぜそこまで出来てそれができぬのだ
824デフォルトの名無しさん:04/10/27 06:04:51
課題なんですが、http://data.uploda.net/anonymous/etc2/dat6/upload21362.c
このプログラムをデータを文字列ではなく整数を使用できるにはどうしたらいいでしょうか

課題内容
キー入力されたデータで2分探索木を作って、
最後に全てのデータを昇順に表示(トラバーサル)しなさい。
なお、2分探索木は自己参照構造体とメモリの動的割り当てを使用した再起版で作成、表示する事。
データは整数を使用する。ただし、配列で定義するのではなく、実行時にキーボードから入力する事
(EOFで入力の終了とする)。


教えてくださいお願いしますorz
825デフォルトの名無しさん:04/10/27 07:02:15
↑嫌がらせみたいだけどアプロダ使ったこと無いので変更点だけ書いとく
char name[12];→int val;
struct tnode *gentree(struct tnode *,char *);→struct tnode *gentree(struct tnode *,int);
char dat[12];→int dat;
while (scanf("%s",dat)!=EOF){→while (scanf("%d",&dat)!=EOF){
printf("%s\n",p->name);→printf("%d\n",p->val);
struct tnode *gentree(struct tnode *p,char *w)→struct tnode *gentree(struct tnode *p,int w)
strcpy(p->name,w);→p->val = w;
else if(strcmp(w,p->name)<0)→else if( w < p->val )
826デフォルトの名無しさん:04/10/27 09:10:07
>>823
理解しきれてないから。
827824:04/10/27 15:41:03
>>825

ありがとうございます。
助かりましたm(_ _)m
828デフォルトの名無しさん:04/10/27 15:58:17
入力田英数字を逆順にした英数字を表示し、さらにこの入力した英数字とそれを逆順にした英数字を比較して、一致していなかったら「good」一致していなかったら「no good」と出力するプログラムを作成してください
お願いします
829デフォルトの名無しさん:04/10/27 16:07:59
入力した英数字を逆順にした英数字を表示し、さらにこの入力した英数字とそれを逆順にした英数字を比較して、一致していたら「good」一致していなかったら「no good」と出力するプログラムを作成してください
お願いします
828は誤字だらけでしたすいません
830デフォルトの名無しさん:04/10/27 16:12:14
x = x&(x-1)
831デフォルトの名無しさん:04/10/27 16:55:21
char str[BUFF_SIZE];
char rev[BUFF_SIZE];
const char *src;
char* dst;
fgets(str, sizeof(str), stdin);
src = str;
dst = rev + strlen(str);
*dst-- = 0x0;
while(*src) *dst-- = *src++;
puts(rev);
puts(strcmp(str, rev) == 0 ? "good" : "no good");
832デフォルトの名無しさん:04/10/27 17:39:12
>>829

831のでは改行のことが虫されてたんでちょこちょこっといじった
833832:04/10/27 17:59:24
834デフォルトの名無しさん:04/10/27 19:23:16
>>829
#include <algorithm>
#include <iostream>
#include <string>
int main(){
  std::string str;
  std::cout << "?:" << std::flush;
  while (std::cin >> str)
    if (str == std::string(str.rbegin(), str.rend()))
      std::cout << "good\n?:" << std::flush;
    else
      std::cout << "no good\n?:" << std::flush;
  return 0;
}
835デフォルトの名無しさん:04/10/27 19:24:52
>>834
規格では読み込み時自動で flush されますよ
836834:04/10/27 19:27:21
>>835氏の指摘と、逆にした文字列を表示していなかったのを修正
#include <algorithm>
#include <iostream>
#include <string>
int main(){
  std::string str;
  std::cout << "?:";
  while (std::cin >> str)
  {
    std::string rev(str.rbegin(), str.rend());
    std::cout << rev;
    if (str == rev)
      std::cout << "\ngood\n?:";
    else
      std::cout << "\nno good\n?:";
  }
  return 0;
}
837デフォルトの名無しさん:04/10/27 21:00:47
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=313

↑このプログラムを改造して、自己参照構造体を用いたスタックを実現してください。
838デフォルトの名無しさん:04/10/27 23:05:56
839デフォルトの名無しさん:04/10/27 23:47:49
a=1, 10, 100の時、
a+4の答えを hoge1.txt hoge2.txt hoge3.txt に一度に書き出すプログラム
をお願いします。 
840デフォルトの名無しさん:04/10/27 23:50:44
宿題できないどころか
宿題内容の伝達すらまともにできないんでつか…(´・ω・`)
841デフォルトの名無しさん:04/10/27 23:56:42
借金をd,年利をi,毎月の返済額をxとしたとき、
何ヶ月目で、最後の月に何円を返済して借金を返し終わるかわかる
プログラムを教えてください。
842デフォルトの名無しさん:04/10/28 00:05:02
>>839
>>841
言語ぐらい書けばかあふぉまぬけ!!
843839:04/10/28 00:06:20
c++でお願いします
844デフォルトの名無しさん:04/10/28 00:14:23
>>839
1行でいけるな。
for(int i = 0, a = 1; i < 3; ++i, a *= 10) std::ofstream((std::string("hoge") + boost::lexical_cast<std::string>(i + 1) + ".txt").c_str(), std::ios::out) << a + 4 << std::endl;
845デフォルトの名無しさん:04/10/28 00:14:54
>>839
> 一度に
の、定義を
846844:04/10/28 00:19:16
1文でint main()の中を書けということではないのか?
847839:04/10/28 00:22:18
1+4の答えをhoge1.txtに、
10+4の答えをhoge1.txtに、
100+4の答えをhoge1.txtに、この3つのtxtファイルを同時に書き出す
という意味です。
848デフォルトの名無しさん:04/10/28 00:22:19
きっと厳密に同一時刻じゃないといけないんだよ!プゲラ
849844:04/10/28 00:26:54
>>839
>>844じゃダメなのかよ!ていうか完全に同時に書き込むなんてことは
できないぞ。
850844:04/10/28 00:27:34
ていうか>>847は3つのファイルになってないし。
851デフォルトの名無しさん:04/10/28 00:33:37
ここに持ち出してくるプログラムのデバッグよりも
ここに持ち出してくる人の発言のデバッグが難しかったりする(゚∀゚)
852844:04/10/28 00:44:53
動作がおかしいというよりも、コンパイルを通らないって次元だな。
853837:04/10/28 01:00:39
>>838
ありがとうございます!
854  . |(●),   、(●)、.:| +:04/10/28 01:09:43
新たな宿題まだー!?
855デフォルトの名無しさん:04/10/28 01:10:56
無知故に出来ない課題があります。
できるかたお願いします・・

〜課題文コピペ〜
線形リストに関する下記のプログラムを作成し、プログラムリスト、実行結果、考察を提出せよ。
データが昇順(辞書順)に並ぶように線形リストを作成していき、最後にすべてのデータを表示する。
なお、線形リストは、自己参照構造体とメモリの動的割り当てを使用して作成すること。
データは名前と年齢を使用する。
ただし配列で定義するのではなく、実行時にキーボードから入力すること(EOFの入力で終了とする)。
キーボードからデータが入力されたら、リスト構造を先頭から順に探索し、適切な位置に(名前が昇順に並ぶように)挿入するとよい。
※年齢は考慮しなくてもよい。
キーボードからEOFが入力されたら、リスト構造の先頭から順にすべてのデータ(名前と年齢)を表示する。
856855:04/10/28 01:12:22
データ内容(名前と年齢)「Bill 20,Roderick 23,Gonzalo 21,Tangles 20,Wanda19,Chortling 22,Clifford 21,Daren 20,Arthritics」

自作の、入力した順に表示されるプログラム↓
http://data.uploda.net/anonymous/etc2/dat6/upload21411.c
857デフォルトの名無しさん:04/10/28 01:16:41
>>839-
自作自演乙
858デフォルトの名無しさん:04/10/28 01:17:38
>>855
freeくらいきちんとしろ!
859841:04/10/28 01:27:06
すいません、Cでお願いします。
借金をd,年利をi,毎月の返済額をxとしたとき、
d,i,xを引数として受け取り、借金の残額を計算する関数を作成し、その関数を使って
何ヶ月目で、最後の月に何円を返済して借金を返し終わるかわかるプログラムを教えてください。
860デフォルトの名無しさん:04/10/28 01:29:26
f(x)=25x^3-8x-1を計算する関数プログラムを使用して、二分法によって
f(x)=0の近似解を求めるプログラムを作成しなさい
極大点(-√(8/75)、0.741959) 極小点(√(8/75)、-2.741859)
を求めて

x軸との3個の交点のうち真ん中の交点は
-√(8/75)<真ん中の交点<0
で二分法で求められるのですが

√(8/75)<右側の交点<?
?<左側の交点<-√(8/75)

他の交点は?の部分が分からなくて二分法で求められません
どうしたら求められるでしょうか?
C言語です
861デフォルトの名無し:04/10/28 01:39:32
次のようなプログラムを作って下さい。
*---------*
*--------*|
|*------*||
||*----*|||
|||*--*||||
||||*-|||||
|||*---*|||
||*-----*||
|*-------*|
*---------*
このように渦巻きを描く様に。言語はCです。
お願いします。
862デフォルトの名無し:04/10/28 01:43:18
すいません・・・。
ずれてます。四隅に*を表示して、内側に向かってだんだん渦を巻いて
行く感じです。ナルトの様に。
863デフォルトの名無しさん:04/10/28 01:54:12
>>855
行数制限のために読みにくいのと(自分でどうにかしる)、再帰使いまくりだが。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct field_tag{char name[16];char age[4];struct field_tag *next;} field;
void search_and_insert(field *dest, const field *src){
field *temp;
if (dest->next == NULL){dest->next = (field*)malloc(sizeof(field));memcpy(dest->next, src, sizeof(field));}
else if (!(strcmp(dest->next->name, src->name) < 0)){temp = (field*)malloc(sizeof(field));memcpy(temp, src, sizeof(field));temp->next = dest->next;
dest->next = temp;}
else /* strcmp(dest->next->name, src->name) < 0 */search_and_insert(dest->next, src);
}
void free_all(field *ptr){if (ptr->next != NULL) free_all(ptr->next);free(ptr);}
int main(void){
field *root= (field*)malloc(sizeof(field)), *cur = root, temp;
memset(root, 0, sizeof(field));temp.next = NULL;
while(scanf("%s %s", temp.name, temp.age) != EOF){
search_and_insert(cur, &temp);
memset(&temp, 0, sizeof(field));
}
cur = root;
while (cur != NULL){
printf("%15s%4s\n", cur->name, cur->age);cur = cur->next;
}
if (root != NULL) free_all(root);
return 0;
}
864デフォルトの名無しさん:04/10/28 01:58:24
*−−−−−−−−−*
*−−−−−−−−*|
|*−−−−−−*||
||*−−−−*|||
|||*−−*||||
||||    |||||
||||*−*||||
|||*−−−*|||
||*−−−−−*||
|*−−−−−−−*|
*−−−−−−−−−*
こんな感じか?
865デフォルトの名無しさん:04/10/28 02:01:55
>>860
f(x)<0となるようなxを適当に入れればよい。-0.6でも-0.7でも。
866デフォルトの名無し:04/10/28 02:05:12
>>864
そうです。お願いします。
867r:04/10/28 02:13:06
最初の*までの|の数
-1, 0, 1, 2, 3, 4, 4, 3, 2, 1, 0

ーの数
10, 8, 6, 4,2 0, 1, 3, 5, 7, 9

これがヒントになりそう
868855:04/10/28 02:51:40
>>863
ありがとうございます〜

/* strcmp(dest->next->name, src->name) < 0 */
の部分はコメントになってますが、不要という意味でしょうか?
869863:04/10/28 03:11:43
>>868
そういうこと
870855:04/10/28 04:47:31
ついでに質問なんですが

線形リストをポインタで連結しないで、
配列で作ったらノードの入力処理に関する計算量とかって
どのくらい違うんですか?
871デフォルトの名無しさん:04/10/28 05:24:13
void delete(int x, NODE **p) {

NODE *q, **r;

r = p; q = *r;
while (q != NULL) {
if (q->val == x) {
*r = off(q);
if (q == *p) *p = *r;
return;
} else if (q->val < x) {
r = &(q->right);
} else if (q->val > x) {
r = &(q->left);
}
q = *r;
}

printf("%d not found.",x);
exit(1);

}

このdelete関数の意味がわかりません。教えてください。
872デフォルトの名無しさん:04/10/28 08:09:10
ある金額が与えられた時に、日本にある硬貨を使って何通りの払い方があるかを
を求めるプログラムを教えてください。
言語はC++でお願いします。
873デフォルトの名無しさん:04/10/28 09:42:35
↑Cだしかなり汚いけど。面白かった。

#include <stdio.h>

int count( int iYen, int iLev )
{
static int aiUnit[] = { 5, 10, 50, 100, 500, 1000, 5000, 10000 };
int i, iCnt = 0;

if( iLev )
for( i = 0; i <= iYen / aiUnit[iLev]; i++ )
iCnt += count( iYen - aiUnit[iLev] * i, iLev - 1 );
else
return iYen / aiUnit[iLev] + 1;
return iCnt;
}
void main( void )
{
int iYen;

while( 1 ) {
scanf( "%d", &iYen );
printf( "%d\n", count( iYen, 7 ) );
}
}
874873:04/10/28 09:48:39
ちなみに11000〜12000円を入力するとオーバーフローする。
11000 -> 1220476374 通り

875デフォルトの名無しさん:04/10/28 10:11:48
>>873
どうでもいいツッコミだけど、
日本にある硬貨を使って
       ~~~~~
876デフォルトの名無しさん:04/10/28 10:19:31
>>873
5万円、10万円も入れとかないと
877デフォルトの名無しさん:04/10/28 10:21:26
その辺は、質問者が対応すれば
記念硬貨までいいだしたらきりが無い

でもvoid main()はよせ
878デフォルトの名無しさん:04/10/28 10:23:24
5000円玉もあるよ!
879デフォルトの名無しさん:04/10/28 10:31:53
A(x) = (1 + x + x^2 + x^3 + x^4 + x^5 + …)(1 + x^5 + x^10 + x^15 + x^20 + x^25 + …)
(1 + x^10 + x^20 + x^30 + x^40 + x^50 + …)(1 + x^50 + x^100 + x^150 + x^200 + x^250 + …)
(1 + x^100 + x^200 + x^300 + x^400 + x^500 + …)(1 + x^500 + x^1000 + x^1500 + x^2000 + x^2500 + …)
とすると、
N円の支払い方法は A(x) の x^Nの係数。
コンピュータには応用しにくいか…。
880デフォルトの名無しさん:04/10/28 11:27:47
8人分のテストの点数を適当に決めて平均点以上の人数を表示するプログラム
麻衣子タンおねがいします
881デフォルトの名無しさん:04/10/28 11:29:30
>>880
うるせえボケ
ネタはチラシの裏にでも書いてろ
882デフォルトの名無しさん:04/10/28 11:48:49
釣られて適当に書いてみる
template <class T, unsigned N>
inline int
count( const T (&t)[ N ] )
{
    double avg = std::accumulate( &t[ 0 ], &t[ N ], 0.0 ) / N;
    return std::count_if( &t[ 0 ], &t[ N ], std::bind2nd( std::greater_equal<double>(), avg ) );
}
int main(){
    int n[] = { 0, 10, 20, 30, 40, 50, 60, 70 };
    std::cout << count( n ) << std::endl;
    return 0;
}
883デフォルトの名無しさん:04/10/28 11:59:05
for使ってできませんか?
884デフォルトの名無しさん:04/10/28 11:59:33
度々思うのだが、ものすごーくしょうもない宿題ここに持ってきて
ソースもらって帰る椰子って、やっぱそれをそのまま提出してるんだろうか…?

その辺是非聞かせてくれ >>880
885デフォルトの名無しさん:04/10/28 12:03:45
配列を使って平均点求めるとこまでできたけど人数がでない。if使うとこからおねがいします。
886デフォルトの名無しさん:04/10/28 12:21:26
できたところまで晒してみ。
887デフォルトの名無しさん:04/10/28 12:24:30
#include <stdio.h>
int main (void)
{
int a[8] = {98,90,80,76,75,62,55,48};
int h,i,k;
float j;
for(h=0;h<10;h++){
i+=a[h];
j= i/10.0;
if (a[h]>=j){
k++;
}}
printf("Heikin = %.1f\n",j);

printf("Heikinijyou = %d\n",k);
}
888デフォルトの名無しさん:04/10/28 12:26:03
>>887
(´Д`)…ネタか?

#include <stdio.h>
#define N 8
int main()
{
  int i, n[N] = {0,10,20,30,40,50,60,70};
  double ave = 0;
  int np = 0;
  
  for (i=0; i<N; i++)
    ave += n[i];

  ave /= N;

  for (i=0; i<N; i++)
    if (n[i] > ave)
      np++;

  printf("%d 人\n", np);
  return 0;
}
  
889デフォルトの名無しさん:04/10/28 12:28:40
人数だけがでないんです
890デフォルトの名無しさん:04/10/28 12:32:12
できました
ありがとうございました
891デフォルトの名無しさん:04/10/28 12:49:01
>>882
// count()はこうだべ。
template<class T, unsigned N>inline int count(const T(&t)[N])
{
return std::count_if(& t[0], & t[N], std::bind2nd(std::greater_equal<double>(), static_cast<double>(std::accumulate(& t[0], & t[N], 0)) / N));
}
// いや、集計はdoubleじゃなくていいんじゃないかなと
892デフォルトの名無しさん:04/10/28 13:32:42
>>875-878
確かに硬貨って書いてるな。
しかも漏れのソースに2000円無いので通貨と考えても中途半端だ。
...2000円は流通してないから良いか?

void main() を脊髄反射的に否定するなよ。
こんなゴミコードの結果なんて誰も参照しないんだから。
893デフォルトの名無しさん:04/10/28 13:48:27
脊髄反射が良いとは言わないが、居直られると擁護出来ない
894デフォルトの名無しさん:04/10/28 13:59:45
新しい宿題投下します。
問:次の形式を持つ構造体配列 phonebook を N 件のデータであらかじめ初期化しておく。
  名前を入力しその人の電話番号を出力するプログラムを作成せよ。

struct person {
char name[32];
char phone[16];
};
895デフォルトの名無しさん:04/10/28 14:03:55
もれはどうでもいい
896デフォルトの名無しさん:04/10/28 14:08:24
__________
    <○√
     ‖ 
     くく
オレが質問を止めているうちに答えろ!
早く!早く!オレに構わず答えろ!
897デフォルトの名無しさん:04/10/28 14:13:44
>>893
居直ってるつもりはないけどね。
ただ問たいのは脊髄反射してるやつは void main() が何故いけないか判ってるか
という事なんよ。
よく居るでしょ、『.c ファイル中の define 駄目』とか『直値は絶対駄目』とかいう奴。
『そう教わった』からは寂しいなと...

>>894
簡単すぎて投下とは呼べない。

char* getPhoneNum( int N, person* pArr, char* name )
{
int i;
for( i = 0; i < N; i++ )
if( ! strcmp( pArr[i].name, name ) return pArr[i].phone;
return NULL;
}

だけで良いか?

898デフォルトの名無しさん:04/10/28 14:23:55
宗教ネタと規格の話は別次元
899デフォルトの名無しさん:04/10/28 14:24:53
>>897
int main()について言えば、
「規格に書いてあるから」と「そう教わったから」は大差ない気がするが…

実装系依存は避ける態度をつけましょう てことか?
900デフォルトの名無しさん:04/10/28 14:26:53
単に無知が開き直ってるだけだろ。
901デフォルトの名無しさん:04/10/28 14:37:42
>>894
#include <stdio.h>
#include <string.h>
static struct person {
char name[32];
char phone[16];
} phonebook[] = {
{"Alice", "1111-1111"},
{"Bob", "2222-2222"},
{"Carol", "3333-3333"},
{"Dave", "4444-4444"},
{"Eve", "5555-5555"}
};
static const int N = sizeof(phonebook)/sizeof(phonebook[0]);
int main (int argc, char *argv[]) {
int i;
if (argc < 2) {
puts("gimme vomit. hehehe.");
return 0;
}
for (i=0; i<N; ++i)
if (strcmp(phonebook[i].name, argv[1]) == 0) {
printf("fuck me. %s\n", phonebook[i].phone);
break;
}
if (i == N)
puts("DAMN ASS! SHIT! AHHHHHHHH!!");
return 0;
}
902デフォルトの名無しさん:04/10/28 14:39:26
pc5鯖の新機能で水平TABが&nbsp;4つに展開されるって話はネタだったのかね
くそったれ
903デフォルトの名無しさん:04/10/28 14:41:48
>>902
イ`
904デフォルトの名無しさん:04/10/28 14:41:54
int hoge(void) {
    return 1;
}
905デフォルトの名無しさん:04/10/28 14:42:23
>>902
されてるぞ?
906897:04/10/28 15:00:40
>>899
言いたいのはね、脊髄反射するなら『警告を出すコンパイラもあるので』とかの
理由を付けてって事なんだ。
特に初心者が読むスレでしょここは。

>>900
ANSI規格も知らない無知で悪かったな。
907863:04/10/28 20:06:09
>>855
配列で作ると、ある固定された数しかノードが作れないので、汎用性の面から論外。
線形リストをポインタでつないで連結すると、一回一回のメモリ確保でのオーバー
ヘッドは大きい。
ある大きさのメモリを動的確保して、足りなくなったら拡大という風にすると、拡大する
ときに全体をコピーしなおすオーバーヘッドが大きい。
両方の考えを使って、ある大きさのメモリを動的確保して、足りなくなったらまたある
大きさのメモリを動的確保してポインタでつないで連結すると、まぁ使える程度の
オーバーヘッドになるんじゃないかと思う。
908デフォルトの名無しさん:04/10/28 20:09:10
int main(){
return 0;
}
909デフォルトの名無しさん:04/10/28 20:14:08
EOF(=End Of File)を入力………
910863:04/10/28 20:32:50
>>861 かなり本気で渦巻きを書いてみた
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* pos(char* data, int x, int y, int width){  return data + (width + 1) * y + x;}
int main(void){
  int size, x = 0, y = 0, i;
  char *matrix;
  scanf("%d", &size);
  matrix = (char*)malloc(sizeof(char) * (size + 1) * size);
  memset(matrix, ' ', sizeof(char) * (size + 1) * size);
  for (i = 0; i < size; ++i) *pos(matrix, size, i, size) = 0;
  *pos(matrix, x, y, size) = '*';
  for(; ; ) {
    while (++x < size && *pos(matrix, x, y, size) == ' ') *pos(matrix, x, y, size) = '-';
    *pos(matrix, --x, y, size) = '*';
    if (*pos(matrix, x, y + 1, size) != ' ') goto exit_loop;
    while (++y < size && *pos(matrix, x, y, size) == ' ') *pos(matrix, x, y, size) = '|';
    *pos(matrix, x, --y, size) = '*';
    if (*pos(matrix, x - 1, y, size) != ' ') goto exit_loop;
    while (--x < size && *pos(matrix, x, y, size) == ' ') *pos(matrix, x, y, size) = '-';
    *pos(matrix, ++x, y, size) = '*';
    if (*pos(matrix, x, y - 1, size) != ' ') goto exit_loop;
    while (--y < size && *pos(matrix, x, y, size) == ' ') *pos(matrix, x, y, size) = '|';
    *pos(matrix, x, ++y, size) = '*';
    if (*pos(matrix, x + 1, y, size) != ' ') goto exit_loop;
  }
exit_loop:
  for (i = 0; i < size; ++i) printf("%s\n", pos(matrix, 0, i, size));
  free(matrix);
  return 0;
}
911デフォルトの名無しさん:04/10/28 21:14:08
>>910
別の意味での嫌がらせだな
912デフォルトの名無しさん:04/10/28 21:16:13
>>910
読む気がなくなった
913デフォルトの名無しさん:04/10/28 21:38:04
もっと簡単にしてやれよ
914デフォルトの名無しさん:04/10/28 21:41:13
#include <stdio.h>

int main(void)
{
    puts("*---------*");
    puts("*--------*|");
    puts("|*------*||");
    puts("||*----*|||");
    puts("|||*--*||||");
    puts("||||*-|||||");
    puts("|||*---*|||");
    puts("||*-----*||");
    puts("|*-------*|");
    puts("*---------*");
    return 0;
}
915910:04/10/28 21:47:06
>>913
普通に渦巻きを書いた方が'|','-','*'の数を考えるよりも簡単だと思ったからさ。
916910:04/10/28 21:48:41
はうっ、goto書かなくてもbreakで行けた…馬鹿じゃん俺(_ _;
917デフォルトの名無しさん:04/10/28 21:54:57
C言語の問題です。

sinxを0からπまで積分しなさい。
ただし、0からπまでを20等分して考え、forなどの繰り返し文は使用しない。

この問題ですが繰り返しを使わないとなるとどのようになるのでしょうか?
よろしくおねがいします。
918デフォルトの名無しさん:04/10/28 22:00:47
for文を展開した形になるんじゃないのか?
919デフォルトの名無しさん:04/10/28 22:03:09
goto を使う
920デフォルトの名無しさん:04/10/28 22:05:56
>>918
だとしたら相当ナンセンスな問題だな
for文を習ってないならまだしも
921デフォルトの名無しさん:04/10/28 22:08:03
再帰関数を使う
922デフォルトの名無しさん:04/10/28 22:09:47
>>921
再帰だと20分割にするのが面倒くさい
923デフォルトの名無しさん:04/10/28 22:09:47
>>914
出直してこい
924917:04/10/28 22:13:14
>>918-922
えぇ、まだfor文というものを習っていないんです・・・。
なにか良い方法はありませんか?お願いします。
925デフォルトの名無しさん:04/10/28 22:13:34
・goto
・再帰
・while
・do 〜 while
・展開
926デフォルトの名無しさん:04/10/28 22:14:19
> ・while
> ・do 〜 while
繰り返し文じゃねえか
927デフォルトの名無しさん:04/10/28 22:16:17
展開しとけ
928デフォルトの名無しさん:04/10/28 22:31:18
C言語の問題なのですが、

文の中の注釈を消すプログラムを作りなさい。
実行例 abc/*def*/
abc

aa/*ssss
aa/*ssss

昨日考えてるんですが全然分かりません。どうか助けてください。
929デフォルトの名無しさん:04/10/28 22:31:35
コピペって可能性は?
930デフォルトの名無しさん:04/10/28 22:33:09
>>928
問題の意味が不明なんだけど。

ついでに言えば、「昨日考えた」のか「昨日から考えている」のかどっちだ?
931デフォルトの名無しさん:04/10/28 22:33:37
>>928
K&Rの練習問題のようだ…
C++(or C99)のコメントには対応しなくてもいいのか?
932デフォルトの名無しさん:04/10/28 22:34:05
>>917
C++スレで答えた者だが、
#include <stdio.h>
#include <math.h>
#define PI 3.141592653589793

double func(double x) {
return sin(x);
}

double _integrate(double x, double h, double sum, int count) {
printf("%.2lf, %.2lf, %.2lf, %d\n",x,h,sum,count);
if (count <= 0) return sum;
else return _integrate(x+2*h,
h,
sum+func(x) + 4 * func(x + h) + func(x + 2 * h),
--count);
}

double integrate(double x1, double x2, int n) {
double h;
h = (x2-x1)/n;

return _integrate(x1, h, 0.0, n/2) * (x2-x1)/n / 3.0;
}

int main() {
printf("%lf\n", integrate(0.0, PI, 20));
}
933デフォルトの名無しさん:04/10/28 22:37:43
C99以前
・入れ子は不可(×→/* /* */ */)
・/* 〜 */ のみ

C99以後
・入れ子可能(○→/* /* 〜 */ */)
・/* 〜 */に加えて // 〜 もあり
934デフォルトの名無しさん:04/10/28 22:43:20
>>930
すいません、昨日から考えている。でした。

>>931
対応できるようにお願いします。
935デフォルトの名無しさん:04/10/28 22:46:19
>>933
マジ?
ちょーうれしいんだけど
936917:04/10/28 22:58:49
>>927
展開しておけとはどのように書けばようのでしょうか?

>>932
関数はまだやっていません。申し訳ありません。
937デフォルトの名無しさん:04/10/28 23:01:21
//*
A
/*/
B
//*/
最初の/だけでABの選択可
938デフォルトの名無しさん:04/10/28 23:03:20
>>928
/*という連続したものを探し当てたら、*/を探し当てるまでコメントとして扱う。
以上
939デフォルトの名無しさん:04/10/28 23:05:34
>>936
ネタみたいだから、もう何も書かないけれど、ループをgotoで置き換えれば良い。
もしくは、
int main() {
double sum;
double x;
double h;
h = PI / 20;
x = 0;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
sum += sin(x) + 4 * sin(x + h) + sin(x + 2 * h);
x += 2 * h;
printf("%lf\n", sum);
}
と全て書く。
940デフォルトの名無しさん:04/10/28 23:10:05
>>939
sumが初期化されてないし答えが間違ってるぞ
941デフォルトの名無しさん:04/10/28 23:14:43
- double sum;
+ double sum = 0;

- printf("%lf\n", sum);
+ printf("%lf\n", sum * h /3.0);
942デフォルトの名無しさん:04/10/28 23:15:18
>>940
もうどうでもいいやん
適当に書いたんだよ
943デフォルトの名無しさん:04/10/28 23:16:12
>>942
じゃあ書くなよ
944デフォルトの名無しさん:04/10/28 23:16:39
>>943
ヒントものだね。
ないよりマシってやつだ。
945デフォルトの名無しさん:04/10/28 23:31:01
という事にしたいのですね
946デフォルトの名無しさん:04/10/28 23:35:44
>>945
好きにしてくれ
947デフォルトの名無しさん:04/10/29 00:35:21
一応次スレ
暇な人がエレガントにC/C++の宿題片づけます 33代目
http://pc5.2ch.net/test/read.cgi/tech/1097932699/
948デフォルトの名無しさん:04/10/29 01:12:52
    /\___/ヽ
   /''''''   '''''':::::::\    
  . |(●),   、(●)、.:| + 終わり?
  |   ,,ノ(、_, )ヽ、,, .::::|.   
.   |   `-=ニ=- ' .:::::::| +  
   \  `ニニ´  .:::::/  + 
,,.....イ.ヽヽ、ニ__ ーーノ゙-、   
:   |  '; \_____ ノ.| ヽ i  
    |  \/゙(__)\,|  i |  
    >   ヽ. ハ  |   ||. 
949デフォルトの名無しさん:04/10/29 01:30:13
>>948
ざんねんだったな。
エシュロンのエサになりな!
950872 :04/10/29 03:14:26
>>873さん、ありがとうございます!
レスが遅くなってすみませんでした。
僕もプログラムを組んでみていたのですが、
再帰のところの条件がうまくできなくて、∞ループに
なったりしていたんですが、おかげさまで解決できました!
>>879
おもしろいですね、僕も考えてみます。
951872:04/10/29 03:36:30
>>950
どちらさん?

>>873
ありがとうございました。ドンピシャでした。

952デフォルトの名無しさん:04/10/29 06:39:25
最初から最後までどうしようもないスレだったな
953デフォルトの名無しさん:04/10/29 12:42:38
次スレでも常識人さんが降臨しますように・・・
954873:04/10/29 15:39:55
>>950,951
同じ学校?
判ってるとは思うが「硬貨」に直すなら main 内での count() の第2引数を 7 -> 4 にしる。
955デフォルトの名無しさん:04/10/29 18:44:26
1900年以降の干支を出力するプログラムなのですが、下記のところが未熟者の私には限界です。
どうかご指摘お願いします。
#include <stdio.h>
int main(void)
{
char *eto[13][2]={"子","丑","虎","卯","竜","巳","午","未","申","酉","戌","亥",};
int e,da,sa,i;
printf("1900以降の西暦を入力して下さい\n");
scanf("%d",&e);
da=(e-1900)%12;9
for(i=0;i<=12;i++){
if(da==i){printf("%s",*eto[da]);}
}
return 0;
}
956デフォルトの名無しさん:04/10/29 19:11:20
配列は12個で、定数"子"の型は char[]だから
char eto[][12]={"子", ・・・か
char *eto[12]={"子", ・・・のどちらか

printf("%s\n",eto[da]);

あとfor ループは不要
957デフォルトの名無しさん:04/10/29 19:30:37
>>956様ありがとうございます
色々考えて下記のとおりになりましたが、なかなかうまくいきません。
ご指導の方、お願いします。
#include <stdio.h>
int main(void)
{
char eto[14][2]={"子","丑","虎","卯","竜","巳","午","未","申","酉","戌","亥",};
int e,i;
for(i=0;i<13;i++){
printf("%s\n",eto[i]);}
printf("1900以降の西暦を入力して下さい\n");
scanf("%d",&e);
printf("%s",eto[(e-1900)%12]);
return 0;
}
958デフォルトの名無しさん:04/10/29 19:36:15
>>957
いいかげんにしろよ
話を聞く気が無いなら去れ
959デフォルトの名無しさん:04/10/29 19:40:02
>>957
どんな症状かも言わないとは。人に尋ねる態度じゃないな。
960957:04/10/29 19:55:08
大変申し訳ありません。m(_ _)m
956様のおっしゃることを再度考え直しましたところ、
解決することが出来ました。
ありがとうございました。
961デフォルトの名無しさん:04/10/29 19:59:35
>m(_ _)m
なにこれ
最後までふざけた奴だな
962デフォルトの名無しさん:04/10/29 20:01:01
>>961
ふざけてないんていませんよ!
氏んでください!
963デフォルトの名無しさん:04/10/29 20:38:18
#include <stdio.h>
int main(void)
{
char eto[12][3]={"子","丑","虎","卯","竜","巳","午","未","申","酉","戌","亥"};
int e,i;
for(i=0;i<12;i++){
printf("%s\n",eto[i]);}
printf("1900以降の西暦を入力して下さい\n");
scanf("%d",&e);
printf("%s",eto[(e-1900)%12]);
return 0;
}
これじゃだめなんかねー
964デフォルトの名無しさん:04/10/29 20:45:29
>>963駄目だろ
965デフォルトの名無しさん:04/10/29 20:47:05
いや良いと思うぞ
966デフォルトの名無しさん:04/10/29 21:07:09
細かいこというと 虎->寅 竜->辰 なわけだが
967デフォルトの名無しさん:04/10/29 21:46:52
>>966
オサーン
968!=966:04/10/29 21:55:05
>>967
別に細かいことを言うのはオサーンの特性ではないぞ。
細かいことに気を使うことを「かっこわるい」だとか「器が小さい」などと
いう風に連想するような風潮があるみたいだが、それは良くない文化だ。
命題論理としてでもそれが正しいとは言えない。
969デフォルトの名無しさん:04/10/30 00:22:54
for(i=1;i<=8;i=i+7){
if(data[i][1]!=0 && data[i][1]==data[i][3])point[i][2]+=20;
if(data[i][8]!=0 && data[i][8]==data[i][6])point[i][7]+=20;
if(data[1][i]!=0 && data[1][i]==data[3][i])point[2][i]+=20;
if(data[8][i]!=0 && data[8][i]==data[6][i])point[7][i]+=20;
}

これにもう一個if分使ってすっきりしたいんですけど、どうやるんですか?
970969:04/10/30 00:35:46
if文じゃなくてfor文です
971デフォルトの名無しさん:04/10/30 00:38:32
>>968
敢えて言うが、「風潮」は「文化」ではないね。
「風潮がある」ことも「文化」ではないし。
細かいことを指摘すること自体は賛同するが、
自分が普段使わないような言い回しを無理して使うことはないよ。
972デフォルトの名無しさん:04/10/30 00:38:49
>>969
渦巻きでも作りたいのか?
973デフォルトの名無しさん:04/10/30 00:42:23
>>971
風潮は文化だよ
974デフォルトの名無しさん:04/10/30 00:47:22
>>969
無理にループにしようとするより、この方が判り易くない?
if(data[1][1]!=0) {
if(data[1][1]==data[1][3]) point[1][2]+=20;
if(data[1][1]==data[3][1]) point[2][1]+=20;
}
if(data[1][8]!=0) {
if(data[1][8]==data[1][6]) point[1][7]+=20;
if(data[1][8]==data[3][8]) point[2][8]+=20;
}
if(data[8][1]!=0) {
if(data[8][1]==data[6][1]) point[7][1]+=20;
if(data[8][1]==data[8][3]) point[8][2]+=20;
}
if(data[8][8]!=0) {
if(data[8][8]==data[8][6]) point[8][7]+=20;
if(data[8][8]==data[6][8]) point[7][8]+=20;
}
って、展開してみてわかった。オセロの評価関数か。
975デフォルトの名無しさん:04/10/30 00:58:44
>>971
不倫は文化だよ
976969:04/10/30 01:02:03
>>974
正解です。
そっちのほうがわかりやすい気がするが、if文がまだまだあるので
できるだけすっきりしたい。
977デフォルトの名無しさん:04/10/30 01:13:52
点対称・線対称で1/4に正規化したデータ作れ
978r:04/10/30 01:14:15
#define hoge(x,y,z) ( (z) += (( (x) != 0 && (x) == (y) ) ? 20 : 0));
こんなマクロでも
979デフォルトの名無しさん:04/10/30 01:28:04
int data[10][10];
int point[10][10];
void update_point_a(int x, int *n){
  if( data[x][n[0]] != 0 &&
      data[x][n[0]] == data[x][n[1]] )
    point[x][n[2]] += 20;
}
void update_point_b(int x, int *n){
  if( data[n[0]][x] != 0 &&
      data[n[0]][x] == data[n[1]][x] )
    point[n[2]][x] += 20;
}
void ( *func_tbl[] )(int, int* ) = {
  update_point_a,
  update_point_b
};
int main(){
  int index1[2] = {1, 8};
  int index2[2][3] = {{1,3,2}, {8, 6, 7}};
  int i, j, k;
  for( i = 0; i < 2; i++){
    for(j = 0; j < 4; j++){
      k = j % 2;
      func_tbl[k](index1[i], index2[k]);
    }
  }
  return 0;
}
980969:04/10/30 01:34:26
>>977
>>978
>>979
はまったく理解できない。しこしこif文書きます。
981デフォルトの名無しさん:04/10/30 01:57:43
>そっちのほうがわかりやすい気がするが、if文がまだまだあるので
>できるだけすっきりしたい。

ここまで言っといてそれはないだろ
982969:04/10/30 02:09:08
>>981
すっきりできるように考えてたら、まったく進まない。
if文ずらーと書けば時間かかるけど、単純作業だし。
でも見せなきゃなんないからあほみたいな書き方したくない。
983デフォルトの名無しさん
int data[8][8], point[8][8];

#define GET_PTR(a, x, y) ( &(a)[(x)][(y)] )
#define PDATA(x, y) GET_PTR(data, x, y)
#define PPOINT(x, y) GET_PTR(point, x, y)
#define UPDATE( a ) \
  { if( *((a)[0]) && *((a)[0]) == *((a)[1]) ){ *((a)[2]) += 20; } }

int *A[][3] = {
  { PDATA(1, 1), PDATA(1, 3), PPOINT(1, 2)},
  { PDATA(1, 8), PDATA(1, 6), PPOINT(1, 7)},
  { PDATA(1, 1), PDATA(3, 1), PPOINT(2, 1)},
  { PDATA(8, 1), PDATA(6, 1), PPOINT(7, 1)},
  { PDATA(8, 1), PDATA(8, 3), PPOINT(8, 2)},
  { PDATA(8, 8), PDATA(8, 6), PPOINT(8, 7)},
  { PDATA(1, 8), PDATA(3, 8), PPOINT(2, 8)},
  { PDATA(8, 8), PDATA(6, 8), PPOINT(7, 8)}
};

void foo(){
  int i;
  for( i = 0; i < sizeof(A) / sizeof(A[0]); i++){
    UPDATE( A[i] );
  }
}