- 1 名前:デフォルトの名無しさん mailto:sage [2009/03/02(月) 02:13:06 ]
- あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他や発言はスルーの方向で。
【質問者へ】 回答者の便宜のため、質問の際は以下を行うことを推奨します。 ・質問は【質問テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。 ・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。 ・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。 【質問テンプレ】 [1] 授業単元: [2] 問題文(含コード&リンク): [3] 環境 [3.1] OS: (Windows/Linux/等々) [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等) [3.3] 言語: (C/C++/どちらでも可 のいずれか) [4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) [5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々) 【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm 【C 関数検索 man on WWW】 www.linux.or.jp/JM/index.html 【過去ログ検索】 chomework.sakura.ne.jp/ 【wiki】 www23.atwiki.jp/homework/ 前スレ C/C++の宿題片付けます 122代目(実質123代目) pc11.2ch.net/test/read.cgi/tech/1232029287/
- 152 名前:規制解除したようす mailto:sage [2009/03/09(月) 23:56:00 ]
- #include <stdio.h>
int main(void) { int i; for(i=1;i<=10000;i++){ printf("%s%s%d ", (i%3==0 || (i/10)-(i/100)*10==3 || (i/100)-(i/1000)*10==3 || (i/1000)-(i/10000)*10==3 )?"ア":"", (i%5==0)?"犬":"", i); if(i%10==9) puts(""); } return 0; }
- 153 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 02:52:49 ]
- >>99
俺にはこれが限界だ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8959.txt
- 154 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 02:54:49 ]
- >num = rand() % 53;
こう書くと偏るからダメだって言う奴がでるからダメ。
- 155 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 02:59:31 ]
- >>154
randの偏りをなくすのは諦めたw あと、カードを取ってあがった場合の処理もw
- 156 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 03:07:41 ]
- num = rand() % (i + 1) もしくは num = i + rand() % (53 - i) にする。
または、 for(i=53; i>1; ) { num = rand() % i--; temp = allcard[i]; allcard[i] = allcard[num]; allcard[num] = temp; } にする。
- 157 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 03:42:25 ]
- >>153見ずに>>154見て、下位ビットは云々という話かとおもた
- 158 名前:152 mailto:sage [2009/03/10(火) 10:24:48 ]
- >>152 の6〜8行目。間違っていました。
訂正後:printf("%s%s%d ", (i%3==0 || i%10==3 || (i/10)%10==3 || (i/100)%10==3 || (i/1000)%10==3)
- 159 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 11:34:33 ]
- >>144
嫌がらせのように見にくいコード #include <stdio.h> #include <string.h> int main() { char buf[256]; int i; for(i = 1; 1; i++, sprintf(buf, "%d", i)) printf("%s%s%d ", ((i % 3 == 0 || strchr(buf, '3') != NULL) ? "ア" : ""), ((i % 5 == 0) ? "犬" : ""), i); return 0; }
- 160 名前:デフォルトの名無しさん [2009/03/10(火) 11:58:21 ]
- 別にこれでええやん
#include "stdafx.h" #include <iostream> #include "windows.h" using namespace std; int main(void){ int i; for(i=1;i<=10000;i++){ if(i%3==0 && i%5!=0){ cout << "ア"; }else if(i%5==0 && i%3!=0){ cout << "犬"; }else if(i%3==0 && i%5==0){ cout << "ア犬"; } cout << i << endl; Sleep(500); } return 0; }
- 161 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 12:11:27 ]
- >3が付く数字
- 162 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 12:12:41 ]
- >>160
*30から*39も全部アホにならないといけないそうだ 300から399も
- 163 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 12:15:49 ]
- 1からnまでの間に3の倍数と3のつく数字がいくつあるか求める関数
int nabeatu(int n) を作れ というのを以前見たような気がする
- 164 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:32:53 ]
- >>150に勝てる気がしなくてやめた
- 165 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:50:54 ]
- 倍数を求めるのは難しくないが、3の付く数字は
一度文字列に置き換えて、3が含まれるかチェキするとか。
- 166 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 13:51:44 ]
- って、文字列に置き換える必要はなかったか。10で割った余りが3かどうかで
順に10で割っていけば良いか、すまそ。
- 167 名前:99 mailto:sage [2009/03/10(火) 16:11:22 ]
- >>153
ありがとうございます。 今夜にでもゆっくりソースを読ませてもらいます。 今後の書き方の参考にもさせてもらいます。
- 168 名前:デフォルトの名無しさん [2009/03/10(火) 18:33:38 ]
- >>161-162
あぁ読み間違えてた 俺もプログラミング習いたてだけど 一応できたわ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8964.txt つうか、>>150みたいな短い書き方あるんだな 俺もそういう書き方してえわ
- 169 名前:デフォルトの名無しさん mailto:sage [2009/03/10(火) 22:12:07 ]
- 生年月日を2000/01/01もしくは2000/1/1の形式で入力し、
誕生日から現在まで何日経過したか、現在の年齢の2項目を表示するプログラムをお願いします。
- 170 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:35:21 ]
- >>169 かなり制約つき
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8965.txt コンパイラ:VC++ 2005 日数;満日数 年齢:数え年齢(めんどうなので。満年齢は勝手にどうぞ) 誕生日:1970年以降 現在日付:2038年迄
- 171 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:52:00 ]
- >>169
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8966.txt 投稿してみよう…
- 172 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 01:54:59 ]
- おまえら優しいな…
- 173 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 09:04:04 ]
- >>169
2行目が曖昧かな?誕生日からというのは、前の誕生日からなのか、 生まれたその日からのどちらか?
- 174 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 09:25:19 ]
- >>173
お誕生日会と誕生日の違いだな。
- 175 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 09:29:37 ]
- >>174
お誕生日”会” ???
- 176 名前:170 mailto:sage [2009/03/11(水) 09:50:29 ]
- そもそも、生まれた当日は0日目なのか、1日目なのか。
それの方が悩んだ。
- 177 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 10:01:16 ]
- 年齢計算に関する法律について調べるべし。
- 178 名前:170 mailto:sage [2009/03/11(水) 10:26:20 ]
- オッケー、日本語で。0日目で正しいようだ。
「年齢計算に関する法律」で検索した。
- 179 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 17:28:08 ]
- 法律を知らないとプログラムって書けないんだね><
- 180 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 17:44:12 ]
- >>179
法律を知らないと書けないと言うか 作ろうとしてるプログラムの内容を知ってないと 作れない
- 181 名前:99 mailto:sage [2009/03/11(水) 19:19:39 ]
- 要求定義ってやつじゃないか?
- 182 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 19:34:42 ]
- >>178
年齢ハ出生ノ日ヨリ之ヲ起算ス 初日不算入の例外が年齢だよ 出生日が1日目
- 183 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 20:19:05 ]
- 指定した年に、13日の金曜日があるか調べ、あるならそれが何月か表示せよ
- 184 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 20:54:30 ]
- 指定した年に、13日の金曜日があるか調べ、あるならその日を災いにせよ
>>182 例外に含まれるのを見落としてました。 なるほどしかし、法律的には4月1日に生まれた子女は翌年の3月31日 午後12時に1歳に成るとなっている。4月1日午前0時でなく。 満年齢はそれでいいとして、課題は"経過した"日数も…(2項目)だから生まれた日の 翌日が第1日目でいいじゃないかと思う。生まれた当日は何かとバタバタしてるし。 正確に言えば翌日も出生時刻までが0日目で、第2日目てことは無いと思う。
- 185 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 21:06:52 ]
- >>183
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8967.txt
- 186 名前:185 mailto:sage [2009/03/11(水) 21:12:19 ]
- 間違えてた
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8968.txt
- 187 名前:デフォルトの名無しさん mailto:sage [2009/03/11(水) 22:39:41 ]
- >>186
今年って3回もあるんだ ジェイソンも大変だなw
- 188 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 02:21:34 ]
- kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8969.txt
言語・コンパイラ:C・VC++ 2005 日数;満日数 年齢:数え年齢(めんどうなので。満年齢は勝手にどうぞ) 誕生日:1901年以降 <--- new 現在日付:2038年迄 <--- なんとか?
- 189 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 02:46:53 ]
- >>188
struct tmからtime_tをつくるmk_time()つー関数がなんか便利だたよ
- 190 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 02:59:04 ]
- × mk_time
○ mktime tm構造体つくる→年月日時分秒メンバを書き換える→mktime() →localtime_s()でstruct tmに変換 →曜日・日数が自動補完されてうまー
- 191 名前:デフォルトの名無しさん [2009/03/12(木) 11:27:49 ]
- 皆C言語で書いてるってことなのか?
よくわからないんだけどCとC++が微妙に構文違うのはなぜなの?
- 192 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 11:44:11 ]
- >>191
struct tm 変数名; // C structが必要 tm 変数名; // C++ structをつけなくていい C++は、変数の宣言が処理の途中で出来る。等々
- 193 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 15:13:21 ]
- ttp://www3.uploader.jp/dl/akaiup/akaiup_uljp00797.zip.html
[1] 授業単元: エムピーアイ [2] 問題文(含コード&リンク):ガウス消去法を並列化せよ。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc 3.4 [3.3] 言語: C [4] 期限: 2009/03/13中 [5] その他の制限: エムピーアイの問題ですが、後退代入以外完成してます。上三角型の行列を作るところまでは 出来たのであとは単純に答えを計算するだけなのですが、アルゴリズムがわかりません。 なので115行目の”後退代入”のところを埋めて下さいまし。 エムピーアイというか単にC言語のループの書き方のレベルなのでエムピーアイを知らなくても アルゴリズムがわかれば書けると思います。なおプロセス数はmpirun -np 4 ./a.out で実行して下さい(添付のインプットファイルが4行4列なので)
- 194 名前:デフォルトの名無しさん [2009/03/12(木) 19:50:50 ]
- プログラム教えてください
配列の中の数値をランダムに入れ替えたいんです たとえば int A[]={ 1,2,3,4,5,6,7,8,9,10} ↓ランダム 4,9,5,1,8,6,2,10,3,7 教えてください
- 195 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 20:08:15 ]
- >>194
for ( i = 0; i < 100; i++) { 乱数で0-9の数字を2個( p , q )作成 tmp = A[ p ]; A[ p ] = A[ q ]; A[ q ] = tmp; }
- 196 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 20:34:59 ]
- #include <stdio.h>
#include <time.h> int main(void) { int ar[]={11,12,13,14,15,16,17,18,19,20}; int size=sizeof(ar)/sizeof(ar[0]); int i, num, temp; srand( (unsigned)time( NULL ) ); for(i=size-1; i>=0; i--){ num = rand() % (i + 1); temp = ar[i]; ar[i] = ar[num]; ar[num] = temp; printf("%d ", ar[i]); } return 0; }
- 197 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:00:29 ]
- >>196
偏りそうにも見えるが、上手くいくのかな? 誰か優しく証明して。
- 198 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:15:23 ]
- なんでこう、乱数絡みの問題が定期的に湧くんだw
- 199 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:21:01 ]
- 偏りっていうのはrandをつかうからってことなの?
どれぐらい偏るもんなの?
- 200 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:24:01 ]
- いやいや、randのせいじゃなく、
単純に処理としての話。 for(i=0; i < size; i++)だと分かるんだけど、 逆でも良いのかなってこと。
- 201 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:50:49 ]
- >>200
> for(i=0; i < size; i++)だと分かるんだけど、 > 逆でも良いのかなってこと。 逆のほうが簡潔に書けるって話だな デバッガで追っかけるとわかる for(i=0; i < size; i++)で書いてみ 最終的に行き着くのが196になる
- 202 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 21:59:46 ]
- なんで196に行くのかが全然わからないや。
- 203 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 22:32:48 ]
- >>196
出来ました! ありがとうございます すごいですね でも、randを使っているから同じ数字が入りそうなんですけど なんで同じ数字が入らないんだろう?
- 204 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 22:38:04 ]
- ああ、iだからrand減って行くんですね
分かりました i=size-1と(i + 1)がまだ分かりませんが なんとか分かるように頑張ります ありがとうございます
- 205 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 22:40:21 ]
- 私の知能じゃ10年かかっても思いつきませんでした
ありがとうございますm(_;)m
- 206 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 23:35:10 ]
- まず、全体の中から1個選んで一番後ろに入れる。
次に、残ったものから1個選んで後ろから二番目に入れる。 これを残り0個になるまで繰り返す。 簡単だろ?
- 207 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 00:30:49 ]
- 規則性はあるけど、乱数発生器をiで割っているのがいいよね
- 208 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 00:31:24 ]
- 要するに松田優作ってことだ
- 209 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 01:06:18 ]
- >>201
>>156
- 210 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 07:17:51 ]
- >>206
なるほど
- 211 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:04:38 ]
- 学校の課題を手伝ってください。
[1] 授業単元: データ構造アルゴリズム [2] 問題文(含コード&リンク): キューを利用して、プリンタのプリントキューを再現したプログラム(以下に要点を記載)を作成しなさい。 "1”を入力するとキューにデータが追加され"2"を入力するとキューからデータが取り出される キューが満杯になったり、空になったりした際はその旨をメッセージで表示する。 また、以下の関数を作成し、使用しなさい。 vaio enqueue(int val)キューにデータを追加する vaio dequeue() キューからデータを取り出す vaio queue_print()キュー全内容を表示する 以上ですお願いします。 [3] 環境 [3.1] OS: Linux ソラリス [3.2] コンパイラ名とバージョン: 不明 [3.3] 言語: C [4] 期限: ([2009年3月15日]) [5] その他の制限: なし
- 212 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:10:44 ]
- プリントキューの仕様が不明だな。
- 213 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:12:10 ]
- vaioも不明
- 214 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:17:14 ]
- 頭が弱いと生きるの大変そうだね
- 215 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:17:56 ]
- ちょww vaio?wwww
- 216 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:19:25 ]
- 失礼しましたvaioじゃなくvoidでした。
キューを利用して、プリンタのプリントキューを再現したプログラム(以下に要点を記載)を作成しなさい。 "1”を入力するとキューにデータが追加され"2"を入力するとキューからデータが取り出される キューが満杯になったり、空になったりした際はその旨をメッセージで表示する。 また、以下の関数を作成し、使用しなさい。 void enqueue(int val)キューにデータを追加する void dequeue() キューからデータを取り出す void queue_print()キュー全内容を表示する
- 217 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:41:08 ]
- 学校の課題でどうしてもできないC言語があるのですかどなたか手伝ってください。
スタックを利用した逆ポーランド電卓を作成しなさい。ただし、演算は四則演算のみとし、数値と数値、数値と演算子の間は半角スペースで区切って入力することとする。 お願いします。
- 218 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:42:22 ]
- >>217
>>1
- 219 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:05:23 ]
- [1] 授業単元: データ構造アルゴリズム
[2] 問題文(含コード&リンク):要素数10個の整数配列を用意します。要素を入力し、クイックソートを用いて昇順にソートするプログラムを作成しなさい。 [3] 環境 [3.1] OS: (Linux/) [3.2] コンパイラ名とバージョン: (わかりません) [3.3] 言語: (C) [4] 期限: [無期限] [5] その他の制限: なし
- 220 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 18:56:32 ]
- [1] 授業単元: データ構造アルゴリズム
[2] 問題文 スタックを利用した逆ポーランド電卓を作成しなさい。ただし、演算は四則演算のみとし、数値と数値、数値と演算子の間は半角スペースで区切って入力することとする。 [3] 環境 [3.1] OS: (Linux) [3.2] コンパイラ名とバージョン: (gcc) [3.3] 言語: (C) [4] 期限: [3/16] [5] その他の制限: なし
- 221 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:03:19 ]
- >>211
勝手に色々想像した。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8974.txt
- 222 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:08:53 ]
- >>220 osはunixでした。
- 223 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:11:10 ]
- >>219 私もosはunixでした。
- 224 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:01:14 ]
- >>221
dequeue()の戻り値もvaioだぞw
- 225 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:14:08 ]
- >>219
#include<stdio.h> #include<stdlib.h> #define N 10 int f(const void*a,const void*b){  return *(const int*)a-*(const int*)b; } int main(){  int a[N],i;  for(i=0;i<N;++i)scanf("%d",a+i);  qsort(a,N,sizeof(int),f);  for(i=0;i<N;++i)printf("%d ",a[i]); }
- 226 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:19:18 ]
- >>225ありがとうございます。
- 227 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:28:39 ]
- osによってプログラムの違いってあるんですか?
- 228 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:56:28 ]
- for(i=0;i<N;++i)scanf("%d",a+i);
for(i=0;i<N;++i)printf("%d ",a[i]); なんか気持ち悪いな
- 229 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 20:57:42 ]
- >>228
意図が読めないなんてピュアな方ですねw
- 230 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:09:19 ]
- >>220 終了はCtrl+Z
#include<stdio.h> #include<stdlib.h> int s[99],p; void push(int n){s[p++]=n;} int pop(void){return s[--p];} int main(){  char b[99];  for(;scanf("%98s",b)==1;){   switch(*b){    case'+':push(pop()+pop());break;    case'-':push(pop()-pop());break;    case'*':push(pop()*pop());break;    case'/':{int t=pop();push(pop()/t);}break;    default:push(atoi(b));   }   printf("%d\n",s[p-1]);  } }
- 231 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:12:19 ]
- >>230dクス
- 232 名前:230 mailto:sage [2009/03/14(土) 21:13:38 ]
- やべバグあるわ。今直す
- 233 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:17:42 ]
- [1] 授業単元:アルゴリズム
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8975.txt データを表示する場合に,データの昇順と降順の両方向での表示が選択で きるように,このプログラムに変更してください [3] 環境 [3.1] OS:Win [3.2] コンパイラ名とバージョン:gcc 3.4 [3.3] 言語:C [4] 期限: 2009/03/16 [5] その他の制限: ありません よろしくお願いします
- 234 名前:230 mailto:sage [2009/03/14(土) 21:18:22 ]
- >>220 少し短くなったかな
#include<stdio.h> #include<stdlib.h> int s[99],p; void push(int n){s[p++]=n;} int pop(void){return s[--p];} int main(){  char b[99];  for(;scanf("%98s",b)==1;printf("%d\n",s[p-1]))   switch(*b){    int t;    case'+':t=pop();push(pop()+t);break;    case'-':t=pop();push(pop()-t);break;    case'*':t=pop();push(pop()*t);break;    case'/':t=pop();push(pop()/t);break;    default:push(atoi(b));   } }
- 235 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:24:11 ]
- >>234さんたびたびdクスです。
- 236 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:27:49 ]
- >>233
void PrintTreeRev(BinNode *p){ if (p != NULL) { PrintTree(p->right); PrintData(p->data); PrintTree(p->left); } } を追加してメニューから呼ぶようにしろ
- 237 名前:236 mailto:sage [2009/03/14(土) 21:28:40 ]
- おーう、中のPrintTreeもPrintTreeRevだ
逝ってくる
- 238 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:33:53 ]
- >>227
微妙に質問が質問として成立してないんじゃね? OS自体がプログラムだから、プログラムとして違いがあるし、 OSの機能を使うプログラムの場合も、OSが違うからプログラムとして違いがある。 >>234 いい感じ でも、"%98s"じゃなく、"%98[^\n]"じゃないとダメぽ
- 239 名前:234 mailto:sage [2009/03/14(土) 21:44:06 ]
- >>238
すまん。なぜダメなのか教えてくれないか。 何が入力されたときにまずい?
- 240 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 21:48:53 ]
- >>239
すんません。 勘違いしてました。 scanf一回で、式を全部持ってくるのかと思ってました。。。
- 241 名前:234 mailto:sage [2009/03/14(土) 21:51:32 ]
- >>240おk。
- 242 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:12:01 ]
- >>237
出来ました!ありがとうございます!
- 243 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 22:54:57 ]
- [1] 授業単元:アルゴリズムとデータ構造
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8976.txt [3] 環境 [3.1] OS:ウィンドウズvista [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限: [2009年3月15日] [5] その他の制限:なし お願いします
- 244 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:23:05 ]
- >>243
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8977.txt
- 245 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 00:37:13 ]
- あるある
- 246 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:19:15 ]
- osの違いでC言語に違いが出てくることってあるんですか?
- 247 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:19:53 ]
- >>244
ありがとうございます
- 248 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 01:49:26 ]
- [1] 授業単元: データ構造アルゴリズム
[2] 問題文 スタックを利用した逆ポーランド電卓を作成しなさい。ただし、演算は四則演算のみとし、数値と数値、数値と演算子の間は半角スペースで区切って入力することとする。 逆ポーランド電卓 逆ポーランド記法の数式を入力してリターンキーを押すと答えを表示してくれるもの。スタックを使用して以下のように計算する。 1.数値なら、そのままスタックにつむ 2.演算子なら、2つの数をスタックからおろして演算を行い、その結果を再びスタックにつむ。 ※逆ポーランド記法とは演算子を後ろに置く記法。例えば1+2は12+に、(1+2)*3は12+3*になる。逆ポーランド記法は後置法ともよばれる。 [3] 環境 [3.1] OS: (unix) [3.2] コンパイラ名とバージョン: (gcc) [3.3] 言語: (C) [4] 期限: [3/16] [5] その他の制限: なし よろしくお願いします。
- 249 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:08:17 ]
- >>248
>>220と>>234を見ろ。 なんというか、まあ、お前らのところ本当にどうしようもないのしかいないんだな
- 250 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:18:35 ]
- >>249 問題が同じでも細かいところが違うんですよ。
- 251 名前:デフォルトの名無しさん mailto:sage [2009/03/15(日) 02:24:17 ]
- 確かにOSが違うな
- 252 名前:249 mailto:sage [2009/03/15(日) 02:51:34 ]
- >>250
すまん、その細かいところってどこだ? >>251 >>222見る限りOSも同じだが。
|

|