13/10/16 16:51:40.23
あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。
気に入らない質問やその他の発言はスルーの方向で。
「著作」「違法」「Qz」はNGワード推奨。
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。 >>2以降にあります。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を
入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
2:デフォルトの名無しさん
13/10/16 16:53:18.02
【質問テンプレ】
[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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
URLリンク(s2.etowns.slyip.net)
URLリンク(codepad.org) ←遅い時間は重い事があります
URLリンク(ideone.com)
URLリンク(pastebin.com) ←たまにテンポるので上の2つが混んでいる時以外はなるべく使わないで下さい
【C 関数検索 man on WWW】 URLリンク(www.linux.or.jp)
【過去ログ検索】 URLリンク(chomework.sakura.ne.jp)
【wiki】 URLリンク(www23.atwiki.jp)
前スレ
C/C++の宿題片付けます 165代目
スレリンク(tech板)
3:デフォルトの名無しさん
13/10/16 16:53:50.98
これまでのまとめ
・宿題の丸投げは問題文の著作権(著作権法 二十三条 公衆送信権)を侵害する。
・問題文には第三者の著作物が含まれている場合ある。
著作権法第三十五条の規定により第三者の著作物が利用されている場合もある。
問題丸投げは同条の規定外なので第三者の権利侵害にあたる
・丸投げを煽るテンプレは著作権侵害の教唆にあたる
・宿題丸投げはカンニングと同等の行為として学則による処罰の対象になる。
・悪質なカンニング行為は偽計業務妨害(刑法 二百三十三条)として捜査の対象になる。
・カンニング行為を煽っているテンプレはその教唆犯(刑法 六十一条)
以上、宿題丸投げスレは違法行為を煽り、テンプレ自体も犯罪行為であることが明確に
なったので、これ以上の継続は無用
4:デフォルトの名無しさん
13/10/16 16:55:22.12
本科目の受講生より、こちらにて出題の課題を
インターネットに投稿している者がいるとの連絡を受けました。
今回の課題は学生の理解を深める為に個別レポートとして出題されたものであり、
問題の解答そのものを丸投げすることは課題の趣旨に反する行為となります。
初回の講義でお話しましたように、ソースコードの書き方には個人差があり、
過去に提出したレポートなどから本人が書いたものかどうか判別することは十分可能です。
他人が書いたソースコードをレポートとして提出することは重大な不正行為に当たります。
提出されたレポートにおいて不正が確認された場合、本学の懲罰規程に従い厳しく処罰されます。
締切りはまだ時間もいくらか残されていますので、
この問題を投稿した、または参考に読んでいる学生には自分の力で
今回の課題に取り組んで頂けることを期待しています。
5:デフォルトの名無しさん
13/10/16 17:06:30.70
3 名前:あぼ~ん[あぼ~ん] 投稿日:あぼ~ん
4 名前:あぼ~ん[あぼ~ん] 投稿日:あぼ~ん
6:デフォルトの名無しさん
13/10/16 17:10:02.09
>>3
関係ねえよ
>>4
関係ねえよ
7:デフォルトの名無しさん
13/10/16 17:33:53.38
次回から、推奨NGワードに「違法行為」いれた方がいい?
8:デフォルトの名無しさん
13/10/16 18:30:53.29
>>7 違法はすでに入ってる
9:デフォルトの名無しさん
13/10/16 19:09:05.21
そうだぬ
10:デフォルトの名無しさん
13/10/17 05:18:39.58
前スレ >>984
984 :デフォルトの名無しさん:2013/10/16(水) 13:06:20.87
1 授業単元 プログラミング
2 問題 高さh、質量m、初速度vを入力して、物体の軌跡を計算し、グラフを描画(SVGファイルを出力)する。
URLリンク(ideone.com)
変更は受け付けない
11:デフォルトの名無しさん
13/10/17 14:27:01.45
>>10
スタート地点のボールが四半円になってませんか?
12:デフォルトの名無しさん
13/10/17 14:43:43.16
>>11
だから?
仕様も環境もまともに書かない奴にはこれで十分だ
13:デフォルトの名無しさん
13/10/17 14:52:20.81
cout に << flush したい衝動に駆られている
14:デフォルトの名無しさん
13/10/17 15:16:54.81
そんなに言うなら自分で書けばいいじゃん
なんなの?
15:デフォルトの名無しさん
13/10/17 21:04:18.01
仕様や環境の提示がまともかどうかと、
回答に問題がまともかどうかは、別の話
16:デフォルトの名無しさん
13/10/17 21:05:02.63
回答がまともかどうかは、別の話
17:デフォルトの名無しさん
13/10/17 22:37:46.95
linux使いとしてはグラフ云々はさっぱりw
放物線は二次関数で一発でしょ。
y''=-g を時間で二回積分すればいい。
x'=0だから簡単。
18:デフォルトの名無しさん
13/10/17 22:55:25.50
>>17
SVGはただのテキストファイルだぞ?
19:デフォルトの名無しさん
13/10/17 23:07:51.36
と言うかSVGを比較的扱いやすいInkscapeはLinuxが主戦場だったり。
20:デフォルトの名無しさん
13/10/18 05:16:35.11
>>16
だからそこまで言うなら自分が書けばいいだろと。
vcかどうかも、グラフに何が必要かも書いてない。
他人に頼むときにも適当な野郎には、適当な回答で十分だよ。
21:デフォルトの名無しさん
13/10/18 08:12:35.64
あれ、鉛直下向きに投げ下ろしたら放物線じゃないよな
しかも軌跡なんだから縦に直線引けば常に正しいはず
22:デフォルトの名無しさん
13/10/18 08:14:05.19
重力と空気抵抗の条件が書いてない時点でどうしようもないだろ
23:デフォルトの名無しさん
13/10/18 08:50:30.84
>>21
正解
>>10 は不正解
24:デフォルトの名無しさん
13/10/18 09:12:03.15
>>21
>>10
>初速度v
だから、普通の頭で考えれば、3次元。
演習で簡易な設定なら2次元。
25:デフォルトの名無しさん
13/10/18 09:33:37.12
ひねくれ王でも決めてるのか?
26:デフォルトの名無しさん
13/10/18 10:32:59.47
>>23
ちがう
>>10 で正解
>>24 も言ってるように v はベクトル
27:デフォルトの名無しさん
13/10/18 10:35:02.56
いやw
問題には「鉛直下向き」と表現されているのだから
ベクトルでも水平成分は0とみなすので縦に直線で良いんよ
28:デフォルトの名無しさん
13/10/18 10:40:08.14
>>18
不勉強をお詫びします。
29:デフォルトの名無しさん
13/10/18 10:48:46.17
水平成分がなかろうと、時間について表示すれば二次元になるだろ。
30:デフォルトの名無しさん
13/10/18 10:57:08.56
(二次元の)グラフには縦軸と横軸とそれぞれの単位を書きなさいって
小学校の先生が言ってた
31:デフォルトの名無しさん
13/10/18 10:58:48.14
そういう機能はいらないです
32:710
13/10/18 12:08:41.49
>>22
子どもかよ (w
33:デフォルトの名無しさん
13/10/18 12:40:21.55
>>22
その理屈だと、鳥が邪魔する可能性についても記述が無いなw
34:デフォルトの名無しさん
13/10/18 18:41:43.89
>>33
鳥がコリージョンを起こしたり、鳥のワーム自動除去機能や、繁殖期における干渉についても記述のほしいところだ
35:デフォルトの名無しさん
13/10/18 21:34:11.21
飛んでいるジェット機が衝突する可能性とか、落ちてきた隕石と衝突する可能性とか
36:デフォルトの名無しさん
13/10/18 21:45:19.84
ヒッグス場を考慮する必要がある
37:デフォルトの名無しさん
13/10/18 22:41:18.98
空気抵抗は微分方程式を解けばいい。
結局 終端速度で落っこちてくる。
38:デフォルトの名無しさん
13/10/19 20:18:22.16
>>34
RFCを参照だなw
39:デフォルトの名無しさん
13/10/20 03:01:38.45
>>24
普通の頭ってなんだよw
用語としてなら>>26の言うとおりベクトルであって次元は関係ない
むしろ普通に考えたら水平投射の速さの事だろ
なのに鉛直下向き指定があるから矛盾しないように解釈すると>>21になる
空気抵抗とか鳥は指定ないから考慮したい人だけすればいい
40:デフォルトの名無しさん
13/10/20 09:16:45.57
1] 授業単元:プログラミング
[2] 問題文(含コード&リンク): 金額を入力してお札のカウントをする。1万はman,5千はgo,千はsenとする。89000円と入力したらman=8 go=1,sen=4になるようにカウントする。
[3] 環境
[3.1] OS: windos8
[3.3] 言語: C
[4] 期限: ([2013 10 20 18時まで
全然分からなかったので、やさしい方教えてください。
41:デフォルトの名無しさん
13/10/20 09:36:25.69
>>40
#include <stdio.h>
int main(void)
{
int kingaku, man, go, sen;/* 変数を定義 */
printf("金額=");/* 入力を促すための表示 */
scanf("%d", &kingaku);/* 金額を入力 */
man = kingaku / 10000;/* 1万円札の枚数。manはint(整数)のため、小数点以下は切捨てられる。 */
kingaku = kingaku % 10000;/* 10000で割った余り */
go = kingaku / 5000;/* 5000円札の枚数 */
kingaku = kingaku % 5000;/* 5000で割った余り */
sen = kingaku / 1000;/* 1000円札の枚数 */
printf("man=%d go=%d,sen=%d¥n", man, go, sen);
return 0;
}
42:デフォルトの名無しさん
13/10/20 09:59:45.66
解答1.
x=89000;
man=x/10000;
go=(x%10000)/5000;
sen=(x%10000)%5000;
解答2.
x=89000;
sen=x/1000;
go=sen/5; sen-=go*5;
man=go/2; go-=man*2;
43:デフォルトの名無しさん
13/10/20 10:31:56.63
>>40,41
ありがとうございます。
#include <stdio.h>
int main(void) {
int kingaku, man, go, sen;
printf("Input Okane->");
scanf("%d", &kingaku);
man=kingaku/10000;
go=(kingaku%10000)/5000;
sen=(kingaku%10000)%5000;
printf("10000[en]=%d\n",man);
printf("5000[en]=%d\n",go);
printf("1000[en]=%d\n",sen);
return 0;
}
このようにやったらsenのあたいが4000になります(-_-;)
どこが違いますか?
44:デフォルトの名無しさん
13/10/20 10:36:10.51
丸投げする奴って一片たりとも自分で考える気無いんだな
45:デフォルトの名無しさん
13/10/20 10:39:00.96
オリンピック記念10万円硬貨とか
二千円札とかを忘れないで
46:デフォルトの名無しさん
13/10/20 10:46:04.91
>>39
時間と位置のグラフなら放物線になるんじゃないの?
47:デフォルトの名無しさん
13/10/20 10:46:32.48
>>44
そういうスレだから
嫌なら見るな
48:デフォルトの名無しさん
13/10/20 11:21:52.32
うむ、日本の将来を担う優秀なバイトテロ戦士もこういったスレで育つのだから
嫌なら見るな
49:デフォルトの名無しさん
13/10/20 11:53:15.14
>>46
グラフには縦軸や横軸や単位を書けと小学校の時に習うぞ
50:デフォルトの名無しさん
13/10/20 13:34:01.69
vはvelocityのv
51:デフォルトの名無しさん
13/10/20 13:59:45.94
でもベクトルって指定してないんだから位置なら間違って無くね?
なんで間違いって事になってんの?
52:デフォルトの名無しさん
13/10/20 16:25:51.24
速度はベクトルだぞ?
53:デフォルトの名無しさん
13/10/20 16:35:04.20
//片付けお願いします。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#define N 300
int i;
void BubbleSort(int *p,int *q,int *pp,int *qq);
int main (void)
{
int aa=0,bb=0,cc=0,idt[N];
srand((unsigned)time(NULL));
printf("ソート前\n");
for(i=0;i<N;i++)
{
idt[i]=rand()%N;
printf("%4d",idt[i]);
}
printf("\n\nソート後\n");
BubbleSort(&aa,&bb,&cc,idt);
54:デフォルトの名無しさん
13/10/20 16:35:37.50
for(i=0;i<N;i++)
{
printf("%4d",idt[i]);
}
printf("\nwhile %6d\n",aa);
printf("for %6d\n",bb);
printf("if %6d\n",cc);
return 0;
}
55:デフォルトの名無しさん
13/10/20 16:36:07.89
void BubbleSort(int *p,int *q,int *pp,int *qq)
{
int loop=1,tmp;
while(loop)
{
loop=0;
for(i=0;i<N-1-*p;i++)
{
if(qq[i]>qq[i+1])
{
tmp=qq[i];
qq[i]=qq[i+1];
qq[i+1]=tmp;
*pp++;
loop=1;
}
*q++;
}
*p++;
}
return;
}
56:デフォルトの名無しさん
13/10/20 16:39:21.92
>>52
表示するのは速度ともスカラーともベクトルとも言って無くね
57:デフォルトの名無しさん
13/10/20 16:43:44.47
ベクトルの意味がわかってなさそうな奴がいるな
58:デフォルトの名無しさん
13/10/20 17:19:25.84
>>46,56
軌跡って言ってんだろ節穴か
59:デフォルトの名無しさん
13/10/20 17:46:53.48
授業単元:プログラミング
[2] 問題文(含コード&リンク):
10000秒を入力して、2時間46分40秒と表示させるにはどうすればよいですか?[3] 環境
[3.1] OS: windos8
60: ◆QZaw55cn4c
13/10/20 17:58:07.06
>>59
ごめん win8 もってないんだ…
61:デフォルトの名無しさん
13/10/20 18:01:43.99
>>59
テンプレ全部書けよw
62:デフォルトの名無しさん
13/10/20 18:10:50.18
不法行為を煽るな犯罪者め
63:デフォルトの名無しさん
13/10/20 18:18:09.55
>>59
URLリンク(ideone.com)
64:デフォルトの名無しさん
13/10/20 18:19:33.02
>>59
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <limits.h>
int input_str(char *buf, size_t size) {
if (!buf || !size || !fgets(buf, size, stdin)) return 0;
if ((buf = strchr(buf, '\n'))) *buf = '\0';
else while (getchar() != '\n');
return 1;
}
int input_num(int *num) {
unsigned long val;
char buf[16], *end;
if (!num || !input_str(buf, sizeof buf)) return 0;
val = strtoul(buf, &end, 10);
if (errno == ERANGE || !*buf || *end || val > INT_MAX) return 0;
*num = (int)val;
return 1;
}
int main(void) {
int h, m, s;
printf("何秒?");
if (input_num(&s)) {
h = s / 3600; s %= 3600;
m = s / 60; s %= 60;
printf("%d時間%d分%d秒\n", h, m, s);
}
return 0;
}
65:デフォルトの名無しさん
13/10/20 19:16:12.59
>>56
スカラーなら速さ
66:デフォルトの名無しさん
13/10/20 19:19:34.90
#include <stdio.h>
int main( int argc, char** argv ){
int sec = 0;
if( scanf("%d",&sec) == 1 ){
printf("%d時間%d分%d秒\n",
sec / (60*60),
( sec / 60 ) % 60,
sec % 60
);
}
return 0;
}
67:デフォルトの名無しさん
13/10/20 19:20:37.84
>>65
問題文に記載がないという意味だろ
68:デフォルトの名無しさん
13/10/21 01:23:21.58
初速度vがベクトルw
高校出てなさそうw
69:デフォルトの名無しさん
13/10/21 02:20:00.98
>>68
恥ずかしいやつだな
70:デフォルトの名無しさん
13/10/21 13:40:57.69
高校生だろ
71:デフォルトの名無しさん
13/10/21 18:09:53.54
>>59
URLリンク(ideone.com)
72:デフォルトの名無しさん
13/10/21 18:31:19.42
>>59
URLリンク(ideone.com)
73:デフォルトの名無しさん
13/10/21 18:51:00.85
力作やな
74:デフォルトの名無しさん
13/10/21 19:22:03.98
昔 sci.lang だったか comp.lang だったかで骨とかいろいろ漢字のAA書いてた人いたねCJK統合の前の話ね
75:デフォルトの名無しさん
13/10/21 19:33:44.89
URLリンク(ideone.com)
76:デフォルトの名無しさん
13/10/22 00:44:59.16
ツール使ったにしろ変換したにしろ、
普通にコード書くより手間かかった力作なのは事実だろう。
77:デフォルトの名無しさん
13/10/22 01:03:24.22
URLリンク(homepage1.nifty.com)
こういうのがあるね
78:デフォルトの名無しさん
13/10/22 01:14:03.12
>>77
それを見つけてきて出力を整形する手間は59を解く手間と比較して小さいのか?って事だろ。
人によるけど、%dじゃ駄目で全角で吐けってなったあたりでもギリギリ釣り合わない程度じゃない?
79:デフォルトの名無しさん
13/10/22 01:35:59.01
>>78
これを使ったと言っているんじゃなく、こういうものがあるということ。
もっと丁寧に探せば、簡単に使えるものが見つかるんじゃないかな?
80:デフォルトの名無しさん
13/10/22 01:38:05.82
確か16ドットの漢字フォントイメージはフリーであったんじゃなかった?
81:デフォルトの名無しさん
13/10/22 02:55:03.03
>もっと丁寧に探せば
その労力、プライスレス
82:デフォルトの名無しさん
13/10/22 04:42:51.56
プログラムが偉大なのではなく
フォント作者が偉大なのだ
83:デフォルトの名無しさん
13/10/22 04:58:29.14
>>77
vflib は今はこちらだね URLリンク(www-masu.ist.osaka-u.ac.jp)
84:デフォルトの名無しさん
13/10/22 10:19:03.68
フォント作者ってちまちまこういうのずっと考えてんのか?w
85:デフォルトの名無しさん
13/10/22 12:17:34.37
>>82
フォントだよねっ!
86:デフォルトの名無しさん
13/10/22 13:35:10.33
フォントフォント
87:デフォルトの名無しさん
13/10/24 19:46:40.98
フォントの流れにデファブを感じる
88:デフォルトの名無しさん
13/10/25 00:17:57.15
あるあるFとJの入力ミス
89:デフォルトの名無しさん
13/10/25 09:43:01.00
[1] 授業単元: 現象数理
[2] 問題文(含コード&リンク):
f(x) = cosx - x^2 = 0 の近似解を求めるプログラムを作り、以下の問題を解け。
なお、二分法を用いること。
a = 0, b = 1 からa, b, c の値を求める。
|b - a| < 10^(-6) の条件を満たすまで実行し、
もしくはこの条件を満たさない場合は30 回実行し、各回のa, b, cの値をまとめる。
[3] 環境
[3.1] OS:Linux
[3.3] 言語:C
[4] 期限:2013年10月26日24:00まで
[5] その他の制限:特にありません。
お願いします。
90:デフォルトの名無しさん
13/10/25 12:03:44.69
>>89
二分法ってこうやるんだっけ?
URLリンク(ideone.com)
91:デフォルトの名無しさん
13/10/26 10:03:06.15
[1] 授業単元:アルゴリズム
[2] 問題文(含コード&リンク):
[3] 環境
下のような指定ノードの次にノードを挿入する関数をカーソル版とポインタ版で作成しなさい。
カーソル版
void InsertAfter(List *list, Index idx, const Member *x);
ポインタ版
void InsertAfter(List *list, Node *p, const Member *x);
[3.1] OS: Windows
[3.3] 言語: C
[4] 期限:10/27
92:デフォルトの名無しさん
13/10/26 14:12:49.25
>>91
(List・Index・Member・Node)の定義を教えてちょうだい
93:デフォルトの名無しさん
13/10/26 14:47:06.22
リスト構造Memberにリスト構造Listを挿入
挿入時にidx番目に挿入
挿入時にNodeの次or前に挿入
じゃないのか
94:デフォルトの名無しさん
13/10/26 14:57:18.90
>>93
想像で物を言うな。いいかげんなやつだな。
95:デフォルトの名無しさん
13/10/26 15:02:14.48
想像でって超解釈でもしなきゃ>>93だろ。
フィールド名がわからないから、定義ないと書けないだけで。
96:デフォルトの名無しさん
13/10/26 15:16:06.00
>>95
だから想像だろ。無責任なことを言うな。
97:デフォルトの名無しさん
13/10/26 16:38:54.36
>>96
>>91の不足分はこっちでこうなのか?と確認する必要があるだろ
98:デフォルトの名無しさん
13/10/26 17:03:59.54
>>92
すみません。
List 線形リストを管理するための構造体。複数のメンバで構成されている。
Index カーソルの型。カーソルは単なる整数値なのでint型の同義語として定義。
Node 線形リストのノードを表すのが高Node。
99:デフォルトの名無しさん
13/10/26 17:06:00.40
>>96
推測通りだったわけだが、今どんな気持ち?
100:デフォルトの名無しさん
13/10/26 17:06:02.32
>>92 誤字
線形リストのノードを表すのが高Node。→線形リストのノードを表すのが構造体Node。
101:デフォルトの名無しさん
13/10/26 17:08:10.09
>>100
メンバがたくさんって、メンバは勝手に定義していいのかよ
違うならきちんと定義の中身も書け
102:デフォルトの名無しさん
13/10/26 17:12:07.76
とりあえずIndexとNextとPreviousでいいんでね
103:デフォルトの名無しさん
13/10/26 17:13:18.92
>>99
全然違うだろうがw
104:デフォルトの名無しさん
13/10/26 17:22:09.72
>>98
Memberはなにを表すの?
List・Index・Member・Nodeのプログラムの定義があるならそれ教えて
105:デフォルトの名無しさん
13/10/26 17:29:07.58
>>104
> List 線形リストを管理するための構造体。複数のメンバで構成されている。
「複数のメンバで構成されている。」
暇潰しか
106:デフォルトの名無しさん
13/10/26 17:44:14.57
>>98
すみませんMemberについてですが自作のヘッダファイルがありました。
URLリンク(www.dropbox.com)
107:デフォルトの名無しさん
13/10/26 17:45:48.85
↑間違えました
URLリンク(www.dropbox.com)
108:デフォルトの名無しさん
13/10/26 17:47:32.35
>>106
なるほど。
List・Index・Nodeはある?
109:デフォルトの名無しさん
13/10/26 17:58:04.15
>>108
何度もすみません
それぞれにヘッダファイルありました。
これで大丈夫でしょうか
URLリンク(www.dropbox.com)
110:デフォルトの名無しさん
13/10/26 18:09:20.27
>>109
うん、おk。
探せば答えも出てくるんじゃないかと思えてきた。
あとは>>93とこのスレのみんなが頑張ってくれるよ。
111:デフォルトの名無しさん
13/10/26 19:02:08.64
コードも書かない奴がなんで仕切ってるの
112:デフォルトの名無しさん
13/10/26 19:12:59.10
コードを書くやつより、書かせる奴のほうが偉いからじゃないの?
113:デフォルトの名無しさん
13/10/26 19:47:59.00
ここは俺が書いてみたからこのコード見ながら学習してみれ、ってとこだと思ってたが違うのか、
一時的な師弟関係・講師生徒関係の場で教わる側が偉いときってどういう時よ
114:デフォルトの名無しさん
13/10/26 19:50:53.66
>>110
ここまで答えさせといて丸投げとか
やっぱり暇つぶしじゃないか
115:デフォルトの名無しさん
13/10/26 20:37:53.02
>>112
ゴミが喋ってる…
116:デフォルトの名無しさん
13/10/26 20:49:23.32
社長←書かない
下っ端←書く
117:デフォルトの名無しさん
13/10/26 21:06:14.64
>>109
AllocNodeとかSetNodeもあるんじゃねぇの?
>>91
>>110
参考書は URLリンク(www.sbcr.jp) これか。
> 付録1 章末問題の解答
・・・書籍に乗ってる問題そのものだった場合回答も付属してるだろうな。
118:デフォルトの名無しさん
13/10/26 21:08:23.62
今のところみんな社長!
119:デフォルトの名無しさん
13/10/26 21:41:54.75
osのカーネルソースにずばりそのものがあるんじゃないの?
120:デフォルトの名無しさん
13/10/27 03:50:48.37
初めまして。
ピタゴラスの定理(C*2=A*2+B*2)を題材にした課題を解いて頂けませんか。
入力した斜辺Cの数値から辺Aと辺Bの長さを回答するプログラムを製作しろとのことです。
URLリンク(www.dotup.org)
一応ここまでやりまましたが、斜辺として適当な数字を入力した場合は正しい答えが表示されるのに対して、
本来ならエラーが表示されるべき数字を入力した場合は上の画像のように変な数字が表示されます。
数式の定義が良くないのかと思い、他に「a*a+b*b<c*c」なども試してみましたが、エラーが表示されるようになった代わりに正しい答えが表示されなくなりました。
私ではもう手に負えないので助けてください。
授業単元:プログラミング
問題文:上の説明を参照してください
環境:Mac OSX 10.9 Xcode 5.0.1
言語:C言語
期限:3日以内
制限:特に無し
121:デフォルトの名無しさん
13/10/27 03:59:15.58
なんだこの短いのに汚いソースコードは…
122:デフォルトの名無しさん
13/10/27 04:01:14.88
インデント狂ってるとイライラする
123:デフォルトの名無しさん
13/10/27 04:13:02.41
>>120
uint32_t
65536*65536=0
124:デフォルトの名無しさん
13/10/27 08:35:22.51
つ条件 a < c, b< c
125:デフォルトの名無しさん
13/10/27 08:58:45.94
>>124
すいません、どのように記述すべきか詳しく教えてください。
126:デフォルトの名無しさん
13/10/27 10:05:44.82
解決しました。ありがとうございました。
127:デフォルトの名無しさん
13/10/27 11:26:08.65
改めて書き直します。よろしくお願いします。
[2] 問題文(含コード&リンク):
下のような指定ノードの次にノードを挿入する関数をカーソル版とポインタ版で作成しなさい。
カーソル版
void InsertAfter(List *list, Index idx, const Member *x);
ポインタ版
void InsertAfter(List *list, Node *p, const Member *x);
その章の全例題(演習問題込み)のソースです。
URLリンク(www.dropbox.com)
[3.1] OS: Windows 7
[3.3] 言語: C
[4] 期限:10/27~28
128:デフォルトの名無しさん
13/10/27 11:58:47.97
>>120
URLリンク(ideone.com)
129:デフォルトの名無しさん
13/10/27 14:59:56.32
>>127
void InsertAfter(List *list, Index idx, const Member *x)
{
Index i = GetIndex(list);
Index j = Retrieve(list, idx);
SetNode(&list->n[i], x, list->n[j].next);
list->n[j].next = i;
list->crnt = i;
}
void InsertAfter(List *list, Node *p, const Member *x)
{
Node *n = AllocNode();
SetNode(n, x, p->next);
p->next = n;
list->crnt = n;
}
130:デフォルトの名無しさん
13/10/27 18:27:31.04
#include <stdio.h>
main() {
char t2[16];
char t1[16];
char s[] = "test-data0123456789";
t2[0] = 'S';
t2[1] = '\0';
int i = 0;
do {
t1[i] = s[i];
} while (s[i++] != '\0');
puts(t1);
puts(t2);
int* ptr = (int*)t1;
printf("%d\n", *ptr);
}
cの課題です
これの出力が
test-data0123456789
789
1953719668
となりますが、なぜputs(t2);がこのような出力になるのでしょうか?
t2は関係ないと思うのですが、、
それと最後の行は全くわかりません
どなたかよろしくお願いします。
131:デフォルトの名無しさん
13/10/27 19:00:12.58
>>130
sは'\0'も含めて20文字。
t1のサイズは16文字。
書き込み先が溢れてt2のところにまで書き込まれるんでしょね。
1953719668は16進にすると74736574。
文字にするとtset。リトル何とかで逆になってるんでしょね。
132:デフォルトの名無しさん
13/10/27 20:05:32.94
>>130
> } while (s[i++] != '\0');
のループをぬけた時の i の値は?
133:デフォルトの名無しさん
13/10/27 21:28:13.08
解の公式使って実数解、重解、虚数解のときのxの解を求めるんだけど
動くことは動くんだけど計算式に#とか紛れ込んでておかしく表示される
ちょっとだれか教えてください。
#include<stdio.h>
#include<math.h>
int main(void){
double a,b,c,D,sd,x1,x2,x3;
printf("Input a, b and c ->");
scanf("%lf%lf%lf",&a,&b,&c);
a!=0;
D=(b*b)-(4*a*c);
sd=sqrt(D);
x1=(-1*b+sd)/(2*a);
x2=(-1*b-sd)/(2*a);
x3=(-b)/(2*a);
a!=0;
if(D>0){
printf("Imaginary Root\n");
printf("x=%.3f\n",x1);
printf("x=%.3f\n",x2);
}else if(D==0){
printf("Imaginary Root\n");
printf("x=%.3f\n",x3);
}else{
printf("Imahinary Root\n");
printf("x=%.3f + %.3f\n",(-1*b)/(2*a),sd/(2*a));
printf("x=%.3f - %.3f\n",(-1*b)/(2*a),sd/(2*a));
}
return 0;
}
134:デフォルトの名無しさん
13/10/27 22:23:56.83
sd=sqrt(abs(D));
doubleは実数で、複素数ではないよ
135:デフォルトの名無しさん
13/10/27 23:54:04.21
>a!=0;
>D=(b*b)-(4*a*c);
136:デフォルトの名無しさん
13/10/28 00:57:03.19
パケットを16進数で受信して,パケット毎に宛先IPアドレスと宛先ポート番号の組み合わせの通りを出力するプログラムをC++のmapを利用して出力するプログラムを教えてください。
137:136
13/10/28 01:16:02.68
>>136
パケットを16進数で受信するプログラムは作成したのですが、
mapのプログラムがわかりません。
keyをstringで宛先IPアドレスと宛先ポート番号の組み合わせ
値をobject(他のクラスで継承)
のプログラムですお願いします。
138:デフォルトの名無しさん
13/10/28 01:32:38.70
>>136-137
よく>>1-2を読め。
悪いが君の説明では何を作るのかを十分説明できていない。
139:デフォルトの名無しさん
13/10/28 08:12:07.88
mapは
「宛先IPアドレスと宛先ポート番号の組み合わせ」をキー
「宛先IPアドレスと宛先ポート番号の組み合わせの現れた回数」を値
とする集合のことじゃないか?
140:デフォルトの名無しさん
13/10/28 08:16:02.56
本科目の受講生より、こちらにて出題の課題を
インターネットに投稿している者がいるとの連絡を受けました。
今回の課題は学生の理解を深める為に個別レポートとして出題されたものであり、
問題の解答そのものを丸投げすることは課題の趣旨に反する行為となります。
初回の講義でお話しましたように、ソースコードの書き方には個人差があり、
過去に提出したレポートなどから本人が書いたものかどうか判別することは十分可能です。
他人が書いたソースコードをレポートとして提出することは重大な不正行為に当たります。
提出されたレポートにおいて不正が確認された場合、本学の懲罰規程に従い厳しく処罰されます。
締切りはまだ時間もいくらか残されていますので、
この問題を投稿した、または参考に読んでいる学生には自分の力で
今回の課題に取り組んで頂けることを期待しています。
141:デフォルトの名無しさん
13/10/28 08:17:53.27
pcap のソースが参考になる
142:デフォルトの名無しさん
13/10/28 11:33:00.06
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
テキストファイルを作りそのなかに整数5個数字を入れるそのテキストファイルの中身を出力せよ
input関数とshow関数を作ること
コマンド引数にテキストファイルの名前を入れること
[3] 環境
[3.1] OS: (Windows/Linux/等々) windows
[3.3] 言語: (C/C++/どちらでも可 のいずれか) Cのみ
[5] その他の制限: ぽいんたーまで習っています
ファイルのポインターのところがわからず詰んでいます
お願いします
143:デフォルトの名無しさん
13/10/28 11:44:38.47
>>142
テキスト作成、整数書き込みもプログラムがやるの?
144:デフォルトの名無しさん
13/10/28 12:07:10.33
>>142
URLリンク(ideone.com)
145:デフォルトの名無しさん
13/10/28 12:14:35.63
>>143
言葉足らずでしたがテキストは作成済みで読み込んで表示だけです
>>144
ありがとうございます。
理解できるようにがんばります。
146:デフォルトの名無しさん
13/10/28 12:47:48.27
>>141
パケットキャプチャじゃなくて、ソケットプログラム書いてるんだと予想。
147:デフォルトの名無しさん
13/10/28 13:23:07.96
>>146
pcapがソケットプログラムじゃないと?
148:136-137
13/10/28 13:27:55.11
>>138失礼しました。今後気をつけます。
>>139ありがとうございます。こちらの検討違いでした。
[1] 授業単元: 通信
[2] 問題文:
①トラフィックを受信(16進数)->ここは出来た。
②mapで、
key:宛先IPアドレスと宛先ポート番号の組み合わせ
値:宛先IPアドレスと宛先ポート番号の組み合わせの回数
key毎に値を出力するプログラム
[3] 環境
[3.1] OS:Linux
[3.3] 言語:C++
②を今月中に仕上げたいが、全くわかりません。
どなたかお願いします。救済を求めます。
149:デフォルトの名無しさん
13/10/28 13:44:50.12
>>147
色々間違えた忘れてくれ
150:デフォルトの名無しさん
13/10/28 13:50:58.74
>>148
言ってる意味がよくわからないが・・・こういうことか?
// 初期化時
std::map<std::string,int> received;
// 受信の度に
if( received.count(key) == 0 ){
received[key] = 1;
} else {
received.count[key] += 1;
}
// 全受信完了後
for( std::map<std::string,int>::iterator it = received.begin();
it != received.end();
it++
){
std::cout << it->first << " = " << it->second << std::endl;
}
151:デフォルトの名無しさん
13/10/28 14:14:48.76
[1]データ構造入門
[2]AVL木の挿入プログラムを考える。
・AVL木の実装は以下のようにせよ。
struct node{
int key;
int info; /* データを格納する */
struct node *left;
struct node *right;
int balance; /* 1であれば左の部分木が -1であれば右の部分木が高い 0であれば等しい */
};
typedef struct node NODE;
・挿入の実装は以下のようにせよ。
int insert(int target,Datatype info,NODE **p,int *grown){
*grown=0;
新規にノードを追加したならば、grownを1にしてreturn
grownが1なら木の高さが増えたことを意味する。つまり再構成が必要になる場合がある
}
[3]OS: Windows
[3.2]言語:C言語
[4]期限:(2013年10月28日23時59分まで)
[5]その他の制限:特になし
よろしくお願いします。
152:136-137
13/10/28 14:22:46.90
>>150
回答ありがとうございます。
この回答に近いものを感じます。
私の問題に対する理解が乏しいゆえ
招いた疑問ですので、私は理解を深めてから
また投稿したいと思います!失礼しました!
153:デフォルトの名無しさん
13/10/28 15:54:33.95
>>151
>int info; /* データを格納する */
>int insert(int target,Datatype info,NODE **p,int *grown){
どっち?
154:デフォルトの名無しさん
13/10/28 15:58:10.42
>>151
ここだけじゃないや、他にもいろいろとおかしい。
問題や、付属のソースはきちんと写してください。
155:デフォルトの名無しさん
13/10/28 16:10:12.86
>>154
問題文を違法アップロードさせる犯罪教唆は今すぐやめろ
156:デフォルトの名無しさん
13/10/28 17:56:27.78
>>153
int insert(int target,int info,NODE **p,int *grown){
こっちです
157:デフォルトの名無しさん
13/10/28 17:58:48.86
>>154
問題、ソースもこれで全部です
なのでまったくわからず悩んでいます
158:151
13/10/28 18:01:52.03
自分で途中まで書いたものを載せておきます
おそらくこんな感じになると思うのですが・・・
int insert(int target,int info,NODE **p,int *grown){
*grown=0;
if(*p==NULL){
*p=malloc(sizeof(NODE));
(*p)->key=target;
(*p)->info=info;
(*p)->left=NULL;
(*p)->right=NULL;
*grown=1;
}else if(target<(*p)->key){
}else if(target>(*p)->key){
}else{
puts("ERROR!");
}
}
159:桃白白 ◆9Jro6YFwm650
13/10/28 19:52:29.85
>>158
おk、よくわかった。
桃白白いま修行中だからリンクが貼れないんだけどこれで。
ideone.com/JdCRlP
160:デフォルトの名無しさん
13/10/28 20:17:26.81
>>159
ありがとうございます。
助かりました。
161:デフォルトの名無しさん
13/10/29 19:24:57.39
[1] 授業単元:数理
[2] 問題文(含コード&amp;リンク):
f(x)=cosx-x^2=0の近似解をニュートン法を用いて求めるプログラムを作成し、
以下を実行せよ。
x0 = 1(n = 0) から始めたときの xn+1 の値を求めよ。
|xn+1 - xn| / (|xn |)<10^(-6)を満たすまで実行し
(この条件を満たさない場合は30回実行し)、
各回のxn+1 の値を表にまとめろ。
[3] 環境
[3.1] OS:Linux
[3.3] 言語: どちらでも可
[4] 期限:2013年10月30日am9:00まで
[5] その他の制限: 特にありません。
セントOSを習い始めたばかりで手も足も出ずに困っています。
どなたかよろしくお願いします。
162:デフォルトの名無しさん
13/10/29 19:33:16.36
>>161
URLリンク(ideone.com)
163:デフォルトの名無しさん
13/10/29 20:28:48.22
>>161
表にまとめろってこうやるんかな
URLリンク(ideone.com)
164:デフォルトの名無しさん
13/10/29 20:59:54.00
>>163
ありがとうございます。
表にまとめるのは、
出た値をテキスト化してもよいようなので、
表にまとめず、値だけを出すパターンも教えていただけますか?
何回もすみません、お願いします。
165:デフォルトの名無しさん
13/10/29 21:35:58.79
>>164
URLリンク(ideone.com)
166:デフォルトの名無しさん
13/10/29 21:38:32.53
>>164
URLリンク(ideone.com)
167:デフォルトの名無しさん
13/10/29 21:39:34.66
>>164
URLリンク(ideone.com)
168:デフォルトの名無しさん
13/10/29 21:53:04.88
>>164
URLリンク(ideone.com)
169:デフォルトの名無しさん
13/10/29 22:23:42.31
>>164
どなたかお願いします…
170:デフォルトの名無しさん
13/10/30 00:18:02.09
#include <math.h>
static double func(double x)
{
// ここにニュートン法の式を書く
return x;
}
int main (void)
{
int n;
double x, tmp, d;
x = 0.0;
for (n=0; n<30; n++) {
tmp = x;
x = func(x);
printf("%d\t%f\n", n+1, x);
d = (x - tmp) / tmp;
if (d < 0) d = -d;
if (d < 1e-6) break;
}
return 0;
}
171:デフォルトの名無しさん
13/11/05 21:05:55.22
[2] 問題文:
実行結果の出力をqueueを使用し
st1
st2
st3
st4
st5
としなさい。
下のプログラムを改良してください。
[3.3] 言語: C++
#include <iostream>
#include <queue>
using namespace std;
int main(){
queue<string> dataQueue;
string st1,st2,st3,st4,st5;
dataQueue.push(st1);
dataQueue.push(st2);
dataQueue.push(st3);
dataQueue.push(st4);
dataQueue.push(st5);
while( !dataQueue.empty() ) {
cout << "" << dataQueue.front() << endl;
dataQueue.pop();
}
return 0;
}
コンパイルは通るのですが出力されません。
よろしくお願いします。
172:デフォルトの名無しさん
13/11/05 21:10:48.24
>>171
st1~5に何か入れないと
173:デフォルトの名無しさん
13/11/05 21:13:41.65
>>171
そのソースを改造しろってこと?
URLリンク(ideone.com)
こういうこと?
174:171
13/11/05 21:17:16.30
>>173
ありがとうございます。
それだけのことでずっと悩んでました。
175:デフォルトの名無しさん
13/11/05 21:26:59.12
[1] 授業単元:通信
[3] 環境
[3.1] OS:Linux
ソケットプログラムで各パケットのプロトコルを取得して
queueに入れるサンプルプログラムを作ってください。
176:デフォルトの名無しさん
13/11/05 21:37:05.99
>>175
プロトコルってどの層のプロトコルよ
それによって書く内容全然違うんだが
177:デフォルトの名無しさん
13/11/05 21:38:27.65
うるせーバカ
わかんないなら引っ込んでろ
178:175
13/11/05 21:42:35.32
すみません説明不足です。
TCP/IPです。
通信終了後ででも構いませんがよろしくお願いします。
179:175
13/11/05 21:47:26.06
>>176
トランスポート層?
インターネット層?
とにかく欲しいプロトコルはTCPとUDPです。
IPv6の場合も含めてお願いします。
申し訳ございません親切に。
180:175
13/11/05 21:48:26.76
あと>>177はなりすましです。気になさらないで。
181:デフォルトの名無しさん
13/11/05 22:33:22.91
>>179
え?TCP/IPってポート番号での判断じゃないの?
TCPかUDPのどちらかが知りたいということか?
それとももっと高度にパケットのデータ部での判別?
とりあえずソケットから取得するのは書いたけど
処理の流れが全然わからないのでこれ以上は無理
URLリンク(ideone.com)
182:175
13/11/05 23:29:41.30
>>181
ありがとうございます。
はい。16進数でパケットを収集する際に
p[]がパケットの中身の配列で
p[0]からp[13]までがヘッダ部で
p[14]からp[33]までがデータ部として
p[12]とp[13]でIPv4なのかIPv6なのか判別して
p[23]?でプロトコルの判断をすると思います
そのプロトコルをキューに入れて出力させるプログラムが欲しいのです。
なかなか私の理解力のなさのため何言ってるか理解しがたいと思いますが
どうぞよろしくお願いします。
183:デフォルトの名無しさん
13/11/06 00:41:22.35
>>182
理解力のなさっていうか、説明力のなさ。
パケットキャプチャプログラムは普通なら、
ソケットプログラムなんて大雑把な呼び方しないよ。
出題条件によってはパケットの生バイナリファイルだったり、
tcpdumpファイルに対してソレをやれって問題の可能性もある。
出題文を正しくて転写していないのなら正しく転写すべし。
184:デフォルトの名無しさん
13/11/06 05:00:40.15
>>182
君、>>136-137か?
>・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
これよく読んで、情報小出しにする上に思い込みで説明するのもやめんしゃい
それTCP/IPじゃなくてMACフレームの解析だし、ソケットも全然介してない
URLリンク(ideone.com)
俺はもうこれでやりまへん
185:デフォルトの名無しさん
13/11/06 07:54:39.24
>>183-184
できないならなら引っ込んでろ。
186:デフォルトの名無しさん
13/11/06 08:11:51.84
>>179
パケットの流れの観察から使われているプロトコルを調べるというのは
相当に高度な話しで、参考書かサイトで学習するべきだと思うが。
187:デフォルトの名無しさん
13/11/06 08:38:00.50
「話し」って?
188:デフォルトの名無しさん
13/11/06 08:38:04.57
>>185
そりゃお前の事だろ。
プログラミングどころか、煽りも荒らしも適当で、
一体お前に何ができるんだ。
189:デフォルトの名無しさん
13/11/06 08:43:20.21
>>188
お前よりは何でもできる
バカの日本語修正してやる事とか
190:デフォルトの名無しさん
13/11/06 08:45:21.96
>>187
現実味がないということ。
191:デフォルトの名無しさん
13/11/06 09:04:44.03
やっぱり日本語知らない三国人か
地獄に落ちろ
192:デフォルトの名無しさん
13/11/06 12:21:13.23
日下部さんって今なにしてるんだろう
193:デフォルトの名無しさん
13/11/06 14:24:50.93
沖縄で基地反対運動
194:デフォルトの名無しさん
13/11/09 15:27:12.02
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
①1~100の整数のうち「6の倍数」の個数を表示するプログラムを作成しなさい、ただし、for文とif文を用いて作成すること
②1次元配列を用いて5人分の数学の得点を100点満点で入力し、「数学の得点の最小値と最大値」を画面表示、およびファイルに書き出すプログラムを作成しなさい。ただし、書き出し用ファイル名は「sugaku.txt」にしなさい。
[3] 環境
[3.1] OS: (Windows/Linux/等々)windows home vista
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)borland
[3.3] 言語: (C/C++/どちらでも可 のいずれか)C言語
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)2013年11月12日02:00まで
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
2か月前からC言語を習い始めました。いまはまだポインタまでの範囲をかじった程度であまり理解もできていません。
とくに制限はありません。
どうかよろしくお願いいたします。