[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 10/23 23:03 / Filesize : 305 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 22:18:31 ]
あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他や発言はスルーの方向で。

【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう.
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。

【質問テンプレ】
[1] 授業単元:
[2] 問題文(含コード&リンク):()
[3] 環境
 [3.1] OS: (Windows/Linux/等々)
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)

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

【前スレ】
C/C++の宿題を片付けます 106代目
pc11.2ch.net/test/read.cgi/tech/1209810861/

378 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 13:56:14 ]
[1] 授業単元:プログラミング
[2] 問題文:スタック,キューの理解
   リスト構造によるスタックとキューそれぞれについて,格納されている
   要素数を取得する方法を利点,欠点を交えて説明せよ。
   また,取得した要素数の用途について考察せよ。
[3]言語:C
[4] 期限:2008年6月5日まで
プログラム組む問題ではないですが、調べてもわからなかったのでお願いします。

379 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 13:58:46 ]
あれホント。よく見てなかったよー。
ある程度の大きさのバッファに読み込んで、それを逆にして出力を
繰り返してるものだと思い込んでた。

1バイトずつ読んで書いてより、ある程度のバッファ単位で処理したほうが
多分速くなると思うんだ。HDDのキャッシュ的に。

380 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 14:04:50 ]
>>378
www.mm.ics.saitama-u.ac.jp/~ohsawa/Lect/dstr/04.pdf

スタックというのはアセンブラなんかでcall命令を使う際に
レジスタの内容や戻り先アドレスを格納するのに使ったりしますね。
www.geocities.jp/naosacra/mops/forbeginner/8.html
これをリスト構造でってのは使うことあるのかな?
アセンブラなんかだとスタックポインタというのがあってそれで管理してるんですけどね。

キューというのはメッセージキューなんかで使われるものです。
FIFOとかいう言葉も関連します。
まあこれはリスト構造を使って実現することが多いですけど。

381 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 14:05:00 ]
スタックとキューの実装方法によらない?
リスト構造であるという点で同じであれば何か小細工をしない限り
要素数を数えるコストは同じだと思うので、利点欠点は無いと思う。
用途は制限かけたいときに使えるとかじゃないの?

382 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 14:06:25 ]
>>379
windowsの場合だと一度読みに行くとキャッシュにあがってるから
1バイト読みでも問題ないんじゃないかな?
ただファイルの最終から読む場合はキャッシュの扱いはわからんw

383 名前:373 mailto:sage [2008/06/02(月) 14:28:52 ]
>>366
言われたとおりバッファ消しました
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6769.txt

384 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 14:41:52 ]
>>371 をやり始めたんだが、なんかその補足に書かれていることから
すでに間違っているが・・・とりあえず適当に書き換えておきまつ

385 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 15:45:44 ]
判定処理もないじゃん。

386 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 15:50:46 ]
>>366
>その際、逆順バイト列内に0x54,0x450x53,0x54があればファイルの先頭からのオフセットを表示する
>また、ファイル長は不定とする
これってさ

>その際、逆順バイト列内に0x54,0x45,0x53,0x54があればファイルの先頭からのオフセットを表示する
>また、ファイル長は不定とする

ということでOK?
後オフセットを表示するってのは標準出力でいいのかな?



387 名前:デフォルトの名無しさん [2008/06/02(月) 15:52:50 ]
[1] 授業単元: プログラミング
[2] 問題文:簡単なアニメーションを考案して作成せよ(できればマウスやキーイベントも考慮)
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: gcc 
 [3.3] 言語:C
[4] 期限:2008年6月2日24時まで

まったくわかんねー\(^o^)/

388 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 15:54:35 ]
>>387
なんだよ、その漠然とした例題はw

389 名前:デフォルトの名無しさん [2008/06/02(月) 15:58:43 ]
自分でやれ

390 名前:デフォルトの名無しさん [2008/06/02(月) 16:00:13 ]
>>388
#include <math.h>
#include <GL/glut.h>
#include <time.h>
float R_ball=0.1, x_ball=0.0, y_ball=0.5;
float dx, dy;
float g=0.01, elasticity_x=0.98, elasticity_y=0.98;

void gdisc(float xc,float yc, float r){
float x, y, dt; int i,N=60;
dt=2.*M_PI/(float)N;
glBegin(GL_POLYGON);
for(i=0; i<N; i++){
x=xc+r*cos((float)i*dt); y=yc+r*sin((float)i*dt);
glVertex2d(x,y);
}
glEnd();
}
void myDisplay(void){
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0., 0., 0.);
gdisc(x_ball,y_ball,R_ball);
glutSwapBuffers();
}
void myIdle(){
x_ball=x_ball+dx;


391 名前:デフォルトの名無しさん [2008/06/02(月) 16:01:12 ]
if(x_ball<=-1.+R_ball){
x_ball=-1+R_ball;
dx=-dx*elasticity_x;
} else if (x_ball>=1.-R_ball){
x_ball=1.-R_ball; dx=-dx*elasticity_x;
}
y_ball=y_ball+dy;
if(y_ball<=-1.+R_ball){
y_ball=-1.+R_ball; dy=-dy*elasticity_y;
dx*=0.99;
} else if (y_ball>=1.-R_ball){
y_ball=1.-R_ball; dy=-dy*elasticity_y;
dx*=0.99;
}
dy=dy-g;
Sleep(1);
glutPostRedisplay();
}
int main(int argc, char *argv[]){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA);
glutCreateWindow("Ball");


392 名前:デフォルトの名無しさん [2008/06/02(月) 16:01:50 ]
glClearColor(1.0, 1.0, 1.0, 0.0);
glutDisplayFunc(myDisplay);
glutIdleFunc(myIdle);
srand(time(NULL));
dx=0.01*(rand()%5+1);
dy=0.01*(rand()%5+1);
glutMainLoop();
return 0;
}
自力でここまでやりましたがこれだと駄目と言われたので
これに何らかのキーボードイベントを入れたいわけです

で、そのキーボードイベントの入れ方がわかんねー\(^o^)/
というわけです。



393 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:02:13 ]
ソース貼るならできればテキストファイルをどこかロダにあげて
そのリンクを・・・w

394 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:03:55 ]
>>392
pc11.2ch.net/test/read.cgi/tech/1183861564/83 なんてどう?

395 名前:デフォルトの名無しさん [2008/06/02(月) 16:06:37 ]
アニメーション
1 アニメーション
ピクセルの色を制御することができれば、図形を自由自在に表現することができるようになる。更に、図形の
位置、形状または色を徐々に変化させて図面を更新することにより、アニメーションの実現が可能である。そのポ
イントは
1. 図形の位置、形状または色を少し変化させる
2. 変化した図面を再描画する
3. 手順1 へ戻る
の3 点にある。「繰返して図形に変化を与える」には関数
void glutIdleFunc(void (*f)(void))
を用いて「変化を与える」関数fを指定する。指定された関数fは繰り返して呼び出されるため、その中に図形
の座標、形状、色を変化する文があれば、定期的に図形に変化を与えることになる。更に、変化した場合再描画
する関数
void glutPostRedisplay()
を呼び出すことで図面を更新することを指示する。
関数glutIdleFunc で指定した関数f はイベントが起きていない限り繰返して呼び出される。図面更新の時間間
隔の調整はSleep(int seconds) 関数が有効だが、繰り返しの時間間隔はやはりCPU の性能やコンピュータに与え
られているタスクにより異なる。CPU の性能などによらずに時間間隔を制御したい場合は、関数
void glutTimerFunc(unsigned int msecs, void (*f)(int value), int value)
を使うことが可能。この関数は指定されたミリ秒数msecs の後に関数f(int value) を1 回呼び出す。また、呼び出
しを区別するために、与えられた整数value を関数f に渡す。関数glutTimerFunc を用いてアニメをつくるには、
繰り返しを実現するために関数f(int value) の中で最後にglutTimerFunc を再度呼び出すように指示しなければ
ならない(glutIdleFunc を用いる場合は不要)。
以下は例を用いてglutIdleFunc の使い方を説明する。ウインドウの中で横を移動し、境界に当たると移動方向
を逆転するボールのアニメーションを考えよ。このアニメは塗りつぶした円形の描画と上記の仕組みを用いて実
現でき、プログラムBall.c を用いて簡単に説明する。

396 名前:デフォルトの名無しさん [2008/06/02(月) 16:06:56 ]
>>394
たしかに動くけどw



397 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:09:58 ]
int main () {
for(;;)
{
:処理
i
f (Esc押されたら) break;
}
return 0;
}
これでいいんじゃね(>ω< =3

398 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:11:35 ]
>>397
それじゃあ無理だろw
ソース全部貼ってるのが主だとすればgl使ったものなので

399 名前:デフォルトの名無しさん [2008/06/02(月) 16:16:35 ]
>>398
glです。

できれば何かのキーを押したら重力がなくなるとかのイベントがいいです

400 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:16:37 ]
>>341
ありがとうございます!

401 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:25:02 ]
>>387>>390-392>>395
のようにじゃなくてソースをどこかに上げたほうがいいと思うぞw

>>1にロダも貼ってあるし

402 名前:デフォルトの名無しさん [2008/06/02(月) 16:32:31 ]
void myKeyboard(unsigned char key, int x, int y){
switch(key){
case 'a':
g=0.;
  glutPostRedisplay(); break;

課題のサンプルがあってこんなのを入力したらなんかできましたw

ありがとうございますw

403 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 16:35:19 ]
>>402
>>387なのか?
名前欄に質問した際のレス番号いれてくれないとわかりにくいぜ。

404 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:12:12 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6772.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:Vidual Studio2003
 [3.3] 言語:C++
[4] 期限:今日の23時59分59秒まで
[5] その他の制限: 繰り返し関数return使えば問題ないと思われます。よろしくお願いします


405 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:16:40 ]
>>404
www.geocities.jp/supermisosan/newtonhou.html

406 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:16:56 ]
>>292>>334のものですが過去レポという最強のものを手に入れたのですがそれがC言語なのです。
出来れば今日中にお願いしたいのですが、↓のものをC++に変換して頂けないでしょうか?

#include<stdio.h>
#include<stdlib.h>
#include <math.h>

double markov(int K,double alfa,double *a_coeff,double *mem);

void main(void){
int i;
double *a_coeff,*mem,alfa,*x;
FILE *fp;

int N=1024,K=1;
char *file_name="output.dat";

if((fp=fopen(file_name,"w"))==NULL){
printf("%s can't open",file_name);
exit(-1);
}
x=new double [N];
a_coeff=new double [K];
mem=new double [K];
for(i=0;i<K;i++){
mem[i]=0.;
}
a_coeff[0]=0.1;
alfa=sqrt(1.-a_coeff[0]*a_coeff[0]);

for(i=0;i<N;i++){
x[i]=markov(K,alfa,a_coeff,mem);



407 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:17:20 ]
if(i!=0){
printf("%d\t%f\n",i,x[i]);
fprintf(fp,"%d\t%f\n",i,x[i]);}
}
printf("\n");
fprintf(fp,"\n");

delete[] mem;
delete[] a_coeff;
delete[] x;
fclose(fp);
}

double markov(int K,double alfa,double *a_coeff,double *mem)
{
int i;
double u1,u2,g,x=0.,PI=3.1415926;

u1=(1./(RAND_MAX+1.))*rand();
u2=(1./(RAND_MAX+1.))*rand();
g=sqrt(-2.*log(1-u1))*cos(2.*PI*u2);


for(i=K-1;i>=0;i--){
x+=a_coeff[i]*(mem[i]);
if(i-1>=0) mem[i]=mem[i-1];
}
mem[0]=alfa*g-x;

return (mem[0]);
}


408 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:19:07 ]
>>405
これみても分からない俺ガイル。。
タスケテ('A`)

409 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:22:35 ]
>>406
最初の三行を
#include <cstdio>
#include <cstdlib>
#include <cmath>
using namespace std;
に変えて、
void mainの行を
int main() {
に変えればOK。

410 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:27:21 ]
>>409
即レスありがとうございます!大変助かります

411 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:34:04 ]
>>410
>409でいいのか? 本当にいいのか?w

412 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:41:53 ]
>>411
どうなんでしょうか?ww
 >>409=>>411ですか?


413 名前:411 mailto:sage [2008/06/02(月) 19:48:07 ]
要は、>406の要求する「C++」が何を指しているのか、だな。
C++としてコンパイルできるだけでいいのなら、>409でいい。
iostreamを使わないといけないなら入出力周りを作り直す必要がある。
まぁまさか、この程度でオブジェクト嗜好に則ってクラス設計しろってことはないだろうけれど。

414 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 19:55:19 ]
>>413
なんか難しいんですけど、iostreamを使ったやり方だとかなり変更が必要ってことですか?
出来ればiostreamの方がいいのですが。

415 名前:371 mailto:sage [2008/06/02(月) 19:59:19 ]
>>372を見ましたがよくわかりませんでした…。
各関数単体でもよいのでよろしくお願いします。

416 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:00:07 ]
過去レポを手に入れたが理解できず、C++にコンバート依頼まで
するような相手にみんな親切だな。
他人のソースコードを許可無くうpしてんのかなあ



417 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:01:41 ]
>>415
/* 循環リストに要素を追加する */
void addlist(void)
/* 循環リストから要素を削除する */
void deletelist(void)
/* 循環リストの内容を表示する */
void showlist(void)
という関数が記載されていたが、ほしいのはこれじゃないってことー?

418 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:02:37 ]
>>414
つーか、>406もC++だね。古い流儀で書かれているけど。
寧ろ、new/deleteを使っているからCじゃコンパイルできない。
いい練習だと思って、自分でiostream版に書き換えたら?

419 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:36:46 ]
>>418
ちょっと考えましたけど自分にはちょっと・・・・。
甘えてばっかりいたらいけないと思いますが、提出期限が明日で時間的に厳しいので教えていただけるとうれしいです。


420 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:52:26 ]
>>419
提出期限がよくわからない。
結局いつが期限なの?

421 名前:415 mailto:sage [2008/06/02(月) 20:53:44 ]
>>417
欲しいのは大体それと同じなんですが、
例えばaddlistなら追加するデータがint型の整数じゃなくてData型の整数と文字じゃないですか?
それをどうやって渡すのかよくわからなくて・・・

422 名前:デフォルトの名無しさん [2008/06/02(月) 20:55:02 ]
すいません >>269言語はC++でコンパイラはVisual Stadio2003です。宜しくお願いします。

423 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:56:12 ]
>>420
すいません、提出期限は明日です。
期限: 2008年6月1日24:00だったのは他のレポートもありましてそれの兼ね合いからです。

424 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:57:04 ]
>>421
addlistのなかで整数と文字を入力させて、それをData構造体に放り込めばよいのでは?

425 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:04:39 ]
>>424
いやそんなことしなくても>>372のサンプルで>>421で言ってることに十分対応できる。

>>371の実行例が最初よくわからんかったけど

(0) Insert a Node (1) Delete a Node (2) View the List (3) exit :

でコマンド待ち

0でエンターすると

No.:
Name:

入力になって終わると

(0) Insert a Node (1) Delete a Node (2) View the List (3) exit :

を再度表示なので





426 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:07:50 ]
>>423
明日の何時なの?ここでは「自分にはちょっと・・・・」とか言ってるのにさ、
自信満々に「作ってきましたあ!」って言って丸パクリの過去レポ出しちゃうの?

俺がその立場なら「…え?これで、、、マルコフ情報源、生成できる?ねぇ?」
とかカマかけられただけでションベン漏らすね。間違いない。
そんなこと想像したらもう今日寝れねえな。



427 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:08:52 ]
>>419
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6773.txt

428 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:13:14 ]
>>427
ちょっと見てみたんですけど自分には難しすぎますので教授を
納得させられるようなコメントを記述してもらえませんか?
提出が明日なので何とかお願いします。

429 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:17:39 ]
>>371
作りかけ
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6774.txt

addlistのところは参考程度にいじった

430 名前:427 mailto:sage [2008/06/02(月) 21:20:13 ]
>>428
俺はC++に直しただけであってマルコフなんたらってのは知らん

431 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:22:06 ]
しかし、勉強になるし面白いなw

社会に出たらほとんど組まないであろうニュートン法のプログラムとかw
さすがに微分積分とか苦手なんで無理w

432 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:24:34 ]
俺もこういう数学的な何かを活用する場面に出くわした事はないなー。
会社によってはそればっかりになるんだろうけどねw

433 名前:406 mailto:sage [2008/06/02(月) 21:34:52 ]
>>426
明日の4時です。でもその前に講義があるので実質明日の午前中までです。
ゼミの先生はあまり突っ込んで聞いてこないので大丈夫だと思います。

>>427
助かりました、本当にありがとうございます!

>>428
偽者が現れるとはw

434 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:36:51 ]
>>371の例題って不親切だよね。
リスト追加の際は表示する例が載ってるけど
ノード削除、ノードの表示に関する仕様が
無い。
どうやって作れっていうんだろうな。

435 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 21:41:27 ]
センスで

436 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:17:42 ]
[1] 授業単元:プログラミングU
[2] 問題文(含コード&リンク):0〜20までの実数の乱数を発生させなさい
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:Vidual Studio2005
 [3.3] 言語:C++
[4] 期限:2008年6月3日12:00まで
[5] その他の制限:特になし
(double)rand() / ((double)RAND_MAX + 1)が0から1までの乱数で
(rand() %20 + 1)が0〜20までの整数の乱数というのはわかるのですがどう組み合わせればいいかお願いします。



437 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:21:41 ]
c言語というより、知能の問題な気がする

438 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:31:08 ]
>>436
>(double)rand() / ((double)RAND_MAX + 1)が0から1までの乱数で
>(rand() %20 + 1)が0〜20までの整数の乱数
こう思う時点で問題あり...

439 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:31:16 ]
>>436
ぜ、0から1までの乱数を20倍してみてはいかがでしょうか。。。

440 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:33:59 ]
>>371 は麻呂がクソースを書いている最中でおじゃ〜る

441 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:36:14 ]
rand()なんて使ったこと無いや。
ちなみにRAND_MAXの値って環境で変わるの?

442 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:36:41 ]
>>436さんに意見するな!!!!

443 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:40:22 ]
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6776.txt
[3] 環境
 [3.1] OS:Windows XP
 [3.2] コンパイラ名とバージョン:gcc 3.4
 [3.3] 言語: C言語
[4] 期限:出来るだけ早くが望ましいです。
[5] その他の制限: loadする際にmallocやfseekなど使用、構造体を3つ用意、グローバルなポインタも用意すること

かれこれ、1週間悩んでます。完璧にとは言いません、どなたか力を貸してください。

444 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:42:20 ]
>>443
悩んだなりに作ったソースプリーズ

445 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:44:28 ]
しかしコマンドでaddとかってPC88のころのAVGみたいだなw

446 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:45:03 ]
>>443
興味深いなあ。
生徒によって異なる実装が行われやすいような問題になってるね。



447 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:47:03 ]
コマンドの扱いってどうすればいいんだろ?
addt
とか間違った場合の挙動は?

何もsaveしてない状態でloadしたら?

設問ってこんないい加減なの?

448 名前:421 mailto:sage [2008/06/02(月) 22:49:34 ]
皆様の助言の下、なんとかそれっぽいものが作れました。
教えてくださった方々、本当にありがとうございました。

>>434
ですよね。結局自分で解釈して作ってみましたが・・・

449 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:51:40 ]
>>448
なんだ、できるんじゃんw
おつかれさーん

450 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 22:58:16 ]
>>444
すいません、学校のPCにソースが入ってて自宅のPCには入ってないんです。
主に学校で作業を行ってて、そこで分からなかった関数など自宅で調べてる感じなので、すいません。

>>445
そうなんですか?よく知らないんですけど、そうなってましたw

>>446
そうみたいです、だから早く出来た人は皆答え違ってるみたいです。

>>447
間違えた場合はもう1度メニューを出す形でお願いします。
saveについては自分も分かってません、同じ様なケース考えたんですがどう対処していいか分からなくて。
されないことを祈るというカタチでお願いしますw明日に先生に質問してみます。
設問かなりいい加減です、動作例とバイト数だけ書いてあって、後は自分で考えてって感じでしたorz



451 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:01:26 ]
>>448
麻呂がクソースを書くって言ったじゃないでおじゃるか〜〜

452 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:01:58 ]
>>450
んじゃまた明日ソース持っておいで。
途中まで作ってるならそれベースのほうが理解できるでしょ。
覚えてる範囲で再現してもいいけど、ちょっと難しいでしょ?

453 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:02:52 ]
[1] プログラミング
[3][3.1] XP
 [3.2] 不明
 [3.3] C
[4] 期限: 080604

kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6775.txt

のプログラムを実行すると
1>c:\documents and settings\keita\my documents\visual studio 2008\projects\1212\1212\1212.cpp(13)
: error C3874: 'main' の戻り値の型には、'int' を使用してください。'stack' は使用できません

というエラーが起こります


454 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:04:41 ]
[1]授業単元 C言語
[2]問題 平均、分散、標準偏差を求めよ。
[3]環境 vista コンパイラ cygwin
[4]期限 明日の昼まで
[5]その他 ヘッダーはstdio.h stdlib.h math.hのみ?

情報が少ないかも知れませんがよろしくお願いします。

455 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:06:00 ]
>>453
main() → int main()

456 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:06:08 ]
>>453
main()
の戻りが消えてる。
void main()
とか
int main()
とかになるのが普通



457 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:07:48 ]
>>452
分かりやすいとは思いますが、ほとんど作ってないですorz
フローチャート作成にほとんどの時間費やしてやっとこさソース書いてみようってところです。
しかもそのフローチャート、合ってるか先生が休んだおかげで確認もしてませんorz
まぁ、ソース作成してる時にどう処理するんだ?って疑問が沢山出てきたんで明らかに間違ってるんでしょうが・・・。

明日また作成するので出来るところまでやってみようと思います。
明日、宜しくお願いします。

458 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:08:04 ]
>>436
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

//0から1までの乱数
double RandBetweenFromOneToZero()
{
return (double)rand() / ((double)RAND_MAX + 1);
}
//0から19までの乱数
int RandBetweenFromZeroToTwenty()
{
return rand()%20;
}
int main()
{
double drdm;
srand((unsigned)time(NULL));
drdm = RandBetweenFromOneToZero() + RandBetweenFromZeroToTwenty();
printf("%lf \n",drdm);
return 0;
}

459 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:13:34 ]
>>457
お。いい子だーw
きっとちゃんとしたソースもらえると思うよ。がんばってね。

ってかさ、このスレって前からこんなピリピリした雰囲気だった?
なんか殺伐としてる。。2chだからといえばそうなんだけど><

460 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:14:29 ]
>>454
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6777.txt

461 名前:448 mailto:sage [2008/06/02(月) 23:14:34 ]
>>451
自分のソースに自信がないので>>451さんのソースも見せていただけますか?
他にも作ってくれていた方がいたら見せていただけると有り難いです。

462 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:15:35 ]
今、カニ雑炊を食べ終わったから、書き続けているでおじゃる

463 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:20:08 ]
一休さんかよw
…まさかとは思うが、作ったものをまずうpしてみ?
足利将軍様はしばらくうp待ってみてくだされ

464 名前: ◆tr.t4dJfuU mailto:sage [2008/06/02(月) 23:25:32 ]
272に質問を書いたものです。やさしい職人さんに>>332のプログラミングを書いていただいたのですが、
画像は読み込めるのですが、RGB値を出す事が出来ませんでした。再びですが、どなたかよろしくお願いできませんか?
解決方法もともにおいえてください。以下に再び質問を欠かさせていただきます。

[1] 実験解析
[2] プログラムと同じフォルダ内のbmpファイル(256色)(200*300pix)をプログラム実行
時に読み込ませ,1pixごとにそのRGB値を調べさせてCSV形式で書き出すプログラム
[3] 環境
 [3.1] OS:Xp
 [3.2] BCC Developer
 [3.3] 言語 c
[4] 期限: 無期限ですが,できるだけ早いうちに宜しくお願いします.
[5] その他の制限:特にはありません.私は初心者なので,後学のために解説等が
含まれていたらうれしいです.

465 名前:448 mailto:sage [2008/06/02(月) 23:29:00 ]
>>463
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6779.txt

466 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:34:25 ]
>>464
解説というかBMPのファイル仕様がこうなってる
www.kk.iij4u.or.jp/~kondo/bmp/

でも>>322のプログラムはヘッダ部分を決め打ちで読んでるな・・・



467 名前: ◆tr.t4dJfuU mailto:sage [2008/06/02(月) 23:40:08 ]
>>466
ということは、画像読み込みから変更したほうが良いという事なのでしょうか?

468 名前:316 mailto:sage [2008/06/02(月) 23:43:09 ]
>>323
>>328
どちらも実行できました!
>>338
追加実行できました。
みなさんありがとうございました!

469 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:44:46 ]
>>463
もう少し待ってたもう、今最後の free(); 処理の部分を書いているでおじゃ〜る

470 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:50:59 ]
[1] プログラミング演習
[2]
x.datというファイルがあり
その中には
1
4
5
6
16
8
9
,,,,,,,,,というような形式で数字がN個蓄えられている
このファイルを読み込み、中に入っている数字を配列x[i]の中に蓄え
x[0]からx[N]まで全て足した値を求めなさい
という問題です

言語:C言語

制限などはありません
よろしくおねがいします



[3] 環境
 [3.1] OS:Xp
 [3.2] BCC Developer
 [3.3] 言語 c
[4] 期限: 無期限ですが,できるだけ早いうちに宜しくお願いします.
[5] その他の制限:特にはありません.私は初心者なので,後学のために解説等が
含まれていたらうれしいです.


471 名前:470 mailto:sage [2008/06/02(月) 23:52:23 ]
すいません環境以下の方の部分は無視してください、ごめんなさい

472 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 23:53:45 ]
ttp://www13.plala.or.jp/kmaeda/winc/dos_pai.htm
の円周率を求めるプログラムで小数点以下が4桁で区切られてるんですけど何処で定義してるんでしょうか?


473 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:16:55 ]
>>455
>>456
迅速な回答ありがとうございます。
両方を試してみた結果
(12) : error C2628: 'stack' の後に 'int' を続けて記述できません(セミコロン ';' で区切ってあるか確認してください)。
(13) : error C3874: 'main' の戻り値の型には、'int' を使用してください。'stack' は使用できません
のようなエラーが出てしまします。

474 名前:454 mailto:sage [2008/06/03(火) 00:21:41 ]
>>460
ありがとうございます!
これでテストも乗り切れます

475 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:23:47 ]
>>371
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6780.txt

476 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:24:38 ]
>>473
struct stack{
char list[STACKMAX];
int num_of_data;
};
にする



477 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:38:14 ]
>>470
#include <stdio.h>
#define N 7
int main()
{
int iary[N]={0};
FILE *fop = fopen("x.dat","r");
int i,sum = 0;
for(i = 0; i < N; i++){
fscanf(fop,"%d",&iary[i]);
sum += iary[i];
}
printf("sum = %d \n",sum);
return 0;
}

478 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:43:37 ]
>>470
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6781.txt






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<305KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef