C/C++の宿題を片付け ..
666:デフォルトの名無しさん
08/06/25 12:30:32
>>610
#include <stdio.h>
#include <string.h>
/*1)*/ int getUpper(){ int r=getchar(); return 'a'<=r && r<='z' ? (r-'a'+'A') : r; }
/*2)*/ void showReverse(char *s){ int i; for(i=strlen(s)-1; i>=0; putchar(s[i--])); putchar('\n'); }
/*3)*/ void letReverse(char *P, char *R){ int i,k; for(k=0, i=strlen(P)-1; i>=0; R[k++]=P[i--]); R[k]='\0';}
/*4)*/ int isCircular(char *s){ char *r=(char*)malloc(sizeof(char)*(strlen(s)+1)); int ret; letReverse(s,r); ret=strcmp(s,r)==0; free(r); return ret; }
/*5)*/
static int isCircular2s(char *s1, char *s2){ if(s1>=s2) return 1; else{if(*s1==*s2) return isCircular2s(s1+1, s2-1); else return 0; } }
int isCircular2(char *s){ return isCircular2s(s,s+strlen(s)-1); }
// なんか色々関数を利用するプログラム
void checkCircular(char *s){ printf("%s is %scircular string.\n", s, isCircular(s) ? " " : "not ");
int main(void){
char rev[10];
printf("Hit keyboard: ");fflush(stdout);
printf("getUpper() is .. %c\n", getUpper());
showReverse("abcde");
letReverse("a1b2c3", rev);
printf("reverse a1b2c3 = %s\n", rev);
checkCircular("abcba"); checkCircular("12321");
printf("12321 is %scircular string.\n", isCircular2("123321") ? " " : "not ");
}
667:デフォルトの名無しさん
08/06/25 12:56:24
>>666
神様ありがとう!
でも分けかからんww 勉強せねば…
668:デフォルトの名無しさん
08/06/25 14:11:11
>>662
#include <stdio.h>
int main(void)
{
char value[2][5];
int i, j, hit = 0, homerun = 0;
printf("Input the 1st value > ");
scanf("%s", value[0]);
printf("Input the 2nd value > ");
scanf("%s", value[1]);
for(i=0; i<4; i++) {
for(j=0; j<4; j++) {
if(value[0][i] == value[1][j]) {
if(i == j) homerun++;
else hit++;
}
}
}
printf("%d hit(s) %d home run(s)\n", hit, homerun);
return 0;
}
669:デフォルトの名無しさん
08/06/25 14:53:44
[1] 授業単元:計算機システム
[2] 問題文(含コード&リンク):擬似シェル(UNIX上で動く)を作る
必要な機能
・リダイレクト(>>、>、<)
・パイプ(|)
・パイプは複数つなげるように
・できればcdやaliaseも。
[3] 環境
[3.1] OS:UNIX
[3.2] コンパイラ名とバージョン:gcc 3.4.6
[3.3] 言語: C
[4] 期限:明日の午前中
[5] その他の制限:
リダイレクトとパイプの実装ができません。
お願いします。
670:デフォルトの名無しさん
08/06/25 15:05:01
【質問テンプレ】
[1] 授業単元:コンピュータアーキテクチャー
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: bcc32
[3.3] 言語: C
[4] 期限: 六月二十九日
[5] その他の制限: 特にありません
よろしくお願いします
671:デフォルトの名無しさん
08/06/25 15:11:16
> 1.gettimeofday関数を用いて、サイズ5000の配列を用い、 それを100000回程度繰り返して、 倍精度浮動小数乗算の演算性能を測定し、それをMFLOPSで求めよ。
> また、使用したプログラムも提出せよ。
におんごでおk
672:670
08/06/25 15:25:06
>>671
すみません
URLリンク(kansai2channeler.hp.infoseek.co.jp)
↑のようにサイズ5000の配列を用いて、それを100000回程度繰り返して、 倍精度浮動小数乗算の演算性能を測定し、それをMFLOPSで求めることです。
673: ◆DuoCt8/SKk
08/06/25 15:41:19
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:Visual C++ 6.0
[3.3] 言語:C言語
[4] 期限:2008/06/28
[5] その他の制限:ポインタ,構造体は習っています.
全く分からないので,よろしくお願いします!
674:デフォルトの名無しさん
08/06/25 17:53:14
>>625
if (a <= 10 && a % 2 == 0 && b <= 10 && b % 2 == 0)
(・∀・)ニヤニヤ
675:634
08/06/25 17:55:45
一応途中まで作ってみました。
問題は最後の一行(素因数展開の表示:ex.「5*5*2」)なんですけど・・・
配列作って素数を入れてかないと駄目ですかね?
#include <stdio.h>
void bunkai(int n,int i)
{
if(i==n){
printf("%d=%d\n",n,n);
}
else if(n%i==0){
printf("%d=%dx%d\n",n,i,n/i);
bunkai(n/i,i);
}
else
bunkai(n,i+1);
}
void main()
{
int n,i=2;
printf("整数:");
scanf("%d",&n);
bunkai(n,i);
}
676:デフォルトの名無しさん
08/06/25 17:58:21
うpロダー使えYO!
677:デフォルトの名無しさん
08/06/25 18:01:48
>>676
すいませんでした。。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
678:634
08/06/25 18:07:06
すいません、自己解決しました。
679:デフォルトの名無しさん
08/06/25 18:09:12
[1] 授業単元:C 文字の処理
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: Cygnus
[3.3] 言語: C
[4] 期限: 明日の17:00まで
[5] その他の制限: 2問同時で申し訳ありませんが、なるべくシンプルなものをお願いします。
680:デフォルトの名無しさん
08/06/25 18:09:13
いや、もうおせーYO!w
681:637
08/06/25 18:22:06
>>613
>>639
URLリンク(kansai2channeler.hp.infoseek.co.jp)
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。
Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。
682:637
08/06/25 18:25:58
補足で、doubleが8byteであることを期待したコードになってる箇所がいくつかあります。
sizeof(double)やってたりやってなかったりで汚いんですが、
そもそも8byte以外だった場合にビット構造がどうなるのか知らないので8byteな環境
以外でどうなるかわかりませんです。
誰か教えてくれるとありがたいです。
683:デフォルトの名無しさん
08/06/25 18:27:22
637をテンプレに沿って清書すると
[1]回答レベル:検証済み?
[2] コード:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]環境 Linux?/Gcc/C
[4]コメント
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。
Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。
684:637
08/06/25 18:38:29
>>683
そうか、テンプレがw
>>613
[1]回答レベル:ある程度検証済み
[2] コード:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]環境 Windows/VC7/C およびLinux/gcc4.1.2
[4]コメント
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。
Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。
正の整数についてはWindowsの電卓を使って検証しました。
小数についてもある程度検証してそれらしい結果を確認しています。
負数については、ごめんなさい><
685:デフォルトの名無しさん
08/06/25 18:48:08
累計
50 49 48 47 46
45 44 43 42 41
35 34 33 32 31
30 29 28 27 26
25 24 23 22 21
20 19 18 17 16
15 14 13 12 11
10 9 8 7 6
5 4 3 2 1
累計
を一次元配列のみを使ってどうやって書けますか?
686:デフォルトの名無しさん
08/06/25 18:49:07
>>685
ずれてすみません
縦累計と横累計ということです><
687:デフォルトの名無しさん
08/06/25 18:57:14
>>685
これと同じかな
スレリンク(tech板:850番)
スレリンク(tech板:920番)
このレスをしたの俺なんだが、ネタレスのつもりだったのに
感謝されて非常に困惑した記憶がある
688:デフォルトの名無しさん
08/06/25 18:59:59
URLリンク(x68000.q-e-d.net)
をみてCでftpクライアントのプログラムを作成しましたが
サンプルソースの224行目が実行されて
「150 Opening ASCII mode data connection」がサーバから返却された後
226行目が実行されて
「226 Transfer complete」がサーバから返却されるまで180秒かかってしまいます。
何故でしょうか?
サーバはredhatlinux上でProFTPD 1.3.1が動いています。
クライアントは上記サーバと兼ねています。下記のようなログがでます。
<-- 220 ProFTPD 1.3.1 Server (ProFTPD Default Installation) [127.0.0.1]
--> USER ユーザ名
<-- 331 Password required for ユーザ名
--> PASS パスワード
<-- 230 User ユーザ名 logged in
--> PORT 127,0,0,1,229,242
<-- 200 PORT command successful
--> RETR ファイル名のフルパス
ファイルの中身
<-- 150 Opening ASCII mode data connection for ファイル名のフルパス (13 bytes)
<-- 226 Transfer complete(これが出るのは1つ上の行が出力されてから180秒後)
--> QUIT
<-- 221 Goodbye.
689:デフォルトの名無しさん
08/06/25 19:05:26
>>688
なぜここに?
とりあえずサーバのログおよびパケットキャプチャをしてみて原因探るしか。
690:デフォルトの名無しさん
08/06/25 19:07:50
>>687
あ、同じですね><
明日提出なんですがさっぱりなんです
691:デフォルトの名無しさん
08/06/25 20:14:21
>>690
>>685
URLリンク(kansai2channeler.hp.infoseek.co.jp)
692:デフォルトの名無しさん
08/06/25 20:24:00
>>691
ありがとうございます
まだ入門編なので、複雑でよく分かりません><
これ以上簡単に表現できないのですか?
693:デフォルトの名無しさん
08/06/25 20:30:17
>>692
理解しようとする気があるならちゃんと授業中に理解しようね
教員には「沢山勉強してわかるようになりました」って言っておけばなんとかなる
694:デフォルトの名無しさん
08/06/25 20:33:53
>>693
すみません
自力でやってみます
ありがとうございました><
695:デフォルトの名無しさん
08/06/25 20:38:57
#define が見慣れないだけか?ROWを10にCOLを5に書き換えれば良いが
もちろんそれが分かっていれば、そんなことせんでROW と COL で定義し
後はそれらを変更することでそれに応じて結果を出すソースのままにしときゃええがな
696:デフォルトの名無しさん
08/06/25 20:41:00
[1] 授業単元:プログラミングT
[2] 問題: URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3.1] OS: WindowsXp
[3.2] コンパイラ名とバージョン:visualstdio 2008
[3.3] 言語:C
[4] 期限:6月29日
[5] その他の制限:なし。
よろしくお願いします.
697:デフォルトの名無しさん
08/06/25 20:45:22
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語:C
[4] 期限:無期限
698:デフォルトの名無しさん
08/06/25 20:48:41
>>695
#defineは分かります!
tr,tcというのはトータルという事ですね。事故解決しました!
ありがとうございました
699:デフォルトの名無しさん
08/06/25 20:52:03
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
構造体person型を自己参照的構造体(下の例を参照)にし、配列に入力していたデータを単方向連結リスト構造に入力せよ。
ファイルからデータを入力したリストの先頭を引数として、入力した年齢と一致する人物をリスト内から検索し、該当人物がいれば表示するプログラムを作れ。
自己参照的構造体とは、構造体のメンバの中に自分と同じ型の構造体のポインタ変数を持つ構造体のことである。
単方向連結リスト構造とは、自己参照的構造体で次の要素をポインタを使って一定の方向に辿るデータ構造である。
(読む込むファイルの例)
入力するリストの先頭
1 20 田中
2 40 大田
3 35 井上
7 60 斉藤
4 23 佐藤
(自己参照的構造体)
struct person{
int no,age;
char name[40];
struct person *next;
}
[3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:VisualStudio2005
[3.3] 言語:C
[4] 期限: できるだけ早くお願いします。
700:デフォルトの名無しさん
08/06/25 21:36:28
>>699
URLリンク(kansai2channeler.hp.infoseek.co.jp)
701:デフォルトの名無しさん
08/06/25 21:37:40
>>699
URLリンク(kansai2channeler.hp.infoseek.co.jp)
702:デフォルトの名無しさん
08/06/25 21:42:07
>>699
[1]コード品質:模範解答(丸写ししても、独力で同じ品質のコード
書いても提出すると心証悪くします。)
[2]コード
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]普通の C処理系でコンパイルできます。
[4]品質を落としたコードを提出して下さいね。(難しいですけど)
703:デフォルトの名無しさん
08/06/25 21:45:49
>>699
URLリンク(kansai2channeler.hp.infoseek.co.jp)
704:デフォルトの名無しさん
08/06/25 21:47:56
>>700-703
なんでロダあらしてんの?ここのログも。
もうちょっと落ち着こw
705:デフォルトの名無しさん
08/06/25 21:52:02
>>704
>[4] 期限: できるだけ早くお願いします。
じゃね?w
706:デフォルトの名無しさん
08/06/25 21:55:54
>>704
意味が分からんけど >>702 は無関係
707:デフォルトの名無しさん
08/06/25 21:59:38
>>704
ちょこちょこみてるけど>>700-703が同じソースだったので。
消しては次消しては次、と。なんじゃろ?
>>702は無関係なのですか。
708:デフォルトの名無しさん
08/06/25 22:06:50
どなたか>>572お願いします
709:デフォルトの名無しさん
08/06/25 22:10:02
[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)
2^nの計算
n=0〜30に対して、2~nを計算して出力する。結果の最大桁数は10進数10桁であるので、
long int型の変数をしようすること。
なお、再帰法を用いてもよい
実行例
2** 0=1
2** 1=2
2** 2=4
・
・
・
2**30=1073741824
[3] 環境
[3.1] OS: (Windows vista)
[3.2] コンパイラ名とバージョン: (visual studio 2005 )
[3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします)
710:613
08/06/25 22:15:54
>>637
(>>684)
ありがとーございますっ!
自分もcygwin(windows)でコンパイルして、
それなりに検証しましたが、十分機能しているようです!
あとは自分で一文ずつ動きを見て、内部表現を書き出し、
改良していこうかと思います。
えっと、doubleは64bitの8byteであっていたかと思います。
なんにせよ、ありがとうございました!!
711:デフォルトの名無しさん
08/06/25 22:15:57
>>709
#include <stdio.h>
int main()
{
int i;
long int n = 1;
for (i = 0; i<=30; i++)
{
printf("2** %d=%d\n", i, n);
n *= 2;
}
return 0;
}
712:637
08/06/25 22:18:35
>>710
きれいじゃなくてごめんね。
やったことない内容だったのでこちらも楽しめました。
こちらこそありがとうw
713:デフォルトの名無しさん
08/06/25 22:19:51
>>711
ビットシフトの方がスマート
714:デフォルトの名無しさん
08/06/25 22:22:34
>>713
シンプルなプログラムだから
これでいいのだ
715:デフォルトの名無しさん
08/06/25 22:22:36
>>713
他人にケチつける前にソース書け
716:711
08/06/25 22:23:38
>>713
言うのは勝手だが、せめてパッチぐらいおいてって欲しかった。
9,10c9
< printf("2** %d=%d\n", i, n);
< n *= 2;
---
> printf("2** %d=%d\n", i, 1 << i);
717:デフォルトの名無しさん
08/06/25 22:24:34
>>713
勝手に自分基準でスマートとかぬかしてんじゃねーよw
718:711
08/06/25 22:24:40
ちょw擁護されてたwありがとうwww
719:デフォルトの名無しさん
08/06/25 22:25:31
>>713 の人気にぃ〜〜 shit!
720:709
08/06/25 22:26:55
うお、早いですねw
ありがとうございます。
721:デフォルトの名無しさん
08/06/25 22:28:47
まるで日本語、C言語トランスレータ君だなw
722:636
08/06/25 22:38:06
どなたか636をお願いします。
期限は後日6/26午後3時です。
課題の追加・補足はありません。
723:デフォルトの名無しさん
08/06/25 22:40:05
>>636 暗号文でおk
724:709
08/06/25 22:50:21
すいません、あと2問分からないのがあるので
できればお願いします。
[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)
2つの正の整数a,bを入力して、ユークリッドの互除法により最大公約数(GCM)を
求める。ユークリッドの互除法は次の手順により最大公約数を求める方法である。
(1)a,bの大きい方をa、小さい方bとする。
(2)aをbで割った余りをcとする。c=0ならばbが最大公約数となる。
(3)c≠0ならば
a←b
b←c
として、(2)に戻る。
実行例
入力データ:a = 88
b = 256
GCM = 8
[3] 環境
[3.1] OS: (Windows vista)
[3.2] コンパイラ名とバージョン: (visual studio 2005 )
[3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします、ポインタなどはまだ使えません)
725:デフォルトの名無しさん
08/06/25 22:52:17
失礼します
(1)階乗を再帰を用いずに表示
という問題なんですが教えてください。
726:デフォルトの名無しさん
08/06/25 22:53:28
printf("階乗");
727:デフォルトの名無しさん
08/06/25 22:55:10
ワロタ
728:636
08/06/25 22:56:16
>>723
いえ、内容は指定の暗号文を復号するプログラムを作成せよです。
課題内容で仕様など不明な箇所があったら言ってください。
729:デフォルトの名無しさん
08/06/25 22:59:16
>>728
ようするに "KOUKA" がどこに隠れてるか探せばいいんですよね?
730:709
08/06/25 23:12:49
もう1問。 すいません、よろしくお願いします。
[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)
直角三角形の斜辺の長さをc、ほかの二辺の長さをa、bとしたとき、
a^2 + b^2 = c^2
が成り立つ。これを三平方の定理という。
2以上100以下の整数a,b、cに対して
a^2 + b^2 = c^2
を満たす組(a、b、c)をすべて求める。ただし、a≦b≦cとする。
max(a^2、b^2)≦ a^2+b^2
であるから、aとbの値を先に設定して、cの値をmax(a、b)から1ずつ増やし
a^2 + b^2 = c^2 (解あり)
または
a^2 + b^2 < c^2 (解なし)
となるまで変化させて求めればよい。
なお、cの値を先に設定して、aとbを求める方法もある。
実行例
a=3 b=4 c=5
a=5 b=12 c=13
a=6 b=8 c=10
[3] 環境
[3.1] OS: (Windows vista)
[3.2] コンパイラ名とバージョン: (visual studio 2005 )
[3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします、ポインタなどはまだ使えません)
731:デフォルトの名無しさん
08/06/25 23:14:00
>>636
[1]回答レベル:検証済み
[2] コード:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3]環境 Windows/VC7/C およびLinux/gcc4.1.2
[4]コメント
ずらす方向の指定とかローテーションの必要性が明記されていなかったので
解が出た方法だけ。
すごいぞ!東京工科万歳!
732:636
08/06/25 23:14:43
>>729
はい、そうですお願いします。
(例え)
暗号文:huisdfhnauid
アスキーコード1行ずらし:oujafkadmioafa これは×
アスキーコード1行ずらし:KOUKAkiasdfkao これは「KOUKA」が含まれているので複合化成功
この段階でアスキーコードをずらす処理を終了して、複合化結果の「KOUKAkiasdfkao」を表示する。
という題意です。
733:デフォルトの名無しさん
08/06/25 23:17:09
[1] 授業単元: Cプログラミング
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windows vista
[3.2] コンパイラ名とバージョン:CPad for Borland C++Compiler
[3.3] C++
[4] 期限:6/27
[5] その他の制限:始めたばかりですが特に制限はありません。すみません、どうか宜しくお願いします
734:トランスレータ?ないない
08/06/25 23:20:41
>>730
ばかしょうじきに。
#include <stdio.h>
int main()
{
int a, b, c;
for (a = 1; a <= 100; a++)
{
for (b = a; b <= 100; b++)
{
for (c = b; c <= 100; c++)
{
if (a*a + b*b == c*c)
{
printf ("a=%d b=%d c=%d\n", a, b, c);
}
}
}
}
return 0;
}
735:636
08/06/25 23:21:18
>>731
ありがとうございます!!
それにしても動作させてみて笑いました、バレバレですねwww
まさかこんな痛い内容とは思いませんでした。
736:デフォルトの名無しさん
08/06/25 23:23:05
>>636
> 例えば「ABC]という文をアスキーコードを1つ後にずらすと「BCD」となる。
> このずらした数を総当りで探索すればよい。
KOUKA というなら Kが2つあるわけだから、当然ずらす前も
その該当の5文字には同じ文字が1文字目と4文字目にあるわけだが
暗号文:huisdfhnauid
ん〜〜〜・・・、小文字と大文字両方含まれる?
737:731
08/06/25 23:23:56
>>732
その例を見ると俺が作ったの全然ダメかもしれない。
1行ずらしとやらを行うと文字数増えるの?
あと問題付属のソースコードが構文エラーありまくりでした。
>>735
とおもったらこれでいいのかよ!
738:636
08/06/25 23:27:13
>>736
あ〜それは例えの暗号なので解けない&解はないです。
暗号文自体は「KOUKA]の文字列が入っていれば複合化成功なので、
大文字だけ、小文字だけ、大小文字混合のどれでも大丈夫だと思います。
とくに指示はなかったので
739:636
08/06/25 23:29:53
>>737
まぎらっこしくてすいません。
自分は>>731の回答で満足なので、本当にありがとうございます。
740:トランスレータ?ないない
08/06/25 23:36:05
>>724
入力方法が記載されていなかったのでカンマ区切りで入力するようにしました(ex. 4,24)
#include <stdio.h>
int main()
{
int ia, ib;
int a, b, c;
scanf("%d,%d", &ia, &ib);
if (ia >= ib) {
a = ia; b = ib;
}
else {
a = ib; b = ia;
}
c = a % b;
while(c != 0)
{
a = b;
b = c;
c = a % b;
}
printf("入力データ:a = %d\nb = %d\nGCM = %d\n", ia, ib, b);
return 0;
}
741:デフォルトの名無しさん
08/06/25 23:39:48
1] 授業単元: c言語
[2] 問題文(含コード&リンク):固定長テキスト形式のファイルの内容を構造体に読み込むプログラムを作成しなさい.
[3] 環境
[3.1] Windows
[3.2] VC 6.0
[3.3] 言語: C
[4] 期限: 6/26 12:00
[5] その他の制限: 固定長テキスト形式のファイルの内容を構造体に読み込むプログラムを作成しなさい
742:デフォルトの名無しさん
08/06/25 23:42:43
>>741
ファイルのレイアウト、もしくは構造体のレイアウトを提示すべきだと思う。
743:デフォルトの名無しさん
08/06/25 23:50:21
679です。どなたかよろしくお願いします…。
744:デフォルトの名無しさん
08/06/25 23:54:49
>>743
1
1文字ずつチェック
ヒットしたらカウンタ++
2
1行ずつチェック
ヒットしたらカウンタ++
745:デフォルトの名無しさん
08/06/25 23:55:13
>>742
すいません。
typedef struct{
int num;//出席番号
char class;//クラス
char name[14];//名前
}meibo;
構造体はこんな感じです。
ファイルには最大10人分のデータがあります。
よろしくお願いします
746:デフォルトの名無しさん
08/06/25 23:57:04
>>739
っつか、暗号文すべてを復元したのを比較するよりも
KOUKAを暗号化して、その暗号化されたものを含む場合で
判断した方が、暗号化する文字数を減らせないか?
747:デフォルトの名無しさん
08/06/26 00:13:32
>>744
ううう…どうにも思い浮かばないんだな。
だからここのスレに質問してるんだな。
プログラムお願いしますなんだな…。
748:デフォルトの名無しさん
08/06/26 00:15:23
>>679 アンカーつけておきますね
URLリンク(kansai2channeler.hp.infoseek.co.jp)
749:デフォルトの名無しさん
08/06/26 00:17:27
[1] 授業単元:プログラミングU
[2] 問題文(含コード&リンク)
問題:URLリンク(kansai2channeler.hp.infoseek.co.jp)
サンプル:URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:WindowsXP
[3.2] コンパイラ名とバージョン:VisualStudio2005
[3.3] 言語:C++
[4] 期限:2008年6月26日12:00まで
[5] その他の制限
:問題の仕様、アルゴリズムに従うこと。
問題が長いですが、どうかよろしくお願いします。
750:デフォルトの名無しさん
08/06/26 00:20:08
[1]C
[2]URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3](1)LINUX
(3)C
[4]6月28日
[5]関数は使わず if for などの文だけでお願いします。
前回も投稿させてもらったのですが
桁数が3桁 4桁と増える場合にスペースを入れるという条件があるのを書き忘れてました
どなたかお願いします。
751:デフォルトの名無しさん
08/06/26 00:25:53
>>679 No.1
URLリンク(kansai2channeler.hp.infoseek.co.jp)
752:709
08/06/26 00:29:55
>>734
>>740
普通に動きました♪
ありがとうございます。
753:デフォルトの名無しさん
08/06/26 00:53:29
>>679 No.2
URLリンク(kansai2channeler.hp.infoseek.co.jp)
754:デフォルトの名無しさん
08/06/26 00:59:23
>>750
スレリンク(tech板:961番)
URLリンク(kansai2channeler.hp.infoseek.co.jp)
755:デフォルトの名無しさん
08/06/26 01:02:07
>>746
減らせますね。そのように作ってコードを載せてからいいましょうよ。
756:デフォルトの名無しさん
08/06/26 01:08:35
>>751,>>753
ありがとうございます!
soremisitemo>>753hanyuuryokunagai…。
757:デフォルトの名無しさん
08/06/26 01:09:23
>>755
> コードを載せてからいいましょうよ。
はぁ?コードを書いたわけでもないお前に言われたくねーよ
お前こそ言うくらいなら書けよ
758:デフォルトの名無しさん
08/06/26 01:12:25
>>753
strcmp使わないでわざわざ効率悪い関数自作するのはなんで?
759:デフォルトの名無しさん
08/06/26 01:14:26
>>750
URLリンク(kansai2channeler.hp.infoseek.co.jp)
>>756
名前の入力が面倒なら、入力する名前を1行ずつに表示している部分をコピーして
入力受付の場面で貼り付けてやれば、連続して改行ごとに区切って取り込んでくれるよ。
不要なら後は何も入力せず改行を連打。
760:755
08/06/26 01:14:54
>>757
俺コード書いたよ。>>731がそれ。
文脈で分かると思ったんだけど、ごめんな。
761:デフォルトの名無しさん
08/06/26 01:16:44
>>758 = >>755
お前がコードを書けよw
762:デフォルトの名無しさん
08/06/26 01:19:02
>>758
> strcmp使わないで
使ったのをお前が書けば良いだろ、果たして うまく いくかな?w
口先だけってのはそういうことだ。
763:731=755
08/06/26 01:19:27
本人じゃないとわめかれても困るのでソース削除しといた。
764:デフォルトの名無しさん
08/06/26 01:24:48
>>762
それがstrcmp使わないでnamecmpを使う理由だと思っていいのかな?
strcmpじゃ比較がうまくいかないと。
765:デフォルトの名無しさん
08/06/26 01:31:08
1人幼い子がますね
766:デフォルトの名無しさん
08/06/26 01:32:52
>>762
あ、もしかしたらstrncmpと勘違いしてるかも?
strcmpは完全一致したときだけ0返すお。
namecmpが桁数チェックとかしてるのって
strncmp("abc", "abcd", 3)が0返す挙動に対する考えに見える。
違ったらごめんね。
ただ、だからといってstrcmp使えよとは言わないけどなあ。
あくまでも宿題やってるうちは車輪の再発明万歳だと思うし、
俺が教授なら努力賞あげる。
767:デフォルトの名無しさん
08/06/26 01:33:23
>>761 = >>762 のことですね、わかります
768:デフォルトの名無しさん
08/06/26 01:34:46
>>759
ありがとうございます
申し訳ないんですが、
何故 printf("%*c ",w,0x20); の"%?"は1つしかないのに後ろに2つ値があるんですか?
普通は printf("%d",12);みたいな感じで1対1じゃないんでしょうか?
ショボイ質問ですが分からないので教えて下さい。
769:デフォルトの名無しさん
08/06/26 01:35:23
strncmpって一致したのにfalseを返すのかって一時思ってたことがある
770:デフォルトの名無しさん
08/06/26 01:36:54
>>766
<string.h>使わないならともかく、使ってるんじゃ再発明もないと思うがなあ
771:デフォルトの名無しさん
08/06/26 01:38:35
>>768
URLリンク(www.geocities.jp)
適当にぐぐっただけだけど最小フィールド幅の項を参照するといいよ。
キーワードは「出力変換仕様」。scanf系に使うのは「入力変換仕様」ね。
772:デフォルトの名無しさん
08/06/26 01:40:35
>>768
その%dの間にある * は、%3d といったように、最低の桁数を指定できる書式。
後ろの引数には * で桁数を指定するのに w を用いている
最初に n から桁数を求めて w に入れている
この手法が駄目なら、wの分だけfor分を使ってスペースを入れるとか
773:デフォルトの名無しさん
08/06/26 01:58:30
>>772
そうだったんですかありがとうございます
問題の方なんですが
例えばn=10なら
2 3 4 5 6 7 8 9 10 11 12………98 999 1000 1001
と言うように
二桁の場合は2回スペース
3桁の場合は3回スペース
4桁の場合は4回スペース
というようにしたいのですがその場合も教えて下さいませんでしょうか?
大変すいません…
774:773
08/06/26 01:59:39
>>773
間違えました
2桁なら3回スペース
3桁なら4回スペース
4桁なら5回スペース
でした…
775:デフォルトの名無しさん
08/06/26 02:07:26
>>774
んじゃ、そのときの最大公約数の桁数を求めて、最小限必要な桁数 w との
差をとって繰り返して入れてみては?さぁ考えてみよー
776:デフォルトの名無しさん
08/06/26 02:11:10
それよりも本当にそのように表示したいのかが気になるところではある
各列幅がnの桁数 + 1になるようにしたいなら分かるんだけどね
777:デフォルトの名無しさん
08/06/26 02:14:50
またおまいか、憶測野郎。自分が思った疑問なら何でも投げかける
自分が思った通りじゃないからという理由だけで。相手が既に
こうだと言っているにも関わらず、自分はそれに対して
こうするね、という意見を出すから、お前人の話聞いてんのかっ!?
はぁ?俺はそんなことを聞いてんじゃないよって言い返される。
孤立する人間のパターンそっくりだな。
778:デフォルトの名無しさん
08/06/26 02:18:41
このスレで孤立してるのはお前だけだからw
779:773
08/06/26 02:22:40
>>775
ますますわかりません…orz
>>776
上に書いた例はスペースの個数が反映されなく全て1回のスペースで書かれてしまいましたが
言おうとしてることはまさにそうです
780:デフォルトの名無しさん
08/06/26 02:24:24
できたら問題文を一字一句正確に写したものをあげてくれない?
781:デフォルトの名無しさん
08/06/26 02:35:19
>>778
自己紹介乙、そういう言い返しをする時点でバレバレなんだよ
782:デフォルトの名無しさん
08/06/26 02:36:16
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS: Windows XP
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C
[4] 期限: 来週まで
[5] その他の制限: Which文は×
おねがいします
783:デフォルトの名無しさん
08/06/26 02:38:05
>>750
[1]品質:未検証
[2]コード:直接記入
void main(void){
double n,i,j,a,b,tmp;
do{printf("n=(n>=3)");fscanf("%d¥n",&n);}while((n<3)||(n>=1000));
fprintf("%3 s ","");
for(i=3;i<=n;i++)printf("%-3d",i+1);
printf("¥n");
for(i=2;i<n;i++){
sprintf("%3d:",i);
for(j=3;j<i+1;j++)printf("%3 s","");
for(j=i+1;j<=n;j++){
a=i;b=j;
whlie(a!=0){tmp==b % a;b==a;a==tmp;}
fprintf("%-3d",b);
}
printf("¥r");
}
return 0;
}
[3] Windows Visual C++ 6.0 Cモードコンパイルを想定
[4]すんごく難しい課題でした。ユークリッドのアルゴリズムは
良くわかりません。参考にどーぞ
784:デフォルトの名無しさん
08/06/26 02:38:29
あくまでオプション的な事なのでできる人だけやれと講義の最後に口伝えで言われたので書くにも書けないんです…すいません
言ってたことは 各幅が nの桁数 + 1 です。
785:デフォルトの名無しさん
08/06/26 02:41:29
>>774 >>750
URLリンク(kansai2channeler.hp.infoseek.co.jp)
>>778 >>776
クソースも書かずにクソレスとな?
786:デフォルトの名無しさん
08/06/26 02:43:18
>>785
マジでありがとうございます。
マジで感謝します。
787:デフォルトの名無しさん
08/06/26 02:44:02
っつか、やっぱ普通に %*d 使えYO!w
788:デフォルトの名無しさん
08/06/26 02:47:19
>>786
>>773の要求とは全く違うようにしか見えないが、それで本当にいいの?
789:デフォルトの名無しさん
08/06/26 02:47:55
>>788
> それで本当にいいの?
またお前か・・・自分がレスしている相手のレスが見えんのか?
790:デフォルトの名無しさん
08/06/26 02:48:44
>>755 → >>757 → >>760
>>776 → >>777 → >>779
どっちもスタートは俺なんだけどさ、どうしたらいい?w
過去にも割と噛み付かれてるんだよねwww
>>785
クソレスじゃなくて確認しただけだお。ソース作成乙。
791:デフォルトの名無しさん
08/06/26 02:52:04
誰でも同一人物認定して噛み付くからな。
792:デフォルトの名無しさん
08/06/26 02:52:55
>>789
お前には聞いてねーよ、引っ込んでろカス
793:デフォルトの名無しさん
08/06/26 02:55:12
>>783
void main ひょっとしてギャ(ry
794:デフォルトの名無しさん
08/06/26 02:55:15
もうお前らトリ付けろよwww
IDがないからグチャグチャだぜ…
795:デフォルトの名無しさん
08/06/26 02:56:31
>>792
誰でも同一人物認定して噛み付くからな。
っつか、なんか最近必死な奴が紛れ込んだよなw
新学期、4月を境に分かりやすいw
2ちゃん慣れしてないだろ、こいつ?
前々からこのスレを見ている人にはバレてんぞ、ヘタレ小僧
もちっと 煽り耐性 を身につけてから出直せ。
でなきゃ、こんな場所じゃまずやっていけないよ。
お前みたいな揚げ足取りもいるからな。
796:デフォルトの名無しさん
08/06/26 03:00:57
長文書いて、レス回数が一番多いヤツのことを必死って言うんだよw
797:デフォルトの名無しさん
08/06/26 03:02:07
>>1
> 気に入らない質問やその他や発言はスルーの方向で。
おいっ、新入りファビョり厨、↑が読める?読めない?w
URLリンク(jp.youtube.com)
ファビョり厨「読めないわけないだろっ!お前日本語知ってのかっ!?日本語でおk」
ってなるのがオチだからな。触らぬ神にたたり無し、日本語が読めない奴は以後スルーで。
ここでは時には エスパー も必要さ、(チェリー)ボーイ?
あと、特徴がモロに出てるよ。余計な一言、罵倒。バカ、アホ、カスなど
陰湿に、不必要に相手を煽る、罵る。その時点でバレてるって言っただろ?
人格、人間性が言動に出ているとあれほど忠告したのに、駄目な奴は何をやっても駄目なんだな。
798:デフォルトの名無しさん
08/06/26 03:04:21
「またお前か」←これはもう勘弁してくださいwww
799:デフォルトの名無しさん
08/06/26 03:05:57
彼のいうエスパーとは、一般人なら普通に理解できる>>26のすまんの意味が理解できずに
>>34 >>37
とファビョることですw
800:デフォルトの名無しさん
08/06/26 03:08:32
>>797
全部、お前が言うなwってことだらけじゃねーかw
801:790
08/06/26 03:10:44
>>799
アラヤダ!申し上げにくいんだが>>26も俺なんだorz
802:デフォルトの名無しさん
08/06/26 03:12:23
そして俺は32だったりするw
803:デフォルトの名無しさん
08/06/26 03:13:34
おまえらもう寝ろ
こんな時間にからかって遊ぶな
804:デフォルトの名無しさん
08/06/26 03:14:50
>>789
うpして2分後のレスで実行して動作チェックまで完璧にしたと思うのか?
ただソースがあがってるのを見て御礼しただけの可能性の方が高いだろ。
805:デフォルトの名無しさん
08/06/26 03:16:47
>>802-803
はあくした
806:デフォルトの名無しさん
08/06/26 03:19:34
>>804
> うpして2分後のレスで実行して動作チェックまで完璧にしたと思うのか?
あのソースをコンパイルして実行したのなら、今になってそれすら言っても
説得力ねーよ・・・またお前は憶測で物を言ったな。相手がしていないという証拠は?
何もかもがお前の思い込みだって気づけよ。
807:802
08/06/26 03:19:35
そういや>>26のリンク先も俺だったわw
808:デフォルトの名無しさん
08/06/26 04:08:02
>>572
>>708
URLリンク(kansai2channeler.hp.infoseek.co.jp)
809:デフォルトの名無しさん
08/06/26 04:49:55
回答者もテンプレに従えとは言わんが、
アンカー+直リン||直ペーストだと
通りすがりの女の娘に声をかけて、股間を指差して見せて喜ぶ
露出狂のオヤジみたいで、スレが荒れる傾向にある。
やはり、コード品質とかコメントとか、書いてやったほうが
いいんではないかい?
810:デフォルトの名無しさん
08/06/26 05:03:55
コメントも情報も何も無しでソースだけ見せられてもな
回答者自身のソースが無駄になるだけ
てか、自分が○○だから他人も○○だ、なんて考え持つなよ
811:デフォルトの名無しさん
08/06/26 05:11:09
>>809
お前国語1だったろwww
812:デフォルトの名無しさん
08/06/26 05:35:17
まぁ、麻呂のクソースにはいくら突っ込まれようが
初心者レベルに落としたクソース ということで免罪符を貼ってます故
意見されても訂正する気がござらんので、言うくらいなら
訂正して賜う
813:デフォルトの名無しさん
08/06/26 05:55:02
麻呂のソースは初心者レベルじゃねーだろ。
間違った方向に勘違いした初級者レベルってところだ。
814:デフォルトの名無しさん
08/06/26 06:06:17
>>813
> 間違った方向に勘違いした
お前が理解できないだけだろ。妬み僻みをあらわす発言がしてたのお前だろ?w
815:デフォルトの名無しさん
08/06/26 06:07:05
>>813
> 初級者レベル
言うまでもない、無理に初心者っぽくしているとは言え
何が初心者か?なんて基準がないから。
にしても、貶しすぎ。お前のレベルの低さが露呈しているぞ。
816:デフォルトの名無しさん
08/06/26 06:07:19
麻呂で行くのかファビョるのかどっちかに統一しろよw
817:デフォルトの名無しさん
08/06/26 06:08:41
>>813
何か言わなきゃ気が済まないんだよな、お前って。
マジうざい。だから周りから嫌われているって気づけよ、基地外。
そこまで言うなら、お前は必ずソースを書けよ、意見をする前に。
そして意見をするなら。間違いの指摘という指摘すらせずに
そんなのは、って自分の主観でしか言わんだろ。
あれだろ、意見をすると自分の無知を露呈するから怖くて
そんなのはと自分が気に入らなきゃ蹴るタイプだろ?
そんな奴は人生を失敗した負け組みくらいだぞ。
818:デフォルトの名無しさん
08/06/26 06:26:08
>>813
前に、LISTの課題で、CSV形式とバイナリー形式での保存のときに
必死に噛み付いていて、結局お前が答えずに口先だけで負けたから
悔しいんだろ?初心者レベルに落とすってのがどれだけ難しいか
一度知ってしまうと、便利なものは使わずにはいられないもんだぞ。
ましてや、それが費用が掛かるわけでもなく、単にコードを記述するだけ。
お前のような他人を貶すような口出しをする奴は、人間としてもレベルが高くないどころか
ワレこそはと、自分の主観や主張のみを押し切るタイプだろ。
819:デフォルトの名無しさん
08/06/26 06:26:21
すみません
どなたか>>749お願いできないでしょうか
820:デフォルトの名無しさん
08/06/26 06:28:21
必死に噛み付いてきて、結局自分は答えなかった粘着↓
スレリンク(tech板:80-87番)
スレリンク(tech板:402-411番)
何か言うと、それに反応せずにはいられない一言居士。分かり易いだろ?
この世に後10年くらい生きて、様々なタイプの人間を見て観察してみろ。
自分という人間がどういったタイプに当てはまるか、分かるから。
この世に自分は唯一無二とは言え、大まかに性格や行動パターンってのは
過去に存在した何かに準ずるものがあって、分かりやすいんだよw
821:デフォルトの名無しさん
08/06/26 06:32:30
そうやって過去スレのリンク張るってことは専ブラ使ってるのか……
一度今までの自分の書き込みを冷静振り返ってみることをお勧めするよ。
822:デフォルトの名無しさん
08/06/26 06:33:24
"に"が抜けた。
冷静 → 冷静に な。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4264日前に更新/251 KB
担当:undef