C/C++の宿題片付けま ..
970:デフォルトの名無しさん
09/07/13 05:13:09
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン:Visual Studio 2005
[3.3] 言語:C
[4] 期限:7/16/
[5] その他の制限:
問題文の通りにやっていただければ結構です。
宜しくお願いします。
971:デフォルトの名無しさん
09/07/13 05:51:03
>>970
/* */
len = (int)str_length(st);
for(i=0;i<len/2;i++) {
temp = *(st+i);
*(st+i) = *(st+len-i-1);
*(st+len-i-1) = temp;
}
/* */
rev_str(str);
972:デフォルトの名無しさん
09/07/13 06:03:57
>>949
#include <stdio.h>
#define LEN 8192
int findrepeat(int r[], int *head, int *tail)
{
int i, j;
for (i = 0; r[i]; ++i)
for (j = i + 1; r[j]; ++j)
if (r[i] == r[j]) { *head = i; *tail = j; return 1; }
return 0;
}
int main(void)
{
int q[LEN], r[LEN];
int n, head, tail, i;
printf("n? "); scanf("%d", &n);
if (n == 1) { printf("1 / 1 = 1"); return 0; }
for (i = 0; i < LEN; ++i) q[i] = r[i] = 0;
head = tail = -1;
q[0] = 1 / n; r[0] = 1 % n;
for (i = 1; i < LEN && r[i - 1] != 0; ++i) {
q[i] = 10 * r[i - 1] / n; r[i] = 10 * r[i - 1] % n;
if (findrepeat(r, &head, &tail)) break;
}
printf("1 / %d = %d.", n, q[0]);
for (i = 1; q[i] || r[i]; ++i) { if (i - 1 == head) printf("("); printf("%d", q[i]); if (i == tail) printf(")"); }
return 0;
}
973:デフォルトの名無しさん
09/07/13 06:42:36
おはようございます>>678 です。
結局>>686をCに変換できませんでした…
どなたか、Cに書き換えてはいただけないでしょうか。
974:デフォルトの名無しさん
09/07/13 06:47:12
最初からCって書いて置けよ
C++もはいってるじゃねーか
975:デフォルトの名無しさん
09/07/13 06:50:32
>>973
どうみてもC++じゃなくてCで書かれてるんだが
976:デフォルトの名無しさん
09/07/13 06:53:10
>>975
拡張子がtxtのままとかどうせレベルの低い話なんだろうけどなw
977:デフォルトの名無しさん
09/07/13 06:54:32
>>976
それプラス
・課題(11_1)はmain_11_1をmainに書き換えてコンパイル
・課題(11_2)はmain_11_2をmainに(ry
ってのがわかってないんだと思う
978:デフォルトの名無しさん
09/07/13 06:56:50
ああ、あまりにもあほらしくて中みてなかったが課題をまとめてくれてるのかw
ほんとにて取り足取りでないとできないのかw
979:デフォルトの名無しさん
09/07/13 07:36:42
これはいいツンデレ
980:デフォルトの名無しさん
09/07/13 07:47:26 BE:511223696-DIA(287979)
次スレ立てました
C/C++の宿題片付けます 129代目
スレリンク(tech板)
981:デフォルトの名無しさん
09/07/13 08:28:03
>>968
getcでもファイルの最後まで比較しながら読み込んでいけばいいんだけどね。
あなたの言うとおり、>>954は最初の1文字でしか判定してないから思いっきり間違ってる。
本人はwhile使ってるあたり、最後まで比較したつもりなんだろうけど。
982:デフォルトの名無しさん
09/07/13 08:50:46
>>954 をいじるとこうなるのかな
do {
char c1, c2;
c1 = getc(fp1);
c2 = getc(fp2);
if (c1 != c2) { puts("異なります"); return 2; }
} while (c1 != EOF);
puts("同じです");
return 0;
983:デフォルトの名無しさん
09/07/13 08:51:41
char じゃなくて int じゃないとまずいか
984:デフォルトの名無しさん
09/07/13 09:01:24
初心者のころcharで受けて、ファイルの途中で読み込み終了して困ったことがあったなぁ。
985:デフォルトの名無しさん
09/07/13 10:00:54
>>966
そこで麻呂はない
986:デフォルトの名無しさん
09/07/13 10:29:46
>>975 >>736
987:デフォルトの名無しさん
09/07/13 10:45:07
>>986
「どうみても」といいつつちゃんと見てなかったw
こいつは失礼した
988: ◆jG/Re6aTC.
09/07/13 12:48:55
[1] 授業単元:アルゴリズム論演習
[2] 問題文(含コード&リンク):
(1)3つ以上の整数の階層的プログラミングを行うプログラムを
作成せよ。ただし、整数間の距離は差、クラスタ間の距離はそ
れぞれの要素間の距離のうち最小のものとする。出力は、クラ
スタか、あるいは整数a,bを足して得られるクラスタをa,bとし、
これを帰納的に適用する表現で表せ。たとえば、1,2,5に対す
る出力は((1,2),5)である。
(2)3つ以上の2次元ベクトルの階層的プログラミングを行うプ
ログラムを作成せよ。ただし、ベクトル(u1,u2)と(v1,v2)の間
の距離をsqrt(u1*v1 + u2*v2)とし、クラスタ間の距離はそれ
ぞれの要素間の距離の平均とする。出力は(1)の表現を用いよ。
[3] 環境
[3.1] OS:Windows
[3.2] VisualStudio2008EE
[3.3] 言語:C/C++のどちらでも可
(できれば後学のためC++でお願いします。)
[4] 期限: [2009年07月23日まで]
[5] その他の制限:特に制限はありません。
989: ◆jG/Re6aTC.
09/07/13 12:50:09
>988
よろしくお願いいたします><;
990: ◆/91kCCQXBo
09/07/13 13:00:51
>>982 お世話になった。
>>953 の時は作業中だったのに無理してしまった。
>>955 line 12 : while(getc(fp1) != getc(fp2)) {
↓
int c1=0,c2;
/* do if((c1 = getc(fp1)) != (c2 = getc(fp2))) {
puts("異なります");
fclose(fp2);
fclose(fp1);
return 2;
} while (c1 != EOF);
*/
while (c1 != EOF) if((c1 = getc(fp1)) != (c2 = getc(fp2))) {
991:デフォルトの名無しさん
09/07/13 13:17:08
>>678
g++ でコンパイルしてみること。
エラーが出たらエラーメッセージを貼り付けること。
992: ◆jG/Re6aTC.
09/07/13 14:14:37
>988
(誤)階層的プログラミング
(正)階層的クラスタリング
でした^^;
よろしくです。
993:デフォルトの名無しさん
09/07/13 14:35:11
>>971
ありがとうございます。
994:デフォルトの名無しさん
09/07/13 15:20:18
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows Vista
[3.2] コンパイラ名とバージョン: VC 2009
[3.3] 言語: C言語
[4] 期限: 7/14 15時
[5] その他の制限: define,for文など
よろしくお願いします
995:デフォルトの名無しさん
09/07/13 15:27:54
>>994 連立1次方程式の解をガウスの消去法用いて解く
問題>>162 解答>>174(9580)>>183(9582)
996:デフォルトの名無しさん
09/07/13 16:18:31
たとえば
3481
という数字(4桁/0含む)が与えられたとき
0 = 3 + 4 - 8 + 1
1 = 3 + 4 - 8 * -1
2 = -(3 + 4 - 8 - 1)
3 = 3 * 4 - 8 - 1
4 = (3 / (4 + 8))^-1
...
のように加減乗除のみで整数を順に造っていってください
997:デフォルトの名無しさん
09/07/13 16:24:11
最後の例で思いっきり加減乗除を使っていない件
998:794
09/07/13 19:34:47
ここ2日ほど熱があり寝込んでました
先生に相談すると今週の間だけ待ってくれるとのこと
まだ未解決なので再度宜しくお願いします
999:デフォルトの名無しさん
09/07/13 19:47:01
>>998
なんかのギャグですか?
1000:デフォルトの名無しさん
09/07/13 20:39:34
ume
1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4973日前に更新/375 KB
担当:undef