5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

C/C++の宿題を片付けます 113代目

1 :デフォルトの名無しさん:2008/07/14(月) 06:56:18
あなたが解けない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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【C 関数検索 man on WWW】 http://www.linux.or.jp/JM/index.html
【過去ログ検索】        http://chomework.sakura.ne.jp/
【wiki】               http://www23.atwiki.jp/homework/

C/C++の宿題を片付けます 112代目
http://pc11.2ch.net/test/read.cgi/tech/1215439445/

2 :デフォルトの名無しさん:2008/07/14(月) 07:14:02
>>1
ありがとうございます。

3 :デフォルトの名無しさん:2008/07/14(月) 07:14:42
既に回答済みの質問に回答するのは控え、できるだけ未回答のものを解きましょう。

4 :デフォルトの名無しさん:2008/07/14(月) 07:49:24
[1] 授業単元:プログラミング論U
[2] 問題文: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7366.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: borland C++ Compiler 5.5
[3.3] 言語: C
[4] 期限: 2008年7月15日13;00
[5] その他の制限:どうしてもノードについてわからないので、できたらよろしくお願いします。


5 :前スレ505 :2008/07/14(月) 07:51:44
前スレ>>929さん、ありがとうございます!

あと、今日の夕方頃に今までのとは別のをやってみます。
それでまた今回みたいに見ていただくと嬉しいです。

6 :デフォルトの名無しさん:2008/07/14(月) 07:52:06
基本的にスレ立て人がルールを作りますんで、最近話題の
回答テンプレはルール違反なんで遵守しないようお願いします。
以下の行為のいずれかを行った場合、回答テンプレ遵守行
為と見なされる場合がありますのでご注意下さい。

1)回答レスに回答の品質を書く事。
2)回答レスに外部サイト(アップローダー)に置かれたコードへのリンク
を貼る際に、このレス(スレURL)とソースの間に相互関連づけを行
うこと。
3)コンパイル、コード作成に使用した環境を書く事
4)回答に余計なコメントを入れること。
(ソースに入れるコメントは本スレとの関連情報以外ならおKです)

7 :前スレ995 ◆ncKvmqq0Bs :2008/07/14(月) 08:00:13
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7365.txt
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: VC6.0
 [3.3] 言語: C
[4] 期限: 7/14 14:00

期限を書き間違えていました、すいません
よろしくお願いします

8 :デフォルトの名無しさん:2008/07/14(月) 08:05:51
>>3
異議あり。せっかく自分もやったのに、数分先に雑なソースを投稿した奴がいて
自分の方がマシだと判断したら容赦なく提出するんで、あしからず。

9 :デフォルトの名無しさん:2008/07/14(月) 08:07:16
>>7
これでいいですか?
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7367.txt

10 :デフォルトの名無しさん:2008/07/14(月) 08:26:38
>>8
いいことです。>>6を遵守した上で是非そうして下さい。

11 :デフォルトの名無しさん:2008/07/14(月) 09:11:08
ここは質問により先に答えるのを競うスレではありませんので、あしからず。
速さを競うなら、別の場所でやってくれ。それも同じ時間にスタートしてな。

12 :デフォルトの名無しさん:2008/07/14(月) 09:15:31
>>6
やなこった。

13 :デフォルトの名無しさん:2008/07/14(月) 09:37:23
長い夏休みが終わるのを気長に待つしか無いか

14 :デフォルトの名無しさん:2008/07/14(月) 10:22:54
http://pc11.2ch.net/test/read.cgi/tech/1215439445/989

回答テンプレがあれば、まあ見やすいかなとは思う。けれど、無くても問題ないと思う。
で、回答テンプレを使う人が>>1から連なるテンプレに載ってないんだけどドコ?という
レスが稀にあったように思うので、含めておくが強制はしない程度がいいかなと思ったんだ
…俺も回答テンプレ使ったり使わなかったりなんで適当なんだけどね。主に回答レベルがめんどい

15 :デフォルトの名無しさん:2008/07/14(月) 10:29:19
本人が初心者レベルに落としたクソースにも負けてくやしいのぅくやしいのぅ
あと、このスレは課題に答えるべきであって、回答者同士で
出来を競うスレじゃありませんので、あしからず。

16 :デフォルトの名無しさん:2008/07/14(月) 10:35:11
あと、何行だろうと一句だろうと、罵倒は良くないだろ。
何行以上でとか意味不明な指定も要らん。

17 :デフォルトの名無しさん:2008/07/14(月) 12:23:36
[1] 授業単元: C言語プログラミング
[2] 分数の四則演算を計算するプログラムを作成する[3] 環境
[3.1] OS: Windows 
[3.3] 言語・C++
[4] 期限: ([2008年7月15日14:00まで
[5]条件
  分数を、 1|3 のように、| (縦棒)という記号で分子・分母を区別する。/ (スラッシュ)だと除算記号と混同してしまうから。
計算規則
 a|b + c|d = (a*d + b*c) | (b*d)
 a|b - c|d = (a*d - b*c) | (b*d)
 a|b * c|d = (a*c) | (b*d)
 a|b / c|d = (a*d) | (b*c)
計算結果については,分母が1の時には分子のみの表示にする。分数が0(ゼロ)の時には 0(ゼロ)のみを表示する。また,最終の計算結果を既約分数にする。




18 :デフォルトの名無しさん:2008/07/14(月) 12:28:56
前スレ>>977>>945>>554 >>99
ありがとうございました

19 : ◆nikSZog9tM :2008/07/14(月) 14:51:23
前々スレの>>401で二問聞いたのですが、一問回答が得られなかったのでもう一度聞かせて下さい。
[1] 授業単元:情報技術実験
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7172.txt
バックトラック系の問題です。
リンク先は、正整数n を入力して、nを正整数の和の形に分割する方法が何通りあるか表示するプログラムです。
ただし、和の順番が異なるだけの分割は同じものとします。
それを、
n: 5
1 1 1 1 1
1 1 1 2
1 1 3
1 2 2
1 4
2 3
5
total number = 7
といったように途中経過を表示させるように修正する課題です。
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: C Pad for Borlad
 [3.3] 言語: Cのみ
[4] 期限: 2008年7月16日17:00
[5] その他の制限:授業ではポインタはやってないです。。
  for if whileといった基礎的なものを使う感じです。

よろしくお願いします。

20 :デフォルトの名無しさん:2008/07/14(月) 15:30:51
[1]C言語上級
[2]標準入力から入力されたタブもしくはスペースで区切られた単語
の出現回数を多いものの順に出力するプログラムを作りなさい。
単語の記憶方法は配列を使うこと。単語の検索は二分探索を
使うこと。
メモリが足りない場合はその時点で処理を中止するようにすること。

[3] linux/gcc 4/C
[4] 7/20 12:00
stdio.h stdlib.h string.hのみインクルード可のことです。

自分もちょっとやってみましたが挫折しかかってます。
まだ時間は少しあるので、急ぎませんが、どうかよろしくお願いします。

21 :20 ◆t11zgaSFtY :2008/07/14(月) 15:31:30
トリップ入れ忘れましたので、設定しました。

22 :デフォルトの名無しさん:2008/07/14(月) 15:47:44
>>19
バックトラックってなると多分再帰関数を使うことになると思うけど、大丈夫?

23 :デフォルトの名無しさん:2008/07/14(月) 15:53:11
配列で二分探索ってうまいやりかたあるん?

24 : ◆nikSZog9tM :2008/07/14(月) 15:58:36
>>22
再帰やってるんで大丈夫です!
「使え」とは言われてないんで書きませんでした、ごめんなさい。

25 :デフォルトの名無しさん:2008/07/14(月) 16:05:00
再起使ったら重複の除去が困難な気

26 :デフォルトの名無しさん:2008/07/14(月) 16:12:08
>>19 配列は使ってもいいんだよね?
#include <stdio.h>
#define N_MAX 1024
int ResultNum, Result[N_MAX];
int part(int,int,int);
int main(){
int n;
printf("n: ");
scanf("%d",&n);
if(n>N_MAX) return 1;
printf("total number = %d\n", part(n,1,0));
return 0;
}
int part(int total, int min, int result_num){
int i, sub;
int cnt = 0;
if(total == 0){
cnt = 1;
for(i=0;i<result_num;i++)
printf(" %d", Result[i]);
printf("\n");
}else{
for(sub = min; sub <= total; sub++){
Result[result_num]=sub;
cnt += part(total-sub,sub,result_num+1);
}
}
return cnt;
}

27 : ◆nikSZog9tM :2008/07/14(月) 16:38:48
>>25
んーどうなんでしょう…正直よく分かりません。
この時は授業のタイトルが「バックトラック」で、課題は二つでした。
二問目がNクイーン問題で、これは一問目です。
プログラミングの知識に乏しい上に、授業が上記のようなものだったのでバックトラック系
と明記しましたが、場合によってはバックトラックとは関係ないのかもしれません。

>>26
配列大丈夫です!ありがとうございます!
配列苦手で勉強中なんで、まだ理解できませんが(^_^;)
ありがとうございました。

28 :デフォルトの名無しさん:2008/07/14(月) 19:33:47
[1] 授業単元:プログラム実習
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7369.txt
[3] 環境
 [3.1] OS:windowsXP
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語: C++
[4] 期限: 早急に…
[5] その他の制限:
二次元関数の問題です。ソースの上部に問題文があります

29 :デフォルトの名無しさん:2008/07/14(月) 19:51:18
>>20
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct tag_word_t{ char *word; int count; } word_t;
typedef struct tag_wordlist_t{ word_t *word; int wordnum; } wordlist_t;
int countcmp(const word_t *a, const word_t *b){return b->count - a->count;}
int wordcmp(const word_t *a, const word_t *b){return strcmp(a->word, b->word);}
void word_add(wordlist_t *wordlist, char *word){
int s, e, m, ret;
for(s = 0, e = wordlist->wordnum - 1; s <= e;){
m = (s + e) / 2;
if((ret = strcmp(wordlist->word[m].word, word)) == 0){wordlist->word[m].count += 1;return;}
if(ret < 0) s = m + 1;
else e = m - 1;
}
if((wordlist->word = realloc(wordlist->word, sizeof(word_t) * (wordlist->wordnum + 1))) == NULL) exit(1);
if((wordlist->word[wordlist->wordnum].word = strdup(word)) == NULL) exit(1);
wordlist->word[wordlist->wordnum].count = 1;
wordlist->wordnum += 1;
qsort(wordlist->word, wordlist->wordnum, sizeof(word_t), wordcmp);
}
int main(void){
wordlist_t wordlist = { NULL, 0 };
char word[256];
int i;
while(scanf("%255s", word) == 1) word_add(&wordlist, word);
qsort(wordlist.word, wordlist.wordnum, sizeof(word_t), countcmp);
for(i = 0; i < wordlist.wordnum; i++) printf("%s : %d\n", wordlist.word[i].word, wordlist.word[i].count);
return 0;
}

30 :デフォルトの名無しさん:2008/07/14(月) 20:03:18
>>28 1行のみの変更で回答終わり
17line:
// int calendar[rsize][csize];
int (*calendar)[csize] = new int[rsize][csize];


31 :デフォルトの名無しさん:2008/07/14(月) 20:10:25
>>28 最後にやるdelete忘れた
84line:
delete[] calendar;
return 0;

32 :前スレ995 ◆ncKvmqq0Bs :2008/07/14(月) 20:21:42
>>9
助かりました
遅くなりましたが、ありがとうございました

33 :デフォルトの名無しさん:2008/07/14(月) 20:56:44
>>4 07/15 13:00 線形リスト
>>7 07/14 14:00 ソート : >>9
>>17 07/15 14:00 分数の四則演算を計算するプログラム
>>19 07/16 17:00 組み分け : >>19
>>20 07/20 12:00 単語出現数 : >>20
>>28 00/00 00:00 二次元配列の動的確保 : >>30,31

34 :20 ◆t11zgaSFtY :2008/07/14(月) 21:36:07
>>29
非常に迅速なご回答
ありがとうございました。とりあえず動作を確認しました。
このコードを元にbsearch関数を使うように改造させて
頂いてよろしいでしょうか?
というか、実は、bsearch関数自身の使い方が
良くわからなかったので、ここに質問したんです。
bsearchで見つからなかった場合、配列を拡張し
新しいデータを詰め込むというアイデアは、何となく
わかってて、それらしきコードも書いてたんですが、
テストしてみると、何か良く動きませんでした。
qsort関数を使ってそれを切り抜けるってなんか裏技的で
凄い発想ですね。感心しました。

35 :デフォルトの名無しさん:2008/07/14(月) 22:27:39
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):(1)まず、0が入力されるまで、正の偶数を繰り返しキーボード入力する。
(2)次に、(1)で入力した数から「大きい方から二番目の偶数」を表示する。
ただし、(1)の繰り返し処理で、奇数や負の数が入力されたときは、その入力を無視してよい。
入力した偶数が二つに満たなかった場合は、(2)において「0」を表示せよ。
[3] 環境
 [3.1] OS;macos
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: (2008年7月13日17:00まで]
[5] その他の制限: Cのソースでおねがいします。
何とぞよろしくお願いします。

36 :デフォルトの名無しさん:2008/07/14(月) 22:28:59
期限間違えました 15日です



37 :デフォルトの名無しさん:2008/07/14(月) 22:33:03
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):1から999までの整数を入力 その読み方をを表示するプログラムを書け
1から999でない場合エラーを表示せよ
[3] 環境
 [3.1] OS;macos
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: (2008年7月15日17:00まで]
[5] その他の制限: Cのソースでおねがいします。
何とぞよろしくお願いします。 printfの所は略してもらって結構です。



38 :デフォルトの名無しさん:2008/07/14(月) 22:43:47
>>37
日本語でok?

39 :デフォルトの名無しさん:2008/07/14(月) 22:52:15
>>37
#include<stdio.h>
int main(void){
char yomi[][10][13]={
{"", "いち", "に", "さん", "よん", "ご", "ろく", "なな", "はち", "きゅう"},
{"", "じゅう", "にじゅう", "さんじゅう", "よんじゅう", "ごじゅう", "ろくじゅう", "ななじゅう", "はちじゅう", "きゅうじゅう"},
{"", "ひゃく", "にひゃく", "さんびゃく", "よんひゃく", "ごひゃく", "ろっぴゃく", "ななひゃく", "はっぴゃく", "きゅうひゃく"}
};
int num=0, unit100, unit10, unit1;

printf("1 から 999 までの整数を入力してください : ");
scanf("%d", &num);
if(num<1 || num>999){
printf("エラー\n");
return 1;
}
unit100=num/100;
unit10=(num/10)%10;
unit1=num%10;
printf("%s%s%s\n", yomi[2][unit100], yomi[1][unit10], yomi[0][unit1]);

return 0;
}

40 :デフォルトの名無しさん:2008/07/14(月) 22:54:20
>>37
#include <stdio.h>
int main(void)
{
int n, c, d;
char *num[] = {"", "いち","に","さん","よん","ご","ろく","なな","はち","きゅう"};

scanf("%d", &n);

if(n < 1 || 999 < n) return printf("error");

c = n / 100;
n %= 100;
switch(c) {
case 6:printf("ろっぴゃく"); break;
case 8:printf("はっぴゃく"); break;
case 3:printf("さんびゃく"); break;
case 2:case 5:case 4:case 7:case 9:
printf("%s", num[c]);
case 1:printf("ひゃく"); break;
}
d = n / 10;
n %= 10;
if(d) {
if(d > 1) printf("%s", num[d]);
printf("じゅう");
}
printf("%s", num[n]);
return 0;
}


41 :デフォルトの名無しさん:2008/07/14(月) 22:54:35
>>39 早速ありがとうございます。助かりました

42 :デフォルトの名無しさん:2008/07/14(月) 22:56:18
>>37
#include <stdio.h>
void show(int n){
const char n[][10]={"ぜろ!","いち!","に!","さぁん","し!","ご!","ろぉく","しち!","はち!","きゅぅぅ"};
<print文なので省略しました>
}
int main(){
int n;
scanf("%d",&n);
show(n/100);show( (n - n / 100 * 100) / 10 ) ; show(n % 10);
return 0;
}

43 :デフォルトの名無しさん:2008/07/14(月) 23:00:48
>>40 >>42
回答ありがとうございます。参考にします

44 :デフォルトの名無しさん:2008/07/15(火) 00:07:26
[1] 授業単元:プログラム入門
[2] 問題文(含コード&リンク): http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7371.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:あさってまで
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

お願いします

45 :前スレ505 :2008/07/15(火) 00:27:17
[1] 授業単元:C++
[2] 問題文(含コード&リンク):試験問題の例を実行結果を見ながら、
自分なりに作ってたのですが、敵が表示されなかったりしたので困ってます。
ここに自分で作ったやつが置いてあります。
http://www.dotup.org/uploda/www.dotup.org5395.zip.html

これが試験問題の例の実行結果です。ハムスター画像はないので、他のを代用して使ってます。
http://www.dotup.org/uploda/www.dotup.org5399.zip.html

[3] 環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: VisualC++2005かVisualC++2008
 [3.3] 言語:C++
[4] 期限: [2008年7月15日午前7:00まででお願いします。
[5] その他の制限:何かあったら言って下さい。


46 :デフォルトの名無しさん:2008/07/15(火) 01:03:54
[1]C
[2]三値の中央値を求める以下の関数を作成せよ。
int med3(int a,int b,int c);
[3]LINUX
C
[4]今週中でお願いします
よろしくお願いします

47 :デフォルトの名無しさん:2008/07/15(火) 01:18:48
>>46
void swap(int *a, int *b){
int c;
c=*a;
*a=*b;
*b=c;
}
int med3(int a, int b, int c){
if(a<b) swap(&a, &b);
if(a<c) swap(&a, &c);
if(b<c) swap(&b, &c);
return b;
}

48 :デフォルトの名無しさん:2008/07/15(火) 01:41:20
ひどいな

49 :デフォルトの名無しさん:2008/07/15(火) 01:42:17
int med3(int a, int b, int c)
{
return a>b ? a>c ? c>b ? c : b : a : b>c ? c>a ? c : a : b;
}

50 :デフォルトの名無しさん:2008/07/15(火) 01:58:25
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7372.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC
 [3.3] 言語: C
[4] 期限: 2008/7/17/0:00

よろしくおねがいします

51 :デフォルトの名無しさん:2008/07/15(火) 02:44:20
[1] 授業単元:C++
[2] 問題文(含コード&リンク):基本交換法と挿入法の関数化
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VisualStudio2005
 [3.3] 言語: C++
[4] 期限: 2008/7/15/12:00

ここでははじめての書き込みです よろしくお願いします。

52 :デフォルトの名無しさん:2008/07/15(火) 03:16:09
>>51
ソートの話でしょうか。基本交換法とはなんでしょうか。(wikipedia をみましたがわかりませんでした。)
問題について、もう少し情報をいただけませんでしょうか。

53 :デフォルトの名無しさん:2008/07/15(火) 03:17:33
バブルソート

54 :デフォルトの名無しさん:2008/07/15(火) 03:19:45
バブルソートは、ソートのアルゴリズムの一つ。最悪計算時間がO(n2)と遅いが、アルゴリズムが単純で実装が容易なため、しばしば用いられる。安定な内部ソート。基本交換法、隣接交換法ともいう。
バブルソート - Wikipedia

挿入ソート(インサーションソート)は、ソートのアルゴリズムの一つ。平均計算時間・最悪計算時間がともにO(n2)と遅いが、アルゴリズムが単純で実装が容易なため、しばしば用いられる。安定な内部ソート。基本挿入法ともいう。
挿入ソート - Wikipedia


55 :デフォルトの名無しさん:2008/07/15(火) 03:27:34
[1] 授業単元:プログラミング2
[2] 問題文(含コード&リンク):
アルファベットと数字からなる文字列 str と文字 c を引数として受け取り,文字列 str から文字 c をすべて削除する返す関数 void del_chr(char *str, char c) を定義し,動作を確認するプログラム(kadai11_3.c)を作成せよ.
strを別の配列にコピーして利用すればよい.配列の添え字アクセスを利用してもよい.
関数名:del_chr
引数 :char *str, char c
返却値:なし
機能 :文字列 str から文字 c をすべて削除

main関数のテンプレートを示す.
int main(void)
{
char c;
char str[100];
char *ptr;

printf("変換前: ");
gets(str);
printf("削除文字: ");
scanf("%c", &c);
del_chr(str, c);
printf("変換後: %s\n", str);

return 0;
}

[3] 環境
 [3.1] OS: Win Vista
 [3.2] コンパイラ名とバージョン: bcc
 [3.3] 言語: C
[4] 期限: 2008/07/15 14時まで
[5] その他の制限: ポインタまで

56 :デフォルトの名無しさん:2008/07/15(火) 03:40:23
>>48
いや、>>47 ならちゃんと動作しますよ。反例はどんな場合ですか?

57 :デフォルトの名無しさん:2008/07/15(火) 03:46:19
>>15
だれが決めたのですか?回答者同士で出来を競うのは問題ないと思いますが?

58 :デフォルトの名無しさん:2008/07/15(火) 03:55:56
[1] 授業単元:プログラミングU
[2]
問題文:http://www.dotup.org/uploda/www.dotup.org5542.mht.html
実行例:http://www.dotup.org/uploda/www.dotup.org5543.pdf.html
ベースのコード:http://www.dotup.org/uploda/www.dotup.org5545.cpp.html
[3] 環境
 [3.1] OS:WindowsVista
 [3.2] コンパイラ名とバージョン:VisualStudio2005
 [3.3] 言語:C++
[4] 期限: 本日 7月15日18:00まで
[5] その他の制限:http://www.dotup.org/uploda/www.dotup.org5545.cpp.html
            にある内容までは一通り習っています。

以前もここで何度か助けてもらいましたが、
これが最後になると思いますので、どうかよろしくお願いします。
(特に後半が全然わかりません)

59 :デフォルトの名無しさん:2008/07/15(火) 03:56:21
>>57
決めたんじゃなくてそんな決まりはないって話だろ・・・
どんだけ意味が理解できないゆとりだよ?w
>>読め。競いたければ勝手に個人でやってろ。
競争心むき出しで、パクリだろとか言われても、はぁ?
って思われているのは、分かりきった答えだからなんだよw

60 :デフォルトの名無しさん:2008/07/15(火) 04:02:50
>>1とスレタイ
C/C++の ”宿題を片付けます”
> 気に入らない質問やその他や発言はスルーの方向で。
どこにも回答者同士で出来を争うといった趣旨の内容はなく
質問者に答えるのが一番の目的だと思うんだが?
だから決めたんじゃなくてそんな決まりはない、ということだよ。
路上で勝手に他の車と競争しているくらい、恥ずかしい行為だよ。
何一人で他人に負けたとか思って悔しい思いをしているの?ってねw
マナーを守って運転できない、加速できるなら出来るだけする奴は
危険だし迷惑。そういうこと。適切なソースが出せないなら、それはそれで
他人から指摘される場合もあるってことだよ、ワトソン君。

>>35 は前スレで解決済みでは?

61 :デフォルトの名無しさん:2008/07/15(火) 04:32:34
>>59
よりよい回答が発生するのであれば、競争は大いに結構。というのが現代流なのでは?
ゆとりなのは、競争をしらないあなたでしょう。

62 :デフォルトの名無しさん:2008/07/15(火) 04:36:03
>>60
>どこにも回答者同士で出来を争うといった趣旨の内容はなく
どこにも回答者同士で出来を競うなといった趣旨の内容はありませんが。

結果としていい回答が発生するのであれば、競争してもかまわないと思いますが、いかが?
あと車のたとえは意味不明。

63 :デフォルトの名無しさん:2008/07/15(火) 04:37:14
えぇ、どこにも回答者同士で競い合うというった趣旨のスレではありません。
勝手に自意識過剰厨が、俺の方が出来が良いぜ、後出しじゃんけんは
必ず負けにしたいんだろ?w 内容じゃなくて早く書けるかを競うにしても無駄。
過去の課題のコピペで済むものも普通に存在しているし。
一人で見えない敵と戦ってろ

64 :デフォルトの名無しさん:2008/07/15(火) 04:46:29
>>63
日本語でOK

65 :デフォルトの名無しさん:2008/07/15(火) 05:10:58
自動スクリプト回してますね

66 :デフォルトの名無しさん:2008/07/15(火) 05:20:34
先出し後出し中出しでもめるくらいなら、もう定石のある
ありきたりなパターンのものはテンプレ化して、それを
提示するなり、必要に応じてそのスタイルの関数を用いて出すとか。
それを競い合っても無駄だがねw

67 :デフォルトの名無しさん:2008/07/15(火) 05:24:17
>>66
中だしでもめるようなら手をつけなければいいのですが、(回答)初心者には難しいのでしょうね。

68 :デフォルトの名無しさん:2008/07/15(火) 05:25:20
>>65
自動スクリプトで対応可ですからね。

69 :デフォルトの名無しさん:2008/07/15(火) 05:33:13
>>35  をお願いします。期限は今日なんで…

70 :デフォルトの名無しさん:2008/07/15(火) 05:44:16
>>35 >>69
http://pc11.2ch.net/test/read.cgi/tech/1215439445/586
#include<iostream>
void swap(int *a, int *b){
int c;
c=*a; *a=*b; *b=c;
}
int main(void){
int max1=0, max2=0, num;

while(std::cin >> num){
if(num==0) break;
if(num<0 || num%2==1) continue;
if(num>max2) max2=num;
if(max1<max2) swap(&max1, &max2);
}
std::cout << max2 << std::endl;
return 0;
}
私自身はチェックしていません。


71 :デフォルトの名無しさん:2008/07/15(火) 05:54:53
>>70
 [3.3] 言語: C


72 :デフォルトの名無しさん:2008/07/15(火) 06:08:05
>>35 >>69
#include <stdio.h>
void swap(int *a, int *b) {
  int c;
  c=*a; *a=*b; *b=c;
}
int main() {
  int max1 = 0, max2 = 0, num;
  while(scanf("%d", &num) == 1){
    if(num == 0) break;
    if(num < 0 || num % 2 == 1) continue;
    if(num > max2) max2 = num;
    if(max1 < max2) swap(&max1, &max2);
  }
  printf("%d\n", max2);
  return 0;
}
>>71 thanks.

73 :デフォルトの名無しさん:2008/07/15(火) 06:21:03
宿題に答えられたら答える人が答える、出来ない人が出来なかったことに
気を落とすスレでもなければ、回答したことに自己満足したのを
アピールするスレでもありませんので、お間違えのないようお願いします。

74 :デフォルトの名無しさん:2008/07/15(火) 06:21:43
ありがとうございます

75 :デフォルトの名無しさん:2008/07/15(火) 06:21:57
かまってちゃんが自己アピールするスレでもないんですけどね。

76 :デフォルトの名無しさん:2008/07/15(火) 07:27:10
>>6を参考に

回答に余計なコメントを入れず、簡潔にコードだけ。
出来ればアンカーも付けずに、うpローダーに
ノーリンクな形で著作権フリーな形で書き込んで
URLだけ本スレに貼って下さるようお願いします。

77 :45:2008/07/15(火) 07:39:23
誰か>>45やってくれませんか?
自機の移動までは出来たのですが、ずっと右に進んだりすると消えてしまうので、消えないように表示がしたいです。
敵の跳ね返りもコンパイルは出来るのに、何故か表示されない…。

78 :デフォルトの名無しさん:2008/07/15(火) 07:46:12
>>77
期限切れのものは無駄だから作らない

79 :デフォルトの名無しさん:2008/07/15(火) 07:48:45
>>77
つーか、Ex09から雑魚1匹だけ抜き出して動かせばいいんじゃないの?

参考までに。あのコードはC++分かってないと書けないようになってるんで、
(クラスの継承やらオーバーライドやら使ってるんで)ここで中途半端なコード出すと
「ああ、、、誰かのパクったんだな」ってばれるんでそこらへんよろしく♪

80 :45:2008/07/15(火) 07:48:52
>>78
期限は今日の12時までに変更するので、お願いします。

81 :45:2008/07/15(火) 07:55:45
>>78
Ex09だと敵雑魚が複数居るから、1匹だけ表示する方法が分かりません。
とりあえず自分なりにやったけど表示されず…。

82 :45:2008/07/15(火) 07:56:34
すみません、>>81>>79さんへのレスです。

83 :デフォルトの名無しさん:2008/07/15(火) 08:26:30
だれか>>4をやってくれませんか??
難しいかと思いますが、期限が13:00までなので、わかる人がいればよろしくお願いします。

84 :デフォルトの名無しさん:2008/07/15(火) 08:27:38
[1] 授業単元:プログラミング言語基礎
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7373.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: borland C++ Compiler 5.5.1
 [3.3] 言語: C
[4] 期限: [2008年07月16日12:30まで]
[5] その他の制限: 特になし

今年からCを習い始めた初心者です、よろしくお願いします。

85 :デフォルトの名無しさん:2008/07/15(火) 09:03:26
なんか、最近のいざこざでやる気が失せた。自分がやっても
誰かがやってたら、先に出した方がいれば後出しに何か言われるわ
そんなんでちょっと面倒で時間が掛かりそうだと、もうやる気が失せるわ。
ちょっと他人の回答について、黙ってて欲しい。まぁ、そんなんだから
最近は催促された後に、誰もやらないなら自分がやるかって
風潮になっているんだろうけどね。

86 :デフォルトの名無しさん:2008/07/15(火) 09:05:01
>>84
これでいいですか。
1)
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7374.txt
2)
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7375.txt

87 :デフォルトの名無しさん:2008/07/15(火) 09:23:42
>>85
質問テンプレで質問あげたら再度催促しない限り、回答を
貰えないといルールにすればいい。
催促は問題よっても異なるが、質問をあげてから最速で3時間以上は
してはならないことにする。
それまでに答えた回答者はフライングで、皆でバッシング

催促されたら、原則として最も早く回答した人が質問者との通信権を持ち
ソースの授与とソースに対する質問が終わるまで、他の回答者は
その質問者にアクセスすることが出来ないことにする。

その後、別の回答者、もしくは同じ回答者が質問者にアクセスす
る場合は、質問者を呼び出すこと。応答が無い限り、質問者宛という
形でソースコードを置き逃げするようなことをしない。
あと回答者同士で、ソースコードをやりとりするのはタブーかな。
やはり。

要するに、相手がオンライン状態であることを確認し、相手が自分の
コードを受け取る認識にあることを確認した上でソースを渡す方式すれ
ばいいだけ。

88 :デフォルトの名無しさん:2008/07/15(火) 09:27:26
長文うぜー

89 :デフォルトの名無しさん:2008/07/15(火) 09:34:10
>>50
数式が解けない
f'(t)=? //
f(0)=0

f''(t)=mg-kf(t)-aη/hf'(t)

90 :デフォルトの名無しさん:2008/07/15(火) 09:34:48
f''(t)=mg-kf(t)-(aη/h)f'(t)

91 :デフォルトの名無しさん:2008/07/15(火) 09:38:45
>>51
void swap(int *a, int *b) { int temp = *a; *a = *b; *b = temp; }

void bubblesort(int *a, int size)
{
int i, j;
for(i=size-1; i>0; i--) for(j=0; j<i; j++) if(a[j] > a[j+1]) swap(a+j, a+j+1);
}

void insertionsort(int *a, int size)
{
int i, j;
for(i=1; i<size; i++) for(j=i; j>0 && a[j] < a[j-1];j--) swap(a+j, a+j-1);
}

92 :デフォルトの名無しさん:2008/07/15(火) 09:54:02
>>88
短文しか書けない奴は実は単文は書けないな

93 :デフォルトの名無しさん:2008/07/15(火) 10:07:17
>>88
大卒のための卒論にはありきたりな文章を真似るにしても
短文じゃ無理だから、お前みたいな大学も卒業していない
知能レベルの低い奴が何を言っても説得力がないよw

94 :デフォルトの名無しさん:2008/07/15(火) 10:09:30
>>93
中文が一番うざい

95 :デフォルトの名無しさん:2008/07/15(火) 10:09:58
>>88
読む気がないんだろ?だったら読まなくて良いからw
どうせ読解力、国語力のないお前じゃそういった低レベルの短文での
罵倒レスしか出来ないんだろうけどさw

96 :デフォルトの名無しさん:2008/07/15(火) 10:10:35
>>94
だからお前個人の感想なんて要らないってw
お前の存在そのものがうぜー、このスレには必要ない
どうせお前が汚いソースを先走って出している低脳だから
必死に抵抗してんだろ?w

97 :デフォルトの名無しさん:2008/07/15(火) 10:19:48
>>87
高卒?。中卒か?
もしかしたら小卒かも知れねーな。
大卒とか院卒だとしても、この回答者の心理を無視した
ルールは何だよw
相手がネットに張り付いて待っていよが居まいがコードが
出来たらいち早く置き土産みたく貼付けて楽しんでるんだよ。
コンパイルすら通らなくてもいい。とにかく形さえ出来てれば
いいんだ。
もすこし、実態を知ってからカキコしろや

98 :デフォルトの名無しさん:2008/07/15(火) 10:20:15
あぁ、なんだやっぱり 大卒未満 か、悪い。

99 :デフォルトの名無しさん:2008/07/15(火) 10:23:31
98の自己反省文でした。

100 :デフォルトの名無しさん:2008/07/15(火) 10:27:02
[1] 授業単元:プログラミング論 I
[2] 問題文(含コード&リンク):
fib(1) = fib(2) = 1
fib(i) = fib(i - 1) + fib(i - 2) i は3以上の整数時、
fib(i) を以下のプログラムで計算する時、fib(i) を計算するのに加算が何回行われるか、
fib(i) を使って示せ。

さらに、このプログラムより加算回数が少ないプログラムをCで実装せよ。

int fib(int i){
if(i <=2){ return 1;}
int answer = fib(i-1) + fib(i-2);
return answer;
}

[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc3.4
 [3.3] 言語: C
[4] 期限: 2008年7月17日
[5] その他の制限: 特にありません。

よろしくお願いします。

101 :デフォルトの名無しさん:2008/07/15(火) 10:30:29
とりあえず100は12:00まで回答禁止ってどーだ?
12:00以降100が再度お願いしますと言って来たら
その時点で回答
期限は明後日だし、明日中に回答が貰えれば十分な筈だ

102 :デフォルトの名無しさん:2008/07/15(火) 10:35:45
ここでいちいち名指し、個人宛て、アンカーをつけてレスしてないのに
反発レスをする奴は、自分に見に覚えのある基地外ってことだろ?
分かりやすいな、簡単に餌のない釣り糸に食いつく野郎って。
お前がいなくなれば、このスレは安泰するんだが、分かるかね?

103 :45:2008/07/15(火) 10:47:03
>>79
一匹だけ抜き出す方法教えてくれませんか?
自機はできたので大丈夫そうです。

104 :デフォルトの名無しさん:2008/07/15(火) 10:52:49
>>103
この間の君かw

void elCreate(void)
というところの

Zako[0] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",3, 0, 0,5, 2,40,40);
Zako[1] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",2,200, 0,5, 2,40,40);
Zako[2] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",6, 0, 80,5, 2,40,40);
Zako[3] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",5,200, 80,5, 2,40,40);

というのが敵クラスを生成して画像を当てはめてるところ。

void MainScreen(void)
というところの

for(int i=0;i<4;i++){
Zako[i]->Draw();
}

というのが敵クラスのDrawを呼び出して移動処理+描画をさせてる。


やっぱりクラス部分ではまったか・・・

途中でやってた人がクラスで作ってきたがそれまでがそんなのできそうな気配が
なかったのでいいのかな〜?と心配はしてたんだがw

105 :45:2008/07/15(火) 11:04:59
>>103
つまり…
for(int i=0;i<4;i++){
Zako[i]->Draw();
}

for(int i=0;i<1;i++){
Zako[i]->Draw();
}
にすれば良いのですか?

106 :デフォルトの名無しさん:2008/07/15(火) 11:06:33
>>105
それでもいいけど1個しか使わないなら

Zako[0]->Draw();

だけでいいかな

まあ本当は配列にする必要すらないんだけどね



107 :45:2008/07/15(火) 11:15:44
>>106
ありがとうございます。無事にできました!
あと、影は使わないので消す事できましたが、
  下の 1,"bmp/kage2.bmp",3, 0, 0,5, 2,40,40の部分は使わないので消しても平気でしょうか?
Zako[0] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",3, 0, 0,5, 2,40,40);
Zako[1] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",2,200, 0,5, 2,40,40);
Zako[2] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",6, 0, 80,5, 2,40,40);
Zako[3] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",5,200, 80,5, 2,40,40);

Bocty[0] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3, 0, 0,1,11,60,60);
Bocty[1] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3, 60, 0,1,11,60,60);
Bocty[2] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3,120, 0,1,11,60,60);
Bocty[3] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3,180, 0,1,11,60,60);
Bocty[4] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3, 60,360,1, 1,60,60);

108 :デフォルトの名無しさん:2008/07/15(火) 11:24:15
>>107
新しい方のお題がさっぱりわからないんだけど
Ex09のお題でいうところの自分で操作するキャラクターと跳ね回ってる敵の両方で影を使わないので
あればクラスの
class Chara{

<中略>

Chara(int _w,int _h,char *imgname,int _draw_type,char *kagename,
int _show_cnt = 0,
int _start_x = 0, int _start_y = 0,
int _div_x = 1, int _div_y = 1,
int _div_h = 0, int _div_w = 0)
{

Chara(int _w,int _h,char *imgname,int _draw_type,
int _show_cnt = 0,
int _start_x = 0, int _start_y = 0,
int _div_x = 1, int _div_y = 1,
int _div_h = 0, int _div_w = 0)
{
として

続く

109 :デフォルトの名無しさん:2008/07/15(火) 11:25:29
>>108の続き

class PlayerChara : public Chara
{
public:
PlayerChara(int _w,int _h,char *imgname,int _draw_type,char *kagename,
int _show_cnt = 0,
int _start_x = 0, int _start_y = 0,
int _div_x = 1, int _div_y = 1,
int _div_h = 0, int _div_w = 0) :
Chara(_w,_h,imgname,_draw_type,kagename,_show_cnt,_start_x,_start_y,_div_x,_div_y,_div_h,_div_w)
{
setPos(px,py);
}



class PlayerChara : public Chara
{
public:
PlayerChara(int _w,int _h,char *imgname,int _draw_type,
int _show_cnt = 0,
int _start_x = 0, int _start_y = 0,
int _div_x = 1, int _div_y = 1,
int _div_h = 0, int _div_w = 0) :
Chara(_w,_h,imgname,_draw_type,_show_cnt,_start_x,_start_y,_div_x,_div_y,_div_h,_div_w)
{
setPos(px,py);
}

とすれば
続く

110 :デフォルトの名無しさん:2008/07/15(火) 11:27:47
>>109の続き

Zako[0] = new Chara(200, 80,"bmp/teki.bmp", 1,"bmp/kage2.bmp",3, 0, 0,5, 2,40,40);

の"bmp/kage2.bmp"は指定しなくてOKだし

Bocty[0] = new PlayerChara(60,660,"bmp/bocty.BMP",2,"bmp/kage.bmp",3, 0, 0,1,11,60,60);

の"bmp/kage.bmp"は指定しなくてOK


でも自分で操作するほうだけ影を残す場合は継承?してるっぽいのでちょっといじりかた変わると思う。
C++あまり詳しくないのであれなんだけどさ・・・^^;

111 :51:2008/07/15(火) 11:31:07
>>91

ありがとうございます
無事できました

112 :デフォルトの名無しさん:2008/07/15(火) 11:37:17
http://ja.wikipedia.org/wiki/%E6%8C%BF%E5%85%A5%E3%82%BD%E3%83%BC%E3%83%88

113 :デフォルトの名無しさん:2008/07/15(火) 11:47:18
ヒント:挿入ソートは比較対象となる値を記憶しておく変数を使い
比較中は押し出すだけで、最後に対象の位置へその値を入れるため
スワップの必要が無い。

114 :45:2008/07/15(火) 11:52:55
>>108
>>109
これ全部やった後、>>110のようにやって。
これにしました。
  Zako[0] = new Chara(200, 80,"bmp/teki.bmp",1,3,0,0,5,2,40,40);

Bocty[0] = new PlayerChara(60,660,"bmp/bocty.BMP",2,3,0,0,1,11,60,60);
Bocty[1] = new PlayerChara(60,660,"bmp/bocty.BMP",2,3,60,0,1,11,60,60);
Bocty[2] = new PlayerChara(60,660,"bmp/bocty.BMP",2,3,120,0,1,11,60,60);
Bocty[3] = new PlayerChara(60,660,"bmp/bocty.BMP",2,3,180,0,1,11,60,60);
Bocty[4] = new PlayerChara(60,660,"bmp/bocty.BMP",2,3,60,360,1,1,60,60);

そうしたら
cpp(73) : error C2065: 'kagename' : 定義されていない識別子です。
って出たんですけど、影関係全部消去した方が良いのですか?

115 :デフォルトの名無しさん:2008/07/15(火) 11:57:07
>>114
>>109
のこれ忘れてる?
Chara(_w,_h,imgname,_draw_type,kagename,_show_cnt,_start_x,_start_y,_div_x,_div_y,_div_h,_div_w)
{
setPos(px,py);
}



Chara(_w,_h,imgname,_draw_type,_show_cnt,_start_x,_start_y,_div_x,_div_y,_div_h,_div_w)
{
setPos(px,py);
}

116 :デフォルトの名無しさん:2008/07/15(火) 12:15:02
すいませんが>>55をお願いします

117 :45:2008/07/15(火) 12:29:19
>>115
ありがとうございます!できました!
敵をこれ↓に変えて、跳ね返るときに音鳴らすのはどうやってやるんですか?
http://www.dotup.org/uploda/www.dotup.org5699.bmp.html

118 :デフォルトの名無しさん:2008/07/15(火) 12:35:25
>>60
いや、macになったよ

119 :デフォルトの名無しさん:2008/07/15(火) 12:35:59
>>117
画像のサイズが同じならファイル名同じにして入れ替えるだけだろ

120 :デフォルトの名無しさん:2008/07/15(火) 12:36:12
>>118
コンパイラと言語は同じでは?

121 :デフォルトの名無しさん:2008/07/15(火) 12:37:32
>>17を誰かお願いします。

122 :115:2008/07/15(火) 12:40:04
>>119
いや違う

void Draw()
{

if(draw_type == 0){
cw = w;
cx = 0;
ch = h;
cy = 0;
}else{
cw = div_w;
cx = start_x + (cw * (img_id % (div_x)) );
ch = div_h;
cy = start_y + (ch * (img_id / div_x) );
}
この部分で与えられた画像が1画像1キャラか1画像の指定開始位置から縦方向にn個あるか
しか現在処理できないようになってるので横方向にn個並んでる際の処理がいる

123 :115:2008/07/15(火) 12:41:35
ってなんで他人が設計した得意でもないC++の解説をやってるんだ俺はorz

124 :115:2008/07/15(火) 12:43:25
あ、敵が横だな。
いけるのかな?



125 :デフォルトの名無しさん:2008/07/15(火) 12:52:54
>>55 >>116
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7376.c

126 :115:2008/07/15(火) 13:01:30
Zako[0] = new Chara(200, 80,"bmp/teki.bmp", 1,3, 0, 0,10, 1,40,40);

引数1,2 任意の座標にしてね。
引数3 今回表示したいbmpのファイル名称に
引数4 1でOKかな?
引数5 キャラクターのアニメーション用コマの切り替えタイミング?3だと1/60*3で切り替えかな?
引数6,7 画像の開始位置、今回の画像は1画像に1キャラの複数コマしかないので0,0で
引数7,8 横方向に10個、縦方向に1個分しかないので10,1で
引数9,10 1キャラの縦横サイズが40x40ドットなので40,40で


127 :115:2008/07/15(火) 13:03:12
>>126の続き

サウンド系のお話
class Chara の

virtual void Move()
{

if( (x > 640-cw) || (x < 0) ) {
dx = -dx;
x = x + dx;
}
if( (y > 480-ch) || (y < 0) ) {
dy = -dy;
y = y + dy;
}
x = x + dx;
y = y + dy;
}

続く

128 :115:2008/07/15(火) 13:04:12
>>127の続き

virtual void Move()
{
int soundflg = 0;
if( (x > 640-cw) || (x < 0) ) {
dx = -dx;
x = x + dx;
soundflg = 1;
}
if( (y > 480-ch) || (y < 0) ) {
dy = -dy;
y = y + dy;
soundflg = 1;
}
if (soundflg == 1)
{
//鳴らしたい音の処理
}
x = x + dx;
y = y + dy;
}

とでもすればOKかな?
elのサウンド系はよくわからん

129 :デフォルトの名無しさん:2008/07/15(火) 13:06:33
>>1
【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm

130 :115:2008/07/15(火) 13:09:11
ああ、すまん

131 :デフォルトの名無しさん:2008/07/15(火) 13:15:43
>>55

void del_chr(char *str, char c){
char *s,*d;
s = d = str;

do{
if(*s != c) *d++ = *s;
}while(*s++);
}


132 :131:2008/07/15(火) 13:17:07
かぶった。
リロードしてなかったorz

133 :デフォルトの名無しさん:2008/07/15(火) 13:17:46
>>120
別の学校で同じ課題が出たのかな。
先生も課題考えるのめどいんだろうなー

134 :115:2008/07/15(火) 13:18:56
>>133
実は先生も課題用として動く物をこのすれの住人に作らせてると
俺は常々思ってる。

135 :デフォルトの名無しさん:2008/07/15(火) 13:20:54
そんな先生がいたらちょっとした質問であたふたしそうだw

136 :デフォルトの名無しさん:2008/07/15(火) 13:23:12
>>125,131
ありがとうございます

…そっか、do文か

137 :デフォルトの名無しさん:2008/07/15(火) 13:27:14
>>134
う〜〜ん・・・同じ学校の別の生徒と思われるかもしれんが、もしかすると
講師が課題作りをしたは良いが、模範解答をどうしようか考えて
ここを利用している可能性もあるかもね・・・その構図を思い浮かべて、
ちょっとワラタw っつか、俺利用されたっ!?

138 :デフォルトの名無しさん:2008/07/15(火) 13:28:35
学生臭いスレですね

139 :デフォルトの名無しさん:2008/07/15(火) 13:29:56
>>131
うおっ、その手があったか。先にレスしたけど、それパクらせてもらうw

140 :115:2008/07/15(火) 13:31:37
現実にそれっぽいのがあったんだよ。

週末にここで質問された内容が週明けに再度復活とかさ・・・・

141 :デフォルトの名無しさん:2008/07/15(火) 13:33:36
>>35
http://pc11.2ch.net/test/read.cgi/tech/1215439445/723
http://pc11.2ch.net/test/read.cgi/tech/1215439445/725
http://pc11.2ch.net/test/read.cgi/tech/1215439445/757
http://pc11.2ch.net/test/read.cgi/tech/1215439445/760


142 :デフォルトの名無しさん:2008/07/15(火) 13:35:09
>>140
なるほど、確かに。講師が模範解答の依頼、それを次の授業の後に
ここで質問した人が、既出のソースをそのまま提出して
お前、あのスレを使ったな?っとバレて単位がもらえないなんて
ことが、どこかの学校であるかも・・・そんな構図を思い浮かべて
ますます吹いたw

143 :デフォルトの名無しさん:2008/07/15(火) 13:37:52
>>141 のソースに、2 2 0 と入力した場合について指摘がされているが
それをどう解釈するか?確かにこの場合、2番目も1番目も同じと
解釈するなら、2でも問題なし。まぁ、同じでも偶数は2つ入力されている
わけだから、これでも問題の趣旨としては条件を満たしていると思われる。

144 :デフォルトの名無しさん:2008/07/15(火) 13:41:31
学生だって土日は外で遊ぶこともあるべ

145 :デフォルトの名無しさん:2008/07/15(火) 13:52:55
[1] 授業単元: C++
[2] 問題文(含コード&リンク):
次の説明を読んで、プログラムを作成しなさい。

小数で入力される気温のデータを5℃単位の整数に丸めたい。
キーボードからdouble型変数kに気温を入力し、
丸めた数値はint型変数gに求め、gを画面に出力する。

ただし入力データに負の気温はないものとする。

また必要なら、
計算途中の中間結果を格納するint型変数wなど、
適宜変数を用意すること。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限: 繰り返しや分岐を使わず、簡単な計算で

146 :デフォルトの名無しさん:2008/07/15(火) 13:53:54
[1] 授業単元: C++
[2] 問題文(含コード&リンク):
キーボードから100点満点のテストの点数を入力し(-1で終了)、
10点ごとの人数を int型の配列 count[11]に数えるプログラムを
作成せよ。 テストは100点満点とし、それ以外の入力はエラーとし
て無視する。ただし -1 はデータの終了を表すものとする。 点数
の入力が終了したら、度数分布を画面に出力して終了する。出力は
人数と,*(アスタリスク)によるグラフとする。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:

147 :デフォルトの名無しさん:2008/07/15(火) 13:54:37
>>128
ありがとうございます!無事鳴りました。
自機も移動する時鳴らしたいのですが、同じようにやるんですか?

148 :デフォルトの名無しさん:2008/07/15(火) 13:55:09
[1] 授業単元: C++
[2] 問題文(含コード&リンク):
次の処理を行うプログラムを作成し実行結果を確認しなさい。

int型の配列a[5]、int型へのポインタp1, p2を宣言する
配列名aで表示される値を画面に出力する
配列a[5]のすべての要素のアドレスを出力する
ポインタp1にa[0]のアドレス、ポインタp2にa[4]のアドレスを格納する
p1 - p2を計算し出力する
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:
3問」ありますが、よろしくお願いします。

149 :115:2008/07/15(火) 14:17:45
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7380.txt


150 :115:2008/07/15(火) 14:18:16
>>149>>147

151 :115:2008/07/15(火) 14:27:29
すまん、フラグを立てる際間違えてた

if(key_lt == HOLD_KEY || key_rt == HOLD_KEY) {
if( tx >= 0 && tx + cw <= 640){
px = tx;
soundflg1 = 1;
} else {
soundflg2 = 1;
}
}
if(key_up == HOLD_KEY || key_dn == HOLD_KEY) {
if( ty >= 0 && ty + ch <= 480){
py = ty;
soundflg1 = 1;
} else {
soundflg2 = 1;
}
}

152 :デフォルトの名無しさん:2008/07/15(火) 14:33:36
[1] 授業単元: C言語プログラミング
[2] 分数の四則演算を計算するプログラムを作成する
[3] 環境
[3.1] OS: Windows 
[3.3] 言語・C++
[4] 期限: ([2008年7月21日14:00まで
[5]条件
  分数を、 1|3 のように、| (縦棒)という記号で分子・分母を区別する。/ (スラッシュ)だと除算記号と混同してしまうから。
計算規則
 a|b + c|d = (a*d + b*c) | (b*d)
 a|b - c|d = (a*d - b*c) | (b*d)
 a|b * c|d = (a*c) | (b*d)
 a|b / c|d = (a*d) | (b*c)
計算結果については,分母が1の時には分子のみの表示にする。分数が0(ゼロ)の時には 0(ゼロ)のみを表示する。また,最終の計算結果を既約分数にする。

1.分母がゼロの入力エラーに対しては、再入力するよう促す。

2.除算において、除数がゼロの入力エラーに対しては、再入力するように促す。

3.以下範囲の整数(分子、分母にかかわらず)に対して、正しく計算できるようにすること。
  -2147483648 〜 2147483647



153 :115:2008/07/15(火) 14:42:15
でキー押しっぱなしだとうるせーよ対策バージョンはこれ

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7381.txt

154 :デフォルトの名無しさん:2008/07/15(火) 14:45:19
>>115
やさしいね

155 :デフォルトの名無しさん:2008/07/15(火) 14:46:32
>>154
こういう題材じゃなければぶっちしてるw

156 :デフォルトの名無しさん:2008/07/15(火) 15:13:59
>>153
ありがとうございます!できました。
最後に今までのをユーザー関数群でまとめたいのですが、
どうすれば良いでしょう?

157 :115:2008/07/15(火) 15:18:03
うーん

クラスになってるからユーザー関数にするような箇所がないかも?

大半の機能はelライブラリでやってるし・・・

C++得意な方よろしこorz

158 :デフォルトの名無しさん:2008/07/15(火) 15:23:14
>>156
一度自分で完成させたソースを上げて、見てもらったほうがいいよ。


159 :デフォルトの名無しさん:2008/07/15(火) 15:33:00
[1] 授業単元:
C
[2] 問題文(含コード&リンク):()
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7377.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7378.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7379.txt
[3] 環境
 [3.1] OS: (Windows/Linux/等々)
Windows
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
Microsoft Visual Studio 2008
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
明日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
基本ソートのcity.txtは問題文の一番下です。
お願いします。


160 :デフォルトの名無しさん:2008/07/15(火) 15:35:53
>>158
分かりました。

その前に自機と敵を下のに変えるには、
どこをどのように変更すれば良いのですか?

自機
http://www.dotup.org/uploda/www.dotup.org5804.bmp.html


http://www.dotup.org/uploda/www.dotup.org5806.bmp.html

今までのソース
http://www.dotup.org/uploda/www.dotup.org5816.cpp.html

161 :デフォルトの名無しさん:2008/07/15(火) 15:36:46
>>35 Thanks, Part112>>760
#include <stdio.h>

int main(void) {
  int m1=0, m2=0, n;

  while( scanf("%d",&n) ) {
    if(n == 0) break;
    if(n%2 == 1) continue;
/*
 * if(n==m1) continue;
 * if(n >m2) m2=n;
 * if(m1<m2) swap(&m1, &m2); */
    if(n>m2) {
      if(n>m1) { m2=m1; m1=n;}
      else if(n==m1) ;
      else m2=n;
    }
  }
  printf("%d \n",m2);
  return 0;
}

162 :デフォルトの名無しさん:2008/07/15(火) 15:39:39
>>145

#include <iostream>

int main(void){
double k;
int g;

std::cout << "気温を入力:";
std::cin >> k;
g = k / 2.5;
g += g % 2;
g = g / 2 * 5;
std::cout << "気温は約" << g << "℃です。" << std::endl;
return 0;
}


163 :115:2008/07/15(火) 15:42:52
>>160
その敵のほうのさ、白いのっていまどきマスクパターンっていわないよねw

あくまで敵が何か発動中はその白塗りになると思っていいよね?

164 :デフォルトの名無しさん:2008/07/15(火) 15:47:31
>>163
はい。そうです。

165 :デフォルトの名無しさん:2008/07/15(火) 15:48:50
>>163
跳ね返りの時、白く点滅できれば…。

166 :デフォルトの名無しさん:2008/07/15(火) 15:52:06
>>35
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7382.txt
指摘のあった、一番大きい値が2回入力された場合に対処してみた。

167 :デフォルトの名無しさん:2008/07/15(火) 15:58:04
>>152
適当に
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7383.cpp

168 :161:2008/07/15(火) 16:01:52
scanf の戻り値はエラーなら0か-1

169 :58:2008/07/15(火) 16:04:08
すみません
どなたか>>58をお願いできませんか?

170 :デフォルトの名無しさん:2008/07/15(火) 16:07:23
>>146
#include <iostream>

int main(void){
int count[11];
int n;

for(int i = 0;i < 11;i++) count[i] = 0;
while(1){
std::cout << "点数入力:";
std::cin >> n;
if(n == -1) break;
if(0 <= n && n <= 100) count[n/10]++;
}
for(int i = 0;i < 10;i++){
std::cout << std::endl << i * 10 << "〜" << i * 10 + 9 << "(" << count[i] << "名)\t|";
while(count[i]-- > 0) std::cout << "*";
}
std::cout << std::endl << "100(" << count[10] << "名)\t|";
while(count[10]-- > 0) std::cout << "*";

return 0;
}


171 :デフォルトの名無しさん:2008/07/15(火) 16:09:06
>>148
#include <iostream>

int main(void){
int a[5],*p1,*p2;

std::cout << "a=" << a << std::endl;
for(int i = 0;i < 5;i++){
std::cout << "a[" << i << "]のアドレス:" << &a[i] << std::endl;
}
p1 = &a[0];
p2 = &a[4];
std::cout << "p1 - p2 (&a[0] - &a[4]) = " << p1 - p2 << std::endl;

return 0;
}


172 :115:2008/07/15(火) 17:04:35
>>163
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7384.txt


173 :115:2008/07/15(火) 17:05:06
>>163じゃねえ>>165

174 :デフォルトの名無しさん:2008/07/15(火) 17:10:56
[1] 授業単元:プログラミング第一
[2] 問題文(含コード&リンク):
構造体bintree_nodeを次のように定義する。
typedef struct bintree_node{
int value;
struct bintree_node *lt,*rt;
} *bintree;
このとき、次の条件を満たす関数void delgraph(bintree t)を作成せよ。
・tからたどることのできる節点をすべてfreeによって消去する
・tに合流点・ループがあっても必ず停止し、かつどの節点にもfreeが2回以上適用されないようにする
[3] 環境
 [3.1] OS: (Windows/Linux/等々)
Windows
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
gcc
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
7/16 12:00
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
以前、似たような問題をこちらで聞いた時のプログラム(木構造に合流点やループがないかどうか調べる)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7386.c
に付け足していただけるとうれしいです。

175 :デフォルトの名無しさん:2008/07/15(火) 17:11:05
PlayerChara(60,660
この数字がおかしいな



176 :デフォルトの名無しさん:2008/07/15(火) 17:42:27
>>89
m(dz^2/dt^2)-an/h(dz/dt)-kz=0

177 :デフォルトの名無しさん:2008/07/15(火) 17:48:23
>>100ですが、
回答はご用意頂けたでしょうか?

178 :デフォルトの名無しさん:2008/07/15(火) 18:00:38
>>174
その元のコードだとbintreeはmallocを使わず実装してるので
この課題には流用しずらい。

それに付け足すまでもなく自明に実装できる。
void delgraph(bintree tree){
static bintree_node dummy;
if(!tree || tree->lt == &dummy)return;
bintree lt = tree->lt,rt=tree->rt;
tree->lt = &dummy;
delgraph(lt);
delgraph(rt);
free(tree);
}
ようするに一度巡回したノードにはltにdummy突っ込んでおくだけ。
削除するんだから値を勝手に書き換えても問題ないだろう。

179 :デフォルトの名無しさん:2008/07/15(火) 18:17:51
0の値が格納された整数変数 pos_area を使って bst_sorted_output(root,A,&pos_area)を実行することにより、
2分探索木に格納されている整数データを配列Aへ小さい順に整列して出力する関数bst_sorted_output(Node *node, int A, int *pos)をC言語を用いてコーティングせよ。
ただし、変数*pos(実体はpos_area)は配列Aにおける次の格納位置を示すのに使うものとする。

180 :デフォルトの名無しさん:2008/07/15(火) 18:20:21
>>177
#include<stdio.h>
#include<stdlib.h>
int fib(int i){
static int count;
int answer;
if(i==0){ int ret=count;count=0;return ret; }
if(i <=2){ return 1;}
answer = fib(i-1) + fib(i-2); // 3回加算
count+=4; // 1回加算 計4回
return answer;
}
int fib2(int i){
static int count;
int n, fib_n_0=1, fib_n_1=1, fib_n_2=1;
if(i==0){ int ret=count;count=0;return ret; }
for(n=3;n<=i;n++){ // 1回加算
fib_n_2=fib_n_1+fib_n_0; // 1回加算
fib_n_0=fib_n_1;
fib_n_1=fib_n_2;
count+=3; // 1回加算 計3回
}
return fib_n_2;
}
int main(int argc, char *argv[]){
int fib_n=20;
printf("%d ", fib(fib_n));
printf(" %d\n", fib(0));
printf("%d ", fib2(fib_n));
printf(" %d\n", fib2(0));
return 0;
}

181 :174:2008/07/15(火) 18:52:33
>>178
回答ありがとうございます。
いただいたのをもとにプログラムを書いてみたんですが、うまく削除できてないみたいなんです・・・
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7387.c
これを実行すると@を5回表示するんですが、bintree 〜 is deleted.のほうは表示されなくて。
申し訳ありませんがもう1度見ていただけますか。

182 :デフォルトの名無しさん:2008/07/15(火) 18:56:27
>>181
削除は出来ている。
ただ、ローカル変数のta0とかの値は削除したからって自動でNULLにならない。
単にbintree 〜 is deleted.の部分のif文がおかしいだけ。

183 :174:2008/07/15(火) 19:10:38
>>181
調べてみたら、確かにfreeした後の領域はNULLではなくて、
何があるかわからないということが書いてありました。
そうすると、削除したかどうかってどうやって調べればいいんでしょう・・・。

184 :デフォルトの名無しさん:2008/07/15(火) 19:13:47
>>35 なのですが、関数を使わずにか、
#include <stdio.h>
void swap(int *a, int *b) {
int c;
c=*a; *a=*b; *b=c;
}
int main() {
int max1 = 0, max2 = 0, num;
while(scanf("%d", &num) == 1){
if(num == 0) break;
if(num < 0 || num % 2 == 1) continue;
if(num > max2) max2 = num;
if(max1 < max2) swap(&max1, &max2);
}
printf("%d\n", max2);
return 0;
}
*aやcontinue、&max1を使わずに出来ないでしょうか?
何度も申し訳ありません。

185 :デフォルトの名無しさん:2008/07/15(火) 19:18:37
>>184
このスレ内に汝の欲するものは既にある

186 :デフォルトの名無しさん:2008/07/15(火) 19:19:55
空白文字の個数を保ったまま、文字列を単語単位で処理をしたいんですが
どのように記述するのが良いのでしょうか

例えば次の文字列があり、単語の先頭にあるaだけ大文字にしたいです

_aba__dea__aga__   (_は空白)
_Aba__dea__Aga__   (こうなってほしい)

stringstreamでパースして、後で結合する方法を思いつきましたが、この方法だと空白は消えてしまいました。
地道に1文字ずつみて、str[i]==0 || (str[i-1]==' ' && str[i]!=' ')
こういった判定をする以外に良い方法ってありますか?

187 :デフォルトの名無しさん:2008/07/15(火) 19:24:39
UDP:相手先のオンライン、着信確認をせずに送ること
TCP:相手先がオンラインであること、着信確認を取った上で送ること
という理解でいいでしょうか?

188 :デフォルトの名無しさん:2008/07/15(火) 19:31:55
>>186
こういうことをしたいのかな?
それともaだけを大文字にするのかな?
#include<iostream>
#include<string>
#include<cctype>

int main(void){
std::string foo=" aba dea aga ";

std::cout << foo << std::endl;
for(int i=0,next_toupper_flag=1;i<foo.size();i++){
if(next_toupper_flag) foo[i]=toupper(foo[i]); // 書き換えてるけどこれっておk?
if(isspace(foo[i])) next_toupper_flag=1;
else next_toupper_flag=0;
}
std::cout << foo << std::endl;
}

189 :デフォルトの名無しさん:2008/07/15(火) 19:37:21
>>186
while (*str)
{
while (*str == ' ') str++;
if (*str == 0) break;
else if (*str == 'a') *str = 'A';
while (*str && *str != ' ') str++;
}


190 :デフォルトの名無しさん:2008/07/15(火) 19:37:29
うpローダー使おうよ

191 :デフォルトの名無しさん:2008/07/15(火) 19:49:53
複数レスにならない限り過去ログに残るほうがうれしい
質問者側としては検索で出てくるのはまずいかもしれないが…

変数名変えれば多分大丈夫さw

192 :デフォルトの名無しさん:2008/07/15(火) 19:51:40
[1] 授業単元:C言語
[2] 問題文 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7388.txt
[3] 環境
 [3.1] OS: Windowsxp
 [3.2] コンパイラ名とバージョン: VC 6.0
 [3.3] 言語: C
[4] 期限:7月18日

お願いします

193 :デフォルトの名無しさん:2008/07/15(火) 20:05:21
>>192
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7389.txt


194 :デフォルトの名無しさん:2008/07/15(火) 20:06:24
すいませんがお願いします。

[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)

以下のようなdouble型配列がある。配列の全要素の合計と平均を求める
プログラムをポインタを使用して作成しなさい。

[配列の定義]
double date[5]={10.8,20.3,30.6,40.4,50.5}

[実行結果]

配列の内容
date[]=10.800000,20.300000,30.600000,40.400000,50.500000
合計=152.600000
平均=30.520000

[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: (visual studio 2005 )
 [3.3] 言語: (C言語)
[4] 期限:今週いっぱいまで
[5] その他の制限: (シンプルにおねがいします)


195 :デフォルトの名無しさん:2008/07/15(火) 20:07:51
>>193どうもです!!

196 :デフォルトの名無しさん:2008/07/15(火) 20:35:23
>>194
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char *argv[]){
double date[5]={10.8,20.3,30.6,40.4,50.5}, *p=date, sum, ave;
int i;

printf("date[]=%.6f", sum=*p++);
for(i=1;i<5;i++,p++){
printf(",%.6f", *p);
sum+=*p;
}
ave=sum/5;
printf("\n合計=%.6f\n", sum);
printf("平均=%.6f\n", ave);
return 0;
}

197 :デフォルトの名無しさん:2008/07/15(火) 20:36:13
>>184
やっぱりわからないです…



198 :デフォルトの名無しさん:2008/07/15(火) 20:47:23
[1] 授業単元: Cプログラミング
[2] 問題文:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7390.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] gcc 
[3.3] 言語:C
[4] 期限:7月17日

お願いします。

199 :194:2008/07/15(火) 20:48:48
>>196
すごい、完璧に動きました。
ありがとうございます!

200 :デフォルトの名無しさん:2008/07/15(火) 20:50:55
完璧に動く > 完動 > 感動した!

201 :デフォルトの名無しさん:2008/07/15(火) 21:06:53
>>194 シンプル >
#include <stdio.h>

#define COUNT 5
double date[5]={10.8,20.3,30.6,40.4,50.5};

void main(void)
{
  int i;
  double *p=date, sum=0.0, ave;

  printf(" 配列の内容\n date[]=");
  for(i=0; i<COUNT; i++, p++) {
    sum += *p;
    printf("%f", *p);
    if(i < COUNT-1) printf(",");
  }
  ave = sum / COUNT;
  printf("\n 合計=%f\n 平均=%f\n", sum, ave);
}

202 :デフォルトの名無しさん:2008/07/15(火) 21:09:30
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7391.txt
[3] 環境
 [3.1] OS:windowsXP
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語: C++
[4] 期限: 至急
[5] その他の制限:問題文をソースの上に載せています。よろしくおねがいします


203 :デフォルトの名無しさん:2008/07/15(火) 21:09:34
>>198
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7392.txt

204 :デフォルトの名無しさん:2008/07/15(火) 21:11:27
動作は完璧かもしれないが、出題内容のdateはdataに変えるべきだと思った。

205 :デフォルトの名無しさん:2008/07/15(火) 21:12:53
>>198
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7393.txt

206 :デフォルトの名無しさん:2008/07/15(火) 21:20:39
どうか>>50をお願いします!!

207 :デフォルトの名無しさん:2008/07/15(火) 21:21:22
[1] 授業単元:数値計算
[2] 問題文(含コード&リンク):
y' = x +y
y(0) = 0
の厳密解を求めるプログラムを作って☆
[3] 環境
 [3.1] OS:mac os x leopard
 [3.2] コンパイラ名とバージョン:gcc.4.0.1
 [3.3] 言語: C
[4] 期限: 至急
[5] その他の制限:printfもfprintfもしなくて結構です。ええ、そうです。私ができないのは積分なのです…orz

すいませんすいませんすいませんすいませんすいません…。公式分かってるけど、計算ミスが多すぎて何が何だかなのです><

208 :186:2008/07/15(火) 21:26:37
>>188
ありがとうございます。
next_toupper_flagで単語の先頭(書き換えるべき箇所)を保持してるわけですね
書き換えもOKだったので助かりました。

>>189
ポインタ苦手なんですが、何とか理解できました。
最初、全てのaを置換しているのかと思いましたが
最後のwhileで先頭以外を読み飛ばしてるんですね


209 :デフォルトの名無しさん:2008/07/15(火) 21:41:29
>>184ですが
関数使わずにか* & continueを使わない方法ないですか?
図々しいとは思いますが、今日中なので頼みます

210 :デフォルトの名無しさん:2008/07/15(火) 21:46:25
>>209
>>166 でダメなら諦めるしかない

211 :デフォルトの名無しさん:2008/07/15(火) 21:55:52
>>107
>>110
Zako[0] = new Chara(200, 80,"bmp/teki.bmp", 1,NULL,3, 0, 0,5, 2,40,40);
にすればいいだけなのに(´;ω;`)

>>126
引数4は

0-背景
1- パターン1 → パターン2 → …… → パターンN → パターン1→ ……
2- パターン1 → パターン2 → …… → パターンN → パターンN-1 → パターンN-2 → …… → パターン1 → ……

212 :デフォルトの名無しさん:2008/07/15(火) 21:58:06
>>210
アドバイスありがとうございます。


213 :198:2008/07/15(火) 22:02:15
>>205
ありがとうございます!
初めて見る単語の理解に努めます・・・

214 :デフォルトの名無しさん:2008/07/15(火) 22:12:06
[1] 授業単元: Cプログラミング演習
[2] 問題文
20次元の2つのベクトル余弦cos(θ)を求めよ。
ベクトルの要素はそれぞれ、ユーザーが入力すること。ベクトル要素は
double型とすること。


[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: Linux
 [3.3] 言語: (C言語)
[4] 期限:7/16
[5] その他の制限: 特になし


215 :デフォルトの名無しさん:2008/07/15(火) 22:42:36
>>4 07/15 13:00 線形リスト
>>17 07/15 14:00 分数の四則演算を計算するプログラム
>>35 07/15 17:00 キーボード入力と表示 : >>72, >>141, >>161, >>166
>>37 07/15 17:00 数字の読み方 : >>39, >>40, >>42?
>>44 07/17 --:-- 4択3種
>>45 07/15 07:00 ゲーム? : >>108->110 その他アドバイスは多数
>>46 07/18 --:-- メディアン : >>47, >>49
>>50 07/17 00:00 減衰振動
>>51 07/15 12:00 ソーティング:基本交換法と挿入法 : >>91
>>55 07/15 14:00 文字列中の特定文字を削除 : >>125, >>131
>>58 07/15 18:00 木構造を用いた数式の処理
>>84 07/16 12:30 自由落下・BMI : >>86

216 :デフォルトの名無しさん:2008/07/15(火) 22:44:03
>>100 07/17 --:-- フェボナチ数列 : >>180
>>145 --/-- --:-- 5ごとに丸め >>162
>>146 --/-- --:-- 数字入力と度数分布表示 : >>170
>>148 --/-- --:-- ポインタ演算 : >>171
>>152 07/21 14:00 = >>17 : >>167
>>159 07/16 --:-- 複素数演算・ソーティング
>>174 07/16 12:00 領域開放 : >>178?
>>179 --/-- --:-- 2文木->配列
>>186? : >>188, >>189

217 :デフォルトの名無しさん:2008/07/15(火) 22:44:33
>>192 07/18 --:-- ? : >>193
>>194 07/18 --:-- 配列の全要素の合計と平均 : >>196, >>201
>>198 07/17 --:-- 大文字小文字3題 : >>203, >>206
>>202 --/-- --:-- (ごめんなさい、よくわからないです。)
>>207 --/-- --:-- 微分方程式の解析解
>>214 07/16 --:-- 20次元の2つのベクトル余弦

218 :84:2008/07/15(火) 22:45:01
>>86
ありがとうございます!
まさかこんなに早く答えていただけるとは・・・助かりました。
見たことある単語がいくつもあったので自分にも理解できそうです。

219 :デフォルトの名無しさん:2008/07/15(火) 22:49:39
>>214 20次元の場合の計算方法はこれでいいのか?
#include<stdio.h>
#include<math.h>
#define EPS (1.0e-20)
typedef struct tag_vector20d_t{
double num[20];
}vector20d_t;
double vector20d_size(const vector20d_t *vector20d){
int i; double x2=0.0;
for(i=0;i<20;i++) x2+=vector20d->num[i]*vector20d->num[i];
return sqrt(x2);
}
double vector20d_inner_product(const vector20d_t *a, const vector20d_t *b){
int i; double ret=0.0;
for(i=0;i<20;i++) ret+=a->num[i]*b->num[i];
return ret;
}
double vector20d_cos(const vector20d_t *a, const vector20d_t *b){
double size_a, size_b;
size_a=vector20d_size(a);
size_b=vector20d_size(b);
if(size_a<EPS || size_b<EPS) return -10.0;
return vector20d_inner_product(a, b)/(size_a*size_b);
}
int main(void){
int i; vector20d_t a, b;
for(i=0;i<20;i++) scanf("%lf", &(a.num[i]));
for(i=0;i<20;i++) scanf("%lf", &(b.num[i]));
printf(" %f\n", vector20d_cos(&a, &b));
return 0;
}

220 :デフォルトの名無しさん:2008/07/15(火) 23:09:22
>>100
ありがとは?

>>596
過去ログ嫁

221 :デフォルトの名無しさん:2008/07/15(火) 23:13:59
>>201
ループの中に無駄な分岐を入れるのはバカ

222 :デフォルトの名無しさん:2008/07/15(火) 23:16:34
>>221
どのくらい早くなりますか?

223 :174:2008/07/15(火) 23:27:22
追記です。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7387.c
でta1のltをta4にしたとき(合流点があるとき)、@を1つ出力したあとAbortedと出て強制終了してしまいます。
(↑ta4をfreeしたあとta3でta4にアクセスしようとするから?)
他にも、ta3のrtをta2にするとSegmentation Errorとなってしまいます。
ループのときは正しく動いているようなので、上の2つのようなときに正しく動けばいいんですが・・・
よろしくお願いします。(引き続き>>183も答えていただけると幸いです)

224 :デフォルトの名無しさん:2008/07/15(火) 23:27:27
>>201
このばあいほとんど分岐が起こらないから、きにする必要なし。

225 :デフォルトの名無しさん:2008/07/15(火) 23:39:35
分岐結果の分布がどうとかではなくて毎回判定処理が動作することを懸念してるんで無いの?
今回の場合は大差ないし、そういうのは必要に応じてやればいいと思うけど。

226 :デフォルトの名無しさん:2008/07/15(火) 23:45:30
なんでもループにまとめたり、短く書くことがいいことだと思う時期があんだよな。

227 :デフォルトの名無しさん:2008/07/16(水) 00:14:21
>>223
あーそれは俺のバグだなぁ。
たしかにfreeを実行するタイミングが早すぎた。
修正してみた。あんまり自明なアルゴリズムじゃなくなってしょんぼり。
void delgraph2(bintree tree,bintree*rest){
static bintree_node dummy;
if(tree && tree->lt != &dummy)
{
bintree lt = tree->lt , rt = tree->rt;
tree->lt = &dummy;
tree->rt = *rest;
*rest = tree;
delgraph2(lt,rest);
delgraph2(rt,rest);
}
}
void delgraph(bintree tree){
bintree rest = NULL;
delgraph2(tree,&rest);
while(rest){
bintree self=rest;
rest = rest->rt;
free(self);
}
}


228 :デフォルトの名無しさん:2008/07/16(水) 00:18:00

[1] 授業単元: Cプログラミング演習
[2] 問題文
#include<stdio.h>
#include<string.h>

main()
{char string[]= "I write the book about internet search engine.";
printf("%s",string);
}


string内の配列内の文字列の順番を逆にせよ。ただし出力だけが逆文字
に表示されては駄目である。配列の中身自体を変えなければいけない

[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: Linux
 [3.3] 言語: (C言語)
[4] 期限:7/16
[5] その他の制限: 特になし


229 :デフォルトの名無しさん:2008/07/16(水) 00:23:19
#include <stdio.h>

int main(void)
{
char string[] = "I write the book about internet search engine.", *p, *q, temp;

printf("%s\n", string);

for(p=string; *p; p++);
q = string;
while(p-- > q) {
temp = *p;
*p = *q;
*q++ = temp;
}

printf("%s\n", string);

return 0;
}

230 :デフォルトの名無しさん:2008/07/16(水) 00:25:13
>>228 過去ログ
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7350.txt

231 :デフォルトの名無しさん:2008/07/16(水) 00:27:38
[1] 授業単元:プログラム実習
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7395.txt
[3] 環境
 [3.1] OS: windows xp
 [3.2] コンパイラ名とバージョン:vc6.0
 [3.3] 言語: C++
[4] 期限: 早急に…
[5] その他の制限:
配列の問題です よろしくおねがいします



232 :デフォルトの名無しさん:2008/07/16(水) 00:33:58
>>231
すまないが、配列の配列は動的に確保できないんじゃよ。We apologize for your inconvenience...

233 :デフォルトの名無しさん:2008/07/16(水) 00:40:22
>>231
>>28 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7369.txt

234 :デフォルトの名無しさん:2008/07/16(水) 01:24:02
[1] 授業単元:数値解析
[2] 問題文(含コード&リンク):減衰振動の運動方程式
m(d^2x/dt^2)=−kx−α(dx/dt) をルンゲクッタ法で解くやり方を教えてください
m k αはキーボードからの入力値です 初期条件はx(0)=0 , x'(0)=0です
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC 6.0
 [3.3] 言語: C
[4] 期限: >>50でしましたが、とりあえずこれだけわかればなんとかできそうなんで・・・

235 :デフォルトの名無しさん:2008/07/16(水) 01:56:00
>>234
ルンゲクッタ法とか法がつくものは、やり方のことだよ。
明日朝以降にもう一度お願いすれば、もしかしたら
誰かが解いてくれてるかも

236 :デフォルトの名無しさん:2008/07/16(水) 02:02:46
>>235
解くまでもなく
0しか答えがないので釣りとみなされました。

237 :デフォルトの名無しさん:2008/07/16(水) 02:16:12
[1] 授業単元:
[2] 問題文(含コード&リンク):ランダムに現れる#、$、%、&を同じ記号で3つ揃えるスロットゲームの作成
  条件:スロットをするかどうかをy、nで判定
     スロットを行う
     実行結果通りの結果を出力させる
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C言語
[4] 期限: 至急
[5] その他の制限:実行結果の例
         スロットをを回しますか?(y/n)>>>y
         幸運をお祈りします
         ###
         大当たり
         スロットを回しますか?(y/n)>>>n
         ありがとうございました

どうかよろしくお願いします

238 :44:2008/07/16(水) 02:31:44
だれか>>44の問題お願いします

239 :デフォルトの名無しさん:2008/07/16(水) 03:35:38
>>44,238
1.1 [A] struct xyz [B] struct xyz [C] {0,0,0} [D] t
1.2 [A] struct xyz * [B] (*x).x [C] (*x).y[D] (*x).z
2.1 typedef struct tDate{ int y,m,d }Date;
2.2 void printDate(Date d) { fprintf( stdout, "%4d/%2d/%2d", d.y,d.m,d.d ); }
2.3
void printDateGen(Date d)
{
#define DD(Y,M,D) ((Y)*10000+(M)*100+(D))
char *Era[] = {"","明治","大正","昭和","平成"};
int y, e, dd = DD(d.y,d.m,d.d);
e = ( dd >= DD(1989,1,8) ) ? 4 : ( dd >= DD(1926,12,25) ) ? 3 : ( dd >= DD(1912,7,30) ) ? 2 : ( dd >= DD(1868,9,8) ) ? 1 : 0;
y = d.y - ( ( e == 1 ) ? 1867 : ( e == 2 ) ? 1911 : ( e == 3 ) ? 1925 : ( e == 4 ) ? 1988 : 0 );
if ( y == 1 ) { fprintf( stdout, "%s 元年 %2d月 %2d日", Era[e], d.m, d.d ); }
else { fprintf( stdout, "%s %2d年 %2d月 %2d日", Era[e], y, d.m, d.d ); }
}


240 :237:2008/07/16(水) 03:44:28
>>>237
誰かお願いします 切羽詰ってます

241 :デフォルトの名無しさん:2008/07/16(水) 04:17:34
>>240
「至急」なんて書かれても、「その内やる」としか思わないんじゃね?

242 :237:2008/07/16(水) 04:24:04
>>>237
午前7時まで

243 :デフォルトの名無しさん:2008/07/16(水) 04:41:34
>>240 >>237
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7400.c
スペースキーを押すと、左から順に止めることが出来る仕様

244 :デフォルトの名無しさん:2008/07/16(水) 04:42:30
あぁ、すまん、繰り返すかの y/n は自分で適当に組み込んでおいて

245 :237:2008/07/16(水) 04:59:02
>>>244
ありがとうございます!
繰り返すのはfor文ですよね?

246 :デフォルトの名無しさん:2008/07/16(水) 05:11:44
うむ。やっぱ、もう少し書き直してみるんでお待ちを

247 :デフォルトの名無しさん:2008/07/16(水) 05:20:46
>>240 >>237
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7401.txt
これでどうかな?

248 :デフォルトの名無しさん:2008/07/16(水) 08:01:50
>>234
とりあえず解いてみてください

ちなみにこれであってる?
一般解の形は x(t)=a*e^(-b*t*i)+c 但し e をネイピア数、i を虚数単位とする

249 :デフォルトの名無しさん:2008/07/16(水) 08:15:52
>>202
コンパイルエラーを取る問題。無理なのでネタと判断した。

250 :デフォルトの名無しさん:2008/07/16(水) 08:16:29
[1] 授業単元: Cプログラミング演習
[2] 問題文
構造体配列struct tfield name[10];がありメンバにchar str1;があるとします
文字列を適当にabscedと標準入力したとして
その文字列を1文字ずつ構造体配列name[i].str1にいれるように.
最終的にそのname[i].str1を表示するブログラムを
[3] 環境
 [3.1] OS: LINUX
 [3.3] 言語: (C言語)
[4] 期限:7/16
[5] その他の制限: 特になし



251 :248:2008/07/16(水) 08:21:46
>>248 の一般解、定数 b が複素数かも
よーわからん

忘却の彼方なので数学部分は中学レベルまでにして

252 :デフォルトの名無しさん:2008/07/16(水) 08:32:55
>>250
文字列の終端はどうするの?
#include<stdio.h>

struct tfield{
char str1;
};

int main(void){
struct tfield name[10];
char buf[10+1]="";
int i;

fgets(buf, sizeof(buf), stdin);
for(i=0;buf[i];i++) name[i].str1=buf[i];
// for(i=0;name[i].str1=buf[i];i++);
for(i=0;i<10;i++) printf("%c\n", name[i].str1);

return 0;
}

253 :249:2008/07/16(水) 08:51:07
void (*a)(const strtype) = show;
void (*b)(const strtype&) = show;

a(hello);
b(hello);

254 :デフォルトの名無しさん:2008/07/16(水) 10:14:17
キーボードから50人分の点数を入力し
90点以上の人の番号と点数を表示せよ。

っていうプログラムってどんな感じですか?

255 :デフォルトの名無しさん:2008/07/16(水) 10:17:58
入力が大変です

256 :デフォルトの名無しさん:2008/07/16(水) 10:19:34
[1] 授業単元: Cプログラミング演習
[2] 問題文
キーボードから50人分の点数を入力して、90点以上の人の番号と点数を表示せよ
[3] 環境
 [3.1] OS: vista
 [3.3] 言語: (C言語)
[4] 期限:
[5] その他の制限: 特になし

257 :デフォルトの名無しさん:2008/07/16(水) 10:53:56
>>254
50人分の点数をテキストファイルにでも保存して
リダイレクトを使えば、プログラムを実行してから
毎回入力する手間は省けるが。
あとは、受け継いだ点数から90以上のものをカウントする
プログラムを作ればええがな。

258 :デフォルトの名無しさん:2008/07/16(水) 10:57:34
あ、カウントじゃなくて番号と点数で良いのか。
まぁ、そういうことで、1行ずつ先頭から番号、点数、改行して
50人分の点数を記述するか、点数も乱数を使って発生させるのもありやな。
ってことで、誰かやってちょっ。自分はちと席を外すんで。

259 :デフォルトの名無しさん:2008/07/16(水) 11:14:17
>>256
リダイレクト使った成績入力は自分でやってくれ

#include <stdio.h>

#define CLASSMAX (2) /* クラスの人数 */
#define MAXNAME (128) /* 名前の最大文字数 */
#define BOADER_POINT (90) /* 表示する最低点数 */

/* 生徒1分の成績 */
typedef struct tagRECORD {
char name[MAXNAME];
int point;
} RECORD;

void input_record(RECORD *r, int i)
{
const int MAXBUF = 128;
char buf[MAXBUF];

printf("Name[%d]?:", i);
scanf("%s", r->name);
printf("Point[%d]?:", i);
scanf("%d", &(r->point));
}

void print_record(RECORD *r)
{
printf("Name: %s, Point: %d\n", r->name, r->point);
}


260 :デフォルトの名無しさん:2008/07/16(水) 11:14:58
>>259 続き

int main(int argc, char *argv[])
{
RECORD clsRecord[CLASSMAX];
int i;

/* クラスの成績を入力 */
for (i = 0; i < CLASSMAX; i++) {
input_record(&clsRecord[i], i);
}

/* BOADER_POINT以上の生徒の成績表示 */
printf("\n***** Over %d students *****\n", BOADER_POINT);
for (i = 0; i < CLASSMAX; i++) {
if (clsRecord[i].point >= BOADER_POINT) {
print_record(&clsRecord[i]);
}
}

return 0;
}

261 :デフォルトの名無しさん:2008/07/16(水) 11:17:38
// 入力フォーマット: [番号],[得点]

int main()
{
  int i;
  int number;
  int score;

  for ( i = 0; i < 50; i++ ) {
    scanf( "%d,%d", &number, &score);
    if ( score >= 90 ) {
      printf("%d,%d", number, score);
    }
  }
}

262 :デフォルトの名無しさん:2008/07/16(水) 11:39:01
アンカー忘れてる、は回答プレ?

263 :デフォルトの名無しさん:2008/07/16(水) 12:56:07
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
#include<stdio.h>

main()
{
char ch;

while(scanf("%c", &ch)==1){
ch-=0x20;
printf("%c", ch);
}
}

上記のプログラムを改良し、アルファベットは大文字と小文字を逆転し、それ以外の文字はそのまま表示するようにしなさい。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:?
 [3.3] 言語:C
[4] 期限:[本日16:30まで]

宜しくお願いします。

264 : ◆03xZ2wWsBw :2008/07/16(水) 12:57:49
[1]C言語中上級
[2]
3つの65535以下の非負整数a,b,cを乱数で生成します。a,b,cから次のような文字列を作ります。
[a+b][b+c][c+a][a][b][c][|a-b|][|b-c|][|c-a|][ab][bc][ac]
[m]はmを10進表示した文字列を表す
|m|はmの絶対値を表す
それを10進数表示し結合した文字列を作り、それらをdecomposite関数に引数渡しして、
元の3つの数を再現する処理をC言語プログラムで記述しなさい。
元の3数は、decompositeからはアクセスできない、呼び出し側のローカル変数領域の外側に公開しないで下さい。
☆23,39,17が生成された場合文字列 62564023391716226897663391をdecompositeに渡す。
☆生成された3つの数、渡す文字列共に出力してから、decomposite関数を呼び出して下さい。
(関数の中で、決定された3数を出力)
☆一意に元の数を決定できない場合はdecomposite関数の中で一意決定不能と表示し、すべての候補を
出力して下さい。
[3]linux/gcc/C
[4]7/30 12:00

時間がまだあるので、急ぎません。
少なくとも本日はこのスレを覗きません(これからバイトに行きますので)
明日以降、どなたかよろしくお願いします。

265 :デフォルトの名無しさん:2008/07/16(水) 13:03:04
>>239
ありがとうございます
マジで助かりました

266 : ◆03xZ2wWsBw :2008/07/16(水) 13:03:27
問題文に誤りが見つかりました。
-それを10進数表示し結合した文字列を作り、それらをdecomposite関数に引数渡しして、
+それをdecomposite関数に引数渡しして、

として下さい。

267 :デフォルトの名無しさん:2008/07/16(水) 13:07:10
>>263
っつか、そのプログラムの意図は?
ttp://e-words.jp/p/r-ascii.html

268 :デフォルトの名無しさん:2008/07/16(水) 13:13:59
>>263
ライブラリ使っていいなら以下。

#include<stdio.h>
#include<ctype.h>

main()
{
char ch;

while(scanf("%c", &ch)==1){
if(islower(ch)!=0)
ch=(char)toupper(ch);
else if(isupper(ch)!=0)
ch=(char)tolower(ch);
printf("%c", ch);
}
}

269 :デフォルトの名無しさん:2008/07/16(水) 13:16:36
>>263

#include <stdio.h>

main()
{
char ch;

while(scanf("%c", &ch)==1){
if(ch >= 0x40){
if(ch >= 0x61) ch-=0x20;
else ch+=0x20;
}
printf("%c", ch);
}
}

270 :デフォルトの名無しさん:2008/07/16(水) 13:18:36
>>267
小文字を大文字にしてるんでないの?

271 :デフォルトの名無しさん:2008/07/16(水) 13:20:44
>>270
アッ、ナール

272 :デフォルトの名無しさん:2008/07/16(水) 13:23:47
>>263
>>269ミスってた
#include <stdio.h>

main()
{
char ch;

while(scanf("%c", &ch)==1){
if(ch >= 0x41 && ch <= 0x5a) ch+=0x20;
else if(ch >= 0x61 && ch <= 0x7a) ch-=0x20;
printf("%c", ch);
}
}

273 :デフォルトの名無しさん:2008/07/16(水) 13:24:11
[1] 授業単元:オペレーティングシステム
[2] 問題文(含コード&リンク):
以下のプログラムを完成してください。
共有バッファを用いたプロセス間メッセージ通信をするプログラム。
親/子プロセスでメッセージを書き込み、子/親で読み出す。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7402.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C言語
[4] 期限:2008年7月16日23:59まで

よろしくお願いします。

274 :デフォルトの名無しさん:2008/07/16(水) 13:29:50
>>263
せっかくだからキモイコードを張るぜ
#include<stdio.h>
main()
{
    char ch;
    while(scanf("%c", &ch)==1){
        ch=(ch|32U)-'a'<26?ch^32:ch;
        printf("%c", ch);
    }
}


275 :デフォルトの名無しさん:2008/07/16(水) 13:33:38
>>263 ならば、おいどんのキショースも出すでごわす

#include<stdio.h>
int main(void) {
char ch;
while(scanf("%c", &ch)==1){
if( ch>='a' && ch<='z') ch=ch-'a'+'A';
else if( ch>='A' && ch<='Z' ) ch=ch-'A'+'a';
printf("%c", ch);
}
}


276 :デフォルトの名無しさん:2008/07/16(水) 13:47:52
悪法回答テンプレが一掃されて以来スレが清々しいなw
でもまだコードと一緒にアンカーと、コメント書く奴が多いな。


277 :デフォルトの名無しさん:2008/07/16(水) 13:49:44
どうでもいいけどな

278 :デフォルトの名無しさん:2008/07/16(水) 13:50:12
>>276
(・∀・)ニヤニヤ (・´ω`・)ンダゴルァ (・`ω´・)ナッナンダッテー

279 :デフォルトの名無しさん:2008/07/16(水) 14:59:48
>>274
キモッ
>>275
キショくなくてこまる

280 :263:2008/07/16(水) 16:25:55
>>272
ありがとう。おかげで間に合ったよ。

281 :デフォルトの名無しさん:2008/07/16(水) 17:41:27
[1] 授業単元:プログラム
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7403.txt
[3] 環境
 [3.1] OS: windows xp
 [3.2] コンパイラ名とバージョン:vc6.0
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:ソースに記載しています
 よろしくおねがいします


282 :デフォルトの名無しさん:2008/07/16(水) 18:38:31
[3.2]のコンパイラ名とバージョンってのが良くわからないんですが、
コンパイラ名:Borland C++
バージョン:5.5.1

って感じでいいんですか?

283 :デフォルトの名無しさん:2008/07/16(水) 19:15:47
>>273
は上級問題でおk?

284 :デフォルトの名無しさん:2008/07/16(水) 19:32:31
>283
少なくても僕の脳みそでは分かりません。
たぶん上級問題なのかもしれません。

285 :デフォルトの名無しさん:2008/07/16(水) 19:33:29
>>4 07/15 13:00 線形リスト
>>44 07/17 --:-- 4択3種 : >>239
>>50 07/17 00:00 減衰振動
>>58 07/15 18:00 木構造を用いた数式の処理
>>159 07/16 --:-- 複素数演算・ソーティング
>>179 --/-- --:-- 2文木->配列
>>202 --/-- --:-- (ごめんなさい、よくわからないです。) : >>253
>>207 --/-- --:-- 微分方程式の解析解
>>214 07/16 --:-- 20次元の2つのベクトル余弦 : >>219
>>228 07/16 --:-- 文字列のリバース : >>229, >>230

286 :デフォルトの名無しさん:2008/07/16(水) 19:34:00
>>231 --/-- --:-- = >>28
>>234 --/-- --:-- 微分方程式:ルンゲタック法
>>237 07/16 19:00 スロットゲーム : >>243, >>247
>>250 07/16 --:-- 構造体のメンバへの代入 : >>252
>>256 --/-- --:-- 「キーボードから50人分の点数を入力し90点以上の人の番号と点数を表示せよ」: >>2590-261
>>263 07/16 16:30 大文字<->小文字 : >>268, >>272, >>274, >>275
>>264 07/30 12:00 ???
>>273 07/16 23:59 セマフォを用いたプロセス間通信

287 :デフォルトの名無しさん:2008/07/16(水) 20:20:19
>>286
ルンゲ”食った”ね

288 :デフォルトの名無しさん:2008/07/16(水) 20:28:43
ほっとぞぬな問題

289 :デフォルトの名無しさん:2008/07/16(水) 20:39:46
すいませんがお願いします。
ポインタの問題です。

[1] 授業単元:C言語演習
[2] 問題文: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7404.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:visual stdio 2005
 [3.3] 言語: (C言語)
[4] 期限:今週
[5] その他の制限:ポインタを使用すること。


290 :デフォルトの名無しさん:2008/07/16(水) 20:40:08
[1] 授業単元: C言語入門
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7405.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] gcc
 [3.3] 言語:C
[4] 期限: 7月17日まで
[5] その他の制限:

お願いします。

291 :デフォルトの名無しさん:2008/07/16(水) 20:53:03
だれか>>282について教えて

292 :デフォルトの名無しさん:2008/07/16(水) 20:54:06
[1] 授業単元: 1次元配列
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7406.txt
 [3.1] OS:Linux
 [3.2] gcc
 [3.3] 言語:C
[4] 期限: 7月17日まで
[5] その他の制限:

お願いします。

293 :デフォルトの名無しさん:2008/07/16(水) 22:20:28
>>292
#include<stdio.h>
#define DATA_NUM_MAX 100
int main(void){
int data[DATA_NUM_MAX], datanum
int sum=0, i;
double average;

for(datanum=0;datanum<DATA_NUM_MAX;datanum++){
printf("%d件目の点数を入力してください.\n", datanum+1);
scanf("%d", &data[datanum]);
if(data[datanum]==999) break;
printf("%d件目の点数は%d点です.\n", datanum+1, data[datanum]);
sum+=data[datanum];
}
if(datanum==0) return 1;
average=(double)sum/datanum;
printf("\n合計点は%d点です.\n平均点は%.1f点です.\n", sum, average);
printf("\t点数\t平均からの差\n");
for(i=0;i<datanum;i++) printf("\t%d点\t%5.1f点\n", data[i], data[i]-average);

return 0;
}

294 :デフォルトの名無しさん:2008/07/16(水) 22:25:23
>>290
#include<stdio.h>
#include<string.h>

int main(void){
char buf[10];
int i, count=0;

for(i=100;i<=600;i++){
sprintf(buf, "%d", i);
if(strchr(buf, '4') || strchr(buf, '9')) continue;
count++;
}
printf("このホテルの客室総数は%dです.\n", count);

return 0;
}

295 :デフォルトの名無しさん:2008/07/16(水) 22:33:51
>>273をお願いします。

296 :デフォルトの名無しさん:2008/07/16(水) 22:35:28
>>289
#include<stdio.h>

int main(void){
int a[5][5] = { { 1, 2, 3, 4, 5}, { 6, 7, 8, 9,10}, {11,12,13,14,15}, {16,17,18,19,20}, {21,22,23,24,25}, };
int b[5][5] = { { 3, 6, 9,12,15}, {18,21,24,27,30}, {33,36,39,42,45}, {48,51,54,57,60}, {63,66,69,72,75}, };
int c[5][5],*p_a,*p_b,*p_c, i;

p_a=a; // p_a=a[0] ?
p_b=b;
p_c=c;

for(i=0;i<5*5;i++){ // 問題1
printf("%d ", *(p_a+i));
if(i%5==4) printf("\n");
}

for(i=0;i<5*5;i++) *(p_c+i)=*(p_a+i); // 問題2
for(i=0;i<5*5;i++){
printf("%d ", *(p_c+i));
if(i%5==4) printf("\n");
}

for(i=0;i<5*5;i++) *(p_c+i)=*(p_a+i)+*(p_b+i); // 問題3
for(i=0;i<5*5;i++){
printf("%d ", *(p_c+i));
if(i%5==4) printf("\n");
}
return 0;
}

297 :デフォルトの名無しさん:2008/07/16(水) 22:50:17
[1] 授業単元: Cプログラミング演習
[2] 問題文
20次元の2つのベクトル余弦cos(θ)を求めよ。
ベクトルの要素はそれぞれ、ユーザーが入力すること。ベクトル要素は
double型とすること。


[3] 環境
 [3.1] OS:Mac
 [3.2] コンパイラ名とバージョン: Linux
 [3.3] 言語: (C言語)
[4] 期限:7/18
[5] その他の制限:
   お願いします><


298 :デフォルトの名無しさん:2008/07/16(水) 22:54:03
>>998
>>898
>>798
>>698
>>598
>>498
>>398
>>297
過去ログ

過去レスをみよ


299 :デフォルトの名無しさん:2008/07/16(水) 22:55:31
過去ログ見ろと言われて実際に見る奴なんていないだろw

300 :デフォルトの名無しさん:2008/07/16(水) 22:58:01
1]プログラミング
[2] 2から1000までの素数を表示するプログラム
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc 4.3.0
 [3.3] 言語:C
[4] 期限:7月18日17:00まで
[5] その他の制限: ポインタ、構造体なんかは習って無いです

宜しくお願いします

301 :デフォルトの名無しさん:2008/07/16(水) 23:14:21
>>300
#include<stdio.h>

int main(void){
int i, j;
for(i=2;i<1000;i++){
for(j=2;j<i;j++) if(i%j==0) break;
if(j>=i) printf(" %d", i);
}

return 0;
}

302 :300:2008/07/16(水) 23:33:22
すみません。
>>300を関数を使ってお願いします。

303 :デフォルトの名無しさん:2008/07/16(水) 23:34:51
>>291
それで良いんじゃないの。
オレ、ボーランド製品が全然わからないけど

304 :デフォルトの名無しさん:2008/07/16(水) 23:43:29
>>302
#include<stdio.h>
int is_prime(int value){
int i;
if(value<2) return 0;
for(i=2;i<value;i++) if(value%i==0) return 0;
return 1;
}
int is_prime(int value){
int i;
if(value<2) return 0;
if(value%2==0) return value==2;
for(i=3;value/i>=i;i+=2) if(value%i==0) return 0;
return 1;
}
int is_prime(int value){
int i, chk;
double sqrt(double);
if(value<2) return 0;
if(value%2==0) return value==2;
chk=sqrt(value+0.1);
for(i=3;i<=chk;i+=2) if(value%i==0) return 0;
return 1;
}
int main(void){
int i;
for(i=2;i<1000;i++) if(is_prime(i)) printf(" %d", i);
return 0;
}

305 :デフォルトの名無しさん:2008/07/16(水) 23:45:01
>>159お願いします

306 :デフォルトの名無しさん:2008/07/16(水) 23:47:49
>>264
一意決定不能の例なんかあると助かるんだが。


307 :デフォルトの名無しさん:2008/07/17(木) 00:08:04
>>264
スペースないからdecomposite関数だけ。
void decomposite(char *str)
{
int a, b, c, ab, bc, ca;
char *p, *q, *r, temp[256];

for(p=str,ab=0; ab<=65535*2; p++) {
ab = ab * 10 + *p - '0';
for(q=p+1,bc=0; bc<=65535*2; q++) {
bc = bc * 10 + *q - '0';
for(r=q+1,ca=0; ca<=ab + bc; r++) {
ca = ca * 10 + *r - '0';
a = (ab + ca - bc) / 2;
b = ab - a;
c = ca - a;
if(a<0||b<0||c<0||a+b!=ab||b+c!=bc||c+a!=ca) continue;
sprintf(temp, "%d%d%d%d%d%d%d%d%d",a,b,c,abs(a-b),abs(b-c),abs(c-a),a*b,b*c,c*a);
if(strcmp(r+1, temp)==0) printf("a=%d b=%d c=%d\n", a, b, c);
}
}
}
}


308 :デフォルトの名無しさん:2008/07/17(木) 00:13:29
>>159 一つ目
#include<stdio.h>
#include<stdlib.h>
struct bunsuu{ int bunsi, bunbo; };
int gcd(int a, int b){
int c;
while((c=a%b)) a=b,b=c;
return b;
}
struct bunsuu bunsuu_set(int bunsi, int bunbo){
struct bunsuu ret={0, 1};
if(bunsi==0 || bunbo==0) return ret;
if(bunbo<0) bunsi=-bunsi, bunbo=-bunbo;
ret.bunsi=bunsi/gcd(abs(bunsi), bunbo);
ret.bunbo=bunbo/gcd(abs(bunsi), bunbo);
return ret;
}
struct bunsuu bunsuu_add(struct bunsuu a, struct bunsuu b){ return bunsuu_set(a.bunsi*b.bunbo+b.bunsi*a.bunbo, a.bunbo*b.bunbo); }
struct bunsuu bunsuu_sub(struct bunsuu a, struct bunsuu b){ return bunsuu_set(a.bunsi*b.bunbo-b.bunsi*a.bunbo, a.bunbo*b.bunbo); }
struct bunsuu bunsuu_mul(struct bunsuu a, struct bunsuu b){ return bunsuu_set(a.bunsi*b.bunsi, a.bunbo*b.bunbo); }
struct bunsuu bunsuu_div(struct bunsuu a, struct bunsuu b){ return bunsuu_set(a.bunsi*b.bunbo, a.bunbo*b.bunsi); }
void bunsuu_print(struct bunsuu x){ printf(x.bunbo==1?"%d\n":"%d / %d\n", x.bunsi, x.bunbo); }
int main(void){
struct bunsuu a={1,2}, b={2,3};
printf("input bunsuu ( ex. 1 / 2 ) :"); scanf("%d/%d", &a.bunsi, &a.bunbo);
printf("input bunsuu ( ex. 2 / 3 ) :"); scanf("%d/%d", &b.bunsi, &b.bunbo);
bunsuu_print(bunsuu_add(a, b));
bunsuu_print(bunsuu_sub(a, b));
bunsuu_print(bunsuu_mul(a, b));
bunsuu_print(bunsuu_div(a, b));
return 0;
}

309 :デフォルトの名無しさん:2008/07/17(木) 00:15:10
>>296
助かります、ありがとうございました。

310 :デフォルトの名無しさん:2008/07/17(木) 00:17:19
またすいません。
2問ありますがお願いします。

[1] 授業単元:C言語
[2] 問題文: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7407.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:visual stdio 2005
 [3.3] 言語: (C言語)
[4] 期限:今週
[5] その他の制限:ポインタを使用すること。



311 :45:2008/07/17(木) 00:23:15
>>172
遅れましたが、ありがとうございます。

312 :デフォルトの名無しさん:2008/07/17(木) 00:23:32
[1] 授業単元:プログラム実習
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7408.txt
[3] 環境
 [3.1] OS:windowsXP
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語: C++
[4] 期限:(2008年7月18日17:00まで
[5] その他の制限:
一次元関数の問題です。期限が…

313 :300:2008/07/17(木) 00:28:05
>>304
うまく行きました
ありがとうございます

314 :デフォルトの名無しさん:2008/07/17(木) 00:29:39
[1] 授業単元:
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7409.txt
[3] 環境
 [3.1] OS:windowsXP
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語: (C++)
[4] 期限:
[5] その他の制限:クラスを変更して動作させよというものです

宜しくお願いします

315 :デフォルトの名無しさん:2008/07/17(木) 00:35:37
すみません。>>273をどなたがお願いできないでしょうか?
期限は明日までになりそうです。

316 : ◆r8ev9T1A36 :2008/07/17(木) 00:37:13
[1] 授業単元: c言語演習
[2] 問題文(含コード&リンク):
c言語を用いて制作すること
・入力は、整数n≥1
・出力は、nのパリティ(偶パリティor奇パリティ)

[3] 環境
 [3.1] OS:windowsXP
 [3.2] コンパイラ名とバージョン:bcc
 [3.3] 言語: c
[4] 期限: 2008年7月19日
[5] その他の制限:

よろしくお願いします。

317 :デフォルトの名無しさん:2008/07/17(木) 00:43:18
>>264
>>307氏とは少しアプローチのちがうやつを
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7410.txt
長くてすまん

さっきからループでまわして見てるが一意に解が出ないパターンに出くわさないな

318 :デフォルトの名無しさん:2008/07/17(木) 01:01:18
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7411.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限: 2008年07月17日18:00まで


319 :デフォルトの名無しさん:2008/07/17(木) 02:56:22
>>312 そのうち>>231やるかも
line 18
// int calendar[rsize][csize];
int *calendar = new int[rsize * csize];
line 23
// calendar[i][j] = 0;
calendar[i*csize + j] = 0;
line 50
// calendar[i][j] = day;
calendar[i*csize + j] = day;
line 62:
// const int day = calendar[i][j];
const int day = calendar[i*csize + j];

320 :デフォルトの名無しさん:2008/07/17(木) 03:22:30
>>318
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7412.c
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7413.c

321 :デフォルトの名無しさん:2008/07/17(木) 03:23:46
>>231 >>319 delete[] calendar; retrun 0; 忘れてた。
line 17
// int calendar[rsize][csize];
int **calendar = new int*[rsize];
line 20
for (int i = 0; i < rsize; ++i) {
calendar[i] = new int[csize];
line 83
for (int i = 0; i < rsize; ++i)
delete[] calendar[i];
delete[] calendar;
return 0;

322 :デフォルトの名無しさん:2008/07/17(木) 03:36:06
すみません>>58助けてください・・・

323 :デフォルトの名無しさん:2008/07/17(木) 03:46:09
>>322
期限を過ぎてるじゃん

324 :デフォルトの名無しさん:2008/07/17(木) 03:59:15
期限過ぎても提出しないと全部ボツになるんです

325 :デフォルトの名無しさん:2008/07/17(木) 05:09:45
期限が過ぎていたからって、機嫌を悪くしないでね。

326 :デフォルトの名無しさん:2008/07/17(木) 09:31:42
>>320
>以下の雛形プログラムの指定部分のみを変更すること.
<ctype.h>のインクルードは題意に反する。

327 :デフォルトの名無しさん:2008/07/17(木) 09:48:43
>>318
//1
#include <stdio.h>
#define N 128

/* プロトタイプ宣言 */
void printCapitals(char *s);

int main(void){
char str[N];

fgets(str, N, stdin);
printCapitals(str);

return 0;
}
void printCapitals(char *s)
{
int i;
for(i=0;s[i];i++)
if('A' <= s[i] && s[i] <= 'Z')
putchar(s[i]);
}
for(i=0;s[i],i++)
if('A' <= s[i] &&
}


328 :デフォルトの名無しさん:2008/07/17(木) 10:18:39
>>318
#include <stdio.h>
//2
unsigned CommaSeparatedValueSum(FILE *fp)
{
unsigned csv[5] = {0};
unsigned sum = 0;
unsigned i;
while(!feof(fp)){
fscanf(fp,"%u,%u,%u,%u,%u",&csv[0],&csv[1],&csv[2],&csv[3],&csv[4]);
for(i = 0; i < 5; i++)
sum += csv[i];
}
return sum;
}
int main()
{
FILE *fop = fopen("data3.csv","r");
unsigned sum = CommaSeparatedValueSum(fop);
printf("CSV DATA SUM %u \n",sum);
return 0;
}

329 :デフォルトの名無しさん:2008/07/17(木) 10:28:21
>>281
private:
void strset(char *str){
p = new char[strlen(str)+1];
strcpy(p,str);
}
public:
strtype(char* str=""){
strset(str);
}
strtype(strtype &st){
strset(st.p);
}

330 :デフォルトの名無しさん:2008/07/17(木) 10:40:34
[1] 授業単元: C言語プログラミング
[2] 分数の四則演算を計算するプログラムを作成する
[3] 環境
[3.1] OS: Windows 
[3.2]Microsoft Visual Studio
[3.3] 言語・C++
[4] 期限: ([2008年7月21日14:00まで
[5]条件
  分数を、 1|3 のように、| (縦棒)という記号で分子・分母を区別する。/ (スラッシュ)だと除算記号と混同してしまうから。
計算規則
 a|b + c|d = (a*d + b*c) | (b*d)
 a|b - c|d = (a*d - b*c) | (b*d)
 a|b * c|d = (a*c) | (b*d)
 a|b / c|d = (a*d) | (b*c)
計算結果については,分母が1の時には分子のみの表示にする。分数が0(ゼロ)の時には 0(ゼロ)のみを表示する。また,最終の計算結果を既約分数にする。

1.分母がゼロの入力エラーに対しては、再入力するよう促す。

2.除算において、除数がゼロの入力エラーに対しては、再入力するように促す。

3.以下範囲の整数(分子、分母にかかわらず)に対して、正しく計算できるようにすること。
  -2147483648 〜 2147483647
Visual Studioでお願いします

331 :100:2008/07/17(木) 10:40:56
>>180
遅れましたがありがとうございます。

332 :デフォルトの名無しさん:2008/07/17(木) 10:53:02
>>310
問題文をもっと詳しく書かないと
意味がわからない

333 :デフォルトの名無しさん:2008/07/17(木) 11:10:10
>>310
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7416.txt
これであってるか?


334 :デフォルトの名無しさん:2008/07/17(木) 11:25:25
>>234をお願いしますm(__)m

335 :デフォルトの名無しさん:2008/07/17(木) 11:53:44
>>335
C言語の宿題じゃなくて数学の宿題ね

336 :デフォルトの名無しさん:2008/07/17(木) 11:57:56
>>334
自分で微分方程式解いたら、それ持って又来て。

337 :デフォルトの名無しさん:2008/07/17(木) 11:59:46
>>235
そだね

338 :デフォルトの名無しさん:2008/07/17(木) 12:10:20
>>236
違ってる

339 :デフォルトの名無しさん:2008/07/17(木) 12:17:28
>>273 をどうかよろしくお願いします。
セマフォを用いたプロセス間通信をするプログラムです。
期限は明日の12:00までになりました。
どうか、よろしくお願いします。

340 :デフォルトの名無しさん:2008/07/17(木) 12:49:47
>>330
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7419.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7420.txt
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7421.txt
こんなんで良いのかな

341 :デフォルトの名無しさん:2008/07/17(木) 13:17:46
>>234
>>334

ttp://pc-physics.com/rk1.html
ttp://www.damp.tottori-u.ac.jp/~ooshida/edu/ode/

この辺を参考にしてみたら?

342 :デフォルトの名無しさん:2008/07/17(木) 13:42:53
>>314
class arrayには手をつけないでおいた。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7422.txt

343 :デフォルトの名無しさん:2008/07/17(木) 15:17:20
[1] 授業単元:プログラミング言語

[2] 問題:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7425.txt
[3] 環境:
 [3.1] OS: WindowsXp
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語:C
[4] 期限: 7月21日
[5] その他の制限:なし。

   よろしくお願いします.

344 :デフォルトの名無しさん:2008/07/17(木) 15:18:04
>>339
何を送信するのかとか、終了条件とかわかんないし・・・

345 :デフォルトの名無しさん:2008/07/17(木) 15:33:06
>>344
ご指摘ありがとうございます。
問題の情報が不足して申し訳ありませんでした。

>何を送信するのか
メッセージをやりとりするものだと思われます。
文字列を受け渡しあうものです。

問題もそのままコピッたのですが・・・。
どうやら、指定がないようですね・・・。
申し訳ありません。

>終了条件
終了条件も特に指定がありません。
ENDと打って終了ということでお願いいたします。

346 :デフォルトの名無しさん:2008/07/17(木) 15:50:30
>>345
何を何処に入力するのか、さっぱり分かりませんでした。

とりあえず、決まった内容を10回ずつ送受信するコード
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7426.txt

347 :デフォルトの名無しさん:2008/07/17(木) 16:07:58
>>343
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7427.txt

348 :343:2008/07/17(木) 16:12:17
>>347

ありがとうございました<m(__)m>

349 :デフォルトの名無しさん:2008/07/17(木) 16:14:15
アップローダー使う場合は回答レスとソースに相互リンクつけてもらえないでしょうか?
複数の人が同じ問題やってくださった場合、どの人のソースか区別できなくなった
ことがあり、誤解によりご迷惑をおかけしたことがありました。

>>6の法令違反かも知れませんが

350 :デフォルトの名無しさん:2008/07/17(木) 16:27:35
[1] 授業単元:C言語基礎
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7415.txt
[3] 環境
 [3.1] OS: XP
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:明日まで
[5] その他の制限:特にありません


351 :273:2008/07/17(木) 17:02:13
>>346
ありがとうございます。

文字列をコンソール入力させます。
文字列を入力させて、その文字列をやりとりするみたいです。

352 :デフォルトの名無しさん:2008/07/17(木) 17:26:18
>>346
申し訳ありません。
少し仕様を変更させて頂きたいです。

コンソールを2つ開いて、
pts/1をparent(親プロセス)、pts/2をchild(子プロセス)として、
コンソールに入力した文字を、親と子でやりとりするプログラムです。
コンソール入力は、親プロセス、子プロセス、どちらでも可能にします。

例えば、親プロセスにコンソール入力(ここでは「aaa」と入力する)すると、
子プロセスがそれを読み込み、内容を出力する(「aaa」と出力する)プログラムにしたいです。

また、子プロセスでコンソール入力させたときでも同様に、
それを親プロセスで出力する、というプログラムです。

まことに勝手ながら、仕様を変更させてくださいとお願いしたりしまして、
本当に失礼いたしました。申し訳ございません。

もしよろしければ、仕様を変更していただいたプログラムをあげてくださると助かります。

353 :デフォルトの名無しさん:2008/07/17(木) 17:27:49
やんのかてめえ

354 :デフォルトの名無しさん:2008/07/17(木) 17:27:58
[1] 授業単元: C言語入門
[2] 「連結リストを用いた並び替え」
  日本の総理大臣に関するデータ(csvファイル)をリダイレクトを用いて入力し、
  就任時の年齢で並び替え、txtファイルで出力するプログラムを作成しなさい
[3] 環境
[3.1] OS: Windows 
[3.2]Microsoft Visual Studio
[3.3] 言語・C
[4] 期限:2008年7月19日23:59まで
[5] 条件 :csvファイルの1列目は何代目の総理大臣かを表し、2列目は就任時の年齢、
      3列目は苗字、4列目は名前となっています。

355 :デフォルトの名無しさん:2008/07/17(木) 17:46:59
>>352
その要件で、fork()はおかしんじゃね?
>>273の書きかけのコードは、デタラメなの?

356 :デフォルトの名無しさん:2008/07/17(木) 17:51:51
>>354
出題の意図は?

357 :デフォルトの名無しさん:2008/07/17(木) 17:53:23
>>354
そのCSVファイルをアップしろ

358 :デフォルトの名無しさん:2008/07/17(木) 17:58:15
オレもほしいw

359 :デフォルトの名無しさん:2008/07/17(木) 18:03:06
>>355
書きかけのコードが完成すると、
プログラムが仕様通り正常に動作するみたいなのですが・・・。
教授が適当すぎて、僕たちもものすごく苦労しています。

書きかけのコードのほうを優先させてもらいたいです。

360 :デフォルトの名無しさん:2008/07/17(木) 18:11:29
>>359
仕様どおり、の仕様はもともとの仕様を指していて、
仕様変更が行われた>>352は満たさない、でおk?

361 :デフォルトの名無しさん:2008/07/17(木) 18:31:51
>>349
アンカーつけてんじゃn
何の文句があるわけ?

362 :デフォルトの名無しさん:2008/07/17(木) 18:44:39
[1] 授業単元:CG
[2] 問題文(含コード&リンク):

スキャンライン法で用いる走査平面と三角形ポリゴンとの交差線(スキャンセグメント)の始点、終点
ならびにそれらのスキャンライン上の位置を以下の条件で求めるプログラムを作れ。

・視点: 点(ex,ey,ez)

・走査平面: ax+by+cz+d=0で与えられる平面
(視点が走査平面上に必ずあるとみなしてよい)

・スキャンライン:走査平面上の点(x0,y0.z0)を始点とし、(vx,vy,vz)方向に長さwの線分
(点(x0,y0.z0)は必ず走査平面上にあるとみなしてよい
(方向ベクトル(vx,vy,vz)は長さ1であり必ず走査平面の法線ベクトルと垂直であるとみなしてよい

・3角形ポリゴン:3頂点(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)をもつ3角形
 (必ず3角形を構成するとみなしてよい。
 3角形ポリゴンが走査平面に平行となる場合を考慮すること)

出力するもの

走査平面と3角形ポリゴンとの交差線(スキャンセグメント:図の緑の太線)の始点・終点(3次元座標で表すこと)
スキャンセグメントのスキャンライン上の始点・終点(図の赤の太線、点(x0,y0,z0)からの距離で表すこと)

参照図 http://koideai.com/up/src/up2708.png

[3] 環境
 [3.1] OS: (Windows/Linux/等々)
 [3.2] コンパイラ名とバージョン: VS2005
 [3.3] 言語:C
[4] 期限: 明日
[5] その他の制限:ありません   お願いします!!!

363 :デフォルトの名無しさん:2008/07/17(木) 18:51:27
>>330
-2147483648
この数値は鬼門

∵符号の反転に失敗する

364 :デフォルトの名無しさん:2008/07/17(木) 19:10:17
>>360
はい。その通りです。

とりあえず書きかけのコードをプログラムとして完成させればいいらしいのですが・・・。

365 :デフォルトの名無しさん:2008/07/17(木) 19:15:27
>>364
元の仕様は>>344で指摘されている部分が不明のままじゃん


366 :デフォルトの名無しさん:2008/07/17(木) 19:28:11
http://pc11.2ch.net/test/read.cgi/tech/1197620454/80
C#の宿題です。できる方がいらっしゃいましたらお願いします!

367 :デフォルトの名無しさん:2008/07/17(木) 19:35:01
>>361
ソースに回答レスのURLがついてないこと

368 :デフォルトの名無しさん:2008/07/17(木) 19:39:28
>>349
何が起こったのかよくわからないのですが‥‥‥。

369 :デフォルトの名無しさん:2008/07/17(木) 19:41:17
>>366
C#,C#の宿題片付けます。
http://pc11.2ch.net/test/read.cgi/tech/1197620454/

370 :デフォルトの名無しさん:2008/07/17(木) 19:42:10
>>366
ああ、むこうのリンクか・・・

371 :デフォルトの名無しさん:2008/07/17(木) 19:44:32
>>349
保存するときにファイル名にスレ名とレス番号いれるとか
DLしてから自分で書き込むとか方法はあるよね?

>>349 みたいなことを強要するほうが「ご迷惑」でしょ

372 :デフォルトの名無しさん:2008/07/17(木) 19:46:35
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>58 07/15 18:00 木構造を用いた数式の処理
>>159 07/16 --:-- 複素数演算・ソーティング : >>308
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>264 07/30 12:00 ??? : >>307, >>317
>>273 07/18 12:00 セマフォを用いたプロセス間通信 : >>346
>>281 07/18 --:-- C++/文字列or配列/コンストラクタ,デストラクタ : >>329


373 :デフォルトの名無しさん:2008/07/17(木) 19:47:05
>>289 07/18 --:-- 二次元配列とポインタ : >>296
>>290 07/17 --:-- 「ホテルの部屋数」: >>294
>>292 07/17 --:-- 平均 : >>293
>>297 07/18 --:-- = >>214 : >>219
>>300 07/18 17:00 素数 : >>301, >>302
>>310 07/18 --:-- 配列とポインタ・最大最小 : >>333
>>312 07/18 17:00 = >>28? : >>30,31??, >>319
>>314 --/-- --:-- C++/ソーティング : >>342
>>316 07/19 --:-- パリティ?
>>318 07/17 18:00 文字抽出・CSV : >>320, >>327,328


374 :デフォルトの名無しさん:2008/07/17(木) 19:47:36
>>330 07/21 14:00 = >>17 >>152 : >>167, >>340
>>343 07/21 --:-- ??? : >>347
>>350 07/18 --:-- 数値計算/はさみうち法
>>354 07/19 23:59 連結リストを用いた並び替え
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分

>>283 感謝です。

375 :374:2008/07/17(木) 19:49:33
>>287 感謝です。

376 :310:2008/07/17(木) 19:52:49
>>332
テキストの内容そのままなのですが、すいません。

>>333
あってると思いますちゃんと動きました。
ありがとうございます。

377 :デフォルトの名無しさん:2008/07/17(木) 19:57:13
>>356 期末レポートです

>>357>>358
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7428.lzh
アップしました。
時間なかったのでとりあえず20人分でお願いします。

378 :デフォルトの名無しさん:2008/07/17(木) 20:06:54
>>316
/*
と性奇偶の数のトッビるいてったの時たしわらあで数進2=ィテリパ
義定
*/
>h.oidts< edulcni#
{)diov(niam tni
;0=j,n tni
;)"=数整"(ftnirp
;)n&,"d%"(fnacs
{)n(elihw
;1=^j )1 & n(fi
;1=>>n
}
;)"偶":"奇"?)1 & j(,"n\s%=ィテリ゚ハ"(ftnirp
;0 nruter
}

379 :350:2008/07/17(木) 20:09:08
はさみうちを使うのはわかるのですが、自力で作成できないんですorz
どなたか作って頂けないでしょうか?


380 :デフォルトの名無しさん:2008/07/17(木) 20:33:36
>>365
プログラムを完成させると、>>352のような仕様になるということなのですが・・・。
何を送信するか、終了条件、などは、指定されていないのが現状です・・・。
どうか、書きかけのコードを完成させてください。

381 :デフォルトの名無しさん:2008/07/17(木) 20:39:48
>>380
>>273の仕様と>>352の仕様が同じと言うなら、
>>364はどう言う意味になるんだよ。



382 :デフォルトの名無しさん:2008/07/17(木) 20:45:12
フォークしたやつにアタッチする方法てあるんかな?screenにアタッチするみたいに

383 :デフォルトの名無しさん:2008/07/17(木) 20:53:28
[1] 授業単元:C言語 中級
[2] 問題文(含コード&リンク):
・特定のフォルダを指定し、その中にある"*.c"のファイルを対象とする。
   対象ファイルの中でstatic変数を抜き出し、二重定義している箇所を出力させよ。

[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: [2008年07月18日6:30まで]
[5] その他の制限: 特になし

よろしくお願いします。

384 :デフォルトの名無しさん:2008/07/17(木) 21:00:17
>>383
「二重定義」の正確な意味をおしえてください。手元のコンパイラでは以下のコードはエラーになりません。
#include <stdio.h>
static int x;
static int x;
int main() {
x = 1;
return 0;
}


385 :デフォルトの名無しさん:2008/07/17(木) 21:03:42
数学の問題と違って、プログラミングの場合は、意味を考えたりとりまとめたり
するのは重要な仕事だよ

386 :デフォルトの名無しさん:2008/07/17(木) 21:20:15
>>384
フォルダの中に複数のソースファイルがあり、aという名前のソースに定義されているstatic変数が
他のソースにも定義されていた場合にファイル名、変数名を出力させる。

と言うことです。
分かりにくくてすみません

387 :デフォルトの名無しさん:2008/07/17(木) 21:30:17
>>350
#include<stdio.h>
#include<math.h>
#define EPS (0.0000001)
#define IS_VALID_VALUE(x) ((x)>=-DBL_MAX && (x)<=DBL_MAX) // 標準じゃないみたいなので isinf とか finite とかの代わり
double f(double x){
return (x)*exp(x)-10;
}
int main(void){
double a=0.0, b=4.0, c, x;
int search;

if(f(a)*f(b)>0.0){ // 閉区間の自動探索
if(f(0.0)>=0.0) search=-1; // f(x)<0 となる x を探す
else search=1; // f(x)>0 となる x を探す

for(x=1.0;f(x)*search<0.0 && IS_VALID_VALUE(x) && IS_VALID_VALUE(f(x));x*=2);
if(!IS_VALID_VALUE(x) || !IS_VALID_VALUE(f(x))) for(x=-1.0;f(x)*search<0.0 && IS_VALID_VALUE(x) && IS_VALID_VALUE(f(x));x*=2);
if(!IS_VALID_VALUE(x) || !IS_VALID_VALUE(f(x))) return 1; // 探索失敗

if(x>0){ a=0.0; b=x; }
else{ a=x; b=0.0; }
}
while(1){
c=(a+b)/2;
if(fabs(f(c))<=EPS) break;
if(f(a)*f(c)>0) a=c;
else b=c;
}
printf("c=%e\n", c);
return 0;
}

388 :デフォルトの名無しさん:2008/07/17(木) 21:37:02
>>386
当然、コメントやクォートの中に含まれる
static という文字と一般のstatic変数宣言を区別しなければ
ならないことになるが、それってひょっとして構文解析しろ
って話?

そうなると中級レベルを超えた出題だなw

389 :316 ◆r8ev9T1A36 :2008/07/17(木) 21:38:40
>>378
ありがとうございます><

#include <stdio.h>
int main(void)
{
int n,j=0;
printf("整数=");
scanf("%d",&n);
while(n)
{
if(n & 1) j^=1;
n<<=1;
}
printf("パリティ=%s\n",(j & 1)?"奇":"偶");
return 0;
}

実行してみたのですが、うまく行きません……。
よろしければもう少しお力を貸してください><

390 :デフォルトの名無しさん:2008/07/17(木) 21:43:04
>>389
それだと最下位ビットしか見てない
シフト方向が逆
ついでに n は unsigned の方がいい

391 :デフォルトの名無しさん:2008/07/17(木) 21:43:54
いじわるの効果が出ている・・・

392 :デフォルトの名無しさん:2008/07/17(木) 22:02:44
[1] 授業単元:C言語初級基礎講座
[2] 問題文(含コード&リンク):
2次元配列に二項演算「123 + 456」を入力して、結果を出すというソースをくみ上げているのですが、
以下のソースで、

http://m-pe.tv/u/page.php?uid=cccddd&id=1

@elementnumが3以上になったらerror1を、
A「123 + 4A6」と入力してしまったらerror2を表示する
というソースを組んでいる途中なんですが、うまくいきません。
作成途中で見苦しいですが、どなたか有識者いらっしゃいましたらよろしくお願いします。

[3] 環境
[3.1] OS: WindowsXP
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: [2008年7月18日14:00まで]
[5] その他の制限: できれば現状のソースの形をあまり変えずにお願いします。

393 :デフォルトの名無しさん:2008/07/17(木) 22:06:47
>>392
isdigit について調べたほうがいいよ

394 :デフォルトの名無しさん:2008/07/17(木) 22:09:34
>>354
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7429.txt
無理矢理ソートしてやったぜ

395 :デフォルトの名無しさん:2008/07/17(木) 22:12:19
>>393
書き忘れてしまいましたが標準関数のisdigitは一度ユーザー関数におとして使うようにと教授に指定されました。

396 :デフォルトの名無しさん:2008/07/17(木) 22:18:33
>>395
isdigit() は
if (isdigit(c)) {
}
という感じで使うのがいいかと。あるいはゼロか非ゼロで判定するほうがいいでしょう。
「isdigit() の返り値が -1 のときは‥‥」というのは特定の環境でしか意味を持たないと思います。

397 :デフォルトの名無しさん:2008/07/17(木) 22:20:06
>>381
混乱させてしまいまして、すみません。

何分、僕らもこういう問題出されて、何もわからなくて、
このプログラムの詳細な説明がなにもなく、途方にくれてるところです・・・。

教授のほうも、この書きかけのコードを完成させろみたいなことしか言ってません・・・。

273と352は気になさらないでください。

終了条件などは全く無視でかまいません。

こんなまともじゃないプログラム、僕らも理解不能です。

書きかけの部分を補完するだけでいいみたいです。
うpしたコードの完成をよろしくお願いします。

398 :デフォルトの名無しさん:2008/07/17(木) 22:40:34
すみません
>>58を本当にお願いします(;ω;)

399 :354:2008/07/17(木) 22:48:17
すみません。一つ条件を言い忘れていました。
static変数の変数名は頭がsとuの二種類に固定されてます。

>>394
そちらを参考に考えてみようと思います。
ありがとうございました

400 :デフォルトの名無しさん:2008/07/17(木) 22:50:42
>>392
元のソースと全く違うけどアップする
#include <stdio.h>
#include <string.h>
int main()
{
char *crlf;
char calc[100];
char c;
int l,r;
int ans;

fgets(calc,sizeof(calc),stdin);
if(crlf = strrchr(calc,'\n'))
*crlf = '\0';
sscanf(calc,"%d%c%d",&l,&c,&r);
if( c == '+')
ans = l + r;
else
ans = 0;
printf("%d%c%d = %d\n",l,c,r,ans);

return 0;
}

401 :デフォルトの名無しさん:2008/07/17(木) 23:04:36
>>397
その完成像と言うのが、全然見えない。
ちょっと、入出力例を書いてくれないか。

402 :デフォルトの名無しさん:2008/07/17(木) 23:07:08
>>17 >>152
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7430.txt
括弧が使えます。
>>167
感激しました。

403 :デフォルトの名無しさん:2008/07/17(木) 23:26:19
>>394
できました!ありがとうございます!

よろしかったら簡単でいいので
流れを教えていただけませんか!?

404 :デフォルトの名無しさん:2008/07/17(木) 23:28:43
[1] 授業単元: Cプログラミング演習
[2] 問題文
20次元の2つのベクトル余弦cos(θ)を求めよ。
ベクトルの要素はユーザーが入力すること。ベクトル要素は
double型とする。


[3] 環境
 [3.1] OS:Mac
 [3.2] コンパイラ名とバージョン: Linux
 [3.3] 言語: (C言語)
[4] 期限:7/19
[5] その他の制限: 特になし


405 :デフォルトの名無しさん:2008/07/17(木) 23:58:59
>>403
まず線形リスト形式でファイル内容を読み込む、が読み込む際にfscanf使おうとしたが
%sのあたりが思うように読み込んでくれなかったのでstrtokを使って、文字列を
ぶち切りにして読み込ました。
で、リスト形式なので、リスト構造をソートすべきなのでしょうが、俺があんまり
わかってないので、リスト一つ一つの要素をmallocで確保した領域にぶち込んで
要素ごとで比較してソートした。
でそのソートした要素をファイルに書き込んで、mallocで確保した領域を
すべて解放した。

406 :デフォルトの名無しさん:2008/07/18(金) 00:00:35
【質問テンプレ】
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7431.zip
[3] 環境
 [3.1] OS: (Windows)
 [3.2] Borland C++ Compiler 5.5
 [3.3] 言語: C++
[4] 期限: 2008年7月19日23時59分
[5] その他の制限: 特にありません。

どうか、宜しくお願いします。

407 :316 ◆r8ev9T1A36 :2008/07/18(金) 00:09:42
>>390
たびたびすみません……
シフト方向が逆とは、
n<<=1; を n>>=1; にすれば良いと言うことでしょうか……
これで実行しても「'j' に代入した値は使われていない(関数 main )」と出てやはりうまく行きません……
すみません、まだよく分からないです。

あと、出来れば単純に二進数変換したときの1の数を表示する方法も教えていただきたいです。
何度も申し訳ありませんが、どうかお願いします><

408 :397:2008/07/18(金) 00:12:05
>>401
コマンドライン端末を2つ開きます。

一方の端末を親プロセスとして、
その端末で「gcc semprog2.c」を入力、コンパイラをします。
「./a.out」を入力し、実行をします。

親プロセスで実行する前に、
もう一方の端末で、「./child」を入力し、子プロセスとします。

実行結果例としては、

子プロセスでirieと入力
親プロセスでirieと受け取り、出力。

親プロセスでHello!と入力
子プロセスでHello!と受け取り、出力。

子プロセスでhelloと入力
親プロセスでhelloと受け取り、出力。

前に似たようなプログラムを作ったので、
これと同じような入出力結果になればいいそうです。

画像をうpしました

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7432.zip

お手数ですが、解答してご覧ください。

よろしくお願いします。

409 :デフォルトの名無しさん:2008/07/18(金) 00:25:30
>>397
> 教授のほうも、この書きかけのコードを完成させろみたいなことしか言ってません・・・。
> こんなまともじゃないプログラム、僕らも理解不能です。

えらく教授を見下した書き方だが、教授もしくはTAに分からないところの質問はした?
どれだけ質問してもいいからやれの一点張りならグチの一つも出てこようが。

410 :デフォルトの名無しさん:2008/07/18(金) 00:27:16
>>408
その実行例とやらは誰が考えたの?

411 :デフォルトの名無しさん:2008/07/18(金) 00:44:25
>>409
わざと変なプログラム組ませたりしました。
今回もその類なのかな、と勝手に思ってしまいました。

努力はしました。>>408がその結果であります。
メール送りまくって、少し前にようやく帰ってきました。

普段は学校にいないので、なかなか質問もできず、
メールも送っては帰ってこなかったりもしました。

TAも出現率がメタルスライムです。

>>410
この実行例は友達が考えました。

412 :デフォルトの名無しさん:2008/07/18(金) 00:52:51
>>405
助かりました。
本当にありがとうございました。

413 :デフォルトの名無しさん:2008/07/18(金) 01:08:50
>>408
仮にこの通りの外観だとすると、
fork()した子プロセスは何処へ行くのか・・・

414 :デフォルトの名無しさん:2008/07/18(金) 01:59:21
[1] 授業単元: プログラミング技法
[2] 問題文(含コード&リンク): http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7433.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: しあさって

よろしくお願いします

415 :デフォルトの名無しさん:2008/07/18(金) 02:10:46
>>414
期限は日付で書けよ
しあさっては永遠に明々後日のままだぞ

問1
#include<stdio.h>
#include<string.h>

int main(void){
char filename[FILENAME_MAX], *p;
int moji, prev=0, linenum=0;
FILE *fp;

printf("ファイル名:");
fgets(filename, sizeof(filename), stdin);
if((p=strchr(filename, '\n'))!=NULL) *p='\0';

if((fp=fopen(filename, "r"))==NULL) return 1;
while((moji=fgetc(fp))!=EOF){
if(moji=='\n') linenum++;
prev=moji;
}
if(prev!='\n') linenum++;
fclose(fp);

printf("%d\n", linenum);

return 0;
}

416 :デフォルトの名無しさん:2008/07/18(金) 03:26:25
<<407
手持ちのVC++ではコンパイル警告は出なかった

417 :デフォルトの名無しさん:2008/07/18(金) 03:44:24
>>414
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7434.txt

418 :デフォルトの名無しさん:2008/07/18(金) 05:00:20
http://pc11.2ch.net/test/read.cgi/tech/1197620454/87
何度もすみません、提出が今日なのでできる方がいましたら
よろしくお願いします。

419 :デフォルトの名無しさん:2008/07/18(金) 05:27:34
age

420 :デフォルトの名無しさん:2008/07/18(金) 06:02:09
>>416 アンカーの仕方が変だよ?

421 :デフォルトの名無しさん:2008/07/18(金) 07:01:48
>>414
3つ目は外部のファイルを使用してもおk?

422 :デフォルトの名無しさん:2008/07/18(金) 07:26:22
>>417
1行にbuffが1度に受ける文字数以上ある場合適切に行数をカウントしない
コピー 〜 + コピーするファイル名のファイルが既に存在していた場合
問答無用で上書き

423 :デフォルトの名無しさん:2008/07/18(金) 09:08:41
アルバイトの口があるぞ
Excel VBA質問スレ Part7
http://pc11.2ch.net/test/read.cgi/tech/1212587819/459


424 :デフォルトの名無しさん:2008/07/18(金) 09:17:26
昔このスレにも来てたな
金払うから宿題解いてってやつ

425 :デフォルトの名無しさん:2008/07/18(金) 09:35:11
>>415
初期化は prev='\n' でないと 0 byte ファイルのときに 1 になるよ

426 :デフォルトの名無しさん:2008/07/18(金) 09:40:21
>>424
今でもこのスレにも来てるんじゃないか?
金払うから宿題解かせてってやつ

427 :デフォルトの名無しさん:2008/07/18(金) 09:43:34
金を払ってくれるなら喜んでお受けいたします!って奴も出るか?

428 :デフォルトの名無しさん:2008/07/18(金) 09:53:09
コーディングの場合は、金を取ってやるのが美徳か、無償でやるのが美徳か
実に微妙で難しいな

429 :417:2008/07/18(金) 10:06:17
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7435.txt

430 :デフォルトの名無しさん:2008/07/18(金) 10:32:17
仲介が儲かりそうだな。
請け負って手配して、両者から金もらうw

431 :デフォルトの名無しさん:2008/07/18(金) 10:33:52
>>428
所詮は子供の宿題と、
コードを更に商売に使う場合とでは、違うだろうな。
>>423は一見、子供の宿題に見えるが、本人のつもりはどうなんだろう。

むかし、金を払うからオレの考えたサイコロバクチの予想法を実装してくれってスレがあったよな。

432 :デフォルトの名無しさん:2008/07/18(金) 10:55:58
子供の宿題が商売に使われているのか、法的に強い監視と規制が必要な商手段が
子供の教育に使われているかいずれか解釈が分かれていると思われ

433 :デフォルトの名無しさん:2008/07/18(金) 11:09:52
>>415 >>417
ありがとうございます
助かりました

>>421
制限は何も言われてないので、さほど問題は無さげのようです


434 :414:2008/07/18(金) 11:10:43
日付の件は申し訳ございませんでした

435 :デフォルトの名無しさん:2008/07/18(金) 11:31:21
>>362

362をお願いします

画像が消えてしまったので
http://up2.viploader.net/pic2/src/viploaderf131840.png
再UPしました。
よろしくお願いします

436 :デフォルトの名無しさん:2008/07/18(金) 11:51:15
>>382
なんか /dev/pts って奴で通信することで、それっぽくなるらしい。

http://www.linux.or.jp/JM/html/LDP_man-pages/man4/pts.4.html

前の宿題と言うのがコレのようだ。
http://pc11.2ch.net/test/read.cgi/tech/1215439445/239
http://pc11.2ch.net/test/read.cgi/tech/1215439445/283

別途に擬似マスタを掴むプログラムが必要なようだが、
使ったことが無いので良く分からない。

前回の例をみると、宿題自体は取得したディスクリプタに対して読み書きするようにすれば解決するようだ。
前回も終了条件を回答者側が追加している。

437 :デフォルトの名無しさん:2008/07/18(金) 14:21:24
>>174
講義のホームページにここを見ているようなことが書いてあるね。


438 :デフォルトの名無しさん:2008/07/18(金) 15:56:19
>>58,322,398
下書き程度、エラー処理等は自分でやってくれ
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7437.txt


439 :デフォルトの名無しさん:2008/07/18(金) 15:58:09
>>438
やさしいなぁ
おれの 一日分の仕事量に相当する

440 :デフォルトの名無しさん:2008/07/18(金) 16:55:43
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):

配列の要素を昇順にソートしたときの、添え字の順番を配列に記憶するプログラムを書け。

data = {2,6,3,1,2} なら, index = {3,0,4,2,1}である。

元の配列は書き換えてはならない。

qsortなどのライブラリを用いて構わない。

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C C++
[4] 期限: 明日

441 :438:2008/07/18(金) 17:18:36
>>438

searchNode内のpNodeをNULLで初期化してくれ。
他にも抜けはだいぶあるから適当にやっといて。

442 :デフォルトの名無しさん:2008/07/18(金) 18:32:09
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>58 07/15 18:00 木構造を用いた数式の処理 : >>438
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>316 07/19 --:-- パリティ? : >>378
>>350 07/18 --:-- 数値計算/はさみうち法 : >>387
>>354 07/19 23:59 連結リストを用いた並び替え : >>394
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分

443 :デフォルトの名無しさん:2008/07/18(金) 18:32:39
>>383 07/18 06:30 static変数の抽出
>>392 07/18 14:00 ??(ソースがないです。): >>400
>>404 07/19 --:-- = >>214 : >>219
>>406 07/19 23:59 シャノンファノ符号
>>414 07/20 --:-- 行数・ファイルコピー・実行するたびに+1 : >>415(1のみ), >>417,>>429(1と2)
>>440 07/19 --:-- ソーティング亜種

444 :362:2008/07/18(金) 18:39:53
画像消えてしまうのでzipでupしました
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7439.zip

445 :デフォルトの名無しさん:2008/07/18(金) 18:53:43
>>444
その絵で意味が分かるのは絵を書いた本人くらい

446 :デフォルトの名無しさん:2008/07/18(金) 19:06:51
>>445
僕じゃありませんw

447 :デフォルトの名無しさん:2008/07/18(金) 19:12:44
ttp://www.caughtatwork.net/freaky/view.php?itemid=11
この絵の意味は誰でも分かる

448 :デフォルトの名無しさん:2008/07/18(金) 22:31:33
2:5≠3:8

449 :デフォルトの名無しさん:2008/07/18(金) 22:42:32
>>448
斜辺のように見えるけれども実は一直線ではなかったのですか‥‥‥。

450 :デフォルトの名無しさん:2008/07/18(金) 23:00:03
>>448
2.5≠2.667

451 :デフォルトの名無しさん:2008/07/18(金) 23:01:29
相変わらず後だしで猿真似かw

452 :デフォルトの名無しさん:2008/07/18(金) 23:15:54
>>440
#include <stdio.h>
#include <stdlib.h>

struct element{ int d; int i; };

int compfn(const void *_a, const void *_b)
{
return (((struct element *)_a)->d - ((struct element *)_b)->d);
}

void my_sort(int n,int *data,int *index){
int i;
struct element *S = malloc(sizeof(struct element) * n);
for(i=0;i<n;i++){
S[i].d = data[i]; S[i].i = i;
}
qsort(S,n,sizeof(struct element),compfn);
for(i=0;i<n;i++){
index[i] = S[i].i;
}
free(S);
}
int main(){
int i, data [5] = {2,6,3,1,2}, index [5] = {0};

my_sort(5,data,index);
printf("data[] = {");for(i=0;i<5;i++){ printf("%d ",data[i]); } printf("};\n");
printf("index[] = {"); for(i=0;i<5;i++){ printf("%d ",index[i]);} printf("};\n");
}

453 :デフォルトの名無しさん:2008/07/18(金) 23:30:18
>>414
問3
#include<stdio.h>

int main(){
FILE *fp;
int n;
fp = fopen("a.txt","r");
if( fp == NULL ){
n=0;
/* この場合、fpはNULLなのでfcloseする必要なし */
}else{
fscanf(fp,"%d",&n);
fclose(fp);
}
n++;

fp = fopen("a.txt","w");
if(fp == NULL){
printf("Error...\n");
return -1;
}
fprintf(fp,"%d",n);
printf("%d\n",n);
fclose(fp);
return 0;
}

454 :デフォルトの名無しさん:2008/07/19(土) 01:25:41
[1] Cプログラミング
[2] 問題文:
12+22+・・・+n2と1からnまでの平方和s(n)を計算します。整数k(≧10)を閾値(threshold)としてキー入力して、
初めてs(n)がkを超えるようなnとその時のs(n)を求めて表示するプログラムを作成しなさい。
最初に入力要求メッセージとして、「閾値(≧10)を入力:」と表示せよ。
加点オプションとして、与えられた閾値を越える直前のnとその時のs(n)も表示してみよ。
例えば、k=13と与えられた場合は、12+22+32=14(>13)なので、
閾値(≧10)を入力:13
n = 3, s(3) = 14
と表示すれば良い。下線部はキー入力。もし、オプションも達成するならば、
閾値(≧10)を入力:13
n = 2, s(2) = 5
n = 3, s(3) = 14
と表示すれば良いものとする。

以下にソースプログラムをテキスト(等幅フォント)で貼り付け、
k=1000を入力した時の実行結果をコマンドプロンプトをキャプチャして貼り付けよ。
[3] 環境
 [3.1] Windows
 [3.2] gcc
 [3.3] C
[4]あさって

問題が意味不明です。だれかお願いします。

455 :デフォルトの名無しさん:2008/07/19(土) 01:30:24
>>454
追記
12+22+32=14(>13)
↓訂正
1*1+2*2+3*3=14(>13)
1の2乗+2の2乗+3の2乗=14です。

456 :デフォルトの名無しさん:2008/07/19(土) 01:32:15
>>454
あさってのあさってでもOK?
>>415参考。

457 :デフォルトの名無しさん:2008/07/19(土) 01:33:11
>>454
追記
12+22+・・・+n2と1からnまでの平方和s(n)を計算します。

1*1+2*2+・・・+n*nです。

ワードからの貼り付けでイロイロずれがおき連続投稿になり申しわけありません

458 :デフォルトの名無しさん:2008/07/19(土) 01:41:58
>>454
#include <stdio.h>

int main(){
int k,n,s;
printf("閾値(≧10)を入力:");
scanf("%d",&k);
for(n=1,s=0;s<k;n++){s=s+n*n;};n--;
printf("n= %d, s(%d) = %d\n",n-1,n-1,s-(n*n));
printf("n= %d, s(%d) = %d\n",n,n,s);
return 0;
}

459 :デフォルトの名無しさん:2008/07/19(土) 01:50:23
>>458
すまん、ねむくてぼけてた。

#include <stdio.h>

int main(){
int k,n,s;
printf("閾値(≧10)を入力:");
scanf("%d",&k);
for(n=1,s=0;s<k;s=s+n*n){n++;}
printf("n= %d, s(%d) = %d\n",n-1,n-1,s-(n*n));
printf("n= %d, s(%d) = %d\n",n,n,s);
return 0;
}

460 :デフォルトの名無しさん:2008/07/19(土) 01:54:28
[1]C
[2]1から9までの9つの数字が順番に並んでいる。
数字の順番を変えずに全ての用いて、途中に+を1個、−を2個入れると、
例えば次のような式ができる。
123-45-67+89=100,1234+5-6-789=444
同様の方法で、450,500,666
を作る方法をすべて見つけなさい
[3]LINUX
C
[4]来週の月曜
よろしくお願いします。

461 :デフォルトの名無しさん:2008/07/19(土) 02:50:53
>>460 for GCCのみ。それが嫌ならcase '0' ...'9' を case '0': Case '1': って感じにしてくれ。
#include <stdio.h>
long A(char *str){
long ret=0,v=0;int s=1,s2=1,p=0;
do{ switch(*str){
case '0' ... '9': v = v * 10 + (*str - '0'); break;
case '+': s2 = +1; p=1;break;
case '-': s2 = -1; p=1;break;
case ' ': break;
case '=': p=1;break; }
if(p==1) {ret+= s*v;s=s2;v=0;p=0;}
}while(*(++str)!='\0'); return ret;
}
void fome(char *s){char buf[20],*b=s;strcpy(buf,s);
while(*b++){if(*b != ' '){*(++s) = *b;}}
}
void checknum(long m){
int n,s;
char buf [20]="1 2 3 4 5 6 7 8 9=",buf2[20];
for(n=0;n<8*8*8;n++){
char c0 = n & 0x07,c1 = (n>>3) & 0x07,c2 = (n>>6) & 0x07;
if(c0 == c1 || c1 == c2 || c0 == c2 || c1<c2) continue;
strcpy(buf2,buf); buf2[c0*2+1]='+'; buf2[c1*2+1]='-'; buf2[c2*2+1]='-';
fome(buf2);s=A(buf2);
if(s == m) { printf("%s%d\n",buf2,A(buf2));}
}
}
int main(){checknum(100);checknum(444);checknum(450);checknum(500);checknum(666);return 0;}

462 :デフォルトの名無しさん:2008/07/19(土) 04:52:01
>>451
相変わらず後出しに負けているクズソースしか書けない
我先にと先走る低脳か・・・

463 :デフォルトの名無しさん:2008/07/19(土) 04:53:36
>>451
↑このキチガイ、やはり昼夜逆転の引きこもりだろ?マジうぜぇ。
誰もこんな低レベルな宿題スレで競争なんてしねーよ、馬鹿だろこいつ。
自意識過剰ってのはほんっと周りが見えてなくてKYだよな。
おいっ、クソガキ、いやオッサン、いい年こいて無職かよ?
鏡見ろや、m9(^д^ ) な面が拝めるだろ?それ誰の面だ?ん?

464 :デフォルトの名無しさん:2008/07/19(土) 04:54:38
>>451
そうだな、お前が過去に学んだことを 猿真似 した程度なのに
可搬性を無視した麻呂のクソース未満のものしか書けないんだよな。
なぁ、あんた、もしかして嫌われて者の団子ちゃん?w

465 :デフォルトの名無しさん:2008/07/19(土) 05:21:24
>>461
ふざけすぎ。それでいて後出しの奴を挑発か。レベル低すぎ
技能も知能も。このスレに向いてないよ、あっ低レベルな宿題だし
暇人のお前にはふ相応しいスレだったか、すまそ。
年金暮らしですか?大変ですね、色々と。

466 :デフォルトの名無しさん:2008/07/19(土) 05:58:07
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):○×ゲーム作りなさい。人対コンピュータのやつで先攻後攻も選べるやつ。
[3] 環境
 [3.1] OS: windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 次の月曜まで

よろしくお願いします

467 :デフォルトの名無しさん:2008/07/19(土) 06:02:35
>>466
○×ゲームの概要は?選択式のクイズゲーム?
それとも、n行n列の盤に○と×を置いて縦横斜めにn個並べたら勝ちとか?

468 :デフォルトの名無しさん:2008/07/19(土) 06:33:13
>>467
すいませんでした
後者の方です
3×3マスのテーブルに○と×が交互に自分の印を置いていって
縦横斜めのどれか一列が自分の印で埋まったら勝ちです

469 :デフォルトの名無しさん:2008/07/19(土) 08:00:03
>>466 ちゃんとふざけ過ぎてみる。
#include <stdio.h>
int bd[3][3];
void userSelect(int *x,int *y){ do{ scanf("%d %d",x,y); }while(bd[*y][*x]!=0); }
void comSelect(int *x,int *y){ do{ *x = rand() % 3; *y = rand() %3; }while(bd[*y][*x]!=0); }
int Showbd() {const char chara[3]=" OX";int x,y;printf("\n");
for(y=0;y<3;y++) for(x=0;x<3;x++) printf("%c%s",chara[bd[y][x]],(x==2)?"\n-+-+-\n":"|");}
int Clearbd(){int x,y;for(y=0;y<3;y++) for(x=0;x<3;x++) bd[y][x]=0;}
int isGameFinished(){int ret = 0, x,y;
for(x=0;x<3;x++) {if(bd[0][x] == 0) continue;
ret = 0; for(y=0;y<3;y++) if(bd[0][x] != bd[y][x] ) ret++; if(ret==0) return bd[0][x]; }
for(y=0;y<3;y++) {if(bd[y][0] == 0) continue;
ret = 0;for(x=0;x<3;x++) if(bd[y][0] != bd[y][x] ) ret++; if(ret==0) return bd[y][0]; }
if(bd[0][0] == bd[1][1] && bd[1][1] == bd[2][2] && bd[0][0] != 0) return bd[0][0];
if(bd[0][2] == bd[1][1] && bd[1][1] == bd[2][0] && bd[0][2] != 0) return bd[0][2];
ret=0; for(x=0;x<3;x++) for(y=0;y<3;y++) {if(bd[y][x] == 0) ret++;} if(ret == 0) return 0; return 3;}
int main(){
int n,m,w,x,y; int p[2]; void (*select[2])(int *,int*);
printf("1- 人間先行 2- COM先行"); scanf("%d",&m); if(m==1){
select[0] = userSelect;select[1] = comSelect;p[0]=1; p[1]=2; }
else { select[1] = userSelect;select[0] = comSelect;p[1]=1; p[0]=2; }
Clearbd(); n=0; do{ Showbd(); select[n % 2](&x,&y); bd[y][x]=p[n % 2]; n++; }
while((w=isGameFinished())==3); Showbd();
printf("%s",(w==1)?"ユーザーの勝ち":(w==2)?"COMの勝ち":"引き分け");
}

470 :デフォルトの名無しさん:2008/07/19(土) 08:00:55
[1] 授業単元:プログラミングV
[2] 問題文:シードフィルをスタックを使って表示しなさい
[3] 環境
 [3.1] OS: Windowsxp
 [3.2] コンパイラ名とバージョン:VC 6.0
 [3.3] 言語:C
[4] 期限:7月21日


471 :デフォルトの名無しさん:2008/07/19(土) 08:12:35
>>470
#include <stdio.h>

static char stack[6][2];
int depth=0;
void push(char *s){ stack[depth][0]=*s;stack[depth][1]=*(s+1);depth++;}
static char *pop(){ depth--; printf("%c%c", stack[depth][0],stack[depth][1]);}
int main(){
push("ル");push("ィ");push("フ");push("ド");push("ー");push("シ");
while(depth>=0){pop();}
return 0;
}

472 :デフォルトの名無しさん:2008/07/19(土) 08:50:49
なんか、コンパイルしてないよな?普通にヘッダ忘れとか
コードの中の一部が不適切だとか・・・一応動作するにはするが
コンパイラが都合よく解釈してくれる場合は

473 :デフォルトの名無しさん:2008/07/19(土) 10:25:13
>>470
もうちょっと宿題内容を詳しく書くべきだな。
これじゃ>>471みたいなのを回答にされても仕方がない。

474 :デフォルトの名無しさん:2008/07/19(土) 10:29:31
>>469
ありがとうございますm(_ _)m

475 :デフォルトの名無しさん:2008/07/19(土) 11:03:35
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7439.zip

>>362をお願いします!
期限明日までになりました

476 :デフォルトの名無しさん:2008/07/19(土) 11:22:03
[1] 授業単元:数値解析
[2] 問題文:
関数uは、0<x<1,0<y<1の範囲のあらゆる点で方程式
∂^2u/∂x^2+∂^2u/∂y^2 = 2(x^2+y^2)
を満たし境界上でu(0,y)=u(x,0)=0, u(1,y)=y^2, u(x,1)=x^2である。
点(0.5, 0.5)の値と反復回数をヤコビ法により求め、画面表示せよ。
その際、きざみ幅n,mをいくつか変化させることで、反復回数がどのように変化するか確かめよ。

ヒント
1.(n+2)×(m+2)行列を2つ用意する。u1[n+2][m+2],u2[n+2][m+2]
2.上のu1に境界値を代入する。他は0でよい。
3.u2[[1][1],u2[1][2],・・・,u2[2][1],u2[2][2],・・・と反復計算する。
4.e=Σ|u1-u2|/Σ|u1|を計算する。
5.上記eが0.0001以下でなければ、u1←u2とした後、3へ戻る。
6.結果を表示。

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:VC
 [3.3] 言語: C
[4] 期限: 7月23日24:00まで

477 :しんせつなおじさん:2008/07/19(土) 11:24:40
>>471
正解!

478 :デフォルトの名無しさん:2008/07/19(土) 12:03:26
>>460
#include <stdio.h>
int check(int *a, int n){
int i, j, flag = 1, temp = 0, sum=0;
for(i=0,j=1; j<=9; i++, j++) {
temp = temp * 10 + j;
if(a[i] || i==9) {
sum += temp * flag;
temp = 0;
flag = a[i];}}
return sum == n;}
void show(int *a,int n){
int i, j;
for(i=0,j=1; j<=9; i++, j++) {
printf("%d", j);
if(a[i]==1) putchar('+');
else if(a[i]==-1) putchar('-');}
printf("=%d\n", n);}
void f(int n){
int i, j, k, a[8] = {0};
for(i=0; i<8; i++) { a[i] = 1;
for(j=0; j<8; j++) {
if(i==j) continue;
a[j] = -1;
for(k=j+1; k<8; k++) {
if(k==i) continue;
a[k] = -1;
if(check(a, n)) show(a,n);
a[k] = 0;} a[j] = 0;} a[i] = 0;}}
int main(void){f(100);f(444);f(450);f(500);f(666);}

479 :デフォルトの名無しさん:2008/07/19(土) 12:20:18
おうおう、後出し結構。来週の月曜日まで時間があるし
質問者が適当なものを選べば良いしな。
昼夜逆転のキチガイは頭がイカレテるから放置な

480 :デフォルトの名無しさん:2008/07/19(土) 12:27:31
せっかくコピペじゃ解けない問題ばっかりでおとなしくなったと思ったのにw

481 :デフォルトの名無しさん:2008/07/19(土) 12:46:15
>>440
やっぱバブルソートだろw

#include <stdio.h>

void bubblesort(int *a, int *index, int size)
{
int i, j;

for(i=size-1; i>0; i--) {
for(j=0; j<i; j++) {
if(a[index[j]] > a[index[j+1]]) {
int temp = index[j];
index[j] = index[j+1];
index[j+1] = temp;
} } } }

int main(void)
{
int i, data[5] = {2, 6, 3, 1, 2}, index[5] = {0, 1, 2, 3, 4};

bubblesort(data, index, 5);

for(i=0; i<5; i++) printf("%d ", index[i]);

return 0;
}

482 :デフォルトの名無しさん:2008/07/19(土) 12:48:45
これだろ
http://ja.wikipedia.org/wiki/%E3%83%9C%E3%82%B4%E3%82%BD%E3%83%BC%E3%83%88


483 :デフォルトの名無しさん:2008/07/19(土) 12:52:58
そのソートな・・・行き当たりばったりで、いつ終わることやらw

484 :デフォルトの名無しさん:2008/07/19(土) 12:53:35
>>480
子供の宿題なんだから、コピペレベルじゃなかったことは無いだろ。
当人の説明が下手な場合ばかり・・・

485 :デフォルトの名無しさん:2008/07/19(土) 12:58:25
>>442-443であまってるのでも解いてやれよw

486 :デフォルトの名無しさん:2008/07/19(土) 12:59:12
【質問テンプレ】
[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まで] または [無期限] のいずれか)
※回答期限について
既定では宿題提出期限前1時間前迄です。それ以降回答しても、見てもらえる確率は極端に減ります。
質問者へお願い
問題に誤りがあった場合、訂正をした場合は回答率は極度に下がりますが、やはり訂正して下さい。
他の酷似した問題が訂正と誤解されて質問出来なくなってしまいます。
回答者へお願い
質問があってから、質問者に訂正の余地を少しでも与えるため、2時間以内は回答しないで下さい。
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm

487 :デフォルトの名無しさん:2008/07/19(土) 12:59:58
Cgengo わかりません おしえてください

488 :デフォルトの名無しさん:2008/07/19(土) 13:23:39
>>460 おいどんも、キショースを出すでごわす
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7443.txt

489 :デフォルトの名無しさん:2008/07/19(土) 13:26:35
[1] 授業単元:アルゴリズム
[2] 問題文:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7442.txt
       配列をj引数とする再帰呼び出しによるマージソートです
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 7月20日まで
よろしくお願いします

490 :デフォルトの名無しさん:2008/07/19(土) 13:31:20
>>488
頭の悪い関数だなw

491 :デフォルトの名無しさん:2008/07/19(土) 13:32:11
>>489
すいません。作成例の最後
void msort(int X[],int n,int Y[])
{
int n1 = n/2, n2 = n - n1, i;
int X1[n1], X1[n2], Y1[n1], Y1[n2];

int X1[n1], X2[n2], Y1[n1], Y2[n2];
の間違いでした


492 :デフォルトの名無しさん:2008/07/19(土) 13:34:37
>>485
期限内で残ってるの、>>406だけだろ?
やだよ。なんかケイタイで撮った問題用紙みたいのは入ってたぞ。

493 :デフォルトの名無しさん:2008/07/19(土) 13:37:08
>>490
お前のわけの分からん基準は要らない。何が 頭が悪い のか
はっきりしないし、それを口に出したお前こそ低脳の馬鹿低学歴だろ

494 :デフォルトの名無しさん:2008/07/19(土) 13:39:00
あー他人のソース批判は要らないよ。口出しするくらいなら
回答となるソースを自分が出せば良いだけだから。
回答しない口先だけの奴ほどこのスレには無用

495 :デフォルトの名無しさん:2008/07/19(土) 13:40:22
>>494
ひょっとして、この頭悪いスレを何か勘違いしてないか?

496 :デフォルトの名無しさん:2008/07/19(土) 13:44:28
>488
>while(*num_end++);
バカすぎw

497 :デフォルトの名無しさん:2008/07/19(土) 13:47:17
int s2n(const char *num, const char*p)
{
int i = 0;
while(*num!=*p) i = i * 10 + *num++ - '0';
return i;
}
とでもして直接数値返したほうが無駄がないだろ。

498 :デフォルトの名無しさん:2008/07/19(土) 13:49:48
誰も第三者にソースの判定を依頼なんてしてないのに
わざわざ自分の方から頭が悪い自分の発言をしている
構ってちゃんは何者だ?自分がこのスレの趣旨が理解できない
馬鹿だと気づいてくれ。頭の悪そうなレスだな、ってな。

499 :デフォルトの名無しさん:2008/07/19(土) 13:50:58
>>498
このスレの主眼は、
他人の受ける教育を妨害しつつ、
自分以下のバカをあざけることだろ。JK

500 :デフォルトの名無しさん:2008/07/19(土) 13:51:13
自分の方が頭の悪いレスをしていることに気づかない
頭の悪い関数 だと思った 本当に頭の悪い 奴が構ってちゃんなんだろ。

501 :デフォルトの名無しさん:2008/07/19(土) 13:51:29
自分は人のソースを叩くくせに、自分のは叩いちゃダメってかw
どんだけわがままなんだよ、お前w

502 :デフォルトの名無しさん:2008/07/19(土) 13:52:35
まーたはじまった

503 :デフォルトの名無しさん:2008/07/19(土) 13:52:46
批判されるのが嫌ならソース貼るなよ。

504 :デフォルトの名無しさん:2008/07/19(土) 13:56:06
ここは他の回答者と競争したり、他の回答者のソース批判をするスレではありません
まったく、スレタイ、日本語が読めない奴らは何人なんだYO!

505 :デフォルトの名無しさん:2008/07/19(土) 13:57:15
お前が言うなYO!

506 :デフォルトの名無しさん:2008/07/19(土) 13:57:27
int i;

i++;

俺の知識フルにつかった

507 :デフォルトの名無しさん:2008/07/19(土) 14:00:29
>>500
いや、頭の悪い関数はハズレてないだろ

508 :デフォルトの名無しさん:2008/07/19(土) 14:04:24
>>507
わざわざbuf[]に数字コピーしてからatoi()が無駄だと思えないヤツにまともな意見が通じるとでも?

509 :デフォルトの名無しさん:2008/07/19(土) 14:38:09
>>486
>回答者へお願い
>質問があってから、質問者に訂正の余地を少しでも与えるため、
質問者の事情など知ったことではありません。こっちとしても訂正が入ったらそのつどなおせばいいだけです。
>2時間以内は回答しないで下さい。
よけいなお世話です。

510 :デフォルトの名無しさん:2008/07/19(土) 14:40:27
>>486
>既定では宿題提出期限前1時間前迄です。それ以降回答しても、見てもらえる確率は極端に減ります。
回答するのは誰?見てもらえるのは誰に?主語はなんですか?既定ではってどういう意味ですか。
テンプレの文章を作れるまでには、まだまだ日本語のお勉強が必要と思われます。

511 :デフォルトの名無しさん:2008/07/19(土) 14:41:37
>>460
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7444.txt

頭が悪いも何も、キショースでごわすからな。んじゃ変えてみるでごわす。

512 :デフォルトの名無しさん:2008/07/19(土) 14:42:47
もっとひどくなったw

513 :デフォルトの名無しさん:2008/07/19(土) 14:43:08
>>504
「競争するな」ってどこに書いているのですか?創作はやめてね。

514 :デフォルトの名無しさん:2008/07/19(土) 14:44:04
>>508
いや、それ・・・お前が概要を理解していないという、お前の頭の悪さを
露呈している気がするんだが?口を出す奴ほど、自分の勘違いや
思い違いを理解していないよなw だから笑われるんだよ、
よく言うだろ、思ったことを言う奴はよく誤解されると。
所詮お前も他人も、この世の一人に過ぎない。思想に関しても
十人十色。お前が理解できない=間違い、頭の悪いという解釈が
既に自分の主観や思想、他社を侮辱する気のあっての言動だと気づいた方が
身のためだよ。もっとも、こんなスレで馬鹿を露呈しているようじゃ
とっくに孤立して干されているようだがw

515 :デフォルトの名無しさん:2008/07/19(土) 14:44:53
>>513
それ曲解。「するな」ではなく、そういう意図のあるスレとは
>>1には書いてないんだが?w
自分勝手な思い込みや妄想はやめてね。

516 :デフォルトの名無しさん:2008/07/19(土) 14:46:20
この程度の宿題なら問題ないけど、bufをfreeする習慣はつけとけw

517 :デフォルトの名無しさん:2008/07/19(土) 14:47:29
>>513
いや、さすがにお前の理解力のなさには脱帽だよ・・・
>>504 が勝手に競争するなって言っているように解釈するなんて。
もう一度読み直せ。国語力なさ過ぎ。
そこに挙げられたことをするのが目的のスレではないよ。
宿題に答えるんであって、他の回答者のソースを批判したり
自分の方が出来ているだの、自分のをコピーしただろといった
探りを入れるスレではありませんので、キモイので他者を罵倒するのはやめて下さい。
あまりにも酷い侮辱、罵倒レスをしている場合は、しかるべき場所に通報しますので、
あしからずご了承下さい。

518 :デフォルトの名無しさん:2008/07/19(土) 14:48:57
一番他人を罵倒してるのはお前w

519 :デフォルトの名無しさん:2008/07/19(土) 14:50:45
>>489
ふるぼっこにされたから消したの?かわいそーす

520 :デフォルトの名無しさん:2008/07/19(土) 14:55:25
さてここで問題です。
>>511のソースで*num_endはいくつでしょう?

0だと思ったあなた。
C言語からはすっぱり足を洗いましょうw

521 :デフォルトの名無しさん:2008/07/19(土) 14:55:43
>>519
オマエは何に向かって話しかけてるんだ?

522 :デフォルトの名無しさん:2008/07/19(土) 14:57:13
>>517
これ、長文でヒイヒイ言ってるのは同一人物ってこと?

まさか、このスレの回答者が親切で回答してるとでも思ってるのか・・・?

523 :デフォルトの名無しさん:2008/07/19(土) 14:58:16
>>508
んじゃ、お前は文字列をどのように演算するんだよ?
まさか、文字列同士の加算、減算?

>>516
言うと思ったが、それじゃどのように文字列をmainに返すの?
freeにしたら・・・ねぇ?retrun の前に free ですか?それとも後に?
それから、関数って呼び出しが終わったらどうなる?

だから、いちいち批判するのはやめとけっていっているんだよ。
批判があるくらいなら、何が正しいか、ソースで示してみろよ、な?
出来もしない奴ほど、発言すればするほどそいつ自身が
出来ないことを露呈するからこそこそ批判しか出来ないんだろ。
是正するならソースで示せよ、な?

524 :デフォルトの名無しさん:2008/07/19(土) 14:58:28
>>510

回答者のコードが、質問者の質問者に提出されるわけですが、
要するにそれを見てもらえないということですね。
わかりまつ?

525 :デフォルトの名無しさん:2008/07/19(土) 14:59:00
>>495
指摘無しでそれは卑怯。

>>496
意味不明。低俗なレスをしているあんたの方がどうかと。

526 :デフォルトの名無しさん:2008/07/19(土) 14:59:29
>>523
>>497

527 :デフォルトの名無しさん:2008/07/19(土) 15:01:09
>>523
>関数って呼び出しが終わったらどうなる?
関数抜けたらbufが開放されると思ってるんなら死んだほうがいいw

528 :デフォルトの名無しさん:2008/07/19(土) 15:02:55
>>520
sizeof("123456789")は幾つよ?

529 :デフォルトの名無しさん:2008/07/19(土) 15:03:57
おっ、釣り餌をつけておいたが、わざわざ突っ込む
釣り糸に食いついちゃう、自己主張の強い奴が釣れた?釣れた?
キショースだから、その意味が分からない時点でダメだろw
麻呂叩きのような流れに飲み込まれたお前らワロスw

530 :デフォルトの名無しさん:2008/07/19(土) 15:05:38
>>524
無理だろ。他人とコミュニケーション取れる奴の文章じゃねーよ。ありえねーよ。

531 :デフォルトの名無しさん:2008/07/19(土) 15:05:46
2chじゃ後釣り宣言=敗北宣言なんだがw

532 :デフォルトの名無しさん:2008/07/19(土) 15:06:35
>>511
ふるぼっこにされたから消したの?かわいそーす

533 :デフォルトの名無しさん:2008/07/19(土) 15:08:02
>>529
敗北宣言ってことは、
ひょっとして、本当に文字列リテラルが何かも知らなかったのか?

534 :デフォルトの名無しさん:2008/07/19(土) 15:09:41
>>530
その他人との間でのコミュニケーションを取るのに使用するは本質的に難しい
C言語のコードを、質問者は、その質問者(出題者)に提出するわけで
期限間際に出されても、恐らく提出出来ないし、それなりに理解して
通常のコミュニケーション可能な言語で、補足しなければ、出題者は
読んでくれないという意味だけど。わかるよね?

535 :デフォルトの名無しさん:2008/07/19(土) 15:11:07
>>460
過去ログを見ることができるなら
http://pc11.2ch.net/test/read.cgi/tech/1211006255/945

536 :デフォルトの名無しさん:2008/07/19(土) 15:12:57
何だ何だおまいら、こうも簡単に餌に食いつかれちゃうと
お夕飯を考える主婦のように、次の餌を考えるのに困ってしまうわ
ってなってまうやろがっー!(やっくん風に)
もちっと、クマーが釣り針をじぃ〜〜っと見ているAAのように
おまいらも慎重になれよw

537 :デフォルトの名無しさん:2008/07/19(土) 15:13:41
スレと関係ないんだけどさ、俺「釣り」とか「釣り師」っていうのは、

 釣り師 ↓     
          /| ←竿
     ○  /  |
.    (Vヽ/    |
    <>     |
゙'゙":"''"''':'';;':,':;.:.,.,__|_________
             |
  餌(疑似餌)→.§ >゚++< 〜
                 の組み合わせだと思ってたんだけど、

最近自称釣り師がダイレクトで自分の本音を攻撃されて「釣れた!」とか
言ってるの多いよね。
 これは、どっちかというと、



          ,〜〜〜〜〜〜 、
|\     ( 釣れたよ〜・・・)
|  \    `〜〜〜v〜〜〜´
し   \
゙'゙":"''"''':'';;':,':;.:.,.,  ヽ○ノ
          ~~~~~|~~~~~~~ ̄ ̄ ̄ ̄ ̄ ̄ ̄
                ト>゚++<
              ノ)

かと思うんだけど、どうよ?


538 :デフォルトの名無しさん:2008/07/19(土) 15:13:46
>>536
>>531

539 :デフォルトの名無しさん:2008/07/19(土) 15:15:08
釣りってことにしないとプライド保てないかわいそうなヤツなんだから、あんまりいじめるなよw
(彼にとっては)難しい問題がたくさんで、ようやくなんとか解ける問題をみつけておおはしゃぎなんだから。

540 :デフォルトの名無しさん:2008/07/19(土) 15:17:04
>>539
オマエ、どれが誰だか分からなくなってね?

541 :デフォルトの名無しさん:2008/07/19(土) 15:17:28
>>517
> 他の回答者のソースを批判したり自分の方が出来ているだの、自分のをコピーしただろといった探りを入れるスレではありませんので、
そんなスレでない、ってどこに書いてあるのですか?
批判される場であってこそ、いいソースが完成されていく可能性が生じると思います。世はは競争の時代、自ら批判対象になるくらいの甲斐性が必要でしょう?
そもそも、匿名の場ですら批判を恐れるなんて、昔の商用BBS や実名で投稿していた net.news の世代からみると、笑止というほかはないのですが。

批判があたっているか外れているかは、第三者が冷静に判断してくれますよ。
そろそろ「ゆとり思考」から卒業してくださいね。

>キモイので他者を罵倒するのはやめて下さい。
キモい?ってどういう意味ですか?

542 :デフォルトの名無しさん:2008/07/19(土) 15:18:39
>>541
負け犬の遠吠えよな

543 :デフォルトの名無しさん:2008/07/19(土) 15:19:40
そろそろ「C/C++のソースを品評するスレ」でも建ててそっちでやれ

544 :デフォルトの名無しさん:2008/07/19(土) 15:20:51
>>540
はしゃいでるのは麻呂=長文だろ、十分把握してるからw

545 :デフォルトの名無しさん:2008/07/19(土) 15:22:39
どこが良くないのかを指摘するならいいけど、
馬鹿にするだけのレスってのもねえ
まあそれだけで発狂されても困るけど

546 :デフォルトの名無しさん:2008/07/19(土) 15:24:58
>>534
そういうことならば、宿題提出側は自分の能力と相談して自分で期限を決めてテンプレートに書けばいいのではないでしょうか。
宿題回答側が、記述された期限からさらにサバを読んで回答してあげる必要はまったくないと思います。

547 :デフォルトの名無しさん:2008/07/19(土) 15:27:00
>>544
麻呂、って批判されるとすぐにソースを消しますね。
EOF から少しは成長してくれたかな?っと期待をしていたのですけれども。

548 :デフォルトの名無しさん:2008/07/19(土) 15:27:28
>>545
自分のソースがバカなものだったらバカにされても当然と受け止めるけどな。
反省して次から気をつけりゃいいんだし。

549 :デフォルトの名無しさん:2008/07/19(土) 15:28:45
>>523>>508はどのソース? >>516はどのソース?
一瞬考えさせて。

550 :デフォルトの名無しさん:2008/07/19(土) 15:28:49
>>547
前から見てるけど、成長はしてないなw
素直に他人の指摘を受け入れられないヤツは成長も遅いよ。

551 :デフォルトの名無しさん:2008/07/19(土) 15:29:02
>>545
ばかにされたくらいで発狂しなくともいいでしょうに。
第三者を信頼することをそろそろ覚えてもいいと思います。

552 :デフォルトの名無しさん:2008/07/19(土) 15:30:25
>>547
EOFから成長していないのはお前だろ・・・
あの議論で、何が論点が分かってなかったゆとりw

553 :デフォルトの名無しさん:2008/07/19(土) 15:30:50
>>534
質問者が努力を怠ってグダグダになればそれでよい訳で、
別にそれで見透かされて減点されようが、
提出できなくて減点されようが、本質的な目的は達成されるワケじゃね?

554 :デフォルトの名無しさん:2008/07/19(土) 15:31:01
お、話題をそらす格好の獲物を見つけてさっそく食いついたw

555 :デフォルトの名無しさん:2008/07/19(土) 15:31:51
あぁEOFなんて話に持ち出したお前はあれか、捻くれものの屁理屈野郎w
あの時の議論は、getchar()の部分で”EOFを入力した後の動作”が問題であって
お前はあの後必死に、EOFが入力できないだの、別のライブラリの返す値がどうとか
わけわからねー話を始めたズレた野郎w

556 :デフォルトの名無しさん:2008/07/19(土) 15:32:36
>>554
おっ、なんかまたここに馬鹿発見w
いいよいいよー、一人相撲してなさい、
ここで見えない敵と一生戦ってなさい、ね?w

557 :デフォルトの名無しさん:2008/07/19(土) 15:34:36
このスレにお前より馬鹿なのはいないからw
宿題丸投げするのにテンプレもろくに使えないやつら未満だよ、お前は

558 :デフォルトの名無しさん:2008/07/19(土) 15:39:47
おいっ、EOF野郎、悔しかったらキーボードを使ってEOFを入力してみろやぁw
ファイルの終わりを意味するのに使われているものもあるんで
ファイルの入力でも良いよーんwwwww
さぁ、EOF入力をやってみたまえ、気持ち良いから、な?

559 :デフォルトの名無しさん:2008/07/19(土) 15:40:59
>>558
^D

560 :デフォルトの名無しさん:2008/07/19(土) 15:41:45
EOF はストリームに入らないから、「入力できない」という記述は、あながち間違いではない、と主張していただけですが。
http://pc11.2ch.net/test/read.cgi/tech/1208268461/216

561 :デフォルトの名無しさん:2008/07/19(土) 15:44:34
バカにエサを与えるなw

562 :デフォルトの名無しさん:2008/07/19(土) 15:45:23
はいはい、まぁ、落ち着いて鏡を見ろや、な?なんかオモロー!な顔が映ってるやろ?
誰やそれ?ピッツァーにメガネなんてかけやがって、このっ!
鏡の前にまでピザを持ち込まなくて良いから、落ち着け、な?

563 :デフォルトの名無しさん:2008/07/19(土) 15:45:54
さっきまで散々ボコボコにされた鬱憤がたまってるから激しいなw

564 :デフォルトの名無しさん:2008/07/19(土) 15:47:00
>>557
自分が一番馬鹿だと気づいてくれ。スレタイも読めないお前が。
何でこうも構ってちゃんが多いんだよ、このスレは?
しかも目立ちたがり屋でうざってぇ。言いたいことがあるのは分かるが
ソースで示せ、な?結果が出せない奴が何を言っても無駄、それが
人間社会。引きこもってねーで、まともに社会で活動してみろよ。
こんな統率もとれてない場所で、自分以下の人間を探して何が楽しいんだ?
ツマンネー人生だな、お前。人間性も。

565 :デフォルトの名無しさん:2008/07/19(土) 15:48:02
>>558
^D (Linux)
^Z (MS-DOS)

MS-DOSの場合はcopy con file.txtで標準入力の内容をファイルに書き出せるが、
その終端を意味するのが^Zとなります。

566 :デフォルトの名無しさん:2008/07/19(土) 15:58:39
>>561
いいじゃないですか、おもしろいし。>>17 のような面白い宿題はないですかね。

567 :デフォルトの名無しさん:2008/07/19(土) 15:59:18
【質問テンプレ】
[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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない、使用できる
ヘッダファイルetc)
※ここで得られるのはコードだけです。理解してもいないコードをそのまま提出して発生した
トラブルや損害に関しては一切質問者の責任とさせて頂きます。回答者の回答をうのみにせず、
自分でもコードをチェックすることを強くおすすめします。宿題提出期限を回答期限とはしな
いで下さい。
※回答者も質問者が問題を訂正する可能性を考慮し、性急な回答は謹んで下さい。質問者が再度
請求してから回答を上げても遅くはありません。
※質問者は、質問をあげてから、再度請求して回答が得られなかった場合は、あきらめて下さい。

568 :デフォルトの名無しさん:2008/07/19(土) 16:00:59
「ローダー」は無いだろ

569 :デフォルトの名無しさん:2008/07/19(土) 16:06:21
単なる約分問題に面白いも何もないと思うが。

570 :デフォルトの名無しさん:2008/07/19(土) 16:10:26
>>569
でもLL(1)文法解析・式評価がこっそり隠れているところがさりげなく高級じゃないでしょうか。

571 :デフォルトの名無しさん:2008/07/19(土) 16:18:37
>>567
>※専門/上級/中級/初級かを自分たちの受けている講座の水準を考慮して書いて下さるとうれしいです)
あまり期待していませんので、特に書かなくともいいかと。
> ※ローダーへのリンクの場合でも問題内容を一言書いて下さい。
みればわかります。べつに一言書く必要は無いと思います。
> [3.1] OS: (Windows/Linux/等々)[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
ここは強化したいところです。
>[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
ここも必ず書いてほしいですよね。
>※ここで得られるのはコードだけです。理解してもいないコードをそのまま提出して発生したトラブルや損害に関しては〜(以下略)
不要です。
>※回答者も質問者が問題を訂正する可能性を考慮し、性急な回答は謹んで下さい。
嫌です。勝手にさせてもらいます。
>※質問者は、質問をあげてから、再度請求して回答が得られなかった場合は、あきらめて下さい。
なんでまあ、こうも手取り足取り、おせっかいな説明文を付け加えたがるのですかね?最近の学校の風潮ですか?

572 :デフォルトの名無しさん:2008/07/19(土) 16:18:48
>>461 >>478
↑こいつらだろ、キショース叩きを始めた暇人共は。
どちらが読みやすいか、一目瞭然だったもんな。
所詮そんなもん、ここでの批判は他の回答者の妬みと捉えて
まず間違いない。多少問題点があったとしても、直せば済むことだし
最初にあった批判は明らかに指摘した奴の勘違い。
atoi無しでどうやって四則演算に持ち込むつもりかね?

573 :461:2008/07/19(土) 16:23:56
>>572
その騒動の時いなかったんでなんのことか良く分からないんだが・・・・・・

顔真っ赤みたいだけど大丈夫?

574 :デフォルトの名無しさん:2008/07/19(土) 16:25:26
>>572
>ここでの批判は他の回答者の妬みと捉えてまず間違いない。
この論法は共産党のそれですから、あまり真似しないほうがいいかと思います。

575 :デフォルトの名無しさん:2008/07/19(土) 16:27:39
>>572
>>497

576 :デフォルトの名無しさん:2008/07/19(土) 16:28:41
あのソースを妬むとかありえねーよw
憐れむのならありだけどな。

577 :デフォルトの名無しさん:2008/07/19(土) 16:43:18
他人のソース批判をするくらいなら、自分がそれ以上のものを書いてみろ。
ただし、後出しだからコピペとか言われるのが怖いんだろ?
心のそこで燻っているものでも、対面しない相手も分からん場所だと
言いたい放題だもんな。釣り宣言=敗北とか言った奴こそ
釣られたことがくやしいのぅくやしいのうぅという動揺が露になってますよ。

578 :デフォルトの名無しさん:2008/07/19(土) 16:50:30
批判が嫌なら消えろよチキン

579 :デフォルトの名無しさん:2008/07/19(土) 16:50:37
【質問テンプレ】
[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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない、使用できる
ヘッダファイルetc)
※ここで得られるのはコードだけです。理解してもいないコードをそのまま提出して発生した
トラブルや損害に関しては一切質問者の責任とさせて頂きます。回答者の回答をうのみにせず、
自分でもコードをチェックすることを強くおすすめします。宿題提出期限を回答期限とはしな
いで下さい。
※回答者も質問者が問題を訂正する可能性を考慮し、性急な回答は謹んで下さい。質問者が再度
請求してから回答を上げても遅くはありません。
※質問者は、質問をあげてから、再度請求して回答が得られなかった場合は、あきらめて下さい。

580 :デフォルトの名無しさん:2008/07/19(土) 16:52:39
長文連投以上に必死さを示す方法は、寡聞にして知らんのだが。
何をもって彼は他人を必死だと決め付けてるんだろう?

581 :461:2008/07/19(土) 16:53:26
>>580
自分がこんなに必死なんだから、相手はもっと必死なんだろうという妄想じゃね?

582 :デフォルトの名無しさん:2008/07/19(土) 16:53:31
>>577
批判するのに他のコードをだす必要性なんて無いだろ

583 :デフォルトの名無しさん:2008/07/19(土) 16:54:16
他人のソースにケチをつけるだけで、一部だけそこはダメみたいな
四の五の言うくらいなら、自分が求める結果の出せるソースを提示しろよ。
口先だけの卑怯者ほど女々しいものはない。

584 :デフォルトの名無しさん:2008/07/19(土) 16:55:29
教師でも親でもないのに、どこがダメなのか批判してくれるなんてありがたいことだと思うがなあ。
大抵の批判はちゃんとしたものだし、それを素直に受け入れれば自分のためになるのに。
根拠もなく自分が上だと思い込んじゃえば、それ以上の成長はないだろうに。

585 :デフォルトの名無しさん:2008/07/19(土) 16:55:55
>>579
「※ここで〜」以下はいらないな

586 :デフォルトの名無しさん:2008/07/19(土) 16:57:17
>>478
> if(k==i) continue;
あぁ、あいつか。お前好きだな、コンチニューw

587 :デフォルトの名無しさん:2008/07/19(土) 16:58:22
見えない相手と戦い始めたw

588 :デフォルトの名無しさん:2008/07/19(土) 17:01:06
ここで口うるさい批判厨は所詮口先だけで、自分こそまともな
結果を出すコードが書けない、過去に世話になった程度の傍観者。
口を出す前にソースで示せ、出来ないならROMってろ。

589 :デフォルトの名無しさん:2008/07/19(土) 17:02:29
批判 → 多数
それ以上のコード → >>461,478

ほら、ソースもあるよ。>>461,478の粗探しでもして批判しなよ


590 :デフォルトの名無しさん:2008/07/19(土) 17:02:32
クソース書いてふるぼっこにされたあげく涙目でソースを消すのは、ソースを示したことになりますか?

591 :デフォルトの名無しさん:2008/07/19(土) 17:06:00
ここまでテンプレ、以下俺の自演

592 :461:2008/07/19(土) 17:06:39
いい加減、見えない敵と戦うのやめてほしーなー

回線切ってチラシの裏にでも書いてれば

593 :デフォルトの名無しさん:2008/07/19(土) 17:07:13
ねぇねぇ、口先だけのあんたら、論より証拠って知ってる?知らない?
自分が出来もしないのに批判してて恥ずかしくない?
出来るならソースで示そうよ、ほらみんなでコード書こう♪

594 :デフォルトの名無しさん:2008/07/19(土) 17:07:32
>>590
こんどソースをあげたら、魚拓をとっておきましょうか。たのしみですねえ。

595 :デフォルトの名無しさん:2008/07/19(土) 17:10:51
>>593
多いとはいいませんが、結構かいたつもりです。(学校の先生方には恨まれているかもしれません。)
>>402 とか。(って書いたら、いろいろ批判していただけるでしょうね。お願いします。)

596 :デフォルトの名無しさん:2008/07/19(土) 17:11:20
魚拓
`````{;0`nruter;(666)munkcehc;(005)munkcehc;(054)munkcehc;(444)munkcehc;(001)munkcehc}()niam`tni
`````````````````````````````````````````````````````````````````````````````````````{
```````````````````````````````````````````````````````````````````````````````````{
``````````````````````````````````````````````````{;((2fub)A,2fub,"n¥d%s%")ftnirp`}`(m`==`s)fi
````````````````````````````````````````````````````````````````````;(2fub)A=s;(2fub)emof
``````````````````````````;'-'=[1+2*2c]2fub`;'-'=[1+2*1c]2fub`;'+'=[1+2*0c]2fub`;(fub,2fub)ypcrts
```````````````````````````````````;eunitnoc`(2c<1c`||`2c`==`0c`||`2c`==`1c`||`1c`==`0c)fi
``````````````````````````````;70x0`&`(6>>n)`=`2c,70x0`&`(3>>n)`=`1c,70x0`&`n`=`0c`rahc
``````````````````````````````````````````````````````````````````}(++n;8*8*8<n;0=n)rof
````````````````````````````````````````````;[02]2fub,"=9`8`7`6`5`4`3`2`1"=[02]`fub`rahc
``````````````````````````````````````````````````````````````````````````````;s,n`tni
```````````````````````````````````````````````````````````````}(m`gnol)munkcehc`diov
```````````````````````````````````````````````````````````````````````````````{
````````````````````````````````````````````````````{{;b*`=`(s++)*}('`'`=!`b*)fi}(++b*)elihw
```````````````````````````````````````````;(s,fub)ypcrts;s=b*,[02]fub`rahc}(s*`rahc)emof`diov


597 :461:2008/07/19(土) 17:12:45
>>596
えーっと・・・魚拓もしらんのですか……

598 :デフォルトの名無しさん:2008/07/19(土) 17:15:54
gdgd言ってねーで、誰か >>362 をやってやれYO!

599 :デフォルトの名無しさん:2008/07/19(土) 17:23:28
>>598
期限過ぎたんじゃねーの?

600 :デフォルトの名無しさん:2008/07/19(土) 17:28:11
>>585
もっというと、※のついている行は全部いらないですよね。

601 :461:2008/07/19(土) 17:30:26
>>599
まあそれにこれ数学の宿題みたいなもんなんで、めんどくさい。
>>598の解答に期待www

602 :デフォルトの名無しさん:2008/07/19(土) 17:35:51
>>599
私にはできないので他の方に期待します。
(って素直に書けばすむ話だと思うのですが。)

603 :デフォルトの名無しさん:2008/07/19(土) 17:36:16
私にはできないので他の方に期待します。

604 :デフォルトの名無しさん:2008/07/19(土) 17:37:06
[1] 授業単元:
ファイルの入出力
[2] 問題文(含コード&リンク):
ファイル名をキーボードから入力して、ファイルを読み込む。
そのファイルには、任意の個数の数値(整数)がテキストで書かれており、それらの数値について以下の処理を行え、ファイルの最後には0が書かれいるので、
これにより読み込みを中断せよ。ただし、この0は計算や読み込んだ数値の個数には含めないものとする。
平均の結果は、浮動小数点表示とせよ
(小数点以下1桁以上表示すること(つまり整数は不可)。小数点以下2桁目以下は、切り捨て、四捨五入、切り上げなど行ってもよい)
処理内容
1数値の個数を表示する
2すべての数値の合計と平均を計算し表示する
3奇数個目の数値について合計と平均を計算し表示する
4偶数個目の数値について合計と平均を計算し表示する

条件  ファイルからの数値の読み込みはfscanfをりようする
     例 fscanf(fp,"%d",&data)
データファイルはtxt形式
[3] 環境
 [3.1] OS: Windows xp
 [3.2] すいませんよくわかりません。
 [3.3] 言語: C++
[4] 期限: 2008年07月20日17:00まで
[5] その他の制限: C言語の入門しか習っていないのでなるべく簡単でシンプルなものでお願いしたいです。
visual studio 2003を使っています。
よろしくおねがいします

605 :362:2008/07/19(土) 17:39:49
>>598

http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7439.zip

>>599

期限明日中になりました!どなたかお願いします

606 :461:2008/07/19(土) 17:42:16
>>605
私にはできないので他の方に期待しますwww

607 :362:2008/07/19(土) 17:45:19
CGっていってもグラフィカルに表示してくれってわけじゃなくて座標を出力してくれればいいみたいです

608 :デフォルトの名無しさん:2008/07/19(土) 17:45:29
私にもできないので他の方に期待します。


609 :461:2008/07/19(土) 17:46:46
>>607
>>1参考
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。

・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。

610 :362:2008/07/19(土) 17:48:18
>>609
それがわからんです

611 :602:2008/07/19(土) 17:48:39
>>606
そりゃ攻撃対象がちがうんじゃないでしょうか。かわいそうですよ。

612 :461:2008/07/19(土) 17:48:42
>>610
そうか、運が悪かったなw

613 :デフォルトの名無しさん:2008/07/19(土) 17:53:14
宿題を手伝うってことは、宿題もできないやつの単位取りを手伝うってことに通ずる。
そういうやつは、宿題もできないのに無事に卒業してきて、あとになって周りに迷惑を振りまく。
我々のやっていることは情報化社会全体に体する悪なのではないだろうか。
いや、そうではないと思いたい。

614 :デフォルトの名無しさん:2008/07/19(土) 17:55:43
言いたいことは分かるが、まぁ落ち着いて、そんなことを疑問に思う前に
>>1 とスレタイ読め、な?

615 :461:2008/07/19(土) 18:02:24
>>611
ほいほい

>>610
入力
・走査平面を表わす(a,b,c)
・視点を表わす(ex,ey,ez)
・ポリゴン座標を表わす(x1,y1,z1),(x2,y2,z2),(x3,y3,z3)

出力
・スキャンラインセグメント上での交点
・スキャンライン上での距離

ってところか。

616 :デフォルトの名無しさん:2008/07/19(土) 18:04:30
>>611
なにをそろそろするのか楽しみだな


617 :デフォルトの名無しさん:2008/07/19(土) 18:06:34
>>615
それだと、スキャンラインの始点終点が分からないのでは?

618 :デフォルトの名無しさん:2008/07/19(土) 18:10:16
とりあえずお前ら全員邪魔
他所でやれ

619 :デフォルトの名無しさん:2008/07/19(土) 18:10:26
>>618


620 :デフォルトの名無しさん:2008/07/19(土) 18:11:14
このスレって

for(i = 0; i < 1000; i++){/* レスは1000まで */
printf("クソースだしてんじゃねえよ");
printf("自分でソース出さずに文句ばかり言ってんじゃねえよ");
}

いつもこんな感じなの?
あほらし


621 :デフォルトの名無しさん:2008/07/19(土) 18:12:48
>>620


622 :デフォルトの名無しさん:2008/07/19(土) 18:12:53
>>620
クソソースをスルーしてもらえると、なにかありがたいのか?

623 :デフォルトの名無しさん:2008/07/19(土) 18:13:39
流れが戻ったと思ったら変な奴がまた1人

624 :デフォルトの名無しさん:2008/07/19(土) 18:19:10
みんな変だよ、自分では自分を変だと思いたくないだけであって
実は他人から見ると自分こそ変だと思われているんだが
現実世界ではそれを言うと、互いに罵倒の応酬になるから言わないだけであって
利益にもならん役立たずや、利害のある奴はとことん弾圧されているのが現状。
所詮この世は地位と財力こそすべて。プギャーな顔をしていても
金がありゃなんとかなるし、批判する奴は金持ちに対する妬みとしか思われないが
貧乏でもイケメソだと妬まれるのがなんとも。まぁ、落ち着いて鏡を見ようぜ?
それがあんたが親から受け継いだ一番の財産、DNAだ。

625 :デフォルトの名無しさん:2008/07/19(土) 18:19:58
>>613
私は、人のソースを読んでかなり衝撃をうけたことがあり、今も感動することが多々あります。>>167 など。
いろいろな御託を並べられるより、ソースを見せていただくほうがどれだけ勉強になることか。
ここにお題を書く人の 1000 人に一人でもいいから、そのような経験をお持ちになったらいいなと思います。

いえ、べつに自分が楽しめればそれでいいんですけど。

626 :デフォルトの名無しさん:2008/07/19(土) 18:20:28
>>596 (魚拓) >>461 流れ無視して、、、
解答:`をSpaceに、上下反転、左右反転、(と)反転、[と]反転、{と}反転。

627 :461:2008/07/19(土) 18:21:42
>>626
日本語でOK

628 :デフォルトの名無しさん:2008/07/19(土) 18:22:18
>>604
当方で確認した環境は cygwin/WindowsXP, 処理系は gcc 3.4.4 です。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7447.txt

>>616
単に宿題をするだけですが、なにか?

629 :デフォルトの名無しさん:2008/07/19(土) 18:22:19
>>627
C言語でOK

630 :デフォルトの名無しさん:2008/07/19(土) 18:23:26
>>620
1人のときは1週間くらいで消えるけど、
2人以上だと相乗効果で1ヶ月以上猛威をふるう

631 :デフォルトの名無しさん:2008/07/19(土) 18:25:49
>>628
ひよったわけね

632 :デフォルトの名無しさん:2008/07/19(土) 18:47:30
>>624
もういいから、また何か書きませんか?

633 :デフォルトの名無しさん:2008/07/19(土) 18:54:03
問題文が間違っているか、写し間違えているということもありえるという
前提には立ったほうがいいみたいだ

634 :461:2008/07/19(土) 18:55:38
>>610 めんどくなった。とりあえずポリゴンと走査平面の3次元空間上の交点算出のみ。
#include <stdio.h>
#define min(x,y) (x<y?x:y)
#define max(x,y) (x>y?x:y)
double a,b,c,d; /* 走査平面 */
double x[3],y[3],z[3]; /* ポリゴン */
double Qx,Qy,Qz; /* 交点 */
void C(int p1,int p2){
double vx,vy,vz, L, k, Ex,Ey,Ez;
int n = 0;
vx = x[p2]-x[p1]; vy = y[p2]-y[p1]; vz = z[p2]-z[p1];
L = sqrt(vx*vx+vy*vy+vz*vz);
Ex = vx/L; Ey = vy/L; Ez = vz/L;
k = -(a * x[p1] + b * y[p1] + c* z[p1] + d) /
(a * Ex + b * Ey + c * Ez);
Qx = x[p1] + k * Ex; Qy = y[p1] + k * Ey; Qz = z[p1] + k * Ez;
if(Qx <= min(x[p1],x[p2]) || Qx >= max(x[p1],x[p2]) ) n=1;
if(Qy <= min(y[p1],y[p2]) || Qy >= max(y[p1],y[p2]) ) n=1;
if(Qz <= min(z[p1],z[p2]) || Qz >= max(z[p1],z[p2]) ) n=1;
if(n==1) Qx = Qy = Qz = 100000.0; /* 交点なし*/
}
int main(){
a = 2.0; b = 4.0; c = -3.0; d=3.0;
x[0] = 1.0; y[0] = 2.0; z[0] = -2.0;
x[1] = 3.0; y[1] =-2.0; z[1] = 1.0;
x[2] = 5.0; y[2] = 3.0; z[2] = 3.0;
C(0,1); printf("0,1 - %6.3lf,%6.3lf,%6.3lf \n",Qx,Qy,Qz);
C(1,2); printf("1,2 - %6.3lf,%6.3lf,%6.3lf \n",Qx,Qy,Qz);
C(2,0); printf("2,0 - %6.3lf,%6.3lf,%6.3lf \n",Qx,Qy,Qz);
return 0;
}

635 :デフォルトの名無しさん:2008/07/19(土) 19:05:55
なんか久々にここ覗いたけど昔と雰囲気変わってるな・・・悪い意味で。

636 :デフォルトの名無しさん:2008/07/19(土) 19:08:45
質問者の実力を無視したコードを質問者が提出し、
出題者が影響を受けていったことのツケだな

637 :461:2008/07/19(土) 19:12:43
>>635
バカが湧くようになったんで(´;ω;`)

638 :デフォルトの名無しさん:2008/07/19(土) 19:17:11
>>636
質問者の実力を無視した問題を出題者が提示し、質問者がここに書くことによって、出題者が勝手に影響を受けてしまったわけですね。
>>635
strdup() の返り値をfree() しなくてもいい、と主張する輩が湧きましたが、それよりはましだと思います。

639 :デフォルトの名無しさん:2008/07/19(土) 19:25:45
>>638
> 質問者の実力を無視した問題を出題者が提示し、質問者がここに書くことによって、出題者が勝手に影響を受けてしまったわけですね。
訓練の為の課題だからな。
出来ないのに出来るフリすれば、ツケは自分に回ってくるさな。

640 :デフォルトの名無しさん:2008/07/19(土) 19:29:34
>>639
といって、出来ない、といえばそれはそれで蹴落とされてしまい、なんのフォローもない、というありかたも問題でしょうね。

641 :デフォルトの名無しさん:2008/07/19(土) 19:32:35
だから質問者の質問期限ぎりぎりに回答者は回答せず、即回答がデフォだな
質問跡1時間経過したら回答禁止
質問者が自分の実力に合ったコードに書き換える時間がなくなる。

642 :デフォルトの名無しさん:2008/07/19(土) 19:34:13
>>641
それは質問者が自分と相談して自分で期限を決めて書き込めばいいだけのこと。

643 :461:2008/07/19(土) 19:34:28
>>641
こういうキモい規制とかルールとか押し付けるバカが湧いてくるようになったからなぁー……

644 :デフォルトの名無しさん:2008/07/19(土) 19:35:36
>>640
蹴落とされない為の努力が不正ってなら、不正に応じた対応がなされるのは当たり前だろ。

645 :デフォルトの名無しさん:2008/07/19(土) 19:36:27
>>641
バカだな・・・

646 :デフォルトの名無しさん:2008/07/19(土) 19:37:56
[1] Cプログラミング基礎
[2] http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7448.txt
[3] 環境
 [3.1] Windows XP
 [3.2] VC++ 2003
 [3.3] C++
[4] 7月22日
[5] 特になし


よろしくお願いします。

647 :デフォルトの名無しさん:2008/07/19(土) 19:39:59
>>644
はっきりいわせてもらうと、「問題が悪い」「出題者が馬鹿」ということですが、ご理解いただけましたでしょうか。

648 :デフォルトの名無しさん:2008/07/19(土) 19:44:54
>>645
つまり質問者の質問には即答せず、問題が間違ってないか十分に検討してもらって
再請求されてから回答してあげればいいってことだな
↑のほうで、質問テンプレの改修版があげられてるし....

今となってはここは学校等の宿題が、「見かけは簡単だが実はとんでもない
難問」を出してないかチェックする機関みたいな役割してるからな
100%回答してやる必要は無いかもな

649 :デフォルトの名無しさん:2008/07/19(土) 19:45:16
>>647
本当に問題が悪ければ、ここへ来て回答が付くわけ無い。

650 :デフォルトの名無しさん:2008/07/19(土) 19:46:16
>>648
バカテンプレがどうだと言うんだ?
反対意見しか出てないだろ。

651 :デフォルトの名無しさん:2008/07/19(土) 19:47:51
>>646
参考って・・・

652 :デフォルトの名無しさん:2008/07/19(土) 19:50:15
どこの参考サイトみてもポインタまでしか載ってねえな・・・
その先を知りたいんで誰かリンク張ってくれ

653 :デフォルトの名無しさん:2008/07/19(土) 19:52:18
>>652
どこへ行き着く先だよ?

654 :デフォルトの名無しさん:2008/07/19(土) 20:00:06
>>649
ん、問題の内容というよりは、フォロー体制に問題ないか?というお話です。たとえば >>406 は、一部の意欲的な学習者に対しては極めて良問なのでしょうが、普通の学生に出題する内容としては疑問です。
(これが「授業単元:Cプログラミング」の内容でしょうか?)
つきつめて考えれば、今の「技術軽視・科学軽視」「人材育成軽視」「(主観)成果主義」な社会に問題があると思いますが、まあそれはそれ。

655 :デフォルトの名無しさん:2008/07/19(土) 20:01:02
>>648
どこが「改修」なのでしょうか?

656 :デフォルトの名無しさん:2008/07/19(土) 20:01:19
>>654
「問題が悪い」と言った舌の根も乾かないうちに「問題の内容でなく」か
バカはきりが無いな

657 :461:2008/07/19(土) 20:04:28
>>654
馬鹿はもういいよ……

658 :デフォルトの名無しさん:2008/07/19(土) 20:07:23
>>654
理論自身は情報系の基礎の基礎だと思うが?
実装するのは面倒だけどw

659 :デフォルトの名無しさん:2008/07/19(土) 20:15:23
同情するなら〓をくれ。

660 :デフォルトの名無しさん:2008/07/19(土) 20:18:13
>>658
実装するのがC言語の実習だからな

661 :デフォルトの名無しさん:2008/07/19(土) 20:22:44
>>654
このCプログラミングの単位だって、実習一コマに対して予習復習何時間ってのが決まってるだろ。
学生便覧か何かに規則が書いてあるよ。
普通の学生だって、ボンヤリ出席して単位を貰ってるわけじゃないだろ。

662 :654:2008/07/19(土) 20:50:58
まあ、専門にやるなら冒頭のシャノン・ファノくらいはしっておかなければならない、といわれればそれまでですね。
実装して身につくということもありますし。意欲的な人間には良問だとは思っています。

>>656
>>654>>640 と矛盾していますでしょうか?

>>661
「2単位」のうち1単位分は自習分のカウントでしたっけ。

663 :デフォルトの名無しさん:2008/07/19(土) 20:57:15
>>662
> >>654>>640 と矛盾していますでしょうか?
>>647>>654だろ。

> 「2単位」のうち1単位分は自習分のカウントでしたっけ。
まず違うだろ。高校や大学では自習時間の規則がある。

664 :デフォルトの名無しさん:2008/07/19(土) 20:58:08
なんかもう宿題スレじゃないな

665 :デフォルトの名無しさん:2008/07/19(土) 20:58:26
[1] 授業単元:プログラミングU

[2] 問題:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7451.txt
[3] 環境:
 [3.1] OS: WindowsXp
 [3.2] コンパイラ名とバージョン:VC6.0
 [3.3] 言語:C
[4] 期限: 7月23日
[5] その他の制限:なし。

   よろしくお願いします.

666 :デフォルトの名無しさん:2008/07/19(土) 20:59:47
>>662
>>640にしたって、「ゆとり教育」を履き違えたバカじゃないかぎり、無能だけど有能な人間とおなじ評価が受けられるなんて思わないだろ。

667 :デフォルトの名無しさん:2008/07/19(土) 21:11:36
>>665
外部の人に最初に問題を発表するときは、問題文を書き換えてくれ
その問題をじかに解釈すると、あるファイルがUSBメモリにあるか否かまで
判定しなければならなくなってしまう。となると、とてもじゃないがここの
回答者の実力では無理。

質問テンプレでは、問題をそのまま書いてくれと書いているが
学校の教材を勝手にネットに公開することの是非に関しては実はグレーゾーン。
下手したら著作権法に引っかかるかも。社会通念上容認されているが、
その容認がいつ不寛容になるかは、不確定だぜ。

最終的には問題をすべてアップしてもらうことにはなるが、
最低限最初に質問する際には、自分なりに解釈したオリジナルな問題文を
アップしてくれ。どうもおかしいというのであれば、問題文をアップしてくれと
回答者が言ってくるだろう。そのときにアップしてやれ。

668 :665:2008/07/19(土) 21:19:53
<<667

これでも一応、もとの問題文に拡張する例題入れたりとか文章いじった方なんですが。。

まるきりコピペではないので、あとは自分が分かるように書けということでしょうか?

669 :デフォルトの名無しさん:2008/07/19(土) 21:22:28
[1] Cプログラミング基礎
[2]
1.
半角英数字1文字を入力し、
英小文字はそのまま、英大文字は2回、数字なら3回連続して表示するプログラムを作成せよ。

2.
半角英文字列を入力し、
英大文字なら英小文字に変換し、それ以外の文字はそのまま表示するプログラムを作成せよ。

[3] 環境
 [3.1] Windows XP
 [3.2] VC++ 2003
 [3.3] C++
[4] 7月22日
[5] コマンドプロンプトで動作確認を行う


よろしくお願いします。

670 :デフォルトの名無しさん:2008/07/19(土) 21:24:02
665はこのスレの慣例に従っただけだが、その慣例はおかしいと
667が指摘するのに665はダシに使われたという見方が
正しいだろう。
けど、667の言ってることにも一理あるような気がする。

671 :デフォルトの名無しさん:2008/07/19(土) 21:34:27
>>667
>学校の教材を勝手にネットに公開することの是非に関しては実はグレーゾーン
根拠を教えてください。
他者が作成した教材を、「教材として使用するために」勝手に引用することに対しては問題でしょうが、課題を単に引き写すことは著作権侵害に抵触するのでしょうか。

672 :デフォルトの名無しさん:2008/07/19(土) 21:36:05
> あるファイルがUSBメモリにあるか否かまで判定しなければならなくなってしまう。
それは無理のある解釈かと。単に課題として meibo.txt がわたされている、という意味ではないのでしょうか。>>665

673 :デフォルトの名無しさん:2008/07/19(土) 21:38:25
>>646
頑張ったけど、求まりませんでした。

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
long n = 0;
cin >> n;
n = (long)1000000;
double ans;
double i = 1;
while(i < n)
{
if ((i * i) > n)
{
ans = i;
break;
}
i+=0.00001;
}
cout << setprecision(5) << ans << "\t" << ans * ans;
return 0;
}


674 :デフォルトの名無しさん:2008/07/19(土) 21:41:46
>>667
何で人のレベルを決め付けるんだ?

675 :665:2008/07/19(土) 21:48:36
<<672の言うとおり。

ファイルがUSBメモリにあるか否かまで判定はしなくともよいです。。

ただ単に問題文(プログラム中)のchar filename[]="C:\\temp\\sample.txt";
の部分をchar filename[]="C:\\temp\\meibo.txt";に変えるだけでいいと書くべきでしたね。。

すいません<m(__)m>

676 :デフォルトの名無しさん:2008/07/19(土) 21:51:21
>>667
当人が理解できていないからここにまる投げしてるのに、問題文をいじられたらたまらんだろ。アホ。

677 :デフォルトの名無しさん:2008/07/19(土) 21:59:08
まる受けするんだったら、質問者に再質問するのはやめれ
それではまる受けとは言わない。

まる受けをするんだったら、665の問題を解くのにちゃんと
ファイルがUSBメモリにあるかどうかを判定して、無い場合
には処理をしないものを書くのが筋というもんぢゃないかなw?

678 :デフォルトの名無しさん:2008/07/19(土) 22:01:45
んだんだ。

679 :デフォルトの名無しさん:2008/07/19(土) 22:02:59
>>646
long long が使える環境ならこれでGO!
#include <iostream>
using namespace std;

int main(){
long long n = 0,m = 0;
cin >> n;
n *= 100000000;
long long i = 1;
while(i < n){
if ((i * i) > n){
m = i - 1;
break;
}
i++;
}
float ans = (float)m / 10000;
cout << ans << "\t" << ans * ans;
return 0;
}

680 :デフォルトの名無しさん:2008/07/19(土) 22:03:27
>>663
>>640, >>647, >>654 は同一の内容を指しています。
「問題が悪い」という表現で「フォローもできないような難しい、あるいは課題としてどうかと思うテーマの問題を出すのはおかしい(※)」という意味を述べたのですが、日本語がおかしいですか?
(.>>406が※に当てはまるかどうかは別として)
さらっと検索してみても、http://www.inter-edu.com/forum/read.php?1234,294359,303706 をみると、※は日本語の使い方を間違えていないと思うのですが、いかが?

>>662
>> 「2単位」のうち1単位分は自習分のカウントでしたっけ。
さらっと検索してみると、http://www.unipro-note.net/archives/50391412.html によれば、単位数は自学自習の分も含む、ということで >>662 はあながち間違いではないと思いますが。

>高校や大学では自習時間の規則がある。
具体的に教えてください。URL を示していただければありがたいです。

681 :デフォルトの名無しさん:2008/07/19(土) 22:07:45
>>677
オマエ本当にバカだろ

682 :デフォルトの名無しさん:2008/07/19(土) 22:09:20
>>680
> さらっと検索してみると、http://www.unipro-note.net/archives/50391412.html によれば、単位数は自学自習の分も含む、ということで >>662 はあながち間違いではないと思いますが。
100点満点で50点取ったんで、二単位中一単位くださいって言ってるようなもの。バカの論理。

683 :デフォルトの名無しさん:2008/07/19(土) 22:09:44
[1] C言語入門
[2] http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7452.txt
[3] 環境
 [3.1] WindowsXP
 [3.2] VC++ 2005
 [3.3] C++
[4] 2008年7月20日23:59まで
[5] 特にありませんが,どのくらいのレベルでできるという基準がわからないので参考までに,
  まだC言語をはじめて3ヶ月で,授業で用いている教科書は以下のものです.
  ttp://www.amazon.co.jp/%E6%96%B0%E7%89%88-%E6%98%8E%E8%A7%A3C%E8%A8%80%E8%AA%9E-%E5%85%A5%E9%96%80%E7%B7%A8-%E6%9F%B4%E7%94%B0%E6%9C%9B%E6%B4%8B/dp/4797327928


よろしくお願いします.

684 :デフォルトの名無しさん:2008/07/19(土) 22:17:23
>>677
ん?だから >>655 のリンク先をそのように解釈するのは、無理があるといっているのですが。
できないとはいいませんが。

685 :デフォルトの名無しさん:2008/07/19(土) 22:20:03
どうしてそのように決め付けられるのかな?

686 :デフォルトの名無しさん:2008/07/19(土) 22:21:06
>>683
問題文:「三角形に一点が内包される場合もある」?????
凹型の図形かどうかを判別する方法は存在するのでしょうか‥‥‥。

687 :デフォルトの名無しさん:2008/07/19(土) 22:25:46
>>682
>100点満点で50点取ったんで、二単位中一単位くださいって言ってるようなもの。
いっていませんし、いっているようなものと、といわれても困りますが。 >>682 に「部分単位」を認めよ、というような趣旨が書かれていますか?

688 :デフォルトの名無しさん:2008/07/19(土) 22:34:59
>>687
>>662
> 「2単位」のうち1単位分は自習分のカウントでしたっけ。


689 :683:2008/07/19(土) 22:39:12
>>686
そのような場合は一点を囲んでいる外側の三角形の面積を出せればよいと言われたのですが・・・
質問の答えになってないですかね??(汗

690 :デフォルトの名無しさん:2008/07/19(土) 22:46:38
>>689
最後の点が内側とは限らないのでは?

691 :683:2008/07/19(土) 22:59:33
>>690
そうなんです.とりあえず授業後に質問した際はサラっとこんな図を書かれました.
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7453.zip
そもそも数学の段階で4点から最大となる場合分けが思いつかないんですよね……

692 :デフォルトの名無しさん:2008/07/19(土) 23:07:26
偶然取った4点中3点の外側にある点がある場合でも、
4点全体が三角形を為す場合がある

従って外側にある==>四角形全体の面積を求めれば良い
という問題のヒント?は短絡

693 :デフォルトの名無しさん:2008/07/19(土) 23:08:11
凹四角形ならへこむ最後の一点を無視か

694 :デフォルトの名無しさん:2008/07/19(土) 23:13:51
[1] 授業単元: Cプログラミング演習
[2] 問題文
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7454.txt

[3] 環境:
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限: 7月22日
[5] その他の制限:なし。

   よろしくお願いします.

695 :デフォルトの名無しさん:2008/07/19(土) 23:24:34
>>694
20次元のなんちゃらと言うのは知らないが>>219じゃダメなのか?

696 :デフォルトの名無しさん:2008/07/19(土) 23:31:53
とりあえず方針だけ。

4点ABCDが凹多角形かを調べるには、
たとえばA点がBCDの内部にあるかどうかを判定する場合
三つの内積 BA・BC、CA・CD、DA・DB の正負が一致しているかを見る。 
一致していればAは内部にある。これをB,C,Dにも同様にやれば凹多角形か判定できるはず。

ヘロンの公式をコーディングする場合
sqrt((s*(s-a)*(s-b)*(s-c))をsqrt(2αβ+2βγ+2γα-α^2-β^2-γ^2)/4 (ただしα=a^2 β=b^2 γ=c^2)
とすれば αβγは普通にピタゴラスの定理で出るし
誤差とかも少ないかと



697 :デフォルトの名無しさん:2008/07/19(土) 23:46:51
>>696
それだとこの図のときチェック漏れがある
http://karinto2.mine.nu/ulink/down/1216478603.PNG
BA・BC<0
CA・CD>0
DA・DB>0

698 :デフォルトの名無しさん:2008/07/20(日) 00:21:21
>>696
あんまり難しいことわからないが、
1.4点のうち3点を選んで面積を求める。
2.1を全パターン試す
3.全パターンの面積の和が求める面積の2倍になる

間違ってる?

699 :>>406 です:2008/07/20(日) 00:26:24
すいません・・・
何だか、騒動を起こしてしまっているようで
本当に申し訳ありません。

あの、どなたかお願いできませんでしょうか?
どうか、宜しくお願いします。

700 :デフォルトの名無しさん:2008/07/20(日) 00:27:38
>>698
へこんでる分をたしちゃってるな

701 :デフォルトの名無しさん:2008/07/20(日) 00:29:26
あと30分でTopCoderも始まるし、
終わったら疲れて寝てしまうな。

702 :デフォルトの名無しさん:2008/07/20(日) 00:31:35
>>700
へこんでいたら3角形の面積求めればいいんでしょ?
問題ない気がするんだけど

703 :デフォルトの名無しさん:2008/07/20(日) 00:45:21
>>702
ああ、>>694見ると、「最後の」って言ってるのは質問者で、
与えられる順は関係無いのか...

704 :デフォルトの名無しさん:2008/07/20(日) 00:54:00
[1] 授業単元:C言語
[2] 問題文:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7455.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:7/21
[5] その他の制限:特になし

どこが間違ってるのかご指摘お願いします。

705 :683:2008/07/20(日) 01:04:07
>>700
それですね!
>>703
すみません図の説明が紛らわしかったですかね.例のつもりだったのですが(汗

あとはプログラムなのですが、座標を構造体にして3辺の長さを出すというのはなんとなくわかるのですが,
3辺の長さと面積を構造体として扱うというのがどうやるのかがわからなくて……どなたか例示していただけませんか??

すみませんド素人な内容でm(_ _;)m

706 :683:2008/07/20(日) 01:06:10
>>700じゃなくて
>>698でした.

707 :デフォルトの名無しさん:2008/07/20(日) 01:16:16
>>704
今は9を出力する前に改行している。
9を出力した後に改行すれば良いだけ。

708 :デフォルトの名無しさん:2008/07/20(日) 01:16:54
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分
>>383 07/18 06:30 static変数の抽出
>>406 07/19 23:59 シャノンファノ符号
>>414 07/20 --:-- 行数・ファイルコピー・実行するたびに+1 : >>415(1のみ), >>417,>>429(1と2) >>453(3)
>>440 07/19 --:-- ソーティング亜種 : >>452, >>481

709 :デフォルトの名無しさん:2008/07/20(日) 01:17:24
>>454 07/21 --:-- Σ(k^2) : >>459
>>460 07/21? --:-- 小町算 : >>461, >>478, >>535?(未確認)
>>466 07/21 --:-- tick tat toe : >>469
>>470 07/21 --:-- シードフィル(ってなんですか?): >>471??
>>476 07/23 24:00 偏微分方程式/ポテンシャル
>>489 07/20 --:-- マージソート
>>604 07/20 17:00 ファイルから数値を読み取って総和を計算/他 : >>628
>>646 07/22 --:-- 平方根 : >>679
>>665 07/23 --:-- ファイルの読み書きと表示
>>669 07/22 --:-- 大文字小文字・他

710 :デフォルトの名無しさん:2008/07/20(日) 01:17:58
>>683 07/20 23:59 ヘロンの公式・四角形の面積
>>694 07/22 --:-- = >>214 : >>219
>>704 07/21 --:-- 0から99までの100個の数値を縦横10個に並べて書き出す
遅くなりました。

711 :デフォルトの名無しさん:2008/07/20(日) 01:18:02
何言ってんだ、>>698じゃダメだぞ
大きな三角形二つを選ぶと、点abcdが以下のようにある場合、

a      b


   c  d

三角形abcとabdの面積の和が返るぞ
この場合は四角形abcdの面積が必要だろ?

あと、>>696も違うぞ
内部にあるか判定するのは内積じゃなくて外積だ

712 :683:2008/07/20(日) 01:24:15
>>711
いや,698さんはたぶん
(abc+bcd+cda+dab)/2
のことを言っているんだと思います.
これならば1点が内側にある際は三角形,外側にある場合は四角形の面積が出せるかと.

713 :デフォルトの名無しさん:2008/07/20(日) 01:26:46
>>711
??
三角形acdとbcdも求めなきゃ。
4点から3点取るわけだから、4つの3角形の面積の和が、
求める面積の和の2倍になるんだよ。

714 :704:2008/07/20(日) 01:33:42
>>707
ありがとうございます
・・・つまりどうすればいいのでしょうか?

715 :デフォルトの名無しさん:2008/07/20(日) 01:36:57
>>714
#include<stdio.h>
int main(void)
{
int i=0;
while(i<=99){
printf("%3d",i);
if( (i%10)==9 ) printf("\n");
i++;
}
return 0;
}


716 :デフォルトの名無しさん:2008/07/20(日) 01:43:12
>>714
>>715とこのコードどっちのほうが好き?
#include<stdio.h>
int main(void)
{
int i=0;
while(i<=99){
if( ((i+1)%10)==0 ) printf("¥n");
printf("%3d",i);
i++;
}
return 0;
}

717 :デフォルトの名無しさん:2008/07/20(日) 01:44:24
>>713
OK,読み間違えてた
ダイビング土下座しながら吊ってくる

718 :デフォルトの名無しさん:2008/07/20(日) 01:47:31
危うい発想だな

719 :704:2008/07/20(日) 01:49:59
>>715>>716
ありがとうございます。
参考になりました

720 :デフォルトの名無しさん:2008/07/20(日) 01:51:51
>>716
それじゃいじる前と変わらんだろ

721 :デフォルトの名無しさん:2008/07/20(日) 02:21:36
>>440
>>452を少しいじって
#include <stdio.h>
#include <stdlib.h>

int data [5] = {2,6,3,1,2};
int index[5] = {0,1,2,3,4};

int compfn(const void *_a, const void *_b)
{
return data[*((int *)_a)] - data[*((int *)_b)];
}

int main(){
int i;
qsort(index,5,sizeof(int),compfn);
printf("data[] = {");for(i=0;i<5;i++){ printf("%d ",data[i]); } printf("};\n");
printf("index[] = {"); for(i=0;i<5;i++){ printf("%d ",index[i]);} printf("};\n");
}


722 :デフォルトの名無しさん:2008/07/20(日) 02:55:06
>>720
これがC言語的正解
コードの挿入は良いが、順序入れ替えはタブー
#include<stdio.h>
int main(void)
{
int i=1;
printf("%3d",0);
while(i<=100){
if( ( i%10==0) )printf("¥n");
if(i<=99)printf("%3d",i);
i++;
}
return 0;
}

723 :デフォルトの名無しさん:2008/07/20(日) 03:16:24
>>489
void msort( int X[], int n, int Y[] ){
int n1 = n/2, n2 = n - n1;
if ( n == 1 ) {
Y[0] = X[0];return;
}
if ( n == 2 ) {
if ( X[0] > X[1] ) {
Y[1] = X[0];Y[0] = X[1];
} else {
Y[0] = X[0];Y[1] = X[1];
}
return;
}
msort( X, n1, Y );
msort( X + n1, n2, Y + n1 );
merge( Y, n1, Y + n1, n2, Y );
}
void merge( int Y1[], int n1, int Y2[], int n2, int Y[] ){
int i = j = 0;
int tmp[n1];
memcpy( tmp, Y1, n1 * sizeof ( int ) );
while ( i < n1 && j < n2 ) {
if ( tmp[i] <= Y2[j] ) {
Y[ i + j] = tmp[i];i++;
} else {
Y[i + j] = Y2[j];j++;
}
}
memcpy( Y + i + j, tmp + i, ( n1 - i ) * sizeof ( int ) );
}

724 :646:2008/07/20(日) 03:25:34
>>673
ありがとうございました。

>>679
long longでいけました。
ありがとうございました。

725 :デフォルトの名無しさん:2008/07/20(日) 03:39:58
>>406 ?
>注意2 符号化方式は添付の課題 参考資料を参照


726 :デフォルトの名無しさん:2008/07/20(日) 03:40:41
>>669
突っ込みどころ満載だけど。
#include <stdio.h>
int main() {
int b = 0;
int c = getc( stdin );
if ( '0' <= c && c <= '9' ) {
putc( c, stdout ); b++;
}
if ( b || ( 'A' <= c && c <= 'Z' ) ) {
putc( c, stdout ); b++;
}
if ( b || ( 'a' <= c && c <= 'z' ) ) {
putc( c, stdout );
}
return 0;
}
----
#include <stdio.h>
int main() {
int c = getc( stdin );
if ( '0' <= c && c <= '9' ) {
putc( c, stdout );
} else if ( 'A' <= c && c <= 'Z' ) {
putc( c - 'A' + 'a', stdout );
} else if ( 'a' <= c && c <= 'z' ) {
putc( c, stdout );
}
return 0;
}

727 :604:2008/07/20(日) 03:44:05
>>628
こちらでも正常に動きました。ありがとうございます。

728 :デフォルトの名無しさん:2008/07/20(日) 07:38:56
>>632
お前が変な奴だ

729 :デフォルトの名無しさん:2008/07/20(日) 08:02:31
>>632
鏡を見た?何が映ってた?まぁ、何が映っていようが、この世は所詮
金と権力が重要だから。政府与党の中核の方々や皇太子様を見てごらん。

730 :デフォルトの名無しさん:2008/07/20(日) 08:21:09
406 です
>>725
レスが遅くなり申し訳ございませんでした。
シャノン・ファノ符号形式です。
すいません。ご迷惑おかけします。
どうか、よろしくお願いします。

731 :デフォルトの名無しさん:2008/07/20(日) 08:36:18
>>714 遅くなったが、俺のを好きになれ、な?

#include<stdio.h>
int main(void) {
int i=0,ret=10;
while(i<=99){
printf("%3d",i);
if( i%ret==ret-1 ) printf("\n");
i++; }
return 0;
}

732 :デフォルトの名無しさん:2008/07/20(日) 08:44:09
>>681
バカって言う奴がバカなんだー ってじっちゃんが言ってた

733 :デフォルトの名無しさん:2008/07/20(日) 09:10:35
>>732
露出狂って迷惑だよな

734 :デフォルトの名無しさん:2008/07/20(日) 09:39:29
[1] 授業単元:プログラミングV
[2] 問題文:シードフィルをスタックを使って表しなさい
シードフィルについてhttp://www2.starcat.ne.jp/~fussy/algo/algo3-1.htm
[3] 環境
 [3.1] OS: Windowsxp
 [3.2] コンパイラ名とバージョン:VC 6.0
 [3.3] 言語:C
[4] 期限:7月22日朝8時まで

735 :デフォルトの名無しさん:2008/07/20(日) 09:50:21
>>734
入力も出力も明確じゃないんでやらねーよwww

736 :デフォルトの名無しさん:2008/07/20(日) 09:56:58
だから別にお前を指定して回答を依頼してるんじゃないから
自分がやるやらないの意思表示は要らないって言われてんだろ・・・
どこまで目立ちたがり屋なんだよ。回答しない奴の存在なんて
いちいちアピールせんでよろしい、大人しくしとれ、構ってちゃんの暇人。

737 :デフォルトの名無しさん:2008/07/20(日) 09:59:08
問題に不備があるならその指摘は良いとして、それ故に
自分はやりませんよなんて意思表示は確かに不要だ罠。

738 :デフォルトの名無しさん:2008/07/20(日) 10:01:18
>>735
ん?ファイルがUSBメモリにあるかどうかの判定ルーチンできた?

739 :デフォルトの名無しさん:2008/07/20(日) 10:01:41
ん?つまり>>737なんで問題なしってことだな。
問題として成立していない。

740 :デフォルトの名無しさん:2008/07/20(日) 10:05:56
〜に問題があるからぁ、私はそれは嫌です
あっそ、って言われるだろ。別にお前だけを相手に
何かをしているわけでもない人はいくらでもいるし。
しかし、自分の好みや主観とは別に、そこにある
何か問題点があるなら、客観的に誰でも納得するような
説明をしなきゃ、結局お前が単に問題視しているだけじゃん
ってなる罠。口出しするだけ、周りから変に注目されんぞ、
あっ、目立ちたがり屋の構ってちゃんじゃそれくらいやるか、
あの大阪府知事に噛み付いた女みたくw

741 :デフォルトの名無しさん:2008/07/20(日) 10:08:05
>>740
中身がないので3行でよろしく。

>>1より
・問題文は、出題されたまま全文を書いてください。
シードフィルをスタックを使って表しなさい、としかないですが本当にこれが問題文全文なんですかねーw

742 :デフォルトの名無しさん:2008/07/20(日) 10:55:57
皆、USBメモリにファイルがあるかないか判定できないから
やらないんだなw
サンプルプログラムが、正しい処理なのか、正しい処理だとして
それはスタックを使って行っているのか、スタックを使って
行っていないとすれば、これをスタックを使って行うように
書き換えられるか
こういうの、読み取れない?(俺はメンドイからやらんで
おまいらのコード読んでパクるだけだけどw)ちなみに
>>734の名誉の為にいっておくが、俺は>>734ではない。

743 :デフォルトの名無しさん:2008/07/20(日) 10:56:20
>>489
よかったですね。

744 :デフォルトの名無しさん:2008/07/20(日) 11:01:37
>>742
サンプルプログラムはスタックつかってるんだけどねw

USBメモリにファイルの件はしらんがなw

745 :デフォルトの名無しさん:2008/07/20(日) 11:11:51
>>744そりゃCの処理系出力コードでも今時スタック使ってないのは皆無だろ

746 :デフォルトの名無しさん:2008/07/20(日) 11:15:16
>>745
えーっと…… つっこんでほしいの?

747 :デフォルトの名無しさん:2008/07/20(日) 11:16:37
>>438
ありがとうございます!!
心から感謝します

748 :デフォルトの名無しさん:2008/07/20(日) 11:25:57
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7457.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:borland C++ Compiler 5.5
 [3.3] 言語:C言語
[4] 期限:月曜日まで
[5] その他の制限:ポインタまで
途中までの回答らしいですttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7456.txt
よろしくお願いします


749 :デフォルトの名無しさん:2008/07/20(日) 11:30:14
>>714 if(i%10==9)を、if(i%10==0)に変えれば直る。
後は最初の改行表示を消して、最後に改行表示を入れるだけ。
int main(void)
{
int i;
for(i=0; i<100; printf("%3d",i++))
if( i%10 == 0 )
if(i) printf("\n");
printf("\n");
}

750 :デフォルトの名無しさん:2008/07/20(日) 11:33:39
>>749 (・∀・)ニヤニヤ

751 :デフォルトの名無しさん:2008/07/20(日) 11:42:50
意味合いが違ってくる。次が10で割り切れる値だったら改行するのか
9の後に改行するのかでは。まぁ、結果が出てりゃそれで良いがね。

752 :デフォルトの名無しさん:2008/07/20(日) 11:44:31
>>715 乱暴な改造(元のコードに戻すことが危険)
>>716 改造に失敗
>>722 正しい修正(文字を削除するだけで元に戻せる)
>>749 車輪の再発明

753 :デフォルトの名無しさん:2008/07/20(日) 11:49:01
>>731


754 :デフォルトの名無しさん:2008/07/20(日) 12:01:45
>>731は論外として
>>722も正しい修正にはほど遠い。
#include<stdio.h>
int main(void){
int i=0;
while(i<=99){
if( (i!=1) && ((i-1)%10)==9 ) printf("¥n");// ' (i!=1) && (('と '-1)'を追加
printf("%3d",i);
i++;
}
printf("¥n");//この行全体を追加
return 0;
}
文字削除だけで元に戻せることが重要
こういう気の狂った世界があるのが現実

755 :デフォルトの名無しさん:2008/07/20(日) 12:06:52
>>754
お前基準がどうかと。論外の理由は?retの値を変えれば適当な場所で改行できるしw

756 :デフォルトの名無しさん:2008/07/20(日) 12:07:33
>>754 >>752
うるさい。素人は黙ってろ。構ってチャンのでしゃばり
お前の存在が論外

757 :デフォルトの名無しさん:2008/07/20(日) 12:08:46
>>754
>>731 の出来の良さに脱帽かw
分かりやすいな、ツンデレってのは。
可搬性を無視したコードこそ論外。

> 文字削除だけで元に戻せることが重要
意味不明。

> こういう気の狂った
お前の気が狂ってる

758 :デフォルトの名無しさん:2008/07/20(日) 12:09:23
>>756
素人wwww ガキの宿題に対して玄人とか素人とかありえんwww

759 :デフォルトの名無しさん:2008/07/20(日) 12:09:45
>>752
> 元に戻せる
こいつは何が言いたいんだ?戻すことに何か意味あるの?w

760 :デフォルトの名無しさん:2008/07/20(日) 12:11:31
>>752 で批判されなかった >>731 が一番出来が良いのか、なるほど。
後で指摘されて論外とか、自分が批判するをの見落としていたのを
逆手にとっても無駄だぞw

761 :デフォルトの名無しさん:2008/07/20(日) 12:39:42
>>752
追加箇所を削除して元に戻せるということが基準になることの重要性って何?
指定した場所で改行できるようにするのが重要だし、なんでお前基準が
正しいみたいなことになってるの?あんたどこかの教授か?
もしそうなら名乗ってくれ。わけの分からん小物の雑魚が偉そうに
変な評価をしてんじゃねーって、他人から不満を持たれて当然だろ。
逆に、どこかの講師や教員だとしたら、どんな指導してんだお前のところは?
って思われるがな。
なんだよ、元に戻せるって。元がおかしかったら、おかしいものに戻すことは
むしろ重要でも何でもなくなるがな。

762 :デフォルトの名無しさん:2008/07/20(日) 13:06:59
雑魚の教え

763 :デフォルトの名無しさん:2008/07/20(日) 14:35:46
「レポートとかネットでコピペすればいいじゃんw」学生に急増「ネットでコピペ病」
http://namidame.2ch.net/test/read.cgi/news/1216524927/4

4 名前: 益力多(東京都)[] 投稿日:2008/07/20(日) 12:37:01.49 ID:Hn+XOctkP ?PLT(12038)
「大事なのは、学生への教育」

モラル低下が指摘される中で、コピペ発見ソフトの開発者も現れた。

金沢工大知的財産科学研究センター長の杉光一成教授は、このソフトを開発中で、2008年2月に特許を申請した。
学生のレポートを翻訳ソフトの技術で文節や単語に分解し、ネット検索で類似した文章があれば、そのURLを表示する仕組みだ。
ソフトでは、学生間のコピペも検出できるという。ソフトウエア会社から09年中に市販する予定。0
6年に学生2人のレポートがブログからのコピペと分かり、それを防ごうと開発を思いついた。

「教育現場では、困っていると言いづらかったので、ニーズが顕在化していませんでした。
しかし、2ちゃんねるで、ソフト開発に対し『日本全体の学生を敵に回した』とスレッドが次々に立ったように、それだけコピペが蔓延しているということです」

発見ソフトでは、米国最大手のアイパラダイムス社が開発した「turn it in」が、08年秋にも日本語サービスを始めるとも報じられている。
蔓延するコピペに、発見ソフトは決定打になるのか。
杉光教授は、「少なくとも安直にコピーする人がいなくなるのでは。それだけでも進歩」と話す。
ただ、「大事なのは、学生への教育」という。

前出の江頭教授は、コピペ発覚からレポートを止め、研究発表や討論、試験などに切り替えた。
また、学生を図書館に連れて行って、参考資料の調べ方などを教えたという。
「学生も自分で考えるようになり、卒論を書く研究手法を確立できるようになりました」。

発見ソフトは、「使わないかもしれません」としながらも、「学生を教育する一つの方法だと思います」と理解を示す。
金沢工大の杉光教授は、「専門家ならソフトがなくても見破るべきというのは、見当外れ。
他人の言葉を持ってくることを正当化できるわけもなく、コピペは悪いと教え、
自分で考えるように指導することも必要でしょう」と話している。



764 :デフォルトの名無しさん:2008/07/20(日) 14:39:07
>>763は正に、学生に急増「ネットでコピペ病」

765 :デフォルトの名無しさん:2008/07/20(日) 14:52:12
モラルの低下は家庭環境から正すべき

766 :デフォルトの名無しさん:2008/07/20(日) 15:03:12
>>723
ありがとうございました

767 :デフォルトの名無しさん:2008/07/20(日) 15:42:01
[1] Cプログラミング
[2] 問題文:
2.以下の簡単版(nabea.c)を改良し、世界のナベアツプログラムを完成し、
ソースの下に40までの実行結果をキャプチャして貼り付けなさい。
/*世界のナベアツプログラム(nabea2.c)3の倍数か3が付くときアホになり、5の倍数のとき犬っぽくなる
ただし、簡単版(nabea.c)では3の倍数のときだけアホになる*/
[3] 環境
 [3.1] Windows
 [3.2] gcc
 [3.3] C
[4]9日
/*ここを考える*/と/*簡単版では不要な関数*/に入る関数をお願いします。

768 :デフォルトの名無しさん:2008/07/20(日) 15:44:18
>>767
問題文
#include <stdio.h>
#include <time.h>
void sleep( int millisec )
{
clock_t tick;
tick = (millisec * CLOCKS_PER_SEC) / 1000 + clock();
while( tick >= clock() );
}
int isAho( int n )
{
/* ここを考える */
}
int isInu( int n )
{
/* 簡単版では不要な関数 */
}
/*普通のとき   :「   ○○  」アホになるとき :「アホ!○○  」犬っぽくなるとき:「   ○○ 犬」
アホで犬のとき :「アホ!○○ 犬」簡単版では、普通とアホのみ実現する*/
int main(int argc, char* argv[])

769 :デフォルトの名無しさん:2008/07/20(日) 15:44:52
>>767
問題文の続き
{
int i, num;
printf("どこまで?");
scanf("%d", &num );
for( i = 1; i <= num; i++ )
{
sleep(1000);
if( isAho(i) )
printf("アホ!%3d  \n", i );
else
printf("   %3d  \n", i );
}
printf("おもろ〜い!\n");
return 0;
}
/* end of nabea.c */

770 :デフォルトの名無しさん:2008/07/20(日) 15:55:54
>>767
http://pc11.2ch.net/test/read.cgi/tech/1197620454/134


771 :デフォルトの名無しさん:2008/07/20(日) 15:58:28
[1] 授業単元: プログラミングT
[2] 問題文(含コード&リンク):
年と月と日を数値でキーボードから入力し、それが一年のうちの何日目か(例1月1日なら1日目、2月1日なら32日目)
  を計算するプログラムを作れ
  ユーザーから終了の意図を入力をするまで何度でも計算できるようにせよ
  終了の指示の仕方は計算後終了の意図をとい1なら続行0なら終了という形にせよ
  以下に示すユーザー定義関数を作成してしようすること、また閏年の判定をし、適切に処理すること
  ただし 入力された月日が不適切ならばその箇所、例えば1)13月、2)32日や2月30日、うるう年以外の
  2月29日などありえない月日の場合に1)なら月が2)なら日が間違っているということを指摘し再度入力を要求せよ
   最低限実装しなければならないユーザー定義関数
  閏年判定関数:年を引数として、閏年なら1、閏年でなければ0を戻り値として返す
  標準的な月の日数を返す関数:月を引数としてその月の最大日数を整数で返す
  ただし この関数内部では配列により各月の日数を保持しておくこと
  月日が適切かどうか判定する関数:月と日と閏年かどうかの3この入力から存在する月と日なら1
  存在しなければ1以外をかえす
  補足。閏年とは西暦年が4でわりきれる年のことだが例外があり400で割り切れる場合を除き
100で割り切れる場合は閏年ではない
2000年 4で割る○ 100で割る○ 400で割る○ うるう年○
2008年 4で割る○ 100で割る× 400で割る× うるう年○
2300年 4で割る○ 100で割る× 400で割る○ うるう年×
[3] 環境
 [3.1] OS: Windows xp 
[3.2] VC 6.0
 [3.3] 言語: C++
[4] 期限: 2008年7月21日15:00まで
[5] その他の制限: なるべくプログラミングTの内容でできる簡単なものでお願いします

772 :デフォルトの名無しさん:2008/07/20(日) 16:25:47
>>770
それやったの俺、パクるなYO!

773 :デフォルトの名無しさん:2008/07/20(日) 17:04:31
おい!今TBS見てたら
番組タイトルが「Cの世界」だったぞ!!!

774 :デフォルトの名無しさん:2008/07/20(日) 17:25:06
ぱくるなよは、誰に向けて?
少なくとも770はPAKUってないよ。

775 :デフォルトの名無しさん:2008/07/20(日) 17:26:21
>>774
ぷっ、意味不明、自意識過剰w
誰もお前に言ってねーよw

776 :デフォルトの名無しさん:2008/07/20(日) 17:33:09
>>771
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7459.cpp

777 :771:2008/07/20(日) 17:41:28
>>776
動作しました。ありがとうございます


778 :デフォルトの名無しさん:2008/07/20(日) 18:02:48
>>771
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7461.cpp

779 :デフォルトの名無しさん:2008/07/20(日) 18:03:40
>>777
あっ、最低限定義する関数が足りなくて、再度入力を促す部分が
不十分だったから書き直したが・・・遅かったか、すまそ。

780 :デフォルトの名無しさん:2008/07/20(日) 19:57:14
1] プログラミング演習
[2] 問題文:
実数を入力する。
その実数が整数値になるのに0.3以上±しなければいけない場合はnoを表示し
そうでないときはyesを表示するプログラムを作りなさい。

例えば55.6が入力されたときはno
20.1が入力されたときはyesである。

[3] 環境
 [3.1] Windows
 [3.2] VS2008
 [3.3] C
[4]明日

お願いします

781 :デフォルトの名無しさん:2008/07/20(日) 21:50:43
#include <stdio.h>
int main(){
double f;
int n;
scanf("%f",&f);
n=(int)f;
f=f-n;
if( f<0.3 || f>0.7 ) printf("yes\n");
else printf("no\n");
return 0;
}

782 :デフォルトの名無しさん:2008/07/20(日) 22:13:00
[1] 授業単元: プログラム1
[2] 問題文(含コード&リンク): ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7462.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC 6.0
 [3.3] 言語: C++
[4] 期限: 2008/7/22
[5] その他の制限:特に無し

783 :683:2008/07/20(日) 23:20:02
>>683です。
>>683-717あたりでちょくちょく流れができているのですが、どなたかどう記述すれば良いのかわかりませんか??(汗

784 :デフォルトの名無しさん:2008/07/20(日) 23:30:33
>>362
お願いします

785 :デフォルトの名無しさん:2008/07/20(日) 23:37:28
参照図が既にリンク切れ?

786 :デフォルトの名無しさん:2008/07/20(日) 23:38:08
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7439.zip
に画像はあります。すいません

787 :デフォルトの名無しさん:2008/07/20(日) 23:39:27
http://chiyo.sfc.keio.ac.jp/cgsoft/Release/Textbook/scanline02.html
このアプレットも参考になるかとおもいます

788 :デフォルトの名無しさん:2008/07/20(日) 23:42:32
[1] 授業単元:
[2] 問題文(含コード&リンク):
       http://apple.ee.uec.ac.jp/PROG/text/kadai/kadai10.c     
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: Microsoft Visual C++ 2008 Express Edition
 [3.3] 言語: C
[4] 期限: 2008/08/01



bufferを使うのかな・・・?お願いします。

789 :デフォルトの名無しさん:2008/07/21(月) 01:07:53
>>461
>>478
ありがとうございます
助かりました
>>535
すいません過去スレ見れません
わざわざありがとうございます

790 :デフォルトの名無しさん:2008/07/21(月) 01:20:53
[1] 授業単元:プログラミング演習
[2] 問題文:
英文字の複数行から構成されるテキストファイルがあり、このファイルの中の行を、含まれる文字数が少ない順に上からソートした後、別の名前のファイルで出力するプログラムを作れ。
ただし、元のテキストファイルと出力先のファイルの名前はいずれもコマンドラインで指定するようにすること。
すなわち、このプログラムの実行形式をsortとし、元のテキストファイルをfile1.txt、出力後のテキストファイルをfile2.txtとするとき、コマンドプロンプトに続いて、
  >sort file1.txt file2.txt
とすることで実行する。

[3] 環境
 [3.1] Windouws
 [3.2] gcc
 [3.3] C
[4] 期限: 7月23日


791 :デフォルトの名無しさん:2008/07/21(月) 01:24:17
[1] 授業単元:
[2] 問題文(含コード&リンク):

数値計算についての質問です。

ttp://www.asahi-net.or.jp/~UC3K-YMD/Lesson/Section03/section03_09.html
こちらのページの真ん中辺りを参考にしてベキ乗法を用いての
最大固有値を求めるプログラムをcで書いたのですが期待通りの
固有値が出てきません。
間違っている箇所の指摘をお願いします。
ちなみにこの行列Aの最大固有値は2です。
以下そのプログラムです。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7463.c

[3] 環境: Linux
 [3.2] コンパイラ名とバージョン: gcc 4.0
 [3.3] 言語: C
[4] 期限: 7/21 24:00

792 : ◆x3VEvuLp2I :2008/07/21(月) 01:24:44
よろしくお願いします。

[1] 授業単元:C言語入門
[2] 問題文:電卓プログラムを作成してください。
演算子は*/+-で入力してもらいましょう。入力は整数のみとして、
演算結果の小数点は切り捨ててください。整数型はintで宣言を行い、
入力時、演算後のオーバーフローは考慮しなくて良いこととします。
仕様は以下の例題から考察してください。

例)
整数入力…2
演算子入力…1
1は入力エラー
演算子入力…*
整数入力…5
処理結果…10(2×5)
演算子入力…/
整数入力…2
処理結果…5(10÷2)
演算子入力…E
終了します

[3] 環境
[3.1] OS: Windowsxp
[3.2] コンパイラ名とバージョン:VC 6.0
[3.3] 言語:C
[4] 期限:7月22日まで
[5] 制限:標準関数は使用しない

793 :777:2008/07/21(月) 02:06:23
>>779
いま確認させてもらいました。後者のほうを使用させていただきます
ありがとうございました

794 :774:2008/07/21(月) 02:43:57
>>767
int isAho( int n )
{
  /* ここを考える */
  return (n%3 == 0);
}
int isInu( int n )
{
  /* 簡単版では不要な関数 */
  return (n%5 == 0);
}

795 :デフォルトの名無しさん:2008/07/21(月) 03:04:14
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分
>>383 07/18 06:30 static変数の抽出
>>406 07/19 23:59 シャノンファノ符号
>>440 07/19 --:-- ソーティング亜種 : >>452, >>481, >>721
>>476 07/23 24:00 偏微分方程式/ポテンシャル

796 :デフォルトの名無しさん:2008/07/21(月) 03:04:45
>>489 07/20 --:-- マージソート : >>723
>>665 07/23 --:-- ファイルの読み書きと表示
>>669 07/22 --:-- 大文字小文字・他 : >>726
>>683 07/20 23:59 ヘロンの公式・四角形の面積
>>704 07/21 --:-- 0から99までの100個の数値を縦横10個に並べて書き出す >>715, >>716, >>722, >>731, >>749, >>754
>>734 07/22 08:00 描画/シードフィル
>>748 07/21 --:-- DB
>>767 --/-- --:-- foobar : >>770, >>794
>>771 07/21 15:00 日数計算 : >>778
>>780 07/21 --:-- 丸め判定 : >>781

797 :デフォルトの名無しさん:2008/07/21(月) 03:05:15
>>782 07/22 --:-- ファイルロック
>>788 08/01? --:-- bmp形式/前景画像と背景画像を ratio : 1-ratio で合成する
>>790 07/23 --:-- このファイルの中の行を、含まれる文字数が少ない順に上からソートした後、別の名前のファイルで出力
>>791 07/21 24:00 固有値・固有ベクトル
>>792 07/22 --:-- 電卓

798 :デフォルトの名無しさん:2008/07/21(月) 06:01:45
>>791
授業単元(専門/上級)、トリップ
C言語的には未初期化自動変数は内容が不定という感想だけ

799 :デフォルトの名無しさん:2008/07/21(月) 06:20:47
#include <stdio.h>
int main(){
int i, n;
char c;

while(1){
 printf("整数入力 ");
 scanf("%d", &i);
 printf("演算子入力 ");
 scanf("%c", &c);
 if(c=='E') return 0;
 printf("整数入力 ");
 scanf("%d", &n);

switch(c){
case '*':
 printf("%d(%d×%d)\n", i*n, i, n); break;
case '/':
 printf("%d(%d÷%d)\n", i/n, i, n); break;
case '+':
 printf("%d(%d+%d)\n", i+n, i, n); break;
case '-':
 printf("%d(%d-%d)\n", i-n, i, n); break;
default:
 printf("入力エラー\n");
}
}
}

800 :デフォルトの名無しさん:2008/07/21(月) 06:26:17
>>799
ちょっと違う。

801 :デフォルトの名無しさん:2008/07/21(月) 06:52:44
>>782

#include <stdio.h>
#include <windows.h>

int main()
{
    FILE *fp;
    
    fp = fopen("_LOCK", "r");
    if(fp == NULL)
    {
        fp = fopen("_LOCK", "w");
        fwrite("LOCK FILE", 9, 1, fp);
        fclose(fp);
        
        Sleep(30*1000);
        remove("_LOCK");
        printf("終了しますた。");
    }
    else
    {
        printf("ロックファイルがあります。");
        fclose(fp);
    }
    
    return 0;
}

802 :デフォルトの名無しさん:2008/07/21(月) 07:17:01
>>801
race condition

803 :デフォルトの名無しさん:2008/07/21(月) 09:21:46
っつかさ、何で俺ら現代に生きてるん?何で俺ら、ここで
単位取得がやばい奴らの手助けをしてるん?まぁ、中には
どんな課題が出て、どんな回答が得られるか楽しみにしている人も
おるんやろうけど。何で自分が自分って、何で自分がこの世に存在しているって
何でこの世の中が存在しているって気づいて、知ることが出来るん?
人の脳ほど分からないものはない。数値計算よりもある意味無限の可能性を秘めている。
0^0(0の0乗)が何なのか、過去にこのスレで議論したよりも奥深いなぞが・・・・

804 :デフォルトの名無しさん:2008/07/21(月) 09:26:29
「1] 授業単元: プログラミン
「2」含コード&リンク): ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7465.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC 6.0
 [3.3] 言語: C++
[4] 期限: 2008/7/22
[5] その他の制限:行ごとに入力できればループで書けるんですけど
そのような入力方法が検討つかないのです、ご教授お願いします。

805 :デフォルトの名無しさん:2008/07/21(月) 09:40:46
>>804
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7466.txt

806 :デフォルトの名無しさん:2008/07/21(月) 09:41:53
>>804
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7467.txt

807 :デフォルトの名無しさん:2008/07/21(月) 10:17:28
>>804
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7468.txt

808 :デフォルトの名無しさん:2008/07/21(月) 11:06:29
[1]C言語
[2]
int型ではaをbで割った余りはa % bで求めることできるが,double型の場合は,剰余を求める演算子%が使えない。
そこで,double型の数値を2つ受け取り割り算を実行して商と余りを1度に計算する関数を1つ作成しなさい。
ただし商は整数とし,余りの絶対値は割る数の絶対値を超えないものとする。
この関数をテストできるよう数値の入力と計算結果を画面に出力する
main関数も作成すること。
【実行例】
input a: 12.3
input b: 4.5
12.3000 ÷ 4.5000 = 2 あまり 3.3000
[3]環境
  OS:windows
 言語:C言語
[4]2008/07/24
よろしくお願いします

809 :デフォルトの名無しさん:2008/07/21(月) 11:41:49
>>798
d
助かりました

810 :デフォルトの名無しさん:2008/07/21(月) 11:54:01
>>808
#include <stdio.h>
#include <math.h>

void
xx(double a, double b, double *q, double *r)
{
*r = fmod(a, b);
*q = (a - *r) / b;
}

int
main()
{
double a, b, q, r;
scanf("%lf", &a);
scanf("%lf", &b);
xx(a, b, &q, &r);
printf("%f / %f = %0.0f ... %f\n", a, b, q, r);
return 0;
}


811 :811 ◆HC9IbFdEiw :2008/07/21(月) 12:15:22
>>804

812 :811 ◆HC9IbFdEiw :2008/07/21(月) 12:19:13
誤爆った。すまんこ

813 :デフォルトの名無しさん:2008/07/21(月) 12:38:01
>>810ありがとうございました

814 :デフォルトの名無しさん:2008/07/21(月) 12:38:16
>>804
バグ入ってると思うが直して
(他の回答者へクイズ:バグはどこか?)
#include <stdio.h>
#include <string.h>
int main(void){
char *ps,s[1024];
FILE *f;
int count=1;
char last='¥n';
f=fopen("fwrite.cpp","r");
if(f){
for(;;){
ps=fgets(s,1024,f);
if(ps==NULL)break;
if(ps[0]==0)continue;
if(last=='¥n')printf("%03d:",count++);
printf("%s",ps);
last=ps[strlen(ps)-1];
}
fclose(f);
}else fprintf(stderr,"ファイルが開けなかった¥n");
printf("¥n");
return 0;
}


815 :デフォルトの名無しさん:2008/07/21(月) 13:00:48
Cの配列の宿題です。

http://www.bohyoh.com/Books/TokinagaraC01/RSA01chap05.pdf

これの答えが最初から分かりません…。

お願いします。

816 :デフォルトの名無しさん:2008/07/21(月) 13:06:03
>>815
コンマ演算子って知ってるかい?

817 :デフォルトの名無しさん:2008/07/21(月) 13:09:50
コンマ演算子は分かりません。習っていないと思われます。

818 :デフォルトの名無しさん:2008/07/21(月) 13:10:58
じゃあ、(1)からして解けないね。

819 :デフォルトの名無しさん:2008/07/21(月) 13:11:57
(1)の答えは何なんですか?

820 :デフォルトの名無しさん:2008/07/21(月) 13:12:29
6だよ。

821 :デフォルトの名無しさん:2008/07/21(月) 13:12:48
なぜ6になるんですか?

822 :デフォルトの名無しさん:2008/07/21(月) 13:45:10
Cには文字列という型は無いんですよね

823 :デフォルトの名無しさん:2008/07/21(月) 13:50:49
特に必要がないからね。

824 :デフォルトの名無しさん:2008/07/21(月) 13:56:48
いま、c言語でブロック崩しを作っているのですがブロックのあるなしを配列の0か1で表して
あるならブロックを出力させようと思うのですがうまくいきません。
出力にはopenGLを使うつもりです。ブロック崩しのソースを
分かりやすく解説してあるホームページがあったら教えてください

825 :デフォルトの名無しさん:2008/07/21(月) 14:07:12
>>1を見てませんでした!
出直してきます

826 :デフォルトの名無しさん:2008/07/21(月) 14:42:24
1回でprintfせず、漢字の途中でprintfし、残りをprintfした場合、正しく表示される保証が無い処理系は
昔のホスト言語がCじゃない環境ではよくありましたし、今でもそうかもしれません。
printfがその特性上頻々とバッファをフラッシュすることが要求された仕様が原因でした。(以上ちら裏)

827 :>>406 です:2008/07/21(月) 16:03:27
すいません。
どなたか、お願いします。
本当に、困っています。
どうか、宜しくお願いします。

828 :デフォルトの名無しさん:2008/07/21(月) 16:14:44
>>827
MacOSXのプレビューでみるとクラッシュするんだけど、それでどうやって手伝えっていうの?

829 :デフォルトの名無しさん:2008/07/21(月) 16:23:40
>>406
[1]C言語上級(25年位前は修士〜博士論文クラスの問題)
[2]圧縮プログラムの作成
☆ファイルの中の特定の文字をスキップして読み込み、符号化したものを出力(シャノン符号?)
☆出現文字頻度表も出力
☆ビットストリーム出力必要(暗黙のうちに要求されている?)
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C C++
[4] 期限: 7/19 ?

でおk?

830 :デフォルトの名無しさん:2008/07/21(月) 16:25:20
課題: テキストファイルの圧縮/解凍プログラムの作成
----------------------------------------------------
  指定されたテキストファイルを指定の符号化により圧縮する、また、圧縮されたテキストファイルの
  先頭に付加されている符号化表をベースにして解凍を行い もとのテキストファイルを再生する。
  なお、Cプログラミング環境はC教材の Borland C++Compiler 5.5 をダウンロードして使用する。


注意1 ファイル名のxxxxは任意、拡張子は txt、enc とする。
注意2 符号化方式は添付の課題 参考資料を参照
注意3 符号化の対象となる記号は 0h00 〜 0h7F の JIS 7bit code とする。
    もし、原本テキストファイルに 0h80 〜 0hFF のcode が存在した場合は破棄する事
留意1 0h00 〜 0h7F の記号の出現度数表は、大きい順序にソートし、オプション指定により 印刷可能とする事
    なお、出現度数表が0回の記号は表に印字する、しないのオプションも指定可能とする事
    (機能検証の為の配慮)
留意2 検証データ(テキストファイル)としてどういうモノ(テキストパターン)を用意すればよいか考えよ。
   (短いテキスト〜長いテキスト)x(小種文字だけのテキスト〜多種文字を含むテキスト)x(発生頻度のバラツキ)
留意3 機能を実現する処理のコーディングだけでなく、プログラムの正しさを証明する(確認する)ためのコーディング
    の配慮も必要である。もし、プログラムが正しく動作しない場合の手掛かりを掴む仕掛けは配慮する。
留意4 fgets/fputs、fread/fwrite 等 ファイルアクセス関数(C標準関数)の違いについて確認する事

831 :デフォルトの名無しさん:2008/07/21(月) 16:26:53
課題 参考資料 : 符号化アルゴリズム(shannon-fano encode)
------------------------------------------------------------
1.指定された記号リストについて、それに対応した出現度数リストを作成する。
2.出現度数に従って記号リストをソートする、最頻出の記号をリストのトップに来るようソートする。
3.リストを2分割する、この時、上半分の記号sの出現度数と、下半分の記号sの出現度数の合計の
  差が出来る限り小さくなるようにする。
4.リストの上半分を二進数の「0」に割当て、下半分を二進数の「1」に割当てる。これは、リストの上半分の
  記号に対する符号は「0」から始まり、下半分については「1」から始まることを意味する。
5.再帰的に同じ手続きを、二つに分けたリストのそれぞれに適用し、各符号が木の葉(1個の記号)になって
  しまうまでリストを再分解し、ビットを付け加えてゆく。


  注意 課題では、記号はASCIIコード(JIS7単位コード)の世界に限定する。

832 :デフォルトの名無しさん:2008/07/21(月) 16:29:54
>>805-807
ありがとうございます

833 :名無し:2008/07/21(月) 16:34:59
[1] 授業単元:システムソフトウェア
[2] 問題文(含コード&リンク):
/拡張した生産者と消費者の問題を実装
生産者、消費者がそれぞれ二人ずつ存在
生産者は新たに英小文字のみ格納する関数producer_Sを作成し、producer_S_threadとして動作
消費者は、関数consumerを使ってもよい
/バッファの長さをN
/クリティカルセクション
生産者、消費者は常に1つのスレッドしかクリティカルセクションに進入できない(mutex)
生産者間、消費者間での相互排除(mutex)も必要

ソース http://www.cc.kyoto-su.ac.jp/~naohaya/lectures/syssoft08/producer_consumer.c

[3] 環境
 [3.1] OS: Linux
 [3.2] gcc
 [3.3] 言語: C
[4] 期限: ([2008年7月22日17:30まで]
[5] その他の制限: 特にないと思います。


834 :デフォルトの名無しさん:2008/07/21(月) 16:38:20
>>829
恐らくデコーダーのほうも、暗黙のうちに作成を要求されているのではないかと
思われ。でなければ検証など殆ど不能じゃないかと。
自分で符号化した奴と突き合わせた検証方法じゃ、はっきしいって、あと一週間たっても
終わらないべ。あきらめるのが無難かと...

835 :デフォルトの名無しさん:2008/07/21(月) 16:44:28
おっと、実際解凍も要求されてたみたいねw。てっきり圧縮だけかと思ったけど.

836 :デフォルトの名無しさん:2008/07/21(月) 16:50:47
>>814 何、クイズしてるんですか。こたえはファイル名がこてい?

837 :>>406 です:2008/07/21(月) 16:53:19
>>829
はい、その通りです。
わかり難くて、すいません。

>>830
おしゃる通り、エンコーダーとデコーダーです。
やはり諦めるしかないのでしょうか・・・
提出期限は、実は8月5日と迫ってまして・・・
作成頂いたプログラムを、自分で理解したうえで
提出しなければと思い期間を設けてました。

無理を承知でなんとかお願いできませんでしょうか?
どうか宜しくお願いします。
勝手で本当に、申し訳ありません。


838 :デフォルトの名無しさん:2008/07/21(月) 17:11:06
>>837
じゃまだぜんぜん時間あるじゃん
あと一週間後に再請求して回答が無かったら諦めるのが吉かと...

839 :>>406 です:2008/07/21(月) 17:31:07
>>838
あまり、自分が頭良くないの分かってますので
理解に時間かかりそうだと思ってます。
しかし、おっしゃる通り多少時間はありますので
どなたかに作成して頂けることを願って待ってみます。

すいません。駄文失礼しました。

840 :デフォルトの名無しさん:2008/07/21(月) 17:36:12
>>791
xとvが逆になってるよ。
それを正しく直してもまだ固有値が3になるから
どっか間違っているみたい。

841 :デフォルトの名無しさん:2008/07/21(月) 18:00:52
>>839
課題の前提として、Huffman符号化の実装が与えられてるんじゃないの?
そうであれば、ツリーの作り方を変更するだけでは?
あと、25年前と言えばC++が登場した頃で、シャノン符号化が修士クラスの課題にはとてもならない・・・

842 :デフォルトの名無しさん:2008/07/21(月) 18:10:57
>>839
C++とC、どっちでもいいの?

843 :デフォルトの名無しさん:2008/07/21(月) 18:12:00
>>841
お前基準が当てにならないって何度言われたら気が済むんだ?
お前が決めているのか、そういうのを?自分が出来る出来ないとか
自分が思う、考える範囲内で物を言うから周りから知ったかっていわれるんだよw
大学に入学したことすらないだろ、お前。だからそうやって何か理由をつけて
見下そうとする態度をとるんだよな。お前がその課題を解く能力が無い以上
何言っても説得力なし。出来てもお前が何者か明かさない以上誰にも認めてもらえない。

844 :デフォルトの名無しさん:2008/07/21(月) 18:13:11
>>841
> シャノン符号化が修士クラスの課題にはとてもならない・・・
根拠は?25年前に大学に通っていた人ですか?ってことは今40代半ば?

845 :デフォルトの名無しさん:2008/07/21(月) 18:20:29
>>844
25年前に大学に通ってなくても、分かるよ。
60年代でなければ学部生の訓練用の課題だろ。

846 :デフォルトの名無しさん:2008/07/21(月) 18:21:37
>>843
じゃあ、オマエが書いてやれよ

847 :デフォルトの名無しさん:2008/07/21(月) 18:22:03
>>841
まずお前が自分の知識、能力を用いて解いてからモノを言えよ。
でなきゃ、お前の思い込みを述べたに過ぎないから。
しかし、事実関係としてそうであれば、お前が知らずに調べずに
勝手なことを言ったに過ぎない。

848 :デフォルトの名無しさん:2008/07/21(月) 18:26:35
>>847
なにが不満なのか知らないが、オレを煽らなくても、オマエが自分で書いてやればいいだろ?

849 :デフォルトの名無しさん:2008/07/21(月) 18:32:23
>>841
> 25年前と言えばC++が登場した頃
だから何?こういう奴ってさぁ、直接関係無いのに
何かと自分の持っている知識をひけらかそうとするよな。
性格がバレバレ。誰もそんなこと聞いてないって言われるタイプ。
要するに、自分が知っていることをやたらと言葉に出して、
さも知的に見せようとするタイプ。

850 :デフォルトの名無しさん:2008/07/21(月) 18:33:45
>>849
> > 25年前と言えばC++が登場した頃
> だから何?こういう奴ってさぁ、直接関係無いのに
ここは、C,C++スレだろ。共通の時代認識の尺度じゃないか?

851 :デフォルトの名無しさん:2008/07/21(月) 19:19:52
>>830
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7469.txt

852 :>>406 >>839:2008/07/21(月) 20:19:16
>>841
すいません。ハフマン符号は、多分このあとに出される課題と思われます。
そう言ってました・・・。
開発された年度の順序がどうとかで・・・

>>842
C++の課題です。

すいません。
本当にお騒がせしてしまって申し訳ありません。
どなたか、どうか宜しくお願いします。

853 :デフォルトの名無しさん:2008/07/21(月) 21:01:55
>>852
算術圧縮だねこれ

854 :628:2008/07/21(月) 21:06:03
>>830-831 って、>>406 と同じですか?
それならば、私が今取り組んでいます。
なにせ、このスレで最低最悪とこき下ろしてしまった以上、やらなければなりますまい。
取り掛かる前にある程度予想はしておりましたが、やはり実装には非常に時間がかかっています。まだゴールも見えない段階です。半ば絶望しています。
もうあと1週間おまちいただけないでしょうか。

855 :デフォルトの名無しさん:2008/07/21(月) 21:07:47
>>852
てか>>851のやつじゃだめなん?

これでエンコード結果をstdoutじゃなく別ファイルに書き込むようにして
デコード結果をputcで書き込むように改良すればいいんじゃね?

圧縮ファイルに書き込んだ符号化表部に
余分な出現度数が0のやつも書き込んでるから
圧縮前のファイルが極端に短いと逆にファイルが大きくなっちゃう気がするけど
解答として十分なコードだと思う。

856 :デフォルトの名無しさん:2008/07/21(月) 21:08:44
>>854
考え方はよく似ている。
出現確率の高い文字により短いビット列を割り当てるという
点では同じ
しかし符号の作り方が少し違うような

857 :デフォルトの名無しさん:2008/07/21(月) 21:10:05
>>856
今はシャノンファノでやっていますが、>>830 はハフマンですかね?

858 :デフォルトの名無しさん:2008/07/21(月) 21:12:51
>>857
いや>>830にはどういう形式で圧縮するかまで考えろと書いてある。
だからハフマンとは限らない。逆に言えばハフマンでもシャノン・ファノ
でも算術圧縮でも何でも良い。

859 :デフォルトの名無しさん:2008/07/21(月) 21:15:56
>>858
>>831 でシャノンファノの指定していますから >>406 と同じではないかと。とにかくこれで進めていきます。
一週間お待ちください> >>406, >>830

860 :デフォルトの名無しさん:2008/07/21(月) 21:18:12
了解。C++ならstd::mapを使えば簡単に作れるような希ガス

861 :デフォルトの名無しさん:2008/07/21(月) 21:18:37
どうせそれに関する資料を見て パクる んだろw

862 :デフォルトの名無しさん:2008/07/21(月) 21:19:20
>>855
>>851は、bit単位で読み書きする世に修正する必要あり。

863 :デフォルトの名無しさん:2008/07/21(月) 21:20:35
[1] 授業単元: プログラミング入門
[2] 問題文(含コード&リンク): http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7470.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 7月23日12:00まで
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

よろしくお願いします

864 :デフォルトの名無しさん:2008/07/21(月) 21:21:28
>>862
ああ、言っちゃダメだったのに・・・

865 :デフォルトの名無しさん:2008/07/21(月) 21:22:06
>>861
参考文献をあげておきます。
文書データ圧縮アルゴリズム入門/植松友彦/CQ出版株式会社 1994
ハフマン符号についてはソースが掲載されていましたが、シャノンファイについてはありません。

866 :デフォルトの名無しさん:2008/07/21(月) 21:23:03
何これ
リレーショナルデータベースでも自前で作れっていうのか

867 :デフォルトの名無しさん:2008/07/21(月) 21:26:49
>>863
問1
せめて分散、できれば分布が判らなければ解なし。

868 :デフォルトの名無しさん:2008/07/21(月) 21:28:25
>>867
答えはP2Pで共有だ!

869 :デフォルトの名無しさん:2008/07/21(月) 21:28:59
可愛がってあげてください

870 :855:2008/07/21(月) 21:29:19
>>862
あぁ、ガチで気づかんかったorz

871 :デフォルトの名無しさん:2008/07/21(月) 21:52:44
>>863
ネタ回答でもしておくか。

問1 サイズが一定でなく、その平均が100バイトであるレコードからなるデータがある。
このとき以下の件数を管理するための適切な方法を述べよ。
(1) 200,000件
(2) 500,000,000件
(3) 10,000,000,000件

(1) オンメモリでOK。データは配列で操作し、構造体のCRCコードをハッシュ値として使い探索することを前提とする。
100byte+管理するための領域を加えて0.2KBと見積もる。
200k件×0.2KB=40MB。

(2) 1ファイルに対するディスク上の最小サイズであるクラスタサイズを
4KBと仮定すると、平均40レコード格納できるが、実際には長い・短いがあるため
余裕を見て20レコードまでとする。
500M件/20レコード×4KB = 100GB なのでハードディスクで格納できる。

(3)既に(2)で1台のPCが管理できるれコード数は500M件と分かっているため、
このレコード数を管理するためには最低20台が必要である。

ただし、この場合複数台のPCのどれもが故障してはいけない状態となるため、
ミラーリングなどを施したりバックアップを容易にとれる構成としなければならない。

872 : :2008/07/22(火) 00:26:02
[1] 授業単元:C言語実習
[2] 問題文(含コード&リンク):http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7471.txt
[3] 環境
 [3.1] OS:Windows vista
 [3.2] コンパイラ名とバージョン:bcc1.2.21
 [3.3] 言語: c
[4] 期限: 7月23日まで
[5] その他の制限:テキストが手元にないので何とも言えないのですが、自分が聞いたことがないライブラリを使用していた場合別のライブラリで作り直してくれれば助かるのですが・・・。

873 :デフォルトの名無しさん:2008/07/22(火) 00:55:48
>>872
chart型は聞いたことがありません。別の型にしてもらえれば助けるのですが・・・。

874 :デフォルトの名無しさん:2008/07/22(火) 01:09:54
[1]C
[2]http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7472.txt
[3]LINUX
C
[4]今週の木曜日
[5]以下を使用せよ。下記の所をコピペして使ってください。
よろしくお願いします。

875 :デフォルトの名無しさん:2008/07/22(火) 01:10:23
>>872
この課題の内容をやるだけなら、一行ずつ読み込んでって
最初のスペースまでの文字列を名前として保存しておいて
入力された文字列と比較ってやればできるんだけど
この商品データを格納できる構造体を作れとか、商品データはリスト構造で管理しろとか
そんな指定があっても良さそうなもんだけどな

876 :デフォルトの名無しさん:2008/07/22(火) 02:02:14
>>874
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7473.txt
最低限のやつ、誰かがもっといいコード書いてくれると思うけど

877 :デフォルトの名無しさん:2008/07/22(火) 03:16:17
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分
>>383 07/18 06:30 static変数の抽出
>>406 07/19 23:59 シャノンファノ符号 : >>851?
>>476 07/23 24:00 偏微分方程式/ポテンシャル
>>665 07/23 --:-- ファイルの読み書きと表示

878 :デフォルトの名無しさん:2008/07/22(火) 03:16:47
>>683 07/20 23:59 ヘロンの公式・四角形の面積
>>734 07/22 08:00 描画/シードフィル
>>748 07/21 --:-- DB
>>782 07/22 --:-- ファイルロック : >>801?
>>788 08/01? --:-- bmp形式/前景画像と背景画像を ratio : 1-ratio で合成する
>>790 07/23 --:-- このファイルの中の行を、含まれる文字数が少ない順に上からソートした後、別の名前のファイルで出力
>>791 07/21 24:00 固有値・固有ベクトル : >>798(ヒント)
>>792 07/22 --:-- 電卓 : >>799?
>>804 07/22 --:-- 行番号付出力 : >>806, >>807, >>814?
>>808 07/24 --:-- 実数÷実数=正数, あまり実数 : >>810

879 :デフォルトの名無しさん:2008/07/22(火) 03:17:18
>>833 07/22 17:30 生産者/消費者シミュレーション?
>>863 07/23 12:00 DB・リスト処理 : >>871(問1)
>>872 07/23 --:-- データ抽出?
>>874 07/24 --:-- シーザー暗号 : >>876

880 :デフォルトの名無しさん:2008/07/22(火) 04:01:15
>>308
返事遅くなりました
ありがとうございました

期限が明日の13時まで伸びました
どなたか二つ目お願いします

881 :デフォルトの名無しさん:2008/07/22(火) 05:40:53
>>873
慌てることではない、typedef chart型を定義してやれば良いじょのいこ?


882 :デフォルトの名無しさん:2008/07/22(火) 05:48:20
[1] 授業単元: C言語による表と探索
[2] 問題文(含コード&リンク):
問題文:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7475.txt
表の操作にかかる時間を測定する方法は、↓のmain関数で記述してある方法です。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7474.txt
こちらは与えられたmain関数に自分で作ってみた表操作関数を加えたものです。
コンパイルはできたのですが、、int型の数字が1行に1つずつN(<100万)個分書いてある
ファイルを入力として実行しようとすると、セグメントエラーが起きてしまいます。
new_Tableの後にprint文を挿入したところ印字されてからセグメントエラーとなったので、
恐らくadd_item内でエラーが起きているのだと思います。

[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 水曜中
[5] その他の制限:
main関数や関数の概要はなるべくこのままでお願いします。
セグメントエラーが起きているであろう箇所とどう修正すればできそうかを教えてください。

883 :デフォルトの名無しさん:2008/07/22(火) 05:56:54
>>881
その問題は解決するとして、char型で文字列を保持できるだろうか?

884 :デフォルトの名無しさん:2008/07/22(火) 06:12:39
>>788
単純な回答はこれ。
int idx = y*width+x;
Rbuffer2[idx] = (BYTE)(Rbuffer_f[idx] * ratio + Rbuffer_b[idx] * (1.0 - ratio) );
Gbuffer2[idx] = (BYTE)(Gbuffer_f[idx] * ratio + Gbuffer_b[idx] * (1.0 - ratio) );
Bbuffer2[idx] = (BYTE)(Bbuffer_f[idx] * ratio + Bbuffer_b[idx] * (1.0 - ratio) );

ratioをかえながらやるには
int i; char filename[2048]; を変数宣言に追加して

for (i=0;i<=20;i++){
ratio = ((double)i / 20.0);
sprintf(filename,"result_%02d.bmp",i); // printfの出力結果をchar配列に保存する命令
画像処理
ファイル保存(filename);
}

"BMP、JPGファイルからAVI作成"でぐぐればD&Dで変換できるツールがでてくる。

じゃあの

885 :デフォルトの名無しさん:2008/07/22(火) 06:13:36
>>882
データうpってくれ。

886 :デフォルトの名無しさん:2008/07/22(火) 06:18:05
>>882
おいおいおい、要素が3つでもまともにうごかないぜhahaha!!

887 :デフォルトの名無しさん:2008/07/22(火) 06:57:23
>>882
以上、おれの自作自演なわけだが。

Table->n = 0の場合、low=0,high=-1となる。
while文は処理されないのでmidが不定。ためしにmid=0xffffで初期化すると確実にExcepる。
卑怯な逃げをやるとこんな感じだな。

/* 追加 */
int add_item(pTable table,Item item){
int low, mid=0xffff, high, i, place;
low=0; high=(table->n)-1;
if(table->n == 0) {
table->items[0] = item;
table->n++;
return 1;
}

ついでに。gcc xxx.c -g って-gオプションつけて
gdb a.out ってやるとExceptionおきたタイミングでパラメータ確認できるんで試してみてくれ。
あとはgdbでぐぐれ。

じゃあの。

888 :デフォルトの名無しさん:2008/07/22(火) 07:02:32
>>887
おっとすまん、Nが0xF4240なんでmidの初期値はそれ以上にしてくれ。
もしくはN=1000に置き換えちまっても問題なし

すまんかったのぉ じゃあの。

889 :デフォルトの名無しさん:2008/07/22(火) 07:21:41
>>790
ソート方法の提示がなかったんでバブルでお茶を濁しておくから、あとは自力でがんばれ!!
それから毎回strlenするタコ仕様なんでそこも多めに見ろよ!

#include <stdio.h>
int main(char argc,char **argv){
FILE *infp, *outfp;
int i,j, lm; char *buffer[1024];
infp = fopen(argv[1],"r"); outfp = fopen(argv[2],"w");
i=0;while(!feof(infp)){
char tmp[1024];
if( fgets(tmp,sizeof(tmp),infp) ){
buffer[i] = (char*)malloc(sizeof(char) * strlen(tmp)+1 );
strcpy(buffer[i],tmp);
i++;
}
}
lm = i;
for(i=0;i<lm;i++){
for(j=i+1;j<lm;j++){
if(strlen(buffer[i]) > strlen(buffer[j]) ){
char *tmp = buffer[i];
buffer[i] = buffer[j]; buffer[j] = tmp;
}
}
fprintf(outfp,"%s",buffer[i]);
free(buffer[i]);
}
fclose(infp);fclose(outfp);return 0;
}
じゃあの

890 :デフォルトの名無しさん:2008/07/22(火) 07:24:26
>>883
そこらへんをわかってやるのが大人じゃないのか?

typedef char String

891 :デフォルトの名無しさん:2008/07/22(火) 07:41:31
>>882 >>887
言い忘れ。TableはポインタなのにItemが変数なのがなんとなく嫌だったので

s/Table/pTable/g;

した。今は反省していない。

じゃあの。

892 :デフォルトの名無しさん:2008/07/22(火) 07:57:51
>>859
ありがとうございます。どうか、よろしくお願いします。
レスが遅くなりすいませんでした。


893 :デフォルトの名無しさん:2008/07/22(火) 09:09:09
>>476をよろしくお願いします。

894 :デフォルトの名無しさん:2008/07/22(火) 09:11:10
このスレをよろしくお願いします >他の回答者

895 :デフォルトの名無しさん:2008/07/22(火) 09:28:14
>>665 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7458.txt
>>874 http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7476.txt

896 :デフォルトの名無しさん:2008/07/22(火) 10:49:02
おまいら、たまには麻呂のクソースを超越したゲロの●ンコソースが見たいだろ?

897 :デフォルトの名無しさん:2008/07/22(火) 12:47:38
>>884
ありがとうございました。

898 :デフォルトの名無しさん:2008/07/22(火) 13:31:36
[1] 授業単元: C++
[2] 問題文(含コード&リンク):
int型の数値を2つ受け取りその最大公約数を計算して返す関数

int gcm(int a, int b)を作成しなさい。

同様に最小公倍数を計算して返す

int lcm(int a, int b)も作成しなさい。

2つの関数の動作を確認する main関数も作成すること。キーボードから入力した2つの整数について,計算結果が画面に出力されるものとする

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:
よろしくお願いします

899 :デフォルトの名無しさん:2008/07/22(火) 14:01:12
参考にしたいので、できるだけ簡単なソースをお願いします。

[1] 授業単元:プログラミング
[2] 問題文:以下のデータを用いてハッシュ表を構築するプログラムを作成し、ハッシュ法を用いた検索に関して考察せよ。
 ファイル:ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7477.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2008年7月23日(水)
[5] その他の制限: 特になし

900 :デフォルトの名無しさん:2008/07/22(火) 14:37:55
[1] 授業単元: C言語プログラミング
[2] 分数の四則演算を計算するプログラムを作成する
[3] 環境
[3.1] OS: Windows 
[3.2]Microsoft Visual Studio
[3.3] C言語
[4] 期限: ([2008年7月25日14:00まで
[5]条件
  分数を、 1|3 のように、| (縦棒)という記号で分子・分母を区別する。/ (スラッシュ)だと除算記号と混同してしまうから。
計算規則
 a|b + c|d = (a*d + b*c) | (b*d)
 a|b - c|d = (a*d - b*c) | (b*d)
 a|b * c|d = (a*c) | (b*d)
 a|b / c|d = (a*d) | (b*c)
計算結果については,分母が1の時には分子のみの表示にする。分数が0(ゼロ)の時には 0(ゼロ)のみを表示する。また,最終の計算結果を既約分数にする。

1.分母がゼロの入力エラーに対しては、再入力するよう促す。

2.除算において、除数がゼロの入力エラーに対しては、再入力するように促す。

3.以下範囲の整数(分子、分母にかかわらず)に対して、正しく計算できるようにすること。
  -2147483648 〜 2147483647
Visual Studioでお願いします

以前書き込みをくれた方ありがとうございます。
でもエラーが出てデバックできませんでした。
#include<stdio.h>でお願いします


901 :デフォルトの名無しさん:2008/07/22(火) 14:55:56
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):
分数の四則演算を計算するプログラムを作成せよ。
キーボードから、2つの分数、および、それらの間の演算子を入力して、その計算結果を表示すること。
<要求事項>
1.分母がゼロの入力エラーに対しては、再入力するよう促す。
2.除算において、除数がゼロの入力エラーに対しては、再入力するように促す。
3.以下範囲の整数(分子、分母にかかわらず)に対して、正しく計算できるようにすること。
  -2147483648 〜 2147483647
4.計算結果(画面表示)については,分母が1の時には分子のみの表示にする。分数が0(ゼロ)の時には 0(ゼロ)のみを表示する。また,最終の計算結果を既約分数にする。分数が負数の場合、負符号(-)を分数の前に表示する。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC 6.0
 [3.3] 言語: C++
[4] 期限: 2008年7月30日まで
[5] その他の制限:
条件分岐、繰り返し、配列ぐらいまでなら習ってます。
関数は使わないでください。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7478.txt
↑3以外の要求事項を満たしたプログラムです。参考までに…
よろしくお願いします。

902 :デフォルトの名無しさん:2008/07/22(火) 15:01:57
>>898
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7479.cpp

903 :デフォルトの名無しさん:2008/07/22(火) 15:45:16
>>899
自分でやればいいじゃん
ググってもでてくるし

904 :デフォルトの名無しさん:2008/07/22(火) 15:52:47
>>903
だからね、君は・・・何度も言われているようだが、そんなレスをするスレじゃないんだよw
しちゃダメ、禁止って意味じゃなくてね、>>1とスレタイを読むと分かると思うけど
そういう趣旨のスレじゃないのよ、分かる?分からない?日本語読める?読めない?
聖徳太子知ってる?知らない?そんなことを言うくらいなら、君が解いたソースを
うpしてやれば良いじゃん、ググって知った情報を使って パクって も良いんだしw

905 :デフォルトの名無しさん:2008/07/22(火) 15:56:20
>>904
>>899 を読んだ?

906 :デフォルトの名無しさん:2008/07/22(火) 16:19:59
いや、ここは宿題が丸投げされる場所だからw
投稿する質問者に、自分でやれよ、なんてナンセンスでしょ?
思っていても言わなくてよろしい、そういうことぉ〜 あぁ〜いとぅいまてぇ〜ん

907 :デフォルトの名無しさん:2008/07/22(火) 16:21:22
ハッシュできたけどあってるかわからんわ

908 :デフォルトの名無しさん:2008/07/22(火) 16:29:19
>>406
>>852
自分がC++を勉強するために作ったんで、必要ないこと(map使ったり、equal_range使ったり等)をやってるけど、
とりあえずできたのでうp
(コメント付けたりソースをきれいにしてる途中でバグ見つけたりしたから、まだバグ残ってるかも)

あと規格とか詳しくないから、もしかした他の環境じゃ動かないかも
(boolのtrueは1,falseは0になると思って作ってる)
自分の環境は、WindowsXP+Cygwin, g++ (GCC) 3.4.4

ソース
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7480.cpp

テストデータ作成用
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7481.c

909 :デフォルトの名無しさん:2008/07/22(火) 16:34:18
いよっ!真打ち登場か?

910 :デフォルトの名無しさん:2008/07/22(火) 18:10:42
>>899 検索
ttp://d.hatena.ne.jp/yshigeru/20080602/

911 :デフォルトの名無しさん:2008/07/22(火) 18:21:23
[1] 授業単元:プログラニング言語
[2] 問題文(含コード&リンク):クライアントから送られた2つの数値の和をもとめ、
表示するサーバを作成しなさい。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語: C
[4] 期限: 7月26日まで
作成するのはサーバだけです。接続、切断の部分は省略していただいてもかまいません。
よろしくお願いします。


912 :デフォルトの名無しさん:2008/07/22(火) 19:24:25
>>906
オマエこそ、退屈なレスつけてないでコード書いたらどうだ?
すぐ消すことになるのか知らないけど。

913 :デフォルトの名無しさん:2008/07/22(火) 19:26:32
>>912
暇人必死だな。とりあえず >>1 とスレタイを読んだら無駄レスするな、夏厨

914 :デフォルトの名無しさん:2008/07/22(火) 19:27:45
>>912
うわっ、出た出た出たよぉ〜、スレタイも>>1も読めない日本語でおkな奴が
C言語なんてまともに使えたもんじゃねーなぁ、こいつはぁ。
要するに口先だけってやつなw

915 :デフォルトの名無しさん:2008/07/22(火) 19:28:33
>>912 (・∀・)ニヤニヤ
無駄口叩くくらいなら、ソースで課題に答えたらぁ?

916 : :2008/07/22(火) 19:29:55
873>>

すみません。char型です。

917 :デフォルトの名無しさん:2008/07/22(火) 19:31:35
>>913-915
図星か

918 :デフォルトの名無しさん:2008/07/22(火) 19:32:28
>>913-915
前回もヨッポド恥ずかしくて、顔真っ赤にしてコード消した人だよね

919 :デフォルトの名無しさん:2008/07/22(火) 19:33:16
>>913-915
自分じゃコード書けないから、人を煽ってばっかなんじゃね?

920 :デフォルトの名無しさん:2008/07/22(火) 19:33:21
>>912
ぼくぅ、ぼくぅ、スレタイ読める?>>1も読める?>>903 みたく、○投げした人に対して
自分でやれってレスはこのスレでは無用なの、ナンセンスなの、わかるぅ?分からないかにゃ〜
まだぼくぅ小学生1年ちぇいだもんねw 日本語が読めるようになってから
C言語を習いましょうね。あっ、別にコミュニケーションランゲージじゃないから
C言語を先に習っても良いけど、教本の日本語が読めないんじゃ〜やっぱダメでちゅよぉ〜


921 :デフォルトの名無しさん:2008/07/22(火) 19:34:03
>>920
ググレばいくらでもコードが落ちてんだろ?

922 :デフォルトの名無しさん:2008/07/22(火) 19:34:40
>>920
世界で始めてハッシュを実装するならともかく、
子供の宿題だぞ?

923 :863:2008/07/22(火) 19:44:14
すいません
誰か863の問2をお願いします

924 :デフォルトの名無しさん:2008/07/22(火) 19:50:01
> あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。
> 気に入らない質問やその他や発言はスルーの方向で。

読めない、勘違い野郎が増えたな、今年の新学期からの新入り共はw
お前ら他のスレの連中に笑われてんぞ、KYな奴が多いってw
集団社会の中で活動したことないだろ?余計なことを口に出すと
荒れるしゴタゴタになってトラブルになるだろ。だからその場に
沿わないことは、思ってても口に出さないんだよ、JK。
丸投げする奴に、○投げするなって言う前に、自分がやる気がないなら
スルーするなり無駄レスをしなきゃ良いんだよ、な?w
そんな単純なことも出来ないからお前らはいつになっても上達しないんだよ。

925 :デフォルトの名無しさん:2008/07/22(火) 20:02:43
>>924
自分でかけないくせに

926 :402:2008/07/22(火) 20:09:46
>>900
>>17(C++), >>402(C) はいかがでしょうか。
エラーがでるようでしたら、コンパイラエラーならその内容を貼り付けてください。実行してエラーがでるようでしたら、入力した式を教えてください。

927 :デフォルトの名無しさん:2008/07/22(火) 20:15:51
>>790
補足です。お願いします

問題文:
英文字の複数行から構成されるテキストファイルがあるとき, このファイル中の行を,含まれる文字数が少ない順にソートした後,
別の名前のファイルで出力するプログラムを作りなさい.
ただし,元のテキストファイル,出力先のテキストファイルの名前はいずれもコマンドラインで指定するようにすること。
すなわち,このプログラムの実行形式ファイルをsortとし,元のテキストファイルをfile1.txt,出力後のテキストファイルをfile2.txt とするとき,コマンドプロンプトに続いて
   >sort file1.txt file2.txt←
とすることで実行する. ただし,←は Enter キーを押すことを表している. 処理例を次に示す.
処理例:
元のファイル (file1.txt)
Do you have a pencil?
How was it?
I have a notebook.
I love you.
Please sit down.
Which flower do you like?
What is this?
abc

出力ファイル (file2.txt)
abc
I love you.
How was it?
What is this?
Please sit down.
I have a notebook.
Do you have a pencil?
Which flower do you like?

928 :デフォルトの名無しさん:2008/07/22(火) 20:36:30
>>927
>>889 でうまくいきませんか?

929 :402:2008/07/22(火) 20:38:55
>>926
訂正します。
>>900
>>167(C++), >>402(C)はいかがでしょうか。
コンパイル時にエラーがでるようなら、その内容を貼り付けてください。
実行してエラーがでるようでしたら、入力した式を教えてください。

930 :デフォルトの名無しさん:2008/07/22(火) 20:39:39
>>4 07/15 13:00 線形リスト
>>50 07/17 00:00 減衰振動
>>179 --/-- --:-- 2文木->配列
>>207 --/-- --:-- 微分方程式の解析解
>>234 --/-- --:-- 微分方程式:ルンゲクッタ法
>>362 07/18 --:-- GC/立体幾何/空間上の三角形と平面とが作る線分
>>383 07/18 06:30 static変数の抽出
>>406 07/19 23:59 シャノンファノ符号 : >>851?, >>908
>>476 07/23 24:00 偏微分方程式/ポテンシャル
>>665 07/23 --:-- ファイルの読み書きと表示 : >>895

931 :デフォルトの名無しさん:2008/07/22(火) 20:40:09
>>683 07/20 23:59 ヘロンの公式・四角形の面積
>>734 07/22 08:00 描画/シードフィル
>>748 07/21 --:-- DB
>>788 08/01? --:-- bmp形式/前景画像と背景画像を ratio : 1-ratio で合成する : >>884
>>790 07/23 --:-- このファイルの中の行を、含まれる文字数が少ない順に上からソートした後、別の名前のファイルで出力 : >>889
>>833 07/22 17:30 生産者/消費者シミュレーション?
>>863 07/23 12:00 DB・リスト処理 : >>871(問1)
>>872 07/23 --:-- データ抽出?
>>874 07/24 --:-- シーザー暗号 : >>876, >>895
>>882 07/23 --:-- 配列による表の作成・要素の検索・追加・削除 : >>887, >>891

932 :デフォルトの名無しさん:2008/07/22(火) 20:40:40
>>898 --:-- --:-- 最大公約数 : >>902
>>899 07/23 --:-- ハッシュ関数・ハッシュテーブル
>>900 07/25 14:00 = >>17, >>152 : >>167, >>402
>>901 07/30 --:-- 分数の四則演算
>>911 07/26 --:-- クライアントから送られた2つの数値の和をもとめ表示するサーバ

933 :665:2008/07/22(火) 21:00:19
>>895

ありがとうございました<m(__)m>

934 :デフォルトの名無しさん:2008/07/22(火) 21:34:24
>>384
このような二重定義はエラーではないけれども気になるのでこれを検出したい、しかしコンパイラは検出してくれない。

935 : ◆prGJdss8WM :2008/07/22(火) 21:38:10
(1)C言語演習
(2)凸なn角形板の頂点の座標を与えると、その重心の座標を表示するプログラムを作成しなさい。
プログラムの説明まですること。
(3)Windows
C言語
(4)2008年7月23日午後6時まで

よろしくお願いします!!


936 : ◆prGJdss8WM :2008/07/22(火) 22:21:59
>>935
をどなたかお願いします(>_<)


937 :デフォルトの名無しさん:2008/07/22(火) 22:22:18
焦りすぎだカス

938 :デフォルトの名無しさん:2008/07/22(火) 22:25:11
[1] 授業単元: C++
[2] 問題文(含コード&リンク):
数当てゲームを作りなさい。
<プログラムの流れ>
・変数no を用意し、これに乱数を入れます(no に格納されている整数値を当てます)。
・変数x にキーボードから数値を読み込み、その値がno よりも小さければ「小さいです。もう一度入力して
ください。」、大きければ「大きいです。もう一度入力してください。」とメッセージを表示して再入力を促し
ます。等しい場合は、「正解です。」と表示します。
※変数no には、以下のようにして乱数を入れます。
@#include<stdlib.h> ← 冒頭(#include<stdio.h>の前後)にこの2文を書く
#include<time.h>
Aint no; ← 変数宣言のところで、int 型で変数no を宣言する
Bsrand( (unsigned)time( NULL ) );
no = 1 + (int)(rand()*(100.0)/(1.0+RAND_MAX)); ←乱数を発生させるところでこの2文を書く
no に1 から100 までの乱数が格納される
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] VC6.0
 [3.3] 言語: C++
[4] 期限: 7月24日
よろしくお願いします。

939 :デフォルトの名無しさん:2008/07/22(火) 22:28:21
>>938
なんで7月末に、こんなレベルの出題するかなぁ
どんな学校だ

940 :デフォルトの名無しさん:2008/07/22(火) 22:29:44
1〜2年次の教養レベルならこんなんもありじゃね?

941 :デフォルトの名無しさん:2008/07/22(火) 22:29:48
>>940
真面目に答えると
北海道工業大学2年ですね。

942 :デフォルトの名無しさん:2008/07/22(火) 22:31:13
1年の今頃にはポインタやらされてたうちの大学は異端か?
電気科なのにww

943 :デフォルトの名無しさん:2008/07/22(火) 22:33:11
>>398だと、2〜3回目の授業の宿題で出てもおかしくないレベルでしょ
だから、4〜6月の間は何してたのかな、と
情報専門じゃなければそんなものなのかもしれないな

俺は確か二回目の授業の課題でメモリを動的に確保した記憶がある

944 :デフォルトの名無しさん:2008/07/22(火) 22:36:29
1回目の授業はどんなんだったんだ?
Hello worldじゃないの

945 :デフォルトの名無しさん:2008/07/22(火) 22:45:45
>>935
Oで凸多角形の中央を求め、O-(i)-(i+1)からなる三角形の面積Sと重心Cを求め、Sを重みにした重み付き平均でCの中央をもとめるんじゃい!!
面積算出はヘロンの公式をつこてるので、gccなら-lmを付けてくれ。あとはまかせた。

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

struct point{ double x; double y;} Polygon[100];
typedef struct point point;

double Length(point A,point B){ return sqrt( (A.x - B.x) * (A.x - B.x) + (A.y - B.y) *(A.y - B.y) ); }
double TriArea(point A,point B,point C){ double a = Length(B,C) , b = Length(A,C), c = Length(A,B) , s = (a+b+c)/2.0; return sqrt(s*(s-a)*(s-b)*(s-c) );}
point TriCenter(point A,point B,point C){ point ret; ret.x = (A.x + B.x + C.x) / 3.0; ret.y = (A.y + B.y + C.y) / 3.0; return ret;}

int main(){
int i,n=5;double AreaTotal,area; point O,R,C;
Polygon[0].x = 3.0; Polygon[0].y = 9.0; Polygon[1].x = 3.0; Polygon[1].y = 16.0;
Polygon[2].x = 5.0; Polygon[2].y = 18.0;Polygon[3].x = 6.0; Polygon[3].y = 12.0;
Polygon[4].x = 5.0; Polygon[4].y = 6.0; Polygon[5].x = 3.0; Polygon[5].y = 9.0; // [0]
O.x = 0.0; O.y = 0.0; for(i=0;i<n;i++){ O.x += Polygon[i].x; O.y += Polygon[i].y;}
O.x /= (double)n; O.y /= (double)n;

R.x = 0.0; R.y = 0.0; for(i=0;i<n;i++){
C = TriCenter(O,Polygon[i],Polygon[i+1]);
AreaTotal += area = TriArea(O,Polygon[i],Polygon[i+1]);
R.x += Center.x * area; R.y += Center.y * area;
} R.x /= AreaTotal; R.y /= AreaTotal;
printf("%lf %lf\n",R.x,R.y);
return 0;
}

じゃあの。

946 :デフォルトの名無しさん:2008/07/22(火) 22:48:49
>>945
すまん、AreaTotal初期化してないんで、=0を足してくれ。

じゃあの。

947 : ◆prGJdss8WM :2008/07/22(火) 23:00:15
>>945
ありがとうございます!!

すみません;
AreaTotal初期化とは、どこにつければよいのですか?

948 :デフォルトの名無しさん:2008/07/22(火) 23:03:28
>>947
int i,n=5;double AreaTotal,area=0.0; point O,R,C;

949 : ◆prGJdss8WM :2008/07/22(火) 23:07:54
>>948
ありがとうございます!!


950 : ◆prGJdss8WM :2008/07/22(火) 23:13:51
何度もすみません。
コンパイルしたらエラーがでてしまいます(>_<)
file format not recognized とでます…;

951 :デフォルトの名無しさん:2008/07/22(火) 23:29:26
>>950
まず、なんのコンパイラをつこてるかはっきりせい!!
それからエラー文は一行残らず全部書き出せ!!

952 :デフォルトの名無しさん:2008/07/22(火) 23:32:04
>>950
あと、これがコンパイルできんようなら出直せ!!

#include <stdio.h>
int main(){
printf("じゃあの");
return 0;
}

じゃあの。

953 :354:2008/07/22(火) 23:32:40
394さんに解決していただいたのですが結果の出力を
以下のようにしなければならなかったようです。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7482.txt
どなたか変更していただけないでしょうか?

354の解答:http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7429.txt


954 : ◆prGJdss8WM :2008/07/22(火) 23:35:29
>>951
UTF-8 Tera Term Pro
を使ってやってます。

エラー文なんですが…
12-13: file not recognized: File format not recognized
とでます。



955 : ◆prGJdss8WM :2008/07/22(火) 23:36:49
>>952
はコンパイルできます!!

956 :デフォルトの名無しさん:2008/07/22(火) 23:37:19
>>954
コンパイラは何を使っているのかと聞いている。

gcc xxx.c

か?

それからエラー文は全部かけ。エラー文は全部かけ。大切なことなので2回言いました。

957 :デフォルトの名無しさん:2008/07/22(火) 23:43:56
>>954
一応、間違わないように念押しする。

コンパイルに使ったコマンドから、実際にでているエラー、コマンドを入力できるプロンプトまでを
全部残さず洗いざらい全て厳密に確実にまごうことなくすっきりはっきり全部書き出せ。

958 :デフォルトの名無しさん:2008/07/22(火) 23:51:06
>>957
935じゃないけど、とりあえず、Center.xが通らない。

959 :デフォルトの名無しさん:2008/07/22(火) 23:58:37
>>958
さんくす!とりあえずなおした。

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

struct point{ double x; double y;} Polygon[100];
typedef struct point point;

double Length(point A,point B){ return sqrt( (A.x - B.x) * (A.x - B.x) + (A.y - B.y) *(A.y - B.y) ); }
double TriArea(point A,point B,point C){ double a = Length(B,C) , b = Length(A,C), c = Length(A,B) , s = (a+b+c)/2.0; return sqrt(s*(s-a)*(s-b)*(s-c) );}
point TriCenter(point A,point B,point C){ point ret; ret.x = (A.x + B.x + C.x) / 3.0; ret.y = (A.y + B.y + C.y) / 3.0; return ret;}

int main(){
int i,n=5;double AreaTotal,area; point O,R,C;
Polygon[0].x = 3.0; Polygon[0].y = 9.0; Polygon[1].x = 3.0; Polygon[1].y = 16.0;
Polygon[2].x = 5.0; Polygon[2].y = 18.0;Polygon[3].x = 6.0; Polygon[3].y = 12.0;
Polygon[4].x = 5.0; Polygon[4].y = 6.0; Polygon[5].x = 3.0; Polygon[5].y = 9.0; // [0]
O.x = 0.0; O.y = 0.0; for(i=0;i<n;i++){ O.x += Polygon[i].x; O.y += Polygon[i].y;}O.x /= (double)n; O.y /= (double)n;

R.x = 0.0; R.y = 0.0;AreaTotal=0.0; for(i=0;i<n;i++){
C = TriCenter(O,Polygon[i],Polygon[i+1]);AreaTotal += area = TriArea(O,Polygon[i],Polygon[i+1]);
R.x += C.x * area; R.y += C.y * area;}
R.x /= AreaTotal; R.y /= AreaTotal; printf("%lf %lf\n",R.x,R.y);return 0;}

960 : ◆prGJdss8WM :2008/07/23(水) 00:03:11
すみません…
コンパイラはxxx.cです

コンパイルに使ったコマンドはccコマンドです
エラー文はさっき書いたので全部です。
1行しかでてきません;

961 :デフォルトの名無しさん:2008/07/23(水) 00:05:01
>>960
>>959>>957

962 :デフォルトの名無しさん:2008/07/23(水) 00:07:08
>>960
ファイルの拡張子を .c にしてからやり直してみて。

963 : ◆prGJdss8WM :2008/07/23(水) 00:08:49
ちょっとよくわからないので明日友達に聞いてみます…
すみませんでした…
とりあえず実行結果だけでも教えていただけませんか?

964 :デフォルトの名無しさん:2008/07/23(水) 00:09:45
>>963
だ    が    こ    と    わ    る    !

965 :デフォルトの名無しさん:2008/07/23(水) 00:11:38
>>960
これは酷い

966 : ◆prGJdss8WM :2008/07/23(水) 00:14:30
拡張子を.cにしてみたら
エラーの内容がかわりました。
/var/tmp//cc9r5EdA.o(.text+0x25): In function `Length':
: undefined reference to `sqrt'
/var/tmp//cc9r5EdA.o(.text+0xd7): In function `TriArea':
: undefined reference to `sqrt'

とでました!

967 :デフォルトの名無しさん:2008/07/23(水) 00:16:36
>>963
エラーの行の一行前と、一行後ろを教えてほしいな。
一行前は、コマンドプロンプトとあなたが入力したコマンドかもしれないし、
一行後ろは、ただのコマンドプロンプトかも知れないけれども、
画面に表示されているそのままに。

968 : ◆prGJdss8WM :2008/07/23(水) 00:21:35
>>967
これです。
>はコマンドプロンプトです。


> cc 12-13.c
/var/tmp//cc9r5EdA.o(.text+0x25): In function `Length':
: undefined reference to `sqrt'
/var/tmp//cc9r5EdA.o(.text+0xd7): In function `TriArea':
: undefined reference to `sqrt'
>



969 :デフォルトの名無しさん:2008/07/23(水) 00:24:09
>>968

cc 12-13.c -lm


970 :デフォルトの名無しさん:2008/07/23(水) 00:30:07
>>911
コンパイルだけ通した。動作未確認。
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <unistd.h>
int main() {
int servSock, clientSock, recvLen, totalLen, n1, n2;
struct sockaddr_in servAddr,clientAddr;
unsigned int clientLen;
char buf[8];
if ((servSock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) exit( 1 );
memset(&servAddr, 0, sizeof(servAddr));
servAddr.sin_family = AF_INET;
servAddr.sin_addr.s_addr = htonl(INADDR_ANY);
servAddr.sin_port = htons(12345);
if (bind(servSock, (struct sockaddr *) &servAddr, sizeof(servAddr)) < 0) exit( 2 );
if (listen(servSock, 1) < 0) exit( 3 );
while ( 1 ) {
clientLen = sizeof(clientAddr);
if ((clientSock = accept(servSock, (struct sockaddr *) &clientAddr, &clientLen)) < 0) exit ( 4 );
recvLen = totalLen = 0;
while ( recvLen < 8 ) {
if ((recvLen = recv(clientSock, buf + totalLen, 8, 0)) < 0) exit( 5 );
totalLen += recvLen;
}
n1 = ntohl(*(int*)buf);
n2 = ntohl(*(int*)(buf+4));
printf("%d+%d=%d\n", n1, n2, n1 + n2);
}
}

971 : ◆prGJdss8WM :2008/07/23(水) 00:30:15
>>969
できました!!
実行したら

> ./a.out
4.386667 12.173333
>

とでました!!
でも、scanfで頂点の座標を与えないんです…(>_<)

972 :970:2008/07/23(水) 00:31:18
しまった。WinSockかもしれないんだ。。


973 :970:2008/07/23(水) 00:33:26
>>970を訂正。
×while ( recvLen < 8 )
○while ( totalLen < 8 )

974 :デフォルトの名無しさん:2008/07/23(水) 00:33:51
>>970
せめてIPv6 readyなコードにしてほしかった。

975 : ◆prGJdss8WM :2008/07/23(水) 00:35:13
>>972
コンパイルしたらエラーがいっぱいでますです…

> cc 12-12.c -lm
12-12.c: In function `main':
12-12.c:8: error: storage size of 'servAddr' isn't known
12-12.c:8: error: storage size of 'clientAddr' isn't known
12-12.c:11: error: `IPPROTO_TCP' undeclared (first use in this function)
12-12.c:11: error: (Each undeclared identifier is reported only once
12-12.c:11: error: for each function it appears in.)
12-12.c:14: error: `INADDR_ANY' undeclared (first use in this function)
>



976 :デフォルトの名無しさん:2008/07/23(水) 00:37:42
>>971
>>935のどこにもscanfを使うなんて書いてない


977 :デフォルトの名無しさん:2008/07/23(水) 00:37:58
>>975
#include <netinet/in.h>
を追加

978 : ◆prGJdss8WM :2008/07/23(水) 00:38:20
>>971

間違えました;
scanfで頂点の座標を与えてあげないといけないんです(>_<)

979 :デフォルトの名無しさん:2008/07/23(水) 00:50:17
>>953
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7484.txt

980 :デフォルトの名無しさん:2008/07/23(水) 00:52:09
>>968 見たいに、printf/scanfの出来上がりイメージを書いたら、誰かやってくれるかもよ。
> cc 12-13
12-13: file not recognized: File format not recognized
>

981 : ◆prGJdss8WM :2008/07/23(水) 00:59:21
>>979

ありがとうございます!!
でも、セグメントエラーってでます…;
あと、このプログラムの説明をしていただけませんか?

982 :デフォルトの名無しさん:2008/07/23(水) 01:00:01
[1] 授業単元: プログラミング
[2] 問題文:時計を表示するプログラムを作る
(書きかけのソースは下に書きます。)
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] Borland C++ ver5.0.0
 [3.3] 言語:C
[4] 期限:今日
[5] その他の制限:よくわからないですが、ポインタ辺りまでならいいと思います。
最上段の年月日と曜日がうまく表示されません。
どなたかお願いしますm(__)m

983 :982:2008/07/23(水) 01:00:40
#include <stdio.h>#include <time.h> #include <conio.h>
void main()
{
static char *week[] = {"日", "月", "火", "水", "木", "金", "土"};
time_t now, prev;
struct tm *tm_now;
printf("\033[2J");
prev = now;
tm_now = localtime(&prev);
printf("\033[10;30H");
printf("%4d年%2d月%2d日 %s曜日\n",
tm_now->tm_year+1900, tm_now->tm_mon+1, tm_now->tm_mday, week[tm_now->tm_wday]);
for(;;){
if(kbhit()){
if(getch() == 0x1B) break;
}
prev = now;
now = time(NULL);
if(prev == now)
continue;
tm_now = localtime(&now);
printf("\033[11;30H");
printf("%2d時%2d分%2d秒\n",
tm_now->tm_hour, tm_now->tm_min, tm_now->tm_sec);
}
}

984 :デフォルトの名無しさん:2008/07/23(水) 01:05:32
>>981
ソート方法を挿入ソートに変えただけ
エラーは出ないから分からん、どこで出るのかな

985 :>>406:2008/07/23(水) 01:06:31
>>908
すいません。
せっかく作成して頂いたのですが、Borlandでは動作しないようです。
以下のようなエラーが出てしまいました。
C:\source>bcc32 7480.cpp
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland7480.cpp:
警告 W8012 7480.cpp 169: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 199: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 222: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 253: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8008 7480.cpp 282: 条件が常に真(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8012 7480.cpp 302: 符号付き値と符号なし値の比較(関数 CEncoder::create_enc(ifstream &,ofstream &) )
警告 W8008 7480.cpp 405: 条件が常に真(関数 CEncoder::encoding() )
警告 W8012 7480.cpp 440: 符号付き値と符号なし値の比較(関数 CEncoder::encoding())
警告 W8012 7480.cpp 446: 符号付き値と符号なし値の比較(関数 CEncoder::encoding())
警告 W8012 7480.cpp 759: 符号付き値と符号なし値の比較(関数 CDecoder::create_txt(ifstream &,ofstream &) )
警告 W8012 7480.cpp 842: 符号付き値と符号なし値の比較(関数 CDecoder::decoding())
警告 W8012 7480.cpp 848: 符号付き値と符号なし値の比較(関数 CDecoder::decoding())
警告 W8012 7480.cpp 925: 符号付き値と符号なし値の比較(関数 CPrintHeader::print_header(char *) )
警告 W8012 7480.cpp 931: 符号付き値と符号なし値の比較(関数 CPrintHeader::print_header(char *) )
Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland

指定が、Borland bcc32 のコンパイラということになってまして
せっかく作成頂いたのに、本当にすいません。
>>859さんのを、待ちたいと思います。
すいません。

986 :デフォルトの名無しさん:2008/07/23(水) 01:07:10
つーか違う人やん、まあよかた

987 :デフォルトの名無しさん:2008/07/23(水) 01:11:42
>>985
警告が出てるだけなら、動くんじゃないの?

988 :デフォルトの名無しさん:2008/07/23(水) 01:14:54
ラーメン イケメン 僕セグメン

989 :>>406:2008/07/23(水) 01:50:19
>>987
実行すると、以下のようになってしまいます。
C:\source>7481

C:\source>7480
Usage:
encoding : C:\source\7480.exe -e[p[z]] ENC TXT
decoding : C:\source\7480.exe -d[p[z]]TXT ENC
header print : C:\source\7480.exe -p[z] ENC...

C:\source>

何も入力する前に、コマンドラインが出てしまいます。


990 :デフォルトの名無しさん:2008/07/23(水) 01:51:48
>>982
全角スペース混じってんぞ
ほんとに実行できたのかよ…

991 :デフォルトの名無しさん:2008/07/23(水) 01:52:53
>>989
使い方が間違っているからでしょ。

あと、usageを辞書で引いておいて

992 :ME != 908:2008/07/23(水) 01:56:03
>>985
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7485.txt

993 :デフォルトの名無しさん:2008/07/23(水) 01:58:32
てか実に気の毒だが、コンピュータあんまり触った事がない人だと思うので
下手に丸投げしたコード出したりするとボロ出てきつい思いすると思う。
こういう無茶な(コンピュータ触って5年選手以上とかに出す問題)課題
を出す教師の単位なんて下手に貰っても得しないと思う。
昔は、理論屋、コード屋、検証屋、執筆屋とか分業が許され、論文も共同で
書くのが常だった。

994 :デフォルトの名無しさん:2008/07/23(水) 02:04:31
>>993
警告とエラーの区別がつかないくらいだから、これまでまったくサボってきたんだろ。
課題自体は、子供の宿題レベルには違いないし、出来ないから単位がでないかどうかも知れない。

995 :デフォルトの名無しさん:2008/07/23(水) 02:09:27
>>993
ほんとうに親切な人は問題について考えるんじゃなくて、解決策を考えてくれると思うんだ

996 :デフォルトの名無しさん:2008/07/23(水) 02:13:22
>>995
要するにこのスレに来るな。自分でやれってか
身も蓋も無いな

カンニングするための最低限の技術すら足りないのはどうしようもないが

997 :デフォルトの名無しさん:2008/07/23(水) 02:13:26
こんな馬鹿を卒業させたら、またなんちゃってSEが増えるだけだろ…

998 :デフォルトの名無しさん:2008/07/23(水) 02:13:34
>>995
このスレの回答者は親切に親身になって問題を解いてくれるね。(その後のフォローは皆無だけど)

999 :デフォルトの名無しさん:2008/07/23(水) 02:14:39
大学の卒業率が85%というから、学生の20人に3人が卒業しないまま大学を去るのだろう?
答えだけ聞いて済まそうという行動規範では・・・

1000 :C/C++の宿題を片付けます 114代目:2008/07/23(水) 02:15:13
あなたが解けない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] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

【アップローダー==ラウンジ】(質問が長い時はココ使うと便利 回答者もコードが長ければここに)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
【C 関数検索 man on WWW】 http://www.linux.or.jp/JM/index.html
【過去ログ検索】        http://chomework.sakura.ne.jp/
【wiki】               http://www23.atwiki.jp/homework/

C/C++の宿題を片付けます 113代目
http://pc11.2ch.net/test/read.cgi/tech/1215986178/

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

372 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)