C/C++の宿題やらせてください。8代目。
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNG今まで1年*ヶ月、ほとんど毎日休まず一生懸命C++を勉強してきた。
わからない宿題若しくは処理があったら私にやらせてくださいm(_ _)m
7代目: (前スレ)http://pc2.2ch.net/test/read.cgi/tech/1053963794/l50
6代目: http://pc2.2ch.net/test/read.cgi/tech/1053045530/l50
5代目: http://pc2.2ch.net/tech/kako/1051/10515/1051594046.html
4代目: http://pc2.2ch.net/tech/kako/1045/10450/1045074808.html
3代目: http://pc2.2ch.net/tech/kako/1041/10419/1041992392.html
2代目: http://pc3.2ch.net/tech/kako/1039/10397/1039772622.html
宿題手伝いますYO!!: http://pc3.2ch.net/tech/kako/1038/10380/1038024989.html
ラウンジ:質問が長い時はココを使うと便利
http://do.sakura.ne.jp/%7Ejunkroom/cgi-bin/megabbs/lounge/index.html
0002デフォルトの名無しさん
NGNG乙
0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG「n個の自然数(3桁[100-999]をランダムで作る。nはプログラム実行時に入力する。」
「関数実行にかかった時間を計測する(void bubble等)」
問題の一部なのですがここだけお願いします。
0005デフォルトの名無しさん
NGNGtimeとかclockとか使えばできるよ。
00065
NGNGでも、上の条件満たす方法すらわからないようなら、
プログラムなんてやめちゃえ!
0007デフォルトの名無しさん
NGNGそんまえにランダムになんて作れんべ
0008デフォルトの名無しさん
NGNG/dev/urandomから取り出せばOK
0009デフォルトの名無しさん
NGNG乱数の品質が悪くてよければ
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int i;
char buf[16];
if (fgets(buf, sizeof(buf), stdin) == NULL)
return 0;
for (i = 0; i < atoi(buf); i++)
printf("%d\n", rand() % 900 + 100);
return 0;
}
時間を計測するのは、えーと、めんどくせ。だれか頼んだw
0010デフォルトの名無しさん
NGNGclock_t start,end;
start=clock();
/* しょりぃ */
end=clock();
printf("%.2f秒くらいじゃないかな。\n",(double)(end-start)/CLOCKS_PER_SEC);
0011デフォルトの名無しさん
NGNG0012デフォルトの名無しさん
NGNGそう? atoiはconst char*とるし、ループ中でbufは全く扱ってないので、
ふつー最適化されちゃって一度しか評価されないんじゃない?
0014デフォルトの名無しさん
NGNG別に、マシンパワー余ってればいいんじゃない?
それよりも、buf[16]が引っかかった漏れは駄目人間ですか?
16桁だと環境によっては、あふれる予感が...
999,999,999,999,999 = 0x38D7EA4C67FFF
計算違うか?違ってたらごめん。
0015デフォルトの名無しさん
NGNG> void bubble
が引っかかってる奴はいませんか?
0017デフォルトの名無しさん
NGNGCの関数呼び出しって、そういう最適化はできないんじゃねーの?
atoi()は標準関数だから、コンパイラが特別に対応すればできるかもしれないけど。
(VC6では最適化してない)
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGあるプログラムにコメントつけてください!
あとCtrl-dで終わるように条件をつけてほしいのですが…
おねがいします
0020デフォルトの名無しさん
NGNG0021デフォルトの名無しさん
NGNG0022デフォルトの名無しさん
NGNGあのさぁ....
あ、それって、提出したら教授が「excellent」をくれるレベルだと思うよ。
もう十分。
0025デフォルトの名無しさん
NGNGCtrl-dの話なら前スレでアドバイスがあっただろ
0026デフォルトの名無しさん
NGNG0027デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1055071590
考えたんですが、わからなくて^^;
0029デフォルトの名無しさん
NGNGctrl+d でおわるじゃん。
コメントもついてるじゃん。
0030デフォルトの名無しさん
NGNGみたよ
0031デフォルトの名無しさん
NGNG0032デフォルトの名無しさん
NGNGもっと詳しいコメントがほしいのです
0033デフォルトの名無しさん
NGNG「俺でも分かるように説明しろ」
と
0034デフォルトの名無しさん
NGNGおしえてもらえませんか?
0035デフォルトの名無しさん
NGNGここまで複雑なのになると…
フリーでCのXML処理ライブラリってあったと思ったからそれを探してみたほうが早いかも。
どうしても自分で作るというのなら、パーザと内容の解釈を分離したほうがいいと思うな。
0036デフォルトの名無しさん
NGNGありがとうございます
>>35さん
0037デフォルトの名無しさん
NGNG行列の掛け算を行います、行列aとbは4行4列とします。行列aの要素の値は、
各自決めたください。行列bは単位行列とします。
計算はマトリクスの積を使うと便利。
003837
NGNGint main()
{
int i,j;
int a[4][4],b[4][4];
/*ここで行列 a を好きなように作ってくれ*/
/*単位行列 b の作成*/
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{
if(i-j)
b[i][j]=0;
else
b[i][j]=1;
}
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
printf("%d ",a[i][0]*b[0][j] + a[i][1]*b[1][j] + a[i][2]*b[2][j] + a[i][3]*b[3][j]);
}
printf("\n");
}
return 0;
}
全スレの問題と答えなんだけど、 実行すると4行4列の0行列になります・・
ぎょうれつA値を自由に決めるってのは、どういうふうに書くんですか
003937
NGNGぎょうれつA値〜〜〜〜
↓
aの値を好きに決めるってのはどういうふうに書くんですか?
0040デフォルトの名無しさん
NGNGa[0][1] = 2;
0041デフォルトの名無しさん
NGNG行列の計算できるんでしょ?俺今行列を使った透視投影変換で悩んで
るんだが、回転や移動変換なら良く見るから知っているんだが透視投影
変換はどうも良く分からない。(x,y,z,w)があって4*4の何をすれば(x',y')
になるんですか?
0042デフォルトの名無しさん
NGNGオブジェクトと視点を結ぶ線分とスクリーン面の交点のスクリーン上での座標を求めれば
R^3→R^2の変換が得られるだろ。それを4x4のでも同じことだ。下に書いてあるとおりだ
http://www.sccs.chukyo-u.ac.jp/~miyazaki/classes/cg/perspective/perspective_lecture.html
0043デフォルトの名無しさん
NGNGこれ聞いてもちつけ
漏れにとっては(・∀・)イイ
0044デフォルトの名無しさん
NGNGあるプログラムにコメントつけてください!
あとCtrl-dで終わるように条件をつけてほしいのですが…
おねがいします
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG日付+N日を求めるという処理が必要なんです。(うるう年、30日、31日等を考慮して)
こんな関数提供関数でありそうなものなんですけど、なさそうなんです。
調べたんですが分かりません。
やっぱり、自作するしかないですか?
0047デフォルトの名無しさん
NGNG0048無料動画直リン
NGNG0049デフォルトの名無しさん
NGNGソース書いてやれ。
>>1-1000
0050デフォルトの名無しさん
NGNGここは隔離スレ。
まともに宿題やってやるやつのほうがアホ。
0051デフォルトの名無しさん
NGNG1.「力まかせの方法」を用いる。
2.探索を行う関数名は、search1とする。
3.関数search1は一致した文字列のすべての位置を返すものとする。(連結リストの先頭アドレスを返せばよい)関数の中で、一致した文字列をprintすることはしないこと。
4.プログラム(main文)では、一致する文字列を含めて前後10文字を表示するものとする。
5.プログラムは、一致するすべての文字列を表示しなければならない。
6.プログラムは任意のファイルをプログラム実行時に指定できること。
0052デフォルトの名無しさん
NGNGCなんですがメインの探索する関数の部分をどうすればいいか
わかりません。わかる方いたらよろしくお願いします
0053デフォルトの名無しさん
NGNG「力まかせの方法」の定義キボヌ。
0054デフォルトの名無しさん
NGNG自分もよくわからないんですが何もひねらない
一番効率が悪いやり方ということだと思います。
例えば
abcdefghijdkhjakjshfkajという感じで検索対象の文字列があるとすると
abcdefghijdkhjakjshfkaj←検索対象文字列
↑
ここから検索
↓
agh←検索したい文字列
aは一致するので次の文字を検索
↓
bとgは一致しないので
abcdefghijdkhjakjshfkaj
↑
bの部分から再び検索開始
↓
agh
こんな感じです。わかりますかね・・・?
そんなに難しくないといってたんですがわかりませんでした
0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNGstrcharで先頭の文字だけ引っ掛けて、strncmpで比較でどうかな。
力技だと思うけど。
0057デフォルトの名無しさん
NGNGそれだったら、strstr()のほうがいいよ。
0058デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=79
found_t型のオブジェクトは削除してない。自前で削除よろしく。
0059デフォルトの名無しさん
NGNG前スレのバイオリズムのお題でそういうことをやってたような気がする。
0060デフォルトの名無しさん
NGNG↑にあるプログラムにコメントをつけてください!終了条件はCtrl-dです
上のプログラムを実行すると
Initialize a queue.
> d
No more data.
> e programming
Enqueue: [programming]
> d
Dequeue: [programming]
> e ALGORITHM
Enqueue: [ALGORITHM]
> e practice
Enqueue: [practice]
> d
Dequeue: [ALGORITHM]
> c
Initialize a queue.
> d
No more data
> No more data
となるのですが、↑
ここを表示させないで終了させたいのです。修正お願いします
0061デフォルトの名無しさん
NGNGこれを消せば?
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNGCtrl+Dを押せばいつでも強制終了じゃないの?
0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNG0066デフォルトの名無しさん
NGNGそのプログラム最後にそんなメッセージ出るはず無いぞ。
そこ、入力行でしょ?
006766
NGNGCtrl+Dするとそうなるってことね。
前言撤回
0068デフォルトの名無しさん
NGNGあれ?そのコード、ちょっと前までコメント付きだったじゃん。
何でコメント削除したの?
0069デフォルトの名無しさん
NGNGexit(EXIT_FAILURE);
}
0070デフォルトの名無しさん
NGNGうわー、絶対いっしょに仕事したくないタイプ。
0071デフォルトの名無しさん
NGNG…はやってんのか?
0072デフォルトの名無しさん
NGNG合計台数とタイヤの総本数を入力して、
自転車と三輪車のそれぞれの台数を表示させるプログラムを作りたいんです。
んで、合計台数とタイヤの数がありえない組み合わせのときは
「無理だ」って表示させるよーにって。
0073デフォルトの名無しさん
NGNG0074デフォルトの名無しさん
NGNGしかも、ほとんど初めてやる人にこんな宿題出されても
わからんちゅーねんヽ(`Д´)ノウワァァァン
0075デフォルトの名無しさん
NGNG日本語ですよ。文法的にもおかしくない。
0076デフォルトの名無しさん
NGNGQ11.5
0077デフォルトの名無しさん
NGNGもう学期始まってから2ヶ月もたってますよ。
0078デフォルトの名無しさん
NGNGもし、それが本当ならクラスの誰もできてないから安心しろ
0079デフォルトの名無しさん
NGNGもしまかり間違って正解を持っていったら、
カンニングする要注意人物としてマークされたりしてなw
0080デフォルトの名無しさん
NGNGこれでやる気失せた
0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNG鶴亀ざーーーーーーーーーーーーーーーん
0085デフォルトの名無しさん
NGNGstdioの制御をそこまで求められなければ成らない宿題とは思えない。
>q で終了とかにおするべき問題だな。
0086デフォルトの名無しさん
NGNG問題はこれ。まったくの初心者にいきなり出来るわけない。
http://pc2.2ch.net/test/read.cgi/tech/1053963794/653
0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG0089デフォルトの名無しさん
NGNG#include <stdio.h>
#include <stdlib.h>
int main(int argc,char **argv){
int daisuu,taiya;
int jitensya,sanrinsya;
if(argc<2) return 0;
daisuu = atoi(argv[1]);
taiya = atoi(argv[2]);
if(( daisuu * 3 < taiya) || (daisuu * 2 > taiya)){
printf("ありえねー\n");
}else{
jitensya = daisuu * 3 - taiya;
sanrinsya = daisuu - jitensya;
printf("自転車 %d 三輪車 %d\n",jitensya,sanrinsya);
}
return 0;
}
コマンドラインの第一引数に台数、第二引数に車輪の数を与えてくれ。
0090お願いします!!!
NGNG9991桁から10000桁の10個の数字を表示しなさい。
だれかよろしくお願いします。
0091くりりん
NGNG0092>>87-88
NGNG>>653です。訂正してもう一度書き込みます!!
ポインタを用いたリスト(リンクによるリスト)によるキュー(待ち行列)のプログラムである.キューの各要素は以下のような構造体となっている.
typedef struct node{char word[MAXWORDLEN] ;struct node *Next ;} node_t ;
ex4o を実行すると最初は次のようになる.
%ex4o
Initialize a queue.
>
ここで,”> “ は,キューの処理のためのコマンド入力を促すプロンプトで入力できるコマンドは以下の3つである.
c (キューを初期化する)
e #WORD(s) (キューの先頭に要素(単語(複数も可)WORD(s)をwordに格納した構造体node_t)を追加する)
d (キューの先頭の要素を取り出し,wordの中身を出力する.キューになにもデータがない時は,No more data.と出力する).
% ex4o
Initialize a queue.
> d
No more data.
> e programming
Enqueue: [programming]
> e group 3
Enqueue: [group 3]
> d
Dequeue: [programming]
> d
Dequeue: [group 3]
> e practice
Enqueue: [practice]
> c
Initialize a queue.
> d
No more data
>
Ctrl-d (コントロールキーを押しながらdを押すこと)でプログラムは終了する,このプログラムを作成せよ.
0093デフォルトの名無しさん
NGNG#include <stdio.h>
#include <stdlib.h>
void error(void)
{
fprintf(stderr, "無理だ\n");
exit(1);
}int DivWithCheck(const int a, const int b)
{
if(a % b)
error();
return a / b;
}int prompt(const char *const msg)
{
int tmp;
printf("%s を入力してくれると有難い。\n", msg);
scanf("%d", &tmp);
return tmp;
}int main(void)
{
int sum, wheel;
int jit, san;
sum = prompt("合計台数");
wheel = prompt("タイヤの数");
jit = DivWithCheck(wheel - 3 * sum, 2 - 3);
san = DivWithCheck(2 * sum - wheel, 2 - 3);
if(jit < 0 || san < 0)
error();
printf("自転車:%d\n三輪車:%d\n", jit, san);
return 0;
}
0094くりりん
NGNGint main() {
int x, y, t;
printf("input body >"); scanf( "%d", &x );
printf("input tire >"); scanf( "%d", &y );
t = y - 2 * x;
if( t < 0 || x < t )
printf("(-_-)\n");
else
printf("3rin:%d\t2rin:%d\n", t , x - t );
return 0;
0095くりりん
NGNG}
0096デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=76
前スレでも2回同じ依頼があったけど同じ人じゃないよね?
同じ授業を受けてるなら、それを持っていったら目を付けられるかもね。
0097デフォルトの名無しさん
NGNGint main(void)
{
int bicycle, tricycle, tire, amount;
puts("合計台数を入力すれ");
scanf("%d", &amount);
puts("タイヤの本数も入れやがれ");
scanf("%d", &tire);
bicycle = 3 * amount - tire;
tricycle = tire - 2 * amount;
if (bicycle < 0 || tricycle < 0)
puts("無理だ、ボケ\n");
else
printf("自転車 %d台, 三輪車 %d台だ。これくらい自分で計算しろや\n", bicycle, tricycle);
return 0;
}
0098デフォルトの名無しさん
NGNG2回もあったんですか…
同じ授業の可能性大な気がします…
これって他のパターンとかってできないんですかね?
0099デフォルトの名無しさん
NGNG0100デフォルトの名無しさん
NGNG今まではマーチンの公式を使えとあったけど、今回ないから違うの使えば?
0101デフォルトの名無しさん
NGNGあ…。それ絶対同じ授業だ。
ヒントとしてπの求め方はマーチンの公式が与えられてます。
あと、桁数の多い数の演算の方法として配列使えっていうのも
0102デフォルトの名無しさん
NGNGヒントなら別の使っても構わないのでは?
0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNGあ、言っちゃった!
0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNGイタタタタタタ
0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNGUnix なんでしょうな。
fgets では EOF とエラーの区別がつかないから、
エラー処理をするなら feof で検査するしかないね。
ttp://www-ccs.ucsd.edu/c/stdio.html#fgets
0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNG0114デフォルトの名無しさん
NGNGUNIXのCで
最大30桁(少数含む)の四則演算を
行う関数を作りたいのです。
long double や decimal型はダメです。
おそらくchar型やdouble型を使って作るのだと
思いますが、どなたか力添えをください。
お願いします。
0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNG{
public:
static const int precision = 30;
real();
real( double x );
real& operator += ( real const& rhs );
real& operator -= ( real const& rhs );
real& operator *= ( real const& rhs );
real& operator /= ( real const& rhs );
private:
char mantissa[ precision ];
int exponent;
};
real operator + ( real const& lhs , real const& rhs ){ return real( lhs ) += rhs; }
real operator - ( real const& lhs , real const& rhs ){ return real( lhs ) -= rhs; }
real operator * ( real const& lhs , real const& rhs ){ return real( lhs ) *= rhs; }
real operator / ( real const& lhs , real const& rhs ){ return real( lhs ) /= rhs; }
0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNG0119デフォルトの名無しさん
NGNG和が一定となるような自然数の列を列挙するプログラムを作成せよ。
重複はみとめる。
例えば、和が3の自然数の列は 1,1,1 1,2 2,1 3 となります。
0120r
NGNGint main( int argc, const char** argv ) {
int wa = atoi( argv[1] ), i;
for( i = 1; i <= wa / 2; i++ )
printf("%d = %d + %d\n", wa, i, wa - i );
}
01215
NGNGお前さ、いろいろレスつけてるけど、全然だめだからもうやめとけ。
そのプログラムで、3は1+1+1って答えが出せるか?
0123デフォルトの名無しさん
NGNG01255
NGNG再帰関数使えよ。
「重複はみとめる」ってことは重複しなくても解として認めるって
ことだろ。なら簡単だ。
01265
NGNG「全然だめだから」っつってんだろ。
日本語読めてない時点で全然だめなんだよ。
0127デフォルトの名無しさん
NGNG分割する数でループ回せばいいのかな。
2・・・1,1,1
1・・・1,2 2,1
0・・・3
って感じで。
0128デフォルトの名無しさん
NGNGちなみに俺には難しい。
0129デフォルトの名無しさん
NGNG簡単だとか言うのはコードを出してからにしろ
0130デフォルトの名無しさん
NGNG配列を使わないと結構、パフォーマンス悪くなる。
0131r/120
NGNG全然だめだと、なんで駄目なんだよ。
「宿題やらせて」ってのに、
「相手のために、宿題をやってやる」ってニュアンスはねーだろ。
「自分のために、宿題をやらせてもらう」なんだよ。
0132デフォルトの名無しさん
NGNG0133デフォルトの名無しさん
NGNG・・・の左と右の関係はなに?コンマの数?
01345
NGNGn!の計算とかクイックソートとか勉強すれば思いつくよ。
>>129
この程度思いつかないやつはすっこんでろって。
>>130
え?パフォーマンスは要件に入ってないからかまわんだろ?
>>131
ああ、確かにな。すまん。
0136デフォルトの名無しさん
NGNG口だけ番長
0137デフォルトの名無しさん
NGNG再帰関数の中にも for 文がある?ややこしい。
0138デフォルトの名無しさん
NGNG再帰関数を使ってです
0139デフォルトの名無しさん
NGNGまだ出来ないの?
0140デフォルトの名無しさん
NGNGLISP版ならこの前かいたんだがな。
0141デフォルトの名無しさん
NGNG0142デフォルトの名無しさん
NGNG0143デフォルトの名無しさん
NGNG配列の代わりにリスト使うっつーのはどうだ?
0144デフォルトの名無しさん
NGNG0145デフォルトの名無しさん
NGNG:||::  ̄ ̄ ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ _m ドッカン ☆
:||:: ___ ======) ))_____ / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
:|| | | | ̄.ミ∧_∧ | | ────┐||:: ∧_∧ < おらっ!>>125 出てこい!!
:|| |ぁゎゎ. | |_..( ) | | .___ │||:: (´Д` ) \___________
:|| |Д`); | |_「 ⌒ ̄ ,|.. |_... 5 ..||||:: / 「 \
:|| |⊂ノ; | |_| ,/  ̄ .  ̄ ̄ ̄ │||:: | | /\ \
:||:  ̄ ̄ ̄  ̄| .| :||│ ;, │||; へ//| | | . |
:||:: :; ; ,, :| :.| ||│ (\/,.へ \| | (r )
:||:: :; 冫、. . | .i .|:||◎ニニニニ\/ \ |  ̄
:||.:,,''; ` .. . :: . | ∧. |:||│::::/ │||::.:. .Y ./
:||:;;;: : | | | |.||│ 冫、 ;;;,,│||:;;;. | .|
:||:;;;: / / / /::||│ ` .,;;;,,.│||:;;;. | .|
:||;::: # ..: ./ / ./ ./ ||│|三三三|. │||;;:..:: | .|
:||;::: #. ..: :::::: (_) .(_).ミ||│ │||;;;k、,,,|,(_)
 ̄ ̄ ̄ ̄ ̄: ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
:::;三三;;;;;三三:::;;;;;;; :::::;;;;;::;;;;;;;;;;::::;; :::::;;;;;:::::;;;;;;;;;;::::;; :::::;;;;;:::;;;;;;;;;;::::;;;;;::三三三
0146デフォルトの名無しさん
NGNG次のプログラムが参考としてあります。
これを参考に作れないでしょか
#include<stdio.h>
void abs_sum( int n, int w);
int main()
{
int w = 2, n =3;
abs_sum( n, w );
return 0;
}
/*
* 和がw以下となる長さnの非負整数の数列を全て列挙する
*/
void abs_sum( int n, int w )
{
void in_abs_sum( int total_length, int n, int w);
in_abs_sum( n, 0, w);
}
0147デフォルトの名無しさん
NGNG/*
* 和がw以下となる長さnの非負整数の数列を全て表示するための内部関数
* 入力
* total_length : 数列の長さ
* pos : 今考えてる数列の場所 ( 0〜 total_length - 1)
*
* w : 数列の重み
*/
void in_abs_sum( int total_length, int pos , int w)
{
int i, j, called = 0;
if ( pos >= total_length ){ /*数列はもうおしまい?*/
putchar( '\n');
return;
}
for( i = 0; i<=w; ++i){ /*数列がまだ続く場合*/
if ( called++){ /*この場所でもう呼ばれたのか?*/
for( j = 0; j < pos; ++j){
printf(" ");
}
}
printf("%2d",i);
in_abs_sum( total_length, pos + 1, w - i); /*再帰的に繰り返す*/
}
}
0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNG#include <stdio.h>
#include <stdlib.h>
struct list { int n; struct list* next; };
void print_list( struct list* p )
{
for( ; p != 0 ; p = p->next ) printf( " %d" , p->n );
puts( "" );
}
void xxx( int n , struct list* p )
{
if( n > 0 )
{
struct list node;
node.next = p;
for( node.n = 1 ; node.n <= n ; ++node.n ) xxx( n - node.n , &node );
}
else
{
print_list( p );
}
}
int main( int argc , char* argv[] )
{
if( argc > 1 ) xxx( atoi( argv[1] ) , 0 );
return 0;
}
0150149
NGNG0151r/120
NGNG何度なくできましたが、char* とか使ってます。
つか、なんでこれでうまく動くのか、今ひとつ漏れにも判りません。
#include <stdio.h>
#include <stdlib.h>
void d( int wa, int n, char* hist ) {
if( wa < n ) {
} else if( n == 1 ) {
printf( "%s,%d¥n", hist ,wa );
} else {
int i;
for( i = 1; i <= n; i++ ) {
char* buf = malloc( 100 );
sprintf( buf, "%s,%d", hist, i );
d( wa - i, n - 1, buf );
free( buf );
}
}
}
int main( int argc, const char** argv ) {
int wa = argc < 2 ? 5 : atoi( argv[1] ), i;
for( i = 1; i <= wa; i++ ) {
char* buf = malloc( 100 );
sprintf( buf, "" );
printf("---- sum:%d, count:%d -----¥n", wa, i );
d( wa, i, buf );
free( buf );
}
}
>>125
たしかに、重複を取り除くと難しさupですね。
0153出来た予感
NGNGint nth_permutation( int sum, int n, int output ){
int current = 1, next_n = -1, i;
for( i = 0; i<=n; ++i ){
if ( current==sum ) break;
if ( nth_permutation( sum-current, ++next_n, 0 ) ) continue;
if ( i==n ) break;
++current; next_n = -1;
}
if ( output ){
printf( "%d,", current );
if ( current!=sum ) nth_permutation( sum-current, next_n, 1 );
}
return current!=sum; // 次があるなら true を返す
}
int main(void){
int n = -1, sum;
if ( scanf( "%d", &sum )!=1 || sum<=0 ) return 1;
while( nth_permutation( sum, ++n, 1 ) ) printf( "\n" );
printf( "\n" );
return 0;
}
0154149
NGNG#include <stdio.h>
#include <stdlib.h>
struct list { int n; struct list* next; };
void xxx( int n , struct list* p )
{
if( n > 0 )
{
struct list node;
node.next = p;
for( node.n = ( p != 0 ) ? p->n : 1 ; node.n <= n ; ++node.n ) xxx( n - node.n , &node );
}
else
{
for( ; p != 0 ; p = p->next ) printf( " %d" , p->n );
printf( "\n" );
}
}
int main( int argc , char* argv[] )
{
if( argc > 1 ) xxx( atoi( argv[1] ) , 0 );
return 0;
}
0155デフォルトの名無しさん
NGNG再帰を利用しないハノイの塔のプログラムをお願いします。
0156デフォルトの名無しさん
NGNGvoid xxx( int n) {
int i,j, k;
for (i = 1 << (n-1); --i >= 0;) {
for (j = 1 << (n-2), k = 1; j > 0; j >>= 1)
if (i & j) { printf("%d,", k); k = 1;}
else k++;
printf("%d\n", k);
}
}
int main( int argc , char* argv[] )
{
if( argc > 1 ) xxx( atoi( argv[1] ) );
return 0;
}
0157デフォルトの名無しさん
NGNG神
0158デフォルトの名無しさん
NGNG許容範囲狭すぎ
0159デフォルトの名無しさん
NGNG> for (i = 1 << (n-1); --i >= 0;) {
で 1<<(n-1)回のループをまわしてる
つまりこの個数分の出力があるってことだろ?
オーバーフローするほどの数だったらそもそも数が多すぎて出力しきれないんじゃないか?
0160デフォルトの名無しさん
NGNG32が多すぎですか?
0161デフォルトの名無しさん
NGNG多すぎだろ?
0162デフォルトの名無しさん
NGNG154のやつだと32入れても数秒で完了するようですが。
0163デフォルトの名無しさん
NGNG重複取り除いてるからね
0164デフォルトの名無しさん
NGNG154は
1,1,1,1,1,1,1,1,2も
1,1,1,1,1,1,1,2,1も全部同じものとみなすから出力数が少ない
156は全てのパターンを出力するからその数は桁違いに多くなる
0165デフォルトの名無しさん
NGNG重複を取り除いた場合のオーダーは・・・・
もぅねむいや。
0166デフォルトの名無しさん
NGNGその都度プリン度して、データを溜め込んでるわけじゃないから、
パターン数の多さは関係ないんじゃないの?
0167166
NGNG○プリント
0168デフォルトの名無しさん
NGNG「認める」ってのが、答えに対して認める(=答えに重複が含まれてもかまわない)のか、数列に対して認める(=組み合わせではなく順列)のかわからないが。
0169デフォルトの名無しさん
NGNG0170デフォルトの名無しさん
NGNGリストっつったらmallocすることしか考えてなかったよ
再帰してスタック使えばサイズも動的に変えられるもんな
0171デフォルトの名無しさん
NGNGでも、スタック消費が多くなるね。
mallocしながらグローバルスコープにリストをつくっていったほうが
より大きな数まで処理できるかもしれない。
0172デフォルトの名無しさん
NGNG↑にあるプログラムにコメントをつけてください!終了条件はCtrl-dです
上のプログラムを実行すると
Initialize a queue.
> d
No more data.
> e programming
Enqueue: [programming]
> d
Dequeue: [programming]
> e ALGORITHM
Enqueue: [ALGORITHM]
> e practice
Enqueue: [practice]
> d
Dequeue: [ALGORITHM]
> c
Initialize a queue.
> d
No more data
> No more data
となるのですが、↑
ここを表示させないで終了させたいのです。修正お願いします
0173デフォルトの名無しさん
NGNG0174デフォルトの名無しさん
NGNG何も分からないくせに100点を取らないと気がすまないの?
0175デフォルトの名無しさん
NGNG「がんばったな」って思ったりしたが。
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGwhile( cur != 0 ) {
node_t* target = cur;
free(target);
cur = cur -> Next;
}
は
while( cur != 0 ) {
node_t* target = cur->Next;
free(cur);
cur = target;
}
0178デフォルトの名無しさん
NGNGrは糞ってことか。
0179デフォルトの名無しさん
NGNG0180デフォルトの名無しさん
NGNGfloat a;
public:
CTest() {
a = (float)1234.02;
}
CTest(int num) {
CTest();
}
float GetA() {
return a;
}
};
こんな感じにfloat型のメンバ変数に初期値を代入しても、
返ってくる値はめちゃくちゃなのはなんでだろう。
ちと悩んでる。
0181デフォルトの名無しさん
NGNGコンストラクタにvoidもしくはint以外の型のものを渡してないか?
0182デフォルトの名無しさん
NGNGa=1234.02F;と書け。
0184r
NGNGCTest();
}
これは CTest( int )のなかで、
あたらしい CTestの一時オブジェクトを作るだけです。
その一時オブジェクトはすぐに潰えます。
呼び出し元---CTest( int )---の、this -> a には何の影響も与えません。
0185デフォルトの名無しさん
NGNG0186デフォルトの名無しさん
NGNG課題はこんなかんじ。
以下は,標準入力から入力した文字列を逆順にして表示するプログラムの一部である. 関数 reverse の定義を追加し,プログラムを完成させよ. なお,入力される文字列の長さ(文字数)は任意であるが, 99文字以内であることが保証されているものとする.
#include <stdio.h>
#include <string.h>
void reverse(char *s)
{
/* ここに追加せよ! */
}
int main(void)
{
char str[100];
scanf("%s", str);
reverse(str);
printf("%s\n", str);
return (0);
}
きー文字列を逆にする発送が思い浮かばない罠。
おねがいいたします。
0187デフォルトの名無しさん
NGNG具体的に
0188デフォルトの名無しさん
NGNGちょと違うがわかるだろ
http://pc2.2ch.net/test/read.cgi/tech/1053963794/631
0189186
NGNG0190デフォルトの名無しさん
NGNGsize_t len = strlen(s), goal = len /2, i;
char tmp;
for (i = 0; i < goal; i++) {
tmp = s[i];
s[i] = s[len - 1 - i];
s[len - 1 - i] = tmp;
}
}
0191デフォルトの名無しさん
NGNGまぢ?クラスのメンバ関数内でコンストラクタ呼び出すとそこで
自分自身の一時オブジェクト生成しちゃうの?
だとしたら、今までの俺の理解は激しく違ってたことになるな。
0192デフォルトの名無しさん
NGNG上記のプログラムを配列処理をのこしつつ、ポインタを使用して書き換えよ。
ポインタが理解できないまま機嫌が切れそうなので、よろしくおねがいします。
0193デフォルトの名無しさん
NGNGコンストラクタ内でthisポインタの値を表示してみればよく分かるよ。
デストラクタの中でも表示したほうがいいかな。
0194デフォルトの名無しさん
NGNG*aってなんだ?
0195デフォルトの名無しさん
NGNGおまいの機嫌なんかどうでもいいが、なにを書き換えればいいのかいまいちわからん
0196192
NGNG*aはポインタをなんとか使おうとした名残ですね、すみません。
*aはjです。
何かしらの形でポインタが使用されていれば良いので、
どこかポインタを使って処理できるところを書き換えればよいそうです。
0197デフォルトの名無しさん
NGNGvoid (*f)() = print_matrix;
(略)
f(m_C);
とかしてみれば?
0198デフォルトの名無しさん
NGNGできたよー
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=82
どこをポインタに書き換えればいいかわかんなかったから、
適当にやっといたよー
0199デフォルトの名無しさん
NGNGほ、ほんとだ。 (゚Д゚;))ガタガタブルブル
知らんかったー。そっか、new CTest()とかでメモリ確保できるのも理解できる。
いや、ほんとサンクスコです。勉強になっただす。
0200デフォルトの名無しさん
NGNGそれ狙った課題だと思ふ。
0203デフォルトの名無しさん
NGNGふざけてるのか?
0204デフォルトの名無しさん
NGNG三つの要素をもつ構造体に格納するプログラムを書け.
(2)木とはなにか.また,2分木とはなにか.説明せよ.
(3)(1)でデータを格納した構造体を節点とする2分木を作成するプログラムをかけ.
新しいデータを一行ずつ構造体に読み込んで,木に追加していくこと.必ずポインタを
使って木を実現し(構造体に必要な修正を加えること),データが増えても対処できるようにすること.また,すべての節点をなぞりながら,データ(ID,姓名,読み)を出力できるようにもせよ.その際できるだけ見やすい形に表示するよう工夫すること.
0205デフォルトの名無しさん
NGNG文字列を圧縮するプログラムを作成せよ
例 aaaabbbcccccdddd
↓
4a3b5c4d
0206デフォルトの名無しさん
NGNG文字列はどうやって与えるのん?
0207デフォルトの名無しさん
NGNG0208205
NGNG実行すると、まず文字列を入力してくださいと表示して、
aaaabbbcccccddddと入力したら、4a3b5c4dと表示しなおすようなプログラムです。
よろしくお願いしますm(__)m
0209デフォルトの名無しさん
NGNG0210デフォルトの名無しさん
NGNG0211念力で与えるバージョン
NGNGint main(void){
int c, buf, count;
count = 0;
buf = EOF;
while((c = getchar()) != EOF){
if(buf != c){
if(count != 0){
printf("%c%d", buf, count);
}
buf = c;
count = 1;
}else{
count++;
}
}
return 0;
}
0212デフォルトの名無しさん
NGNGchar c;
printf("入力してください >");
scanf("%c,&);
printf("4a3b5c4d");
}
0213デフォルトの名無しさん
NGNGサーバ作らなきゃ駄目じゃん。
0214デフォルトの名無しさん
NGNGきかないとわかんないのか?
0215sage
NGNG入れ替え後のの前配列要素の値を求めるプログラムを
教えて頂きたい。順序を入れ替えるのはd[0]とd[9]で
お願いしますm(__)m
0216デフォルトの名無しさん
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
∧_∧
ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0217デフォルトの名無しさん
NGNG要求定義が意味不明
0218215
NGNG要求定義ってどういうことをさすのですか?
初心者でスミマセン
0219デフォルトの名無しさん
NGNGエスパーでも呼んで来い
0220デフォルトの名無しさん
NGNG何をつくればいいのか分からない。
02215
NGNGこの程度思いつかないやつはすっこんでろって。
0222215
NGNGプログラム作成をどうかお願いしますm(__)m
できる限りのことは頑張ります。
0223
NGNG#include <stdio.h>
void main() {
char moji[100],kai[26];
int i;
for (i = 0 ; i < 100 ; ++i ) {
moji[i] = 0;
kai[i] = 0;
}
printf("文字列を入力してください");
scanf("%s",&moji);
for ( i = 0 ; moji[i] != '\0' ; ++i)
++kai[ moji[i] - 'a' ];
for (i = 0 ; i < 26 ; ++i){
if (kai[i] != 0)
printf("%d%c ",kai[i],i + 'a');
}
}
0224
NGNG>前配列要素の値を求める
'全'配列要素のことか?
というかどういう数列を入れるかが分からんけど、
枠組みだけなら作れると思うよ。
0225デフォルトの名無しさん
NGNGどんなのが出てくるか楽しみだ
0226224
NGNGまだまだ初心者なんで、なんか改善すべき点があったら是非教えてくらはい。
0227223
NGNG223の間違いです。
0228デフォルトの名無しさん
NGNG配列の初期化ってもっと簡た(ry
0229デフォルトの名無しさん
NGNGどうしたらできるのでしょうか?
0230215
NGNG>全'配列要素のことか?
そうです。字を間違えました。
数列は1とか10とか簡単な数字を格納すればいいと思います。
0231デフォルトの名無しさん
NGNGがどういうことかを教えてもらいたい。
0232デフォルトの名無しさん
NGNGに数字が入っているとして
d[0]とd[9]を入れ替えて
配列の要素すべて表示すればいいのか?
0234デフォルトの名無しさん
NGNGスレ違い
0235デフォルトの名無しさん
NGNG大まかに2通りあると思うけど。
1.プリンタを直接操作して書き込み <-面倒
2.テキストか何かに出力してプリントアウト <-簡単
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNG(1)テキストファイルがある.各行のデータを,ID,姓名,読み(ローマ字)の
三つの要素をもつ構造体に格納するプログラムを書け.
(2)木とはなにか.また,2分木とはなにか.説明せよ.
(3)(1)でデータを格納した構造体を節点とする2分木を作成するプログラムをかけ.
新しいデータを一行ずつ構造体に読み込んで,木に追加していくこと.必ずポインタを
使って木を実現し(構造体に必要な修正を加えること),データが増えても対処できるようにすること.
また,すべての節点をなぞりながら,データ(ID,姓名,読み)を出力できるようにもせよ.その際できるだけ見やすい形に
表示するよう工夫すること
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNGfor (i = 0 ; i < 100 ; ++i ) {
moji[i] = 0;
kai[i] = 0;
}
ほんとにこれを教わったのか?
どうしようもないな。
0241デフォルトの名無しさん
NGNGchar moji[100],kai[26];
int i;
for (i = 0 ; i < 100 ; ++i ) {
moji[i] = 0;
kai[i] = 0;
}
バッファオーバーフロー(・∀・)イイ!
0242デフォルトの名無しさん
NGNGこれは多分出題の意図からすると間違ってると思われ。
問題も悪いんだけど、そのプログラムだと。
aabbbbccccaaacccc
は
a5b4c8
だよね。でもこれはデータ圧縮でつかうランレングス法を念頭に置いた出題のはずだから
a2b4c4a3c4
と並びを保ってencodeしないとまずいよ、たぶん。
0243デフォルトの名無しさん
NGNGprintf("\t>");
command[0] = '\0';
fgets(command, MAXLINE, stdin );
0244デフォルトの名無しさん
NGNGint k;
k = d[0];
d[0] = d[9];
d[9] = k;
d[0]とd[9]の入れ替えはこういうやり方でいいんでない?
kは適当に付けた名前だよ。
他のとこはできると思うよ。
0245242
NGNGでも、言いたいことには影響ないな。
察してくだされ。
0246デフォルトの名無しさん
NGNG0247223
NGNG>>242
なるほど、そこまで問題の意図を考えてませんでした。
大学で出た宿題と似てたんで、つい同じ方法で書いてしまって・・
これからもういちど、プログラム作り直してみまふ。
0248デフォルトの名無しさん
NGNGこれ参考にどぞー>211
int a[100] = { 0 }
( ̄ー ̄)ニヤリッ
0249デフォルトの名無しさん
NGNG(1)x=0,0.1,0.2,0.3,0.4に対するf(x)の値を計算により求めて、
xとf(x)の表を作成せよ。
(2)
xを二つの領域(0<=x=<0.2 , 0,2<=x=<0.4)にわけ、それぞれの領域で
ラグランジュ補間を行い、0から0,4までの間で0.02きざみで、f(x) の値、
補間による近似値 g(x) 及び、 f(x)-g(x) の値を表にして示すとともに、
グラフとして図示せよ。表は線はいらず、計算結果をプリントアウトしたものとする。
図は手書きでもグラフソフト使用でも可。
ex)
x f(x) g(x) f(x)-g(x)
0 〜〜 〜〜 〜〜
0.2 〜〜 〜〜 〜〜
・ 〜〜 〜〜 〜〜
・ 〜〜 〜〜 〜〜
・
・
0250249
NGNG(2)で得られた21個のxとf(x)のデーターに対し、最小二乗法による理論式
y=A*x+B の最適のA,Bの値を推理せよ。
(4)
exp(1.37*x)テイラー展開して、第二項までを取った直線の式を
y=A'*x+B'とするとき、(3)で得られた y=A*x+Bに対する
N
E(A,B)= (yi-A*xi-B)^2
i=1
と、y=A'*x+Bに対する
N
E(A',B')= (yi-A'*xi-B')^2
i=1
を求め、E(A,B)<=E(A',B')を示せ・・・。
提出物
�@ (2),(3),(4)が一気に行えるプログラム
�A 動作結果
�B アルゴリズム
�C フローチャート
もうだめですTT どなたかお願いします。
0251デフォルトの名無しさん
NGNG前スレで出されてたのはダメなのか?
0252249
NGNGアルゴリズムとフローチャートを自分で作って提出したら、
その二つが不十分で再提出になりましたT0T
どなたかフローチャートとアルゴリズムお願いします。
とくにアルゴリズムお願いします。
0253>96
NGNGhttp://www.pluto.ai.kyutech.ac.jp/plt/matumoto/pi_small/node22.html
ある観点から最良と思われるものを上げておぎます。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=76
の焼き直しです。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=83
0254デフォルトの名無しさん
NGNGIDとはどういうデータだ?
姓名、読みの文字数は可変か?それとも最大文字数が決まっている?
木に追加するとき、どう追加すればいい?2分木って左の枝と右の枝が
あるわけだけど、どっちに追加すればいい?その条件を明確にしてくれ。
見やすい形とは?
0255215
NGNG#include <stdio.h>
#define SIZE 10
main()
{
int dim[SIZE]={1,2,3,4,5,6,7,8,9,10};
int i,s,x;
x=i[0];
i[0]=i[9];
i[9]=x;
s=0;
for(i=0;i<SIZE;++i){
s=dim[i];
printf("%5d",dim[i]);
}
}
こんな感じにできたけど、大丈夫かな?
0257デフォルトの名無しさん
NGNG知るか!!
エスパーはどこいった?
0258249
NGNGこのスレッドの84番です タイプスクリプトは
0259hide
NGNG#include<stdio.h> /* フィボナッチ数列について */
#define NUM 40 /* F(40)まで求める */
int fib(int n)
{
if(n > 1){
return fib(n-1) + fib(n-2);
}else{
return 1;
}
}
int main()
{
int i;
for(i=0; i<=NUM; i++){
printf("Fib(%d) = %d.\n", i, fib(i));
}
}
上のプログラムのfib()関数を再帰を使わずに
計算するように書き換えよ。すなわち、結果を
蓄える配列Fib[]とF(count-1)まで計算したこと
を表わす変数countを、静的変数(または大域変
数)として宣言せよ。二重に計算することのな
いよう工夫すること。
0260デフォルトの名無しさん
NGNGちなみに何年?
0261244
NGNGいやまだ自分は教えられるほど偉くもないんだけど、
俺がアドバイスできることといえば、
変数sはいらないんじゃない?
for( i = 0 ; i < SIZE ; ++i ){
printf("%5d",dim[i]);
}
でどうだろう。
0262デフォルトの名無しさん
NGNGなんか逆の気がするな。
まず再帰を使わないのから作って、次に再帰関数で
やってみましょーが普通の手順じゃないのかな。
それにグローバル使ってもいいってなんでだろー。
0263hide
NGNG大学2年です。
計算機言語という授業の宿題です。
0264直リン
NGNG0265デフォルトの名無しさん
NGNGテキストファイルがあるのですがそれを読み込んで
ID,姓名,読み(ローマ字)の三つの要素をもつ構造体に格納します
IDは、番号です!例えばaaa2241見たいな感じです。
姓名、読みの文字数はおそらく不変です。
枝の追加は左の枝と右の枝どっちでもいいと思います(左と右変えると違うのですか?)
見やすい形…おそらく表示させて木とわかればいいと思います!
0266デフォルトの名無しさん
NGNGそのテキストファイルの内容が知りたいといっているのだよ
0267デフォルトの名無しさん
NGNGだいたいどれをキーにするの?
0268262
NGNG(明日論XP1700+でコンパイラはBCC)
やっぱり再帰はあかんね。おらよ。やっぱりグローバル変数なんか
使わなくていいとおもうよ。
main()
{
int Fib[NUM + 1];
int count;
for (count = 0; count <= NUM; count++) {
if (count > 1) {
Fib[count] = Fib[count - 1] + Fib[count - 2];
}
else {
Fib[count] = 1;
}
printf("Fib(%d) = %d.\n", count, Fib[count]);
}
return 0;
}
0269わからずや
NGNG計算式を文字列として読み込みスタックを用いて計算するプログラムに
ついて質問です。
逆ポーランド記法でスタックに入れていこうと思うのですが
7*(((6+8)*(3*6))+2)
のように括弧がついた式になるとスタックに入れる順番が分からなくなって
しまいます。
誰か詳しく教えて頂けませんか?
0270225
NGNG#include <stdio.h>
#define SIZE 10
main()
{
int dim[SIZE]={1,2,3,4,5,6,7,8,9,10};
int i,x;
x=i[0];
i[0]=i[9];
i[9]=x;
for( i = 0 ; i < SIZE ; ++i ){
printf("%5d",dim[i]);
}
}
とりあえず完成したのですが、僕のほうでは
動作を確認する環境がありません。どなたか
このプログラムを実際に動かしてはもらえないでしょうか。
出力結果が
1 2 3 4 5 6 7 8 9 10
10 2 3 4 5 6 7 8 9 1
になればいいのですが。お願いします。
0271デフォルトの名無しさん
NGNGフィボナッチ数列は定義が再帰(帰納)になってるので、
再帰で実装するのが自然だと思う。
0273デフォルトの名無しさん
NGNGうんもちろん。実装が自然かというのといい実装かというのは別の問題。
再帰を使わずに実装できるのならそっちのほうがたいていいい実装だろう。
0274262
NGNG0275デフォルトの名無しさん
NGNGネタか?
逆ポーランド記法のメリットに括弧を使わずに演算の優先順位を決めれると
いうものがあるのだが。
0276デフォルトの名無しさん
NGNG0277275
NGNG逝ってきます・・・
0278デフォルトの名無しさん
NGNGint fib(int n)
{
int x = 1, y = 0;
for (; n > 0; n--) {
int z = x;
x += y;
y = z;
}
}
0279デフォルトの名無しさん
NGNGaaa111,井川慶,igawa/kei(aaa111)
aaa112,伊良部秀輝,irabu/hideki(aaa112)
:
:
みたいな感じです!
0280デフォルトの名無しさん
NGNG読み方の後ろについている括弧で括られたidは除去しなきゃいけないの?
0281デフォルトの名無しさん
NGNG除去しなくていいです
0282デフォルトの名無しさん
NGNGhttp://cg.iclub.to/link/ranran1/
0283デフォルトの名無しさん
NGNG一例として、たとえば左の子はアルファベットの早いもの、右は遅いものが来る二分木なら、
d
/ \
c f
\
g
のように
0284283訂正
NGNG/ \
c f
\
g
0285デフォルトの名無しさん
NGNGファイルがあります。
そのファイルには、データがそれぞれ19行×2列あります。
そのファイルのデータを読み込んで、各行のデータの平均と、その平均をつかって共分散を
求めるプログラムをどなたかお願いします。
データの型はdoubleです。
0286デフォルトの名無しさん
NGNG一行にはどういう形式で列が記録されているのか?
0287デフォルトの名無しさん
NGNG思いつくままにコーディングしてみた。
検算のためにシュテルマーの公式でπを小数点以下100桁まで計算するプログラム。
とりあえず遅い。固定小数点で計算するやつの数千倍遅い。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=85
0290283訂正
NGNGvoid printtree(struct node *p)
を教えてください
0291デフォルトの名無しさん
NGNG0.XXXXXX 0.XXXXXXX
0.XXXXXX 0.XXXXXXX
.
.
.
0.xxxxxx 0.xxxxxxx
って感じです。
0292デフォルトの名無しさん
NGNG・名前を入力するとその人の特徴を外部ファイルから読み出して出力するプログラム。
えーとポインタ等使うんでしょうか?tokutyo.txtってファイルの中は
aoki
ゴルフ大好き
akagi
麻雀大好き
akebono
抱擁大好き
(以下ふざけた名前と特徴が続く(3kb分))
となってるんですけど、これをどうやって読み出すんでしょうか。
多分、これのもっと高度なものを上でやってるんでしょうけど全然わからなかったもので・・・
せめて実現するために使う関数でも教えてもらえませんか(´Д`;)
0293デフォルトの名無しさん
NGNGfopenでファイルを開きfgetsで読み出す。読み出したものはstrcmpで照合する。表示はprintfで。
0294275
NGNG>ttp://weinberg.hoops.ne.jp/soft/
誤解したお詫び。
本当は漏れ自身が解こうかとおもたが、スタックの実装がめんどく感じたので却下。
(C++だとstackがあるんだが・・・Cにもある!?)
優先順位の判定をいじればそんなに難しいものじゃないかと。
0295
NGNGプログラムをC言語でやってます。そこで
# a a a
36 56
というファイルを読むときに#が現れたらその行は無視して
36と56を用意した変数に格納する。
もし#がないファイルでもきちんと36と56を用意した変数に格納する
というプログラムをCで書きたいのですがどうもうまくいきません。
どなたかちからかしてください
0296デフォルトの名無しさん
NGNGそういうものは自分で実装するかライブラリを入手する。
0297デフォルトの名無しさん
NGNGaaa # bbbという行があった場合はどうするんだ?
aaa まで読んであとは無視するのか?それとも行全体を無視するのか?
0298デフォルトの名無しさん
NGNG一般的に考えると前者だと思うが、
>>295の書き方だと後者にも思えるな。
0299295
NGNG#がある行は無視します。
0300デフォルトの名無しさん
NGNGじゃあfgetsで読んだ後にstrchrで'#'を探して、NULLが返ってこなければ無視すればいいんじゃないの?
0301わからずや
NGNG返事ありがとうございます。
http://weinberg.hoops.ne.jp/soft/ に行けませんでした。
Cにはstackはありません(たぶん)。stackは配列かポインタで表せます。
優先順位はだいたい分かるんですけど優先順位の判定はどうするんですか?
教えて下さい。
0302デフォルトの名無しさん
NGNGつまり、「#」のある行は問答無用で無視する訳だな。
それなら、
1.fgets()で一行読み込む
2.strchr()で'#'を検索
3.検索した結果、'#'が見つかれば次の行へ
見つからなければ、データを変数に格納する
と言うステップを踏めばいい。
0303295
NGNG>>300
strchrですか一度やってみます。。
0304デフォルトの名無しさん
NGNGお早い回答ありがとうございます。これで友人の鼻を明かしてやれそうです。(´∀` )
この辺を集中して学ぶにはどうしたらいいのでしょう?これはポインタ、もしくは構造体なんでしょうか?
ホント馬鹿で申し訳ないです。持ってるビギナー向けの参考書に載ってなくて・・・(´Д⊂
0305295
NGNGif(width=='#'){
fgets(damy,sizeof(damy),fp);
fscanf(fp,"%d %d %d ",&a,&b,&c);
}
これは掲示板書き込む前に自分でかいたやつなんですが
どこがまずいんでしょうか。うまくよみこめませんでした。
変数a,b,cはすべてintです。damyは文字配列です。
>>302
みなさんその方法を薦められてるようなのでそれでやってみます
0306デフォルトの名無しさん
NGNGそのwidthってのはなによ?
とりあえず真っ先にfgetsで一行読むこと。
その後に>>300,>>302を行う。
#がなければfgetsで読んだものをsscanfで解析してa,b,cにいれる。
0307275
NGNG実は漏れも同じ様な講義を受けたことあるんだが(w
他の演算子と同じように判定すればいいよ。
ただ、最終的にはスタックに残らないような処理にしなきゃいけないのを
忘れないように。
0308わからずや
NGNG親切に有り難うございました。
0309無料動画直リン
NGNG0310244
NGNGはだめだめです。ANSI準拠といいつつ嘘があるし、
int data[N];
for (i = 0. i <= N; i++)
data[i] = 0;
みたいなやばいソースが平気でサンプルになってます。
俺が持ってる教科書これだ・・・・
0311デフォルトの名無しさん
NGNGピリオドは誤植として、<=はまずいな(笑)
0312デフォルトの名無しさん
NGNG0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNG昔、何代目かのスレで作った逆ポーランドへ変換するプログラムが残っていたので
貼っときます。再帰下降構文解析を使っています。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=86
0315249
NGNGここなら必ずできる方がいると信じています。
進級できるかな・・・
0316デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=87
0317デフォルトの名無しさん
NGNGいたら、Cのソースにしてみていただけないでしょうか?
integer n > 1
1. if ( n is of the form a^b , b > 1 ) output COMPOSITE;
2. r = 2;
3. while(r < n) {
4. if ( gcd(n,r) != 1 ) output COMPOSITE;
5. if (r is prime)
6. let q be the largest prime factor of r - 1;
7. if ( q>= 4*sqrt(r)*log(n) and ( n^((r-1)/q) != 1(mod r) )
8. break;
9. r = r + 1;
10. }
11. for a=1 to 2*aqrt(r)*log(n)
12. if ( (x-a)^n != (x^n -a)*(mod x^n - 1,n) ) output COMPOSITE;
13. output PRIME;
0318デフォルトの名無しさん
NGNGそれらの文字数の少ない順にソートして表示するプログラムを作成しなさい。
レベル1:配列のままでmain関数だけで処理をする
レベル2:ポインタ変数を用いる
レベル3:ソートする部分を関数にする
0319デフォルトの名無しさん
NGNGint main(void)で始めて、return 0;などで終わるのが正しいやり方なんですか?
0320デフォルトの名無しさん
NGNGttp://www-ccs.ucsd.edu/c/lib_over.html#C%20Program%20Startup%20and%20Termination
0321デフォルトの名無しさん
NGNGこんな感じで
#include <algorithm>
#include <iostream>
#include <vector>
#include <string>
bool string_short( std::string const& lhs, std::string const& rhs ){ return lhs.size()<rhs.size(); }
int main()
{
char dummy[1][1];
std::vector< std::string > array;
std::copy( std::istream_iterator< std::string >( std::cin ), std::istream_iterator< std::string >(), std::back_inserter( array ) );
std::sort( array.begin(), array.end(), string_short );
std::copy( array.begin(), array.end(), std::ostream_iterator< std::string >( std::cout, " " ) );
return 0;
}
0322デフォルトの名無しさん
NGNG0323デフォルトの名無しさん
NGNG「void main( /* 中略 */ )」としても、
exit() 関数がある以上 void になり得ない。
0324デフォルトの名無しさん
NGNGint foo ();
みたいに、引数を省略した場合って(int)になるんだよね?
この挙動って最新のC99で変わってる?
調べても分からなかったんだが
0325デフォルトの名無しさん
NGNG0326デフォルトの名無しさん
NGNG>擦れ違いかもしれないけど
わかってるのなら書くなよ。
0327デフォルトの名無しさん
NGNG三つの要素をもつ構造体に格納するプログラムを書け.
(2)木とはなにか.また,2分木とはなにか.説明せよ.
(3)(1)でデータを格納した構造体を節点とする2分木を作成するプログラムをかけ.
新しいデータを一行ずつ構造体に読み込んで,木に追加していくこと.必ずポインタを
使って木を実現し(構造体に必要な修正を加えること),データが増えても対処できるようにすること.また,すべての節点をなぞりながら,データ(ID,姓名,読み)を出力できるようにもせよ.その際できるだけ見やすい形に表示するよう工夫すること.
テキストファイルがあるのですがそれを読み込んで
ID,姓名,読み(ローマ字)の三つの要素をもつ構造体に格納します
テキストファイルの例は>>279です
枝の追加は左の枝と右の枝どっちでもいいと思います(左と右変えると違うのですか?)
見やすい形…>>284のように木を書いてください
0328デフォルトの名無しさん
NGNGCUIでツリーを表示するのはかなり難易度が高いぞ?
0329デフォルトの名無しさん
NGNG0330デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNG0333デフォルトの名無しさん
NGNGLarry -R- Emilio -R- Brent -R- Adolpho
-L- David
-L- Jeff -R- Francis
-L- null
-L- Stephen -R- Mike -R- null
-L- Roger
-L- Tom
0334デフォルトの名無しさん
NGNGすれ違いというルールを厳格に主張する奴は目的を見失ってるね。
例えそれが純粋にC/C++の宿題に関することから始まり、最終的にはコンパイラや
Cの仕様の問題になったとしてもそこまで指摘することは自然なことだし
議論としては継続しているじゃないですか。
そのことがスレッドを読みにくくするんですか。
スレ違いなどというものを厳密に守った結果、助言としては誤解を与え得る
中途半端なものになっては本末転倒だが、妙なこだわりに取り付かれた人たちに言っても無駄か。
0335デフォルトの名無しさん
NGNGそれのどこが二分木?
0336デフォルトの名無しさん
NGNG0337デフォルトの名無しさん
NGNGこれを応用しる!
http://www.belution.com/miwaki/ads/tree.shtml
0338デフォルトの名無しさん
NGNG-L- David
-L- Jeff -R- Francis
-L- null
-L- Stephen -R- Mike -R- null
-L- Roger
-L- Tom
0339デフォルトの名無しさん
NGNG0340デフォルトの名無しさん
NGNGEmilio
Brent
Adolpho
David
Jeff
Francis
null
Stephen
Mike
null
Roger
Tom
0341デフォルトの名無しさん
NGNG-L- David
-L- Jeff -R- Francis
-L- null
-L- Stephen -R- Mike -R- null
-L- Roger
-L- Tom
0342249
NGNGアルゴリズムさえわかれば何とかなるんですTT
0343デフォルトの名無しさん
NGNG0344デフォルトの名無しさん
NGNG0345まりお
NGNG0346デフォルトの名無しさん
NGNG提出して不十分と言われたレポートを晒せ
0347316
NGNG0348デフォルトの名無しさん
NGNG仕様が違うんじゃない?
どうもIDをキーにするのでは無いらしい。
(だから前もって聞いたのに)
0349デフォルトの名無しさん
NGNG>枝の追加は左の枝と右の枝どっちでもいいと思います
0350デフォルトの名無しさん
NGNGなんだっての?
315にソースがあるけど、これがなんなの?
0351350
NGNGでも347と315は別の人なの?
二分木のプログラムは316にあるけど。
0352350
NGNG何ができないのか良く分からないよ、どっちにしても。
0353デフォルトの名無しさん
NGNGそのフローチャートに基づいてプログラムを作成せよ。フローチャートは分かりやすさも評
価します。
Cでお願いします
0354デフォルトの名無しさん
NGNGhttp://endou.kir.jp/moe/linkvp.html
0355デフォルトの名無しさん
NGNG/* 二つの文字列が等しければ1を異なれば0を返す */
int strequal(const char *s1,const char *s2)
{
for(;*s1==*s2;s1++,s2++)
if(*s1=='\0')
return 1;
return 0;
}
0356デフォルトの名無しさん
NGNG大変デンジャラスなコードでつね。
0357デフォルトの名無しさん
NGNGどこが?
0358デフォルトの名無しさん
NGNGint strcmp( const char *s1, const char *s2 )
{
while( *s1==*s2 ) /* 比較が一致している間ループ */
{
if( *s1=='\0' ) /* s1、s2 共に文字列の終端か? */
{
return 0;
}
s1++,s2++;
}
return *s1 - *s2;
}
0359デフォルトの名無しさん
NGNG大小比較はいらないと思う。
0360デフォルトの名無しさん
NGNG0361デフォルトの名無しさん
NGNGlibcのコードだろ
>>360
・・・・・
0362デフォルトの名無しさん
NGNG終端文字('\0')が同じ場所にあればif(*s1=='\0') が真となり1がかえる。
s1の方が前にあればforの*s1==*s2が偽となりループを抜け0が返る。
s1の方が後にある場合は上と同じ。
0364デフォルトの名無しさん
NGNGフローチャートはスレ違い
0365デフォルトの名無しさん
NGNG罫線文字か何かで表現するのか?
0366デフォルトの名無しさん
NGNG0367デフォルトの名無しさん
NGNG0368デフォルトの名無しさん
NGNG自分で調べもせず、すぐ人に聞く癖は直したほうがいいよ。
0369デフォルトの名無しさん
NGNG過去の遺物というだけならまだいいが、害悪垂れ流しだからなあ…。
0370デフォルトの名無しさん
NGNGでは何で記述しろというんだ?
過去の遺物でないアクティビティ図ならいいのか?
何も変わるところはないと思うが
0371デフォルトの名無しさん
NGNG目標を明確にしないで書かせることが多いみたいだから実際あんまり意味ないと思われ。
0372デフォルトの名無しさん
NGNG箇条書き
0373デフォルトの名無しさん
NGNGこの構造体へのポインタをノードの値として持つ二分木のノードを定義せよ。
次に、果物の名前に対して二分探索木の構造を保つように、
アルファベット順に基づきデータを追加するadd_node()関数、および、
この関数により生成される二分探索木に対し、
果物の名前をキーとしてノード検索を行うsearch_node()関数を定義せよ。
add_node()はノードに格納する値を引数とし、生成されてノードへのポインタを戻り値とします。
search_node()は、ノードへのポインタと探索キーを引数にとり、
探索で見つかったノードへのポインタを戻り値とします。
お願いします。
0374デフォルトの名無しさん
NGNG最も汎用的なフォーマットはテキスト。
ソースファイルに全て記入しる。
0375デフォルトの名無しさん
NGNGifなら 〜ならこっち違うならこっちとか
switchなら条件はこういう場合はこうとか
日本語から学んでくるか?すこしは知恵使えよ。
おれは今知恵熱出たけどな
0376デフォルトの名無しさん
NGNG| |
|----------------|
↓ no
< > →
↓yes
こんな感じで。
0377デフォルトの名無しさん
NGNGあんまフローチャートと変わんない気がするんだが
0378デフォルトの名無しさん
NGNG0379デフォルトの名無しさん
NGNGそれはもはや「チャート」ではないのでは?
0380デフォルトの名無しさん
NGNG色使いも荒くして極端にファイル重くしろ。
そして送りつけろ
0381デフォルトの名無しさん
NGNG0382デフォルトの名無しさん
NGNGy=tan(x)-x^x
が0になる点を探したいのですが
二分法でなくても答えが出せるのがあったら
教えてください
0383デフォルトの名無しさん
NGNGNODE* search_node(char *name, NODE *node) {
int result; NODE *next;
if (node==NULL) return node;
if ((result=strncmp(name, node->fruit->name, L))==0) return node;
next = result < 0 ? node->left : node->right;
return next ? search_node(name, next) : NULL;
}
int add_node(char *name, int price, NODE *node) {
int result; NODE **pnext;
if (node==NULL) return (tree = create_node(name, price, NULL, NULL), 1);
if ((result = strncmp(name, node->fruit->name, L))==0) return 0;
pnext = result < 0 ? &node->left : &node->right;
return *pnext == NULL ? (*pnext = create_node(name, price, NULL, NULL), 1) : add_node(name, price, *pnext);
}
0384ジュウオウ
NGNGメンバとする構造体を定義し,キーボードから学生番号と氏名を
5名分読み込むプログラムを作成しなさい.ただし,3桁以外の整数値を入力した場合は再入力するようにし,
最後に5名分のデータをすべて表示すること.
〔実行結果〕
学生番号(3桁の整数)> 444
氏名(アルファベットで姓のみ)> Takeda
…………
学生番号(3桁の整数)> 1100
学生番号(3桁の整数)> 99
学生番号(3桁の整数)> 631
氏名(アルファベットで姓のみ)> Sato
学生番号(3桁の整数)> 107
氏名(アルファベットで姓のみ)> Furukawa
(5名分のデータ表示例〉
学生番号: 444 氏名: Takeda
学生番号: 221 氏名: Kato
学生番号: 859 氏名: Azuma
学生番号: 631 氏名: Sato
学生番号: 107 氏名: Furukawa
0385デフォルトの名無しさん
NGNG0386デフォルトの名無しさん
NGNG#define N 5
#define BUF_SIZE 128
typedef struct _STUDENT {
int number; char name[BUF_SIZE];
} STUDENT;
STUDENT data[N];
int main(int argc, char *argv[])
{
int i,input; char buf[BUF_SIZE];
for(i=0;i<N;i++) {
INPUT_NUMBER:
printf("学生番号を入力してください(3桁整数)> "), fgets(buf, sizeof(buf), \
stdin);
if(!((sscanf(buf, "%d", &input) == 1) && (input > 99) && (input < 1000)))
goto INPUT_NUMBER;
data[i].number = input;
printf("名前を入力してください> "), fgets(buf, sizeof(buf), stdin), buf[str\
len(buf)-1]='\0';
strncpy(data[i].name, buf, sizeof(data[i].name));
}
for(i=0;i<N;i++) printf("番号: %d 名前: %s\n",data[i].number,data[i].name);
return 0;
}
0387デフォルトの名無しさん
NGNG「003や067のときはどうするのか」
が書いてないし
0388デフォルトの名無しさん
NGNG同じ授業を取ってる別人でしょう
0389デフォルトの名無しさん
NGNG0390デフォルトの名無しさん
NGNGNewton法もあるけど2分法で。
#include <stdio.h>
#include <math.h>
double func(double x)
{
return tan(x)-pow(x,x);
}
int main(int argc, char *argv[])
{
double x0,x1,x01;
double y0,y1,y01;
x0 = 0;
x1 = 1;
do{
y0 = func(x0);
y1 = func(x1);
if(y0*y1 > 0) break;
x01 = (x0+x1)/2;
y01 = func(x01);
if(y01*y1 < 0)
x0 = x01;
else
x1 = x01;
printf("f(%g)=%g\n",x01,y01);
}while(fabs(y01) > 1e-10);
return 0;
}
0391デフォルトの名無しさん
NGNG3行3列の2次元配列に1から99までの数値を入力する。
そのあと1から99までの数値をランダムにキーボード入力し、予め入力した
3行3列の数値にあうものがあったらその数値を0に置き換える。
当たりが縦又は横に並んだら「ビンゴ」とと何回目の入力で「ビンゴ」となったか
を表示する。
0392デフォルトの名無しさん
NGNGPAD
0393デフォルトの名無しさん
NGNG行列の要素はいつ入力するんだ?
0394デフォルトの名無しさん
NGNGゲーム開始前じゃねーの?
0395C語初心者
NGNG再帰を利用して迷路を解く。
外部変数
int position [9][9]={
{1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,1},
{1,0,1,1,1,1,0,1,1},
{1,0,0,0,0,1,0,0,1},
{1,1,1,1,0,1,1,0,1},
{1,0,0,0,0,1,0,0,1},
{1,1,0,1,1,0,1,1,1},
{1,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1}};
上の迷路で"1"が壁で、"0"が通路です。
Startは(y,x)=(1,1) Goalは(y,x)=(7,7)です。
関数 int visit(int y,int x) を使ってください。
一度通った道には2を、解の道には3を入れてください。
で、最短距離の座標と ,
壁を*、迷った所を?、解を0で表示する
プログラムをお願いします。表示にはprintfをお願いします。
0396デフォルトの名無しさん
NGNG0397デフォルトの名無しさん
NGNG> 最短距離の座標
ってなんじゃらほい。
それから最短経路を求めるのか分岐点のない経路を一つでも求めれば良いのか。
0398デフォルトの名無しさん
NGNGしらみつぶしにやればいいんじゃない。
0399デフォルトの名無しさん
NGNG0400デフォルトの名無しさん
NGNGdf/dx=lim{f(x+h)-f(x)}/h
に従い、十分小さいhを与えて関数x^3の微分値数値計算する関数を作成。
また解析解dx^3/dx=3x^2と比較するプログラムを考える事。
*比較するxの値の個数は20程度
小さい実数 h を実行時に与えるようにしてください. atof(argv[1]) あるいは scanf() どちらを用いてもいいです.
x の 範囲は実行時に与えるようにしなくとも結構です. プログラム内で適当に(例:0から10まで0.5刻み)固定してください.
・・・という問題なのですが、よろしかったらご教授ください(;´〜`)
0401デフォルトの名無しさん
NGNGint i, j;
for (i = 0; i < 9; i++) {
for (j = 0; j < 9; j++)
printf("%c", " *?0"[position[i][j]]);
printf("\n");
}
}
int check(int y, int x) {
if (x < 0 || x > 8) return 0;
if (y < 0 || y > 8) return 0;
return position[y][x] % 2 == 0;
}
int visit(int y, int x) {
int r;
if (!check(y,x)) return -1;
position[y][x] = 3;
if (x == 7 && y == 7) return 0;
if ((r = visit(y,x+1)) != -1) return 1+r;
if ((r = visit(y,x-1)) != -1) return 1+r;
if ((r = visit(y+1,x)) != -1) return 1+r;
if ((r = visit(y-1,x)) != -1) return 1+r;
position[y][x] = 2;
return -1;
}
int main(void) { int n = visit(1,1);
if (n == -1) { printf("経路がみつかりません\n"); } else {
printf("最短距離は%d\n", n);
print_answer(); }
return 0;}
0402C語初心者
NGNG>>397
> 最短距離の座標
(y,x)座標で迷路のゴールまでの最短距離だと思います。
>それから最短経路を求めるのか分岐点のない経路を一つでも求めれば良いのか。
最終的に 壁を*、迷った所を?、解を0で表示するプログラムになればいいと思います。
様は、壁の座標を*で、最短距離をの座標を0で、残りを?で埋めればよいかと。
よろしくお願いします。
0403デフォルトの名無しさん
NGNG前にあったかもしれんぞ。
0404401
NGNG0405C語初心者
NGNG> 最短距離の座標
(y,x)座標で迷路のゴールまでの最短距離だと思います。
追加です
単純にこの時の(y,x)の値を表示するだけです。
>>401様
ありがとうございます
0406デフォルトの名無しさん
NGNG日本語が変なのはともかくとして、問題の意味が曖昧だ。
ゴールに到達する経路のうち、最短経路には分岐点はないが、
分岐点のない経路が最短であるとは限らんよ。
どっちを求めればいいんだ?
それとも分岐点のない経路が最短であるような迷路しか
扱わないことを仮定して良いのか?
0407デフォルトの名無しさん
NGNG>最短経路には分岐点はない
意味がわからん。
0408デフォルトの名無しさん
NGNGそうだな悪かった。
0409C語初心者
NGNGとりあえず最初に示した、1と0の迷路では
ゴールへの道は一つしかないと思うんですが…。
0410デフォルトの名無しさん
NGNGWindowsならスクリーンセーバーの迷路を見てみるといい。
片手を壁に当てて迷路をたどると(出口が壁にそってる場合は)必ず出口に出ることができる、という法則。
これだと必ず出口に出ることはできるが、歩く距離は必ずしも短いわけではない。
0411C語初心者
NGNGそういうことですか。
勘違いしていました。
単純に、分岐点の無い経路を求めてください。
0412デフォルトの名無しさん
NGNGなにかイイ関数、いい方法でもないですか?
0413デフォルトの名無しさん
NGNG「ファイルの情報」とは、サイズ?内容?ファイル名のみ?
OSによっても答えがかわってきそうなので、OSも追記したほうが。
0414275
NGNG長いんでスマソ。
C++の文法になっているから必要に応じて書き換えてくれ。
////////////////////////////////////////////////////
#include <stdio.h>
#include <iostream>
using namespace std;
double func(double);
void bibun( double h )
{
for( double x = 0; x <= 10; x += 0.5 )
{
double out;
out = func( x + h ) - func( x );
out /= h;
printf( "x(%f) :3x~2 の値 ->%f 定義による計算結果 ->%f\r\n",x, 3 * ( x * x ), out );
}
}
0415275
NGNGdouble func(double x)
{
return x * x * x;
}
void main()
{
double h;
cin >> h; // hを入力
bibun( h );
}
0417382
NGNGニュートン法というのもよろしかったら教えてください
<
2分法のやり方教えてください
y=tan(x)-x^x
が0になる点を探したいのですが
二分法でなくても答えが出せるのがあったら
教えてください
0418デフォルトの名無しさん
NGNGreaddir()
0419デフォルトの名無しさん
NGNGstat
0420デフォルトの名無しさん
NGNG0421デフォルトの名無しさん
NGNG0422デフォルトの名無しさん
NGNG技術的には可能。
0423デフォルトの名無しさん
NGNGCはどのようにして・・・
0424デフォルトの名無しさん
NGNGweb上にアップって意味わからん。
ちなみに板違い
0425デフォルトの名無しさん
NGNGWebProg板
0426デフォルトの名無しさん
NGNG躍動感に乏しいが、WebProg板に「C言語のCGIを語りつつ普及するスレ」がある。
http://pc2.2ch.net/test/read.cgi/php/1048393217/l50
0427デフォルトの名無しさん
NGNG会社のお姉ちゃんが言ってた「ネットワーク上に保存しました」
くらい微妙な言葉だな。
0428デフォルトの名無しさん
NGNGサーバにソースをアップしてサーバ上でコンパイル。
同じ環境ならコンパイル後にアップしてもいいけど。
0429デフォルトの名無しさん
NGNG「1.任意の個数のint型数値をコンソールより入力された順に保存する.
2.文字列"Sort"の入力により,入力された数値群を降順に並び替える.
3.最大値と最小値の平均値を計算し,2分探索法で検索する.」
設計指針
・ソート部,探索部は,別のアルゴリズムを採用しても利用できるように設計/実装せよ.
・コンソール入力は,scanf()を使い,文字列,記号,整数値以外は,それぞれ別のエラーコードを返し,
入力を継続するようにせよ.
・メモリ節約のため,数値保存のためのメモリは動的に確保せよ.
0430デフォルトの名無しさん
NGNGマルチやめれ
0431デフォルトの名無しさん
NGNG2次の正則行列Aの逆行列A^-1を求める関数を作成せよ。
また確認のために、任意の行列に対して逆行列を計算し、結果を返し、
行列の積A×A^-1を計算し、これが単位行列になることを確認せよ。
説明:
2次の行列A=(αij)の逆行列A^-1は
|α22/D -α12/D|
A^-1=| |
|-α21/D α11/D|
で与えられる。ここでDはAの行列式で
D=α11α22-α12α21
で与えられる。
まずαijに任煮の数値を読みこみ、Dを計算し、D=0の場合は
逆行列が存在しないと表示し、それ以上の計算はせずに終わる。
D!=0のとき逆行列を計算する。さらにこれが逆行列となっていることを
確認するために、積A×A^-1を計算し、これらの結果を印刷する。
印刷するときには行列であることがわかるように、各自工夫する。
配列の大きさはdefine文を用いてもよい。またA×Bは次の式で与えられる。
|α11Β11+α12Β21 α11Β12+α12Β22|
A×B=| |
|α21Β11+α22Β21 α21Β12+α22Β22|
以上が問題です。言語はCです。関数を3つ作ってこいと言われました。
よく分からないのでご教授お願い致します。
0432デフォルトの名無しさん
NGNGsystem("/bin/ls /targetdir");
結果を利用したいなら
popen("/bin/ls /targetdir", "r");
して
fgets();
0433デフォルトの名無しさん
NGNGなんというバカにした問題なんだ!!
0434デフォルトの名無しさん
NGNG簡単ですか?ご教授お願い致します
0435382
NGNGで書いたのですが
ニュートン法を使い下に書いたのできますか
教えてください
y=tan(x)-x^x
が0になる点を探したいのですが
二分法でなくても答えが出せるのがあったら
教えてください
0436デフォルトの名無しさん
NGNG0437デフォルトの名無しさん
NGNG0438デフォルトの名無しさん
NGNGそうだと思います。
関数をあまりっ理解してないのでプログラムで書くと
どのように書いていいかわかりません。
ご教授お願い致します。
0439デフォルトの名無しさん
NGNG関数にすればいいんじゃない?
まずαijに任煮の数値を読みこみ、Dを計算し、D=0の場合は
逆行列が存在しないと表示し、それ以上の計算はせずに終わる。
あとは、これをどうするかぐらいで。
0440デフォルトの名無しさん
NGNG丸めとか問題にならない?
分数でやらなきゃならないのかしらん。
行列式なんて忘れたんで、変なこといってたらスマソ。
0441デフォルトの名無しさん
NGNGこれでどうよ?
#include <stdio.h>
#include <float.h>
#define ROW 2
#define COL 2
int readM(double M[][COL])
{ char buf[BUFSIZ];
printf("A00 A01 A10 A11>");
if(fgets(buf,sizeof(buf),stdin)==0) return -1;
if(sscanf(buf,"%lf%lf%lf%lf",&M[0][0],&M[0][1],&M[1][0],&M[1][1])!=4) return -2;
return 0; }
int revM(double A[][COL],double B[][COL])
{ double det=A[0][0]*A[1][1]-A[0][1]*A[1][0];
if(fabs(det) < DBL_EPSILON) return -1;
B[0][0]=A[1][1]/det;B[0][1]=-1*A[0][1]/det;B[1][0]=-1*A[1][0]/det;B[1][1]=A[0][0]/det;
return 0; }
void mulM(double A[][COL],double B[][COL],double C[][COL])
{ int i,j,k; for(i=0;i<ROW;i++) for(j=0;j<COL;j++) for(C[i][j]=0,k=0;k<COL;k++) C[i][j]+=A[i][k]*B[k][j]; }
void printM(double M[][COL])
{ int i,j; for(i=0;i<ROW;i++) { for(j=0;j<COL;j++) printf("%1.4f ",M[i][j]); printf("\n"); } }
int main(int argc, char *argv[])
{ double A[ROW][COL],B[ROW][COL],C[ROW][COL];
while(readM(A)==0){
if(revM(A,B)){ printf("逆行列は存在しません\n"); continue; }
mulM(A,B,C);
printf("[A]\n"); printM(A);printf("[A]^-1\n"); printM(B);printf("[A]*[A]^-1\n"); printM(C);
}
return 0;}
0442デフォルトの名無しさん
NGNG#include <math.h>
#include <stdlib.h>
#include <stdio.h>
double
newton(double (*f)(double), double (*df)(double), double x, double h, int imax)
{
int c;
while (fabs(f(x))>h && c<imax){x -= f(x)/df(x); c++;}
return c>=imax ? 0.0/0.0 : x;
}
#define IMAX 1000
double f(double x){return tan(x)-pow(x,x);}
double df(double x){return tan(x)*tan(x)-pow(x,x)*(log(x)-1)+1;}
int
main(int argc, char **argv)
{
double x,y,h;
if (argc<3) {fprintf(stderr, "usage: %s x0 delta\n", argv[0]); return 1;}
sscanf(argv[1], "%lf", &x); sscanf(argv[2], "%lf", &h);
y = newton(f, df, x, h, IMAX);
if (y == y) printf("%.10e\n", y); else printf("failed\n");
return 0;
}
0443デフォルトの名無しさん
NGNG一瞬荒しかと思いますたw
それコンパイルしたらエラーが出た・・
0444デフォルトの名無しさん
NGNG少し直したら回りました!
ありがとうございました。
0445デフォルトの名無しさん
NGNGすごい勉強になる。
0446デフォルトの名無しさん
NGNG> int c;
これは int c=0; だな
0447デフォルトの名無しさん
NGNG読みやすさ、計算にかかる手間などは
どう違うのですか?
0448デフォルトの名無しさん
NGNG0449デフォルトの名無しさん
NGNG手間は、階乗なんかだと掛ける回数は同じでも
関数を呼び出すためにスタックに入れて、また返ってくる分再帰は無駄になる。
フィボナッチ数列だと二つに分岐して再帰してさらに分岐した時に
同じ計算をするからさらに手間がかかる。
0450デフォルトの名無しさん
NGNGc++の宿題です。
0451デフォルトの名無しさん
NGNGJavaも勉強しよう
Ruby もなかなか面白い
PHP もなかなかね
とにかくC は捨てましょう
0452デフォルトの名無しさん
NGNGそれは宿題か?
0453デフォルトの名無しさん
NGNGCが一番たのしくね?
0454デフォルトの名無しさん
NGNG0455デフォルトの名無しさん
NGNG0456デフォルトの名無しさん
NGNG0457デフォルトの名無しさん
NGNGそーいや、tail recursionしてる再帰関数ってCではちゃんとループに展開してくれるのかな。
まとまった時間が取れたら追求してみようっと。
0458デフォルトの名無しさん
NGNGありがとうございます
0459デフォルトの名無しさん
NGNGある特定の数以上になるとそれ以上数字が変わらなくなります。
なぜなのでしょうか?BorlandC++とCPADです。
#include<stdio.h>
#include<math.h>
main()
{
double a,i;
double root=1;
double x=1;
int hiku;
a=root*root;
for(i=0;;i++){
if(a<2){root=root+x;}
else {root=root-x;
x=x/10;}
a=root*root;
printf("値は%1.30f ルートは%1.30f",a,root);
hiku=getchar();
}
}
0461デフォルトの名無しさん
NGNG保持できる桁数には限界がある
float.h の DBL_DIG
正確にはl og10(DBL_MANT_DIG)
0462デフォルトの名無しさん
NGNG0463デフォルトの名無しさん
NGNG0464デフォルトの名無しさん
NGNG0465デフォルトの名無しさん
NGNGそういうこと。
仮数部53ビットの場合、完全に信用できるのは15桁。
0466デフォルトの名無しさん
NGNGC FAQ にもあげられている "What every computer scientist should know
about floating-point arithmetic" みたいな概説は読んでおくのが良いと思うなあ。
日本語訳はbit別冊コンピュータ・サイエンス1993年9月号別冊にあったけど、
webにもあるようだ。 ttp://www.google.com/search?q=%22scientist+shoud%22
0467デフォルトの名無しさん
NGNG0468デフォルトの名無しさん
NGNG全言語のページから"scientist shoud"を検索しました。
1件中1 - 1件目
予想される検索キーワード: "scientist should"
0469デフォルトの名無しさん
NGNGこのいたにいる方なら簡単に解けると思ったのですが、返事がないので書きます。
再帰を利用しないで、かわりにifやwhile?を使って
ハノイの塔のディスク移動の手順を表示するプログラムを作ってください。
棒は3本で、ディスクは任意で実行できるのをお願いします。
0470デフォルトの名無しさん
NGNG過去スレにあったよ。
つーか、書いた記憶がある。
0471デフォルトの名無しさん
NGNGttp://web.archive.org/web/20010515151844/http://www.cs.latrobe.edu.au/~lu/xhanoi/hanoi.c
$ ./hanoi -h
* Usage: hanoi [-k#1] [-n#2] [-m]
where #1 is the number of pegs, #2 the number of discs,
and -m for printing details of every move.
Example: hanoi -k6 -n25
* Thank you for running this program, written by Xue-Miao Lu.
* This is an implementation of Lu's nonrecursive solution, Algorithm H,
International Journal of Computer Mathematics, Vol. 33, page 24, 1990.
The algorithm works for any number of pegs and for any number of discs.
* Since the number of moves increases exponentially, however, only a very
limited number of cases are presentable within reasonable time and space.
* The limited eligible choices: k in [3..99] and n in [1..u(k,30)].
0472デフォルトの名無しさん
NGNG#include <stdlib.h>
#define NSTACK 100
#define NCOLUMN 20
int
main(int argc, char **argv)
{
int na[NSTACK], sa[NSTACK], da[NSTACK], ta[NSTACK], n, c = 0, k = 0;
char s,d,t;
na[0] = argc>1 ? atoi(argv[1]) : 3;
sa[0] = 'A'; da[0] = 'B'; ta[0] = 'C'; k++;
while (k > 0) {
k--; n = na[k]; s = sa[k]; d = da[k]; t = ta[k];
if (n == 1)
printf("%c>%c%c", s, d, (++c)%NCOLUMN ? ' ' : '\n');
else {
na[k] = n-1; sa[k] = t; da[k] = d; ta[k++] = s;
na[k] = 1; sa[k] = s; da[k] = d; ta[k++] = t;
na[k] = n-1; sa[k] = s; da[k] = t; ta[k++] = d;
}
}
printf("%s%d moves\n", c%NCOLUMN ? "\n" : "", c);
return 0;
}
0473デフォルトの名無しさん
NGNGあと割線法という方法をおしえてください
f(a)とf(b)の直線とx軸との交点を求めて
(交点)<0のとき xa=(交点)
(交点)>0のとき xb=(交点)
をくりかえす
というふうにやるんですがプログラムがわかりません
y=tan(x)-x^x
が0になる点を探したいのですが
教えてください
y=tan(x)-x^x
0474デフォルトの名無しさん
NGNG0475デフォルトの名無しさん
NGNG0476デフォルトの名無しさん
NGNG0477デフォルトの名無しさん
NGNGtan(x)*tan(x)-pow(x,x)*(log(x)+1)+1; 正 かな
0478デフォルトの名無しさん
NGNG0479デフォルトの名無しさん
NGNG0480デフォルトの名無しさん
NGNG0481デフォルトの名無しさん
NGNG0482デフォルトの名無しさん
NGNG0483デフォルトの名無しさん
NGNGA大学のjinuの授業受けてる香具師がいるww
0484デフォルトの名無しさん
NGNG0485デフォルトの名無しさん
NGNG0486デフォルトの名無しさん
NGNGどの問題がそうなの?
0487デフォルトの名無しさん
NGNG>>119ですw
ログ見ててワロタww
0488デフォルトの名無しさん
NGNG犯人は喪前だ!
0489デフォルトの名無しさん
NGNG{
int i, j;
keytype x, t;
x = a[(first + last) / 2];
i = first; j = last;
for ( ; ; ) {
while (a[i] < x) i++;
while (x < a[j]) j--;
if (i >= j) break;
t = a[i]; a[i] = a[j]; a[j] = t;
i++; j--;
}
if (first < i - 1) quicksort(a, first , i - 1);
if (j + 1 < last) quicksort(a, j + 1, last);
}
要素同士の比較回数をpとするとき、上の{}内にp++などを付け加え比較回数を
カウントできるようにしてください。
0490デフォルトの名無しさん
NGNGまったく同じ内容のintの二次元配列は動くのですがなぜか・・・
0491デフォルトの名無しさん
NGNG0492111
NGNG0493デフォルトの名無しさん
NGNG>>492
釣れますか?
0494デフォルトの名無しさん
NGNG処理手順
3行3列の2次元配列に1から99までの数値を入力する。
そのあと1から99までの数値をランダムにキーボード入力し、予め入力した
3行3列の数値にあうものがあったらその数値を0に置き換える。
当たりが縦又は横に並んだら「ビンゴ」とと何回目の入力で「ビンゴ」となったかを表示する。
0495デフォルトの名無しさん
NGNG0496495
NGNGを作成しなさい。ただし、フィボナッチ数列は次のように定義される。
fn=fn-1+fn-2
f1=f2=1
(n>=3)
お願いします
0497デフォルトの名無しさん
NGNG本当に分からないのです
0498デフォルトの名無しさん
NGNG別スレで答もらってお礼を言ってたけど、あれは何だったんだ?
0499デフォルトの名無しさん
NGNG0500デフォルトの名無しさん
NGNGプログラムを書け.
(2)木とはなにか.また,2分木とはなにか.説明せよ.
(3)(1)でデータを格納した構造体を節点とする2分木を作成するプログラムをかけ.新しいデータを一行ずつ構造体に読み込んで,
木に追加していくこと.必ずポインタを使って木を実現し(構造体に必要な修正を加えること),データが増えても対処できるようにすること.
また,すべての節点をなぞりながら,データ(ID,姓名,読み)を出力できるようにもせよ.その際できるだけ
見やすい形に表示するよう工夫すること.
0501デフォルトの名無しさん
NGNG>>316
0502デフォルトの名無しさん
NGNG漏れじゃまったく解けないので・・。
「まず、正の整数を読み込みます、その入力値の分だけ整数値を
配列に読み込む。その後、しきい値(整数値)を読み込み、配列に
格納された値の中から、しきい値よりも大きな値だけを表示させる。
なお、配列に読み込む整数の値は最大で20個、プログラム中で
オブジェクト形式マクロを使用すること。
また、最初に0または負の値が入力された場合は正の整数値が
入力されるまで再入力を促す」
しきい値の入力のあとにどうやって配列からそれ以上の整数だけ
抽出すればいいのかがイマイチ・・・。HELP!
0503デフォルトの名無しさん
NGNGif (x[i] > y) printf("%d ", x[i]);
0504382
NGNGf(a)<0、f(b)>0って決まってるの?
はい決まってます!とりあえず
図形の概形を理解してf(a)<0,f(b)>0
となるa,bを入力して求めるということで
お願いします。
>割線法という方法をおしえてください
f(a)とf(b)の直線とx軸との交点を求めて
(交点)<0のとき xa=(交点)
(交点)>0のとき xb=(交点)
をくりかえす
というふうにやるんですがプログラムがわかりません
y=tan(x)-x^x
が0になる点を探したいのですが
教えてくださ
0505382
NGNG>f(a)とf(b)の直線とx軸との交点を求めて
↓
f(a) と f(b)を通る直線とx軸の交点を求めて
締め切り間近なのでお願いします
いままで教えてくれた方有難う御座います。
c言語の授業苦痛でしたが少しわかって楽しくなって
きました
0506デフォルトの名無しさん
NGNG--- 489 Thu Jun 12 19:07:00 2003
+++ 506 Thu Jun 12 23:29:00 2003
@@ -1 +1 @@
-void quicksort(keytype a[], int first, int last)
+int quicksort(keytype a[], int first, int last)
@@ -3 +3 @@
-int i, j;
+int i, j, n = 0;
@@ -9,2 +9,2 @@
-while (a[i] < x) i++;
-while (x < a[j]) j--;
+while (a[i] < x) {i++, n++;}
+while (x < a[j]) {j--, n++;}
@@ -16,0 +17 @@
+return n;
0507292
NGNG検索するファイルの中身が一致したら、その行だけを出力する場合、
どうしたらよいのでしょうか?
strcmp、strncmp使っても全然拾ってくれません・・・
strstr使うと検索文字列全て拾っちゃうし・・・(aokiと入れたらaokiiroまで拾う)(´Д⊂
具体的な記述方法ご教授いただけませんか?
愚案では検索する文字列の文字数で絞ればいいと思っているのですが・・・
0508デフォルトの名無しさん
NGNG0509デフォルトの名無しさん
NGNG0510495
NGNGを作成しなさい。ただし、フィボナッチ数列は次のように定義される。
fn=fn-1+fn-2
f1=f2=1
(n>=3)
どなたかお願いします
0511デフォルトの名無しさん
NGNGreturn (n>=3)?fibo(n-1) + fibo(n-2):1}
0512292
NGNG#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main(void)
{
FILE *fp;
char buff[256];
char kword[256];
do{
printf("キーワード: ");
gets(kword);
if((fp = fopen("saitama.txt", "r")) == NULL){
printf("ファイルあぼーん\n");
exit(1);
}
while(fgets(buff,256, fp) != NULL)
if(!strcmp(buff,kword))
printf("%s",buff);
putchar('\n');
fclose(fp);
}while(1);
}
saitama.txtの中身は292を参照してください。でも今はまず一行出力しようと
aoki ゴルフ大好き
のように、一行でまとめてます。
0513デフォルトの名無しさん
NGNGfgetsは改行(\n)まで読み込むので、
そのままstrcmpしたのでは一致しません。
読んだ文字列の最後に改行が付いていればそれを取る、
または、検索したい文字列に改行を付け加えるかすれば良いでしょう。
0514デフォルトの名無しさん
NGNGキーワードもfgetsしろ
0516292
NGNG0517デフォルトの名無しさん
NGNG1行にまとめるのとまとめないのでやることが違う。どっちかに決めろ。
>>513は1行に検索したい文字列が1つだと想定して書いた。
0518デフォルトの名無しさん
NGNGこんなかんじ?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void main(void)
{
FILE *fp;
char buff[256];
char kword[256];
fp=fopen("saitama.txt", "r");
if(fp==NULL) {
printf("ファイルあぼーん\n");
exit(1);
}
do{
printf("キーワード: ");
fgets(kword,sizeof(kword),stdin);
rewind(fp);
while(fgets(buff,sizeof(buff), fp) != NULL)
if(!strcmp(buff,kword)){
fgets(buff,sizeof(buff),fp);
printf("%s",buff);
break;
}
}while(1);
fclose(fp);
}
0519292
NGNGあわわわ、ごっごめんなさい。へたれなものでよく分かっていなかったんです。(というか今も)
>>292のテキストのままfgetsを使ったらばっちり拾ってくれました!!
>>518
My God・・・
「これからこうしたいんですけどどうすれば」と打つ前に回答が・・・
あぁ・・・3日悩んでた朕が救われていく・・・ほんとにありがとうございます。
0520デフォルトの名無しさん
NGNG宿題、誰か助けてください・・・。
人の名前と給料の額を入力すると、
厚生年金や車のローンなど、
あらかじめ給料の〇%と決めてある物をそれぞれ計算して出し、
最後にそれらを全部引いた、給料の手取りが出るというプログラムです。
よろしくお願いします m(_ _)m
0521デフォルトの名無しさん
NGNG「など」ってのはプログラミングできないぞ。
あとC++なの?
Cは理解してる?
設計の方針みたいなものは何にもないの?
クラス構成から考えて来いっていう宿題?
0522520
NGNGWrite a program that calculates and prints the monthly paycheck.
The net pay is calculated after taking the following deductions:
Federal Income Tax: 15%
State Tax: 3.5%
Social Security Tax: 5.75%
Medicare/Medicaid Tax: 2.75%
Pension Plan: 5%
Health Insurance: $75.00
Cは全くやったことないです。
昨日いきなり宿題出されて(しかも締め切り明日)途方に暮れてます。
0523デフォルトの名無しさん
NGNGそんなものは常識で考えてできるはず無いな。
どういう状況なんだ?
0524デフォルトの名無しさん
NGNGとりあえずその情報だけだと人名を入れる意味がないね。
給料の額が同じなら誰がやっても同じ結果になるんじゃないの?
0525520
NGNG説明が悪くてほんとすいません。
0526デフォルトの名無しさん
NGNG税金とかって、誰がやっても同じなんでしょ?
個人個人で差異のある要素って、給料だけでしょ。
なんで名前入れるの?
0527デフォルトの名無しさん
NGNG名前を出力するためなんじゃないの?
数値以外の入力処理をさせたいんでは
0528デフォルトの名無しさん
NGNG○○さんの手取りは$■■です。
とでも表示すればいいだけのことか。
0529520
NGNGでも、それが宿題の指示だからとしか言いようがないです。
0530520
NGNGそして手取り額全ての表示です。
0531デフォルトの名無しさん
NGNG> C++です。問題全部書いていいですか?しかも英語ですいません。
というか問題と仕様は最初にすべて書かないとこうやってやりとりが必要になる。
0532デフォルトの名無しさん
NGNG【最初は】 Hello World 【必ず】
http://pc2.2ch.net/test/read.cgi/tech/1033579539/
0533520
NGNG申し訳ないです。以後気を付けます・・・。
0534デフォルトの名無しさん
NGNGCPS 171
Machine Problem 2
Formatting Input/Output
Skills Needed: cin, cout, constants, arithmetic expressions, rounding, int main,
meaningful variable names, spacing, indentation, documentation, output manipulators.
0535デフォルトの名無しさん
NGNG#define Federal_Income_Tax 0.15
#define State_Tax 0.035
#define Social_Security_Tax 0.0575
#define Medicare_Medicaid_Tax 0.0275
#define Pension_Plan 0.05
#define Health_Insurance 75
void main(void)
{
char name[20];
double pay,fit,st,sst,mmt,pp;
printf("name :");
scanf("%s",name);
printf("pay :");
scanf("%lf",&pay);
fit = pay * Federal_Income_Tax;
st = pay * State_Tax;
sst = pay * Social_Security_Tax;
mmt = pay * Medicare_Medicaid_Tax;
pp = pay * Pension_Plan;
printf(" name:%s\n pay:%lf\n Federal Income Tax:%lf\n State Tax:%lf\n Social Security Tax:%lf\n Medicare/Medicaid Tax:%lf\n Pension Plan:%lf\n net pay:%lf\n"
,name,pay,fit,st,sst,mmt,pp,pay-fit-st-sst-mmt-pp);
return;
}
0536デフォルトの名無しさん
NGNG,name,pay,fit,st,sst,mmt,pp,pay-fit-st-sst-mmt-pp-Health_Insurance);
Health_Insuranceを引き忘れてた。
0537520
NGNG教科書の宿題と全く一緒!
>>535,536
ありがとうございます。
でも初心者過ぎて見ても全く意味がわからないです・・・。
今からこんなんで単位落とさないかかなり心配。
じっくり本読んで勉強することにします。
0538デフォルトの名無しさん
NGNGC++つうから、まじめにクラスとか作っちゃったよ。
折角だからはっとく。
>>520
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=89
0539デフォルトの名無しさん
NGNG0540デフォルトの名無しさん
NGNG0541デフォルトの名無しさん
NGNG0542デフォルトの名無しさん
NGNG0543542
NGNG0544デフォルトの名無しさん
NGNGまずはそれだけの計算に耐えられるコンピュータを用意してくれ。
0545デフォルトの名無しさん
NGNG0546542
NGNGおぉ!
プログラムを見せて貰えませんか?
お願いします(´Д⊂)
0547デフォルトの名無しさん
NGNG>>501
0548fe
NGNGint RSA(int tmp,int C,int d,int N){
while(d>1){
tmp=(tmp*C)%N;
tmp=RSA(tmp,C,d=d-1,N);
return tmp;
}
}
main(){
int C,d,N;
printf("plz input (C d N)>");
printf("%d\n",RSA(1,156,107,187));
}
このプログラム走らせると、出力が0になっちゃうんだけどなんで?
0549デフォルトの名無しさん
NGNGコンパイラは警告を出さなかった?
0550デフォルトの名無しさん
NGNGdが0のとき、何が返るでしょうか。
0551デフォルトの名無しさん
NGNG54
0552548
NGNGそうかそうか。
そんな簡単なミスが分からなかったなんて…
ありがとうございます!!
0553デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=90
0554デフォルトの名無しさん
NGNG次に一文字をを入力し、最初に入力した文字列の先頭からその文字
を探して最初にみつかった位置から先の文字列を出力する。
例えば最初に abcdABCD 次に c と入力すると dABCD と出力される
ようなプログラムです。
C++でお願いします。
0555デフォルトの名無しさん
NGNG#include <stdio.h>
#include <string.h>
int main(void) {
char buf[31], *p, c;
fgets(buf, sizeof(buf), stdin);
c = getchar();
if ((p = strchr(buf, c) != NULL)
puts(p);
return 0;
}
0556デフォルトの名無しさん
NGNG#include <iostream>
#include <string>
int main(int argc, char *argv[])
{
string buf;
char c;
cin >> buf;
cin >> c;
cout << buf.substr(buf.find(c)+1) << endl;
return 0;
}
0558デフォルトの名無しさん
NGNGありがとうございます。
0559デフォルトの名無しさん
NGNGCでおねがいできないでしょうか?
C以外は分からないんで、すみません
0560デフォルトの名無しさん
NGNG0561デフォルトの名無しさん
NGNGC++は関数名も何も分からないです
0562555
NGNG555はCでもあるのだが。もちろんC++でも動くはずだ。
とはいえ、typoがあってそのままだとコンパイルとおらねえな。
Cがわかるのならどう直せばいいかもわかるだろう。わかんないかな…
あとエラーチェックはほとんどしてないのでその辺よろしく。
0563デフォルトの名無しさん
NGNG0564サンプルです
NGNGhttp://yahooo.s2.x-beat.com/linkvp/linkvp.html
:・゜゚・*:.。..。.:*・゜(゚∀゚)゚・*:.。. .。.:*・゜゚・*
・゜゚・*:.。..。.:*・゜(゚∀゚)゚・*:.。. .。.:*・゜゚・*
0565デフォルトの名無しさん
NGNGさんざん既出なんだよハゲ
0566デフォルトの名無しさん
NGNG下記のプログラムを変更して、要素数がnである配列aの全要素の最大公約数を
求める int gcdary {int a[], int n}; を作成してください。
/*
ユークリッドの互除法によって最大公約数を求める
*/
#include <stdio.h>
int gcd(int x, int y)
{
if (y == 0)
return (x);
else
return (gcd(y, x % y));
}
int main(void)
{
int x, y;
printf("整数を入力せよ:");
scanf("%d", &x);
printf("整数を入力せよ:");
scanf("%d", &y);
printf("最大公約数は%dです。\n", gcd(x, y));
return (0);
}
0567デフォルトの名無しさん
NGNG(゚Д゚)ハァ?
0568int gcdary {int a[], int n};
NGNG0569デフォルトの名無しさん
NGNG問題
自然数nを入力として与えたとき、
●もしnが偶数ならば、n/2を新たにnと置く。
●もしnが奇数ならば、3n+1を新たにnと置く。
という操作を繰り返す。自然数nを入力したとき、それが1に収束するまでのステップと
そのステップ数を表示するようなプログラムを作成せよ。
プログラムについて何もわかりません。
#include<stdio.h>で始まるプログラムお願いします。
0570デフォルトの名無しさん
NGNG0571デフォルトの名無しさん
NGNG0572デフォルトの名無しさん
NGNG#include <stdio.h>
int main(void) {
int n;
scanf("%d", &n);
puts("ステップ数は、100回以上か100回以下かそれくらい?");
return 0;
}
0573デフォルトの名無しさん
NGNG0574デフォルトの名無しさん
NGNG何もわからんなら教えがいがない…
0575デフォルトの名無しさん
NGNG0576デフォルトの名無しさん
NGNG0577デフォルトの名無しさん
NGNG0578デフォルトの名無しさん
NGNGしかも数学の問題だろ?
ってことは巨大な数も扱えなきゃダメだろ?
まず多倍長整数演算からはじめなきゃだろ?
0579デフォルトの名無しさん
NGNGそれならそう書けよ。ちゃんとエラー内容付きでな。アフォ
0580デフォルトの名無しさん
NGNGこのスレでは初のようだから
int gcdary(int a[], int n)
{
if (n == 1)
return a[0];
else
return gcd(a[0], gcdary(a + 1, n - 1));
}
0581デフォルトの名無しさん
NGNGelseはいらない。
0582デフォルトの名無しさん
NGNG完全じゃないけど↓で解決してたんじゃないの?
262 名前:デフォルトの名無しさん 投稿日:03/05/29 22:26
>>260
#include <iostream>
main()
{
int step;
for(step = 0 ;n > 1;step++)
{
n = n % 2 ? n/2 : 3*n+1;
cout << n << endl;
}
cout << "ステップ数:" << step << endl;
}
0583デフォルトの名無しさん
NGNG問題をよく読め
0584デフォルトの名無しさん
NGNG#include <stdio.h>
int main(void)
{
int n = 1000;
int i = 0;
printf("もとの数 %d \n",n);
while(n != 1){
if(n%2){
n = n*3+1;
i++;
printf("step %4d, n*3+1 = %4d\n",i,n);
}
else{
n /= 2;
i++;
printf("step %4d, n/2 = %4d\n",i,n);
}
}
printf("step %5d で終了しました",i);
return 0;
}
0585デフォルトの名無しさん
NGNGん?
0586デフォルトの名無しさん
NGNGほんと馬鹿みないな質問で恐縮なんですが、
#include <stdio.h>で始まるプログラムでお願いしたいのですが、
そもそも#include <stdio.h>と#include <iostream>は何が違うんですか?
本当にすみません、くだらないこと聞いてしまって…
0587デフォルトの名無しさん
NGNG0588デフォルトの名無しさん
NGNG偶数と奇数は知ってるか?
0589デフォルトの名無しさん
NGNGあー逆になってるね。n%2も好きじゃないけど。
0590デフォルトの名無しさん
NGNG問題を出してくる>>586の考えが知りたい。
0591591
NGNGファイルに書き込むプログラムを作成しなさい。
ただし、入力の終了は記号'/'の入力で判定を行うこと。
お願いします
0592デフォルトの名無しさん
NGNGありがとうございました。
0593デフォルトの名無しさん
NGNG#include <stdio.h>
int main()
{
int c;
FILE *fp;
fp=fopen("ファイル","w"); // 失敗しない。絶対に失敗しない。しないったらしない。
while((c=getchar())!='/')
fputc(c,fp);
fclose(fp);
return 0;
}
0594566
NGNGですが、このままでは任意の数Nを入力することは出来ないので、
main関数も変更しないといけないと思います。
是非よろしくお願いします。
0595デフォルトの名無しさん
NGNG0596デフォルトの名無しさん
NGNG0597デフォルトの名無しさん
NGNG0598デフォルトの名無しさん
NGNGそれくらい自分で追加しろヴォケ
0599デフォルトの名無しさん
NGNG2分探索木は,単純で効率のよい動的な探索法で,コンピュータサイエンスにおける最も基本的なアルゴリズム
の一つである.2分探索木の一つの節点を表すのに構造体を用いたプログラムを作成せよ.節点の構造体は,1人の
学生のデータ(学籍番号,姓,名,性別)と2つの子節点へのポインタからなるものとする.名の入力により,該当
学生のデータを探索するようにせよ.データはプログラム中に書き込むのではなく,入力用ファイルを用意して,
これから読み込むようにする.ある節点の学生と同じ名の学生のデータを挿入する際,節点の右に入れるか左に入れるかは
各自で決めてください.なお,探索時には,同じ名の学生はすべて出力できるようにすること.
問2
問1では,2分探索木を用いたが,その他に蓄積したデータを探索するのに良く用いられる方法
としてハッシュ表をもちいたものがある.これらの利点・欠点を考察せよ(論述問題).
0600デフォルトの名無しさん
NGNG#include <stdlib.h>
int main(int argc, char* argv[])
{
int k = 0;
while (--argc)
k = gcd(atoi(*++argv), k);
printf("%d\n", k);
return 0;
}
0601580
NGNGやっぱmainも書かなきゃならんのね。
あの文章だとgcdaryだけでいいという解釈もできるんだが…
#include <stdio.h>
#include <stdlib.h>
int gcd(int x, int y)
{
if (y == 0)
return (x);
else
return (gcd(y, x % y));
}
int gcdary(int a[], int n)
{
if (n == 1)
return a[0];
else
return gcd(a[0], gcdary(a + 1, n - 1));
}
int main(void)
{
int *a, n, i;
printf("要素数を入力せよ:");
scanf("%d", &n);
a = malloc(sizeof(int) * n);
for (i = 0; i < n; i++) {
printf("整数を入力せよ:");
scanf("%d", &a[i]);
}
printf("最大公約数は%dです。\n", gcdary(a, n));
return (0);
}
0602デフォルトの名無しさん
NGNG>>316を応用しろ、つってもできねえんだろうなあ・・・
0603デフォルトの名無しさん
NGNGわかりません
0604デフォルトの名無しさん
NGNGで、学生のデータは入力用ファイルにどのように書かれているの?
こっちで勝手に決めつけてもいい?
0605デフォルトの名無しさん
NGNG0606サンプルです
NGNGhttp://endou.kir.jp/betu/linkvp2/linkvp.html
:・゜゚・*:.。..。.:*・゜(゚∀゚)゚・*:.。. .。.:*・゜゚・*
・゜゚・*:.。..。.:*・゜(゚∀゚)゚・*:.。. .。.:*・゜゚・*
0607デフォルトの名無しさん
NGNG君、情報系学部?
0608607
NGNG0609デフォルトの名無しさん
NGNG0610見ました
NGNG0611デフォルトの名無しさん
NGNG0612599
NGNG0613デフォルトの名無しさん
NGNGおい、たっぷり時間あるじゃねぇか!
0614デフォルトの名無しさん
NGNG0615デフォルトの名無しさん
NGNG↑のまんま問われて、ほとほと困っていたところで…
脳内補完がかなりいるよなぁ…_| ̄|○
0616デフォルトの名無しさん
NGNG回転か・・・どう回転すればあっと言わせることができるだろうか・・・
0617デフォルトの名無しさん
NGNGそいつの目の前にいって配列を表示しているディスプレイを力いっぱい回すとか
0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNG0622デフォルトの名無しさん
NGNG先にネタを言われてしまった。
エスケープシーケンスを使ってるんで環境依存だけど…
cygwin上で確認。
#include <stdio.h>
#include <time.h>
int hai[] = { 0, 1, 2, 5, 8, 7, 6, 3 };
int retsu[] = { 8, 7, 6, 3, 0, 1, 2, 5 };
int main()
{
int i, j, k;
time_t start, current;
start = time(NULL);
for (i = 0; i < 10; i++) {
for (j = 0; j < 8; j++) {
for (k = 0; k < 9; k++) {
if (hai[j] == k) printf("配");
else if (retsu[j] == k) printf("列");
else printf(" ");
if (k % 3 == 2) printf("\n");
}
do {
current = time(NULL);
} while (difftime(current, start) < i * 8 + j);
printf("\033[3A");
}
}
return 0;
}
0623デフォルトの名無しさん
NGNG0624デフォルトの名無しさん
NGNG既存のGIF、FLASHファイルをsystem()でプレイヤーに開かせるってのはどう?
0625デフォルトの名無しさん
NGNGコードが短く出来ていいな。
0626615
NGNG…617さん…ワライマシタ(ヲ
問題はどーやってディスプレイに配列と表示させるか…(マテ
622さん、解答ありがとうございます…まだこっちで試してはいませんが
そして…ネタを提供してくれた教授、ありが…なんて言うか、カエレ!
0627デフォルトの名無しさん
NGNG0628
NGNGなかなかいいコードかくね。
if文のなかを==0と書くところがいいな,わかりやすくて。
0629デフォルトの名無しさん
NGNG0630デフォルトの名無しさん
NGNG0631デフォルトの名無しさん
NGNG0632デフォルトの名無しさん
NGNG何が?
0633デフォルトの名無しさん
NGNG負数が与えられたらまずいとか言っているから。
0634デフォルトの名無しさん
NGNGこれって面倒な部類に入りまつかね・・?
0635デフォルトの名無しさん
NGNGfor(i=0;i<nyuryoku_sareta_kosu;i++)
if(hairetsu[i]>=shikiichi)
printf("%d ",hairetsu[i]);
0636デフォルトの名無しさん
NGNG>>503 にあるじゃん
0637デフォルトの名無しさん
NGNG与えられてもまずくはない
0638デフォルトの名無しさん
NGNG同様にして減算を行う関数をsub()、
乗算を行う関数をtimes()
除算を行う関数をdiv()
として、四則演算を行うプログラムを作成せよ。
(2)int型の数値を2進数にて表示するプログラム。
(3)自分の名前をローマ字で表し、アスキーコードを変数に代入して、
自分の名前をアルファベットで表示させるプログラム。
0639デフォルトの名無しさん
NGNG0640デフォルトの名無しさん
NGNG下のプログラムでできないのでよろしくお願いします。
下のプログラムを変更して完成して下されば幸いです。
嫌なら自分流のプログラムで結構です。
なお、今回は6個の値を入力した場合でお願いします。
#include<stdio.h>
main()
{ int t[6],a,b,c,n;
for(a=0;a<6;a++)
scanf("%d",&n),
t[a]=n;
for(a=4;a>=0;a--)
for(b=0;b<=a;b++)
if(t[b]>t[b+1])
c=t[b],t[b]=t[b+1],t[b+1]=c;
for(a=0;a<6;a++)
printf("%d",t[a]);
}
全然違っていたらすみません。
0641デフォルトの名無しさん
NGNG0642デフォルトの名無しさん
NGNGここじゃないかな。
0643デフォルトの名無しさん
NGNG0644デフォルトの名無しさん
NGNGhttp://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=91
↑に問1のソースを置きました。
問2は他の人にやってもらってください。オーダーとかきちんと勉強したことないんで…
0645デフォルトの名無しさん
NGNGどう動かんの?
ソートできてるように思うが。
0646デフォルトの名無しさん
NGNG1.三つの値が全て異なる
2.二つの値は同じだが、もう一つは異なる
3.三つとも同じ値である
という問題なのですが、書いてみたのですが何故か三番の判定がされません(´・ω・`)
ソース書いてみます
0647デフォルトの名無しさん
NGNGint main(void){
int w, x, y;
printf("x: ");scanf("%d", &x);
printf("w: ");scanf("%d", &w);
printf("y: ");scanf("%d", &y);
if (x!=y&&x!=w&&y!=w)
printf("3tu no atai ha subete kotonaru\n");
else if (x=y&&y!=w)
printf("futatuno ataiha onajidaga mou hitotuha kotonaru\n");
else if (x=w&&w!=y)
printf("futatuno ataiha onajidaga mou hitotuha kotonaru\n");
else if (y=w&&x!=y)
printf("futatuno ataiha onajidaga mou hitotuha kotonaru\n");
else if(x==y&&x==w&&w==y)
printf("3tu tomo subete onaji atai\n");
return(0);
}
0648デフォルトの名無しさん
NGNG焦りすぎ
0649デフォルトの名無しさん
NGNG明解C言語と見た
0650649
NGNG先に1. 3.を判定して残ったのが2.
0651デフォルトの名無しさん
NGNGどう間違ってるのかわからないのです(´・ω・`)
0652デフォルトの名無しさん
NGNGprintf("3");
} else if (a != b && b != c && c != a) {
printf("0");
} else {
printf("2");
}
0653デフォルトの名無しさん
NGNGありがとうございます(ノд`)
お陰できちんと書けました
0654デフォルトの名無しさん
NGNGとりあえず=と==は違うぞ
0655デフォルトの名無しさん
NGNG== は等しければ真、等しくなければ偽
とテキストに書いてあります。頑張ります・・・
0656デフォルトの名無しさん
NGNGそこはどうでもいいだろ
0657646
NGNG代入してどう汁んだ・・・
0658デフォルトの名無しさん
NGNGswitch(Count){
case 3: puts("3つとも同じ。");break;
case 1: puts("一組同じ。");break;
case 0: puts("全てことなる。");break;
}
0659デフォルトの名無しさん
NGNGX
0660デフォルトの名無しさん
NGNG凡ミスは誰にでもある。がんがれ
0661デフォルトの名無しさん
NGNG何が?
0662デフォルトの名無しさん
NGNG0663デフォルトの名無しさん
NGNG0664デフォルトの名無しさん
NGNG0665デフォルトの名無しさん
NGNGたとえば(5 == 5) は必ず1を返す
0 以外は 真であるので (5 == 5) =true
ということじゃないのか?
0666デフォルトの名無しさん
NGNG0667658
NGNG正式な仕様書とか読んだことないけどw
0668デフォルトの名無しさん
NGNG0669デフォルトの名無しさん
NGNGその知識は何処から得たの?
0670658 != 665
NGNG0671デフォルトの名無しさん
NGNG0672デフォルトの名無しさん
NGNG↑を読む限りでは >>659 が間違っていると思うが
0673デフォルトの名無しさん
NGNG0674デフォルトの名無しさん
NGNGテキストファイルはの名簿である.各行のデータを,ID,姓名,読み(ローマ字)の
三つの要素をもつ構造体に格納するプログラムを書け.
テキストファイルの内容例↓
aaa0101,井川慶,igawa/kei(aaa0101)
0675デフォルトの名無しさん
NGNGφ(..)メモメモ
0676デフォルトの名無しさん
NGNGそのフォーマットどっかで見たような…
0677デフォルトの名無しさん
NGNGφ(..)メモメモ
0678デフォルトの名無しさん
NGNG0679デフォルトの名無しさん
NGNGφ(..)メモメモ
0680デフォルトの名無しさん
NGNGパシャ パシャ パシャ パシャ パシャ パシャ パシャ パシャ パシャ パシャ
∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧ ∧_∧
( )】 ( )】 ( )】 【( ) 【( ) 【( )
/ /┘ . / /┘. / /┘ └\ \ └\ \ └\ \
ノ ̄ゝ ノ ̄ゝ ノ ̄ゝ ノ ̄ゝ ノ ̄ゝ ノ ̄ゝ
0681デフォルトの名無しさん
NGNGどこがわからないの?
必要な処理は
・ファイルから読む
・構造体に格納する
の2つだが
0682681
NGNG・読み込んだデータを要素に分ける
ってのがあるか
0683デフォルトの名無しさん
NGNG>>238
0684デフォルトの名無しさん
NGNG>>238に同じ問題が書かれてあって、
>>316にその解答ソースの在り処が書かれている。
>>500にも同じ問題が書かれてあって、
>>501に>>316をみろと書かれてある。
>>541に>>500をやってくださいと書かれてあって、
>>547に>>501をみろと書かれてある。
>>563にも>>500をやってくださいと書かれてあって、
>>565にさんざん既出だと書かれてある。
どこまで同一人物かは知らんけど、
>>316のソースをみてから何かいってくれ。
0685デフォルトの名無しさん
NGNG暇人だな
0686デフォルトの名無しさん
NGNG必死だな
0687デフォルトの名無しさん
NGNG0688デフォルトの名無しさん
NGNG(key[i]は,キーのi番目の文字がアルファベット順で何番目かを示すとする.)
int hash( int *key, int keysize)
{
int i;
int hashv;
hashv = *key ;
for( i = 1 ; i < keysize; i++) {
hashv = (( hashv*32)+key[i]) % TABLESIZE ;
}
return hashv ;
}
問1
TABLESIZEはどのような値が望ましいか.その理由を述べよ.(論述問題).
問2
どのような場合に異なるキーで同じアドレスが割り当てられる状況が生じるか?
また,そのような場合の対処法を2つ説明せよ.(論述問題).
問3
上のハッシュ関数を利用して,人の姓(last name)をキーにして姓名(first nameも含む)を表に格納するプログラムを書け.
必要に応じて上の関数を書き直してよい.
ハッシュ値の計算が正しく行われて,正しい位置にデータが格納されていることが確認できるように表示させること.
0689デフォルトの名無しさん
NGNGいまコンパイルして動かしてみたけど、ちゃんと動いたよ。
表示もした。
0690デフォルトの名無しさん
NGNGどんな風に表示されましたか?
UNIXを使ってるのですがだめでした
0691デフォルトの名無しさん
NGNG入力したか?
0692デフォルトの名無しさん
NGNGaaa1101,井川遥,igawa/haruka
l:aaa0142,細川ふみえ,hosokawa/fumie
r:aaa2103,石川梨華,ishikawa/rika
r:aaa7394,戸川純,togawa/jun
0693デフォルトの名無しさん
NGNG0695デフォルトの名無しさん
NGNGファイルのバイト数、行数を数えるプログラムを作りなさい。
`\n' (文字コード 0x0a) の個数を行数と考えることにする。
0696デフォルトの名無しさん
NGNGsize_t file_size = 0;
size_t num_lines = 0;
int c;
while( c = fgetc( file ) , c != EOF )
{
++file_size;
if( c == '\n' ) ++num_lines;
}
0697デフォルトの名無しさん
NGNGこれで>>341みたいになるが、見やすいとはいえねーな。
----------------------------------------------------------
void Display_r(int depth, Node *node) {
printf("%s,%s,%s", node->id, node->name, node->ruby);
if (node->left != NULL) {
printf("%*c --L--", depth * 2, ' ');
Display_r(depth + 1, node->left);
}
if (node->right != NULL) {
printf("%*c --R--", depth * 2, ' ');
Display_r(depth + 1, node->right);
}
putc('\n',stdout);
}
void Display(void) {
if (root != NULL) {
printf("%s,%s,%s", root->id, root->name, root->ruby);
if (root->left != NULL) {
printf(" --L--");
Display_r(0, root->left);
}
if (root->right != NULL) {
printf(" --R--");
Display_r(0, root->right);
}
}
putc('\n',stdout);
}
0698697
NGNG0699デフォルトの名無しさん
NGNGそんな感じでOKです
0700デフォルトの名無しさん
NGNG0701デフォルトの名無しさん
NGNGCを勉強するならここしかない!
コピペ宣伝中
0702デフォルトの名無しさん
NGNGこんな書き方できるんやね。
インデントあわせに便利やね。しらんかった。
0703デフォルトの名無しさん
NGNGただし、連続する改行文字はひとつの改行文字にして出力すること。
0704703
NGNG0705デフォルトの名無しさん
NGNGどうすれば見やすくなりますか?
見やすいプログラム作ってください!
0706デフォルトの名無しさん
NGNG#include <stdio.h>
#define FILENAME "textfile"
int
main(int argc, char **argv)
{
FILE *fp;
char a,b = 1,c;
if(NULL == (fp = fopen(FILENAME,"r"))){perror(FILENAME); return 1;}
while(EOF != (c = getc(fp))) if((a = (c != '\n'))||b) {b = a; putchar(c);}
return 0;
}
0707316
NGNG× char name[ID_LEN];
○ char name[NAME_LEN];
× Display_r(0, root->left);
○ Display_r(1, root->left);
0708デフォルトの名無しさん
NGNGだめぽですな
0709デフォルトの名無しさん
NGNG#include <iostream>
#include <fstream>
#include <string>
int main()
{
using namespace std;
string buf;
ifstream fin;
fin.open("textfile");
while(getline(fin, buf)){
if(!buf.empty())cout << buf << endl;
}
return 0;
}
0710デフォルトの名無しさん
NGNGsystem("sed -e '/^$/d' textfile");
0711646
NGNG三つの最大を求めるプログラムを改造して、どの変数が最大だったかを
表示するようにせよ。ただし、二つ以上の変数が同時に(同じ値で)最大
だった場合は、それらの変数の名前をすべて出力しなければならない。
どなたかご指導お願いします(ノд`)
0712646
NGNGだった場合は、それらの変数の名前をすべて出力しなければならない。
この部分が出来ません(ノд`)
ありえないぐらい長い文書いてしまいます
0713デフォルトの名無しさん
NGNG改造元になるソースキボヌ
0714646
NGNGとあるのでとりあえず一つ
今必死に書いてます(写し間違えたのか正しく動いてない・・・
#include <stdio.h>
int main(void){
int x, y , z,max;
printf("x: ");scanf("%d", &x);
printf("y: ");scanf("%d", &y);
printf("z: ");scanf("%d", &z);
if (x >=y && x >= z){
printf("x is the largest\n");
max=x;}
else if (y >= z && y>= x)
{
printf("y is the largest\n");
max=y;
}
else{
printf("z is the largest\n");
max = z;
}
printf("maximum is %d\n",max);
return(0);
}
0715デフォルトの名無しさん
NGNG{
int ret;
if( x>=y && x>=z )
{
ret = x;
puts( "x" );
}
if( y>=x && y>=z )
{
ret = y;
puts( "y" );
}
if( z>=y && z>=x )
{
ret = z;
puts( "z" );
}
return ret;
}
0716デフォルトの名無しさん
NGNG#include <stdio.h>
int main(void)
{
int x, y, z, max;
printf("x: "), scanf("%d",&x);
printf("y: "), scanf("%d",&y);
printf("z: "), scanf("%d",&z);
max=x;
if(y>max) max=y;
if(z>max) max=z;
if(x==max) printf("x is the largest\n");
if(y==max) printf("y is the largest\n");
if(z==max) printf("z is the largest\n");
printf("maximum is %d\n",max);
return 0;
}
0718デフォルトの名無しさん
NGNG[考え方]
除数をkとすると、まず、kに素因数となり得る最小の数2を設定する。
kがnの約数かどうかを調べ、約数であれば、kの値を出力する。
このとき、n/kは、それまでに見つかっていない素因数の全ての積に
なるので、nの値をn/kの値で置き換える。
同じ素因数がいくつもある場合があるので(上例の2および3)、kが
nの約数である限り、同じkの値で、この処理を繰り返す。
nがkで割り切れなくなった時は、kの値を1増やし、以上に述べた処理を
繰り返す。このとき、3以上のkの値については奇数だけを相手にすればよい。
また、一つのnの値については、kが√nを越えない最大の整数になるまで
行えばよい(nの値は変わっていくことに注意しよう)。ただし、kが√nを越えた
ときには、nは1以外には√n以下の約数をもたないことになるので、そのときの
nの値は素数であるか、1であるかのいずれかである。
sqrt((double)n)か(int)sqrt((double)n)を使うらしいのですが・・・。
0719デフォルトの名無しさん
NGNG#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char **argv) {
int i,j,m,max,*sieve;
m = sqrt(max = argc<2 ? 1000 : atoi(argv[1]));
if (NULL == (sieve = (int *)malloc(max*sizeof(int)))) return 1;
for (i=2; i<=max; i++) sieve[i] = i;
for (i=2; i<=m; i++) if (sieve[i]) for (j=i*i; j<=max; j+=i) sieve[j] = 0;
for (i=2; i<=max; i++) if (sieve[i]) printf("%d ", sieve[i]); puts("");
return 0;
}
0720デフォルトの名無しさん
NGNG違う
0721デフォルトの名無しさん
NGNG#include <stdio.h>
#include <math.h>
int main(void)
{
int n,a;
scanf("%d",&n);
if(n == 1)
printf("1 = 1\n");
else if(n <= 0)
printf("Error\n");
else{
printf("%d = ",n);
a=2;
while(a<=(int)sqrt((double)n)){
if(n%a==0){
printf("%d * ",a);
n/=a;
}
else if(a==2)
a=3;
else
a+=2;
}
printf("%d\n",n);
}
return 0;
}
適当につくったから、あとは煮るなり焼くなり...
0722デフォルトの名無しさん
NGNGでは、再帰版をば。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1027870433&res=92
余分に '*' が表示されるのは勘弁してくださいな。
0723デフォルトの名無しさん
NGNGひたすら宣伝
0724デフォルトの名無しさん
NGNG0725デフォルトの名無しさん
NGNGほとんど読み飛ばし。問題の条件が曖昧なのとか、
以前答えが出てるのに同じ問題が何度も何度も書かれるとか(本人は1度目なのかもしらんが)。
あとちょっと仕事の片手間に答えるには難しすぎる問題とかw
最後のは興味深く読んで頭のなかでコードを浮かべたりするんだけど、
結局時間がなくてできないw
0726デフォルトの名無しさん
NGNG0727arc
NGNGこれは2分サーチ用なのですがこの関数は引数として整数型配列、
探索範囲の開始添字と終了添字、探索キーを受け取り探索キーが見つかった時は
その配列要素の添字を返してそれ以外はー1を返すのが条件です。
よろしくお願いします。
int binarySearch(int b[], int searchKey, int low, int high)
{
int middle;
while(low <= high){
middle = (low + high)/2;
printRow(b, low, middle ,high);
if(searchKey == b [middle])
return middle;
else if( searchKey < b [middle])
high = middle - 1;
else
low = middle + 1;
}
return -1;
}
プログラムの前文は↓です
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1055741073
よろしくお願いします。
0728デフォルトの名無しさん
NGNG至極単純置換
- while(low <= high){
+ if(low<=high){
- high = middle - 1;
+ return binarySearch(b,searchKey,low,middle-1);
- low = middle + 1;
+ return binarySearch(b,searchKey,middle+1,high);
0729デフォルトの名無しさん
NGNG0730デフォルトの名無しさん
NGNG#include <limits.h>
void f(int n)
{
int i;
for(i=CHAR_BIT*sizeof(int)-1;i>=0;i--)
putchar('0'+((n>>i)&1));
}
0731デフォルトの名無しさん
NGNG倍精度実数型など、意味が分かりません。
お願いします
0732デフォルトの名無しさん
NGNGこの問題が分かりません
0733デフォルトの名無しさん
NGNGこの問題が分かりません
0734732
NGNG0735デフォルトの名無しさん
NGNGlongやintは整数型で小数点以下が無い。そして小さな値しか扱えない
float,doubleは小数点の概念がある。そして桁数が大幅にアップ。
精度はそれぐらいえらいぜって意味
0736646
NGNGこれらを大きさの順に並べ替えて、その順に出力するプログラムを書け。
出力の1行目に最小値、2行目に2番目の値、三行目に最大値を入力すればよい。
二つが等しくて、残る一つがそれらより大きい場合、1行目と2行目は同じ値になる
という問題なのですが、同じ値になった場合どうやって表示させればよいのかわかりません。
どなたかご指導お願いします(´・ω・`)
0737デフォルトの名無しさん
NGNG自分の名前をアルファベットで表示させるプログラム。はどう造ればいいですか?
0738デフォルトの名無しさん
NGNG意味が分からん
0739デフォルトの名無しさん
NGNGできてるプログラムを見せなさい。
おなじ値じゃなければわかるんでしょ?
0740732
NGNGそして、1〜10までの間の素数を求めるのと、素数を10個求める
ソースを記述してください。
「答案です。」とでも書いてたら添削してあげませう。
んじゃね
0741デフォルトの名無しさん
NGNG#include <stdio.h>
#include <string.h>
main(){
char name[1024];
int code,i;
printf("名前をローマ字で入れてください >> ");
scanf("%s",name);
for(i=0;i<strlen(name);i++) code = name[i];
printf("ローマ字 => %s\n",name);
printf("アルファベット => %s\n",name);
}
0742デフォルトの名無しさん
NGNG同様にして減算を行う関数をsub()、
乗算を行う関数をtimes()
除算を行う関数をdiv()
として、四則演算を行うプログラムをどなたかお願いします。
0743デフォルトの名無しさん
NGNG0744デフォルトの名無しさん
NGNGint tmp;
if(*a > *b){
tmp = *a;
*a = *b;
*b = tmp;
}
}
int main(){
int x,y,z;
scanf("%d",&x);
scanf("%d",&y);
scanf("%d",&z);
compare_sort(&x,&y);
compare_sort(&y,&z);
compare_sort(&x,&y);
printf("%d %d %d",x,y,z);
}
0745デフォルトの名無しさん
NGNG演算を行うための数値はどうやって入れるの?
出力はどういうイメージで出すの?
0746デフォルトの名無しさん
NGNG「変数を引用する」とはどういう操作なのか。
0747デフォルトの名無しさん
NGNG0749デフォルトの名無しさん
NGNGchar[]
0750646
NGNGすごい・・・
でもまだ一年生なので学校では
while,for,if,else,and,or,printf,scanf,intしか習ってません(;´д`)
この範囲で組むにはどうしたらよいでしょうか?
すいませんわがままばっかりで・・・
0751デフォルトの名無しさん
NGNGその範囲で組んでるジャン。
0752デフォルトの名無しさん
NGNG0753デフォルトの名無しさん
NGNGint main(){
int x,y,z,tmp;
scanf("%d",&x);
scanf("%d",&y);
scanf("%d",&z);
if(x>y){ tmp = x; x = y ; y = tmp;}
if(y>z){ tmp = y; y = z ; z = tmp;}
if(x>y){ tmp = x; x = y ; y = tmp;}
printf("%d %d %d",x,y,z);
}
0754753
NGNGx,y,zがそれぞれ大きさが解ってないとき、
x>y なら、xとyを交換する(必ず、x<yになる)
y>z なら、yとzを交換する(必ず、y<zになる)
ただ、これだけだと新しいxとyの関係については解らないので、
x>y なら、xとyを交換する(必ず、x<yになる)
をもう一度する必要がある。
0755732
NGNGあの問題が気になって仕方がないです。
0756デフォルトの名無しさん
NGNGソクラテスの篩を検索してくれ。
0757デフォルトの名無しさん
NGNGじゃあ、少しは調べろよ
0758デフォルトの名無しさん
NGNGよくわからんが、答えを書いたらおまえが添削するってことか?
ヤナコッタ
0759デフォルトの名無しさん
NGNG0760756=759
NGNG0761デフォルトの名無しさん
NGNGネタじゃなかったのか……
>>755
これ最強
http://wwwhomes.uni-bielefeld.de/achim/prime_sieve.html
0763arc
NGNG入れてみてもなんか出来ませんでした。
誰か分かる人727の問題を教えてください。
0764デフォルトの名無しさん
NGNG0765デフォルトの名無しさん
NGNGif (x==1) {
return y;
} else {
return quux(x-1, (x+y)%65536);
}
}
を再帰を使わず繰り返し(と代入文)を使う C言語の関数に書き換えよ。
0766デフォルトの名無しさん
NGNG0767デフォルトの名無しさん
NGNGint quux(int x, int y) {
while (x != 1) {
y = (x + y) % 65536;
x--;
}
return y;
}
0768デフォルトの名無しさん
NGNG0769デフォルトの名無しさん
NGNG0770デフォルトの名無しさん
NGNGhttp://mypage.odn.ne.jp/home/dongrico
0771デフォルトの名無しさん
NGNGdouble data[]={1,2,3,4,5,6,7,8,9};
int n = (int)(sizeof(data) / sizeof(data[0]));
int i;
sum=0.0;
for(i=0;i<n;i++){
sum+=data[i];
}
ave = sum / n;
var=0.0;
for(i=0;i<n;i++){
var += pow( (data[i] - ave) , 2 );
}
var / = (n-1);
std = sqrt(var);
0772デフォルトの名無しさん
NGNGありがとうございます!!
レスむちゃくちゃ早くて驚きましたw
瞬殺なんですね。
0773デフォルトの名無しさん
NGNGsum=0.0;
sum2=0.0;
for(i=0;i<n;i++){
sum+=data[i];
sum2+=data[i]*data[i];
}
ave = sum / n;
var = (sum2 - sum * sum) / n;
std = sqrt(var);
0774デフォルトの名無しさん
NGNG一箇所ずつ間違えるのはわざとかい?
0775771
NGNG>> var / = (n-1);
var /= (n-1);
でいいのか?
0776デフォルトの名無しさん
NGNGatoiは作れたのですが・・・どなたかよろしくお願いします。
0777デフォルトの名無しさん
NGNG0778デフォルトの名無しさん
NGNG以下参照。
http://citeseer.nj.nec.com/goldberg91what.html
http://urr3.cs.uec.ac.jp/ohkubo-k/papers/index.html
http://cm.bell-labs.com/netlib/fp/index.html
http://www.cwi.nl/~cilibrar/floatingpointconv.pdf
http://ftp.ccs.neu.edu/pub/people/will/howtoread.ps
0779デフォルトの名無しさん
NGNGhttp://www.fun.ac.jp/icpc/problems/C/C.html
アルゴリズムだけでもいいのでお願いします。
0780デフォルトの名無しさん
NGNG0781サンプルです
NGNGhttp://yahooo.s2.x-beat.com/linkvp/linkvp.html
0782デフォルトの名無しさん
NGNGdouble my_atof(const char *s){
char buf[256];
double a,b,sig=1;
int i,x;
char *dot = strchr(s,'.');
if(dot == NULL) return (double)my_atoi(s);
x = dot - s;
strncpy(buf,s,x);
a = (double)atoi(buf);
if(a>0) sig = 1; else sig = -1;
strcpy(buf,s+x+1);
b = (double)my_atoi(buf);
for(i=0;i<strlen(buf);i++) b/=10;
return a + b;
}
0783デフォルトの名無しさん
NGNG0784デフォルトの名無しさん
NGNGmain( ) {
char k[100]={0};//入力した文字を入れる配列
int n[26]={0};//n[0]〜n[25]はa〜zの出現回数に相当する配列
int i,j;
scanf("%s",k);
for(i=0 ; k[i] != '\0' ; ++i) {
if( n[ k[i] - 'a' ] == 0) {
++n[k[i]-'a'];
if(i >= 1 && k[i] != k[i-1]) {
printf("%d%c",n[k[i-1]-'a'],k[i-1]);
n[k[i-1]-'a'] =0;
}
if(k[i+1]=='\0')
printf("%d%c",n[k[i]-'a'],k[i]);
}else {
if(k[i] == k[i-1]) {
++n[k[i]-'a'];
if(k[i+1] == '\0')
printf("%d%c",n[k[i]-'a'],k[i]);
}
}
}
}
0785782
NGNGdouble my_atof(const char *s){
char buf[256];
double a,b,sig=1;
int i,x;
char *dot = strchr(s,'.');
if(dot == NULL) return (double)my_atoi(s);
x = dot - s;
strncpy(buf,s,x);
a = (double)atoi(buf);
if(a<0){ sig = -1; a *= (-1);}
strcpy(buf,s+x+1);
b = (double)my_atoi(buf);
for(i=0;i<strlen(buf);i++) b/=10;
return (a + b) * sig;
}
0786782
NGNG0787デフォルトの名無しさん
NGNGthe nine pieces are arranged in a 3 x 3 grid,
and each of the 12 pairs of edges
facing each other must be labeled with
one of the following four combinations of symbols:
"R" with "r", "G" with "g", "B" with "b", and "W" with "w".
要するに、9枚のパネルを3x3に組み合わせる。
そのパネルには12の接合面があり、
それぞれ下に示す4種類の記号同士で組み合わせなさい。
ですな。
0788デフォルトの名無しさん
NGNGWwRR wwrg RRGb rGBG RGrb RrRg RGrg rgBB Wrgr
のように与えられアルファベットは(上)(右)(下)(左)の辺の記号を
表しています。
サイトの図を見てもらえれば分かりますがwとW,gとG,rとR,bとBがくっつく
条件となります。与えられた9つのピースが3*3で完成するパターン数
を求めよ、というものです。ピースはそれぞれ自由に
回転、移動させることができます。
0789デフォルトの名無しさん
NGNGFigure 2 is an example of a completed state of a puzzle.
In the figure, edges under this restriction are indicated
by shadowing their labels.
例を示すなら、"R"には"r"だけが接することが出来ます。
Figure 2はパズルが完成した状態を示しています。
この条件下にある接合面のラベルに網がけをしてあります。
The player can freely move and rotate the pieces,
but cannot turn them over.
There are no symbols on the reverse side of a piece !
プレイヤーは、ピースを動かし、回転させることができますが
ひっくり返すことはできません。
このピースの裏側には記号はありません。
0790デフォルトの名無しさん
NGNGon the piece, starting with the symbol of the top edge,
followed by the symbols of the right edge, the bottom edge,
and the left edge.
それぞれのピースは、4つのシンボルを持っています。
このシンボルは、上、右、下、左の順序を持っています。
For example, gwgW represents the leftmost piece in Figure 1.
Note that the same piece can be represented as wgWg,
gWgw or Wgwg since you can rotate it in 90, 180 or 270 degrees.
例えば、Figure1において、もっとも左のgwgWに注目してください。
90度、180度、270度回転させれば、wgWgもgwgwもWgwgも同じ物です。
0791デフォルトの名無しさん
NGNGthe number of solutions.
問題は、いくつの回答があるかを求めるプログラムを作成することである。
It is needless to say that these numbers must
be multiples of four, because,
as shown in Figure 3, a configuration created by rotating
a solution in 90, 180 or 270 degrees is also a solution.
その数は、4の倍数にならなければならない。
なぜなら、Figure 3によると同じ状態から、
解答が90度,180度,270度回転させていたものがあるからだ。
0792デフォルトの名無しさん
NGNGおれも出たことあるぞ
0793デフォルトの名無しさん
NGNGなものを作らなければならないみたいです。
void
printf
scanf
case
if
switch
などは習いました。
割り算だけは実数型にするということです。
割り算以外は整数型で表示という事です。
よろしくお願いします。
0794デフォルトの名無しさん
NGNG0795デフォルトの名無しさん
NGNG#include<stdio.h>
#include<stdlib.h>
#include<limits.h>
#include"mypgm.h"
#define IMAGESIZE 256 /* = GRAYLEVEL */
void make_histogram_image( )
/* 原画像 image1 のヒストグラムを作り画像としてimage2 に代入 */
{
long int histogram[GRAYLEVEL]; /* ヒストグラム用配列 */
long int max_frequency; /* 頻度の最大値 */
int i, j, x, y; /* 制御変数 */
int data; /* 頻度を表すグラフの長さ */
0796デフォルトの名無しさん
NGNG/* 原画像のヒストグラムを求める */
for ( i = 0; i < GRAYLEVEL; i ++ )
histogram[ i ] = 0;
printf("今,原画像のヒストグラムを求めています.\n");
for ( y = 0; y < y_size1; y ++ )
for ( x = 0; x < x_size1; x ++ )
histogram[ image1[x][y] ] ++;
/* 頻度の最大値を求める */
max_frequency = INT_MIN;
for ( i = 0; i < GRAYLEVEL; i ++ )
if ( histogram[i] > max_frequency )
max_frequency = histogram[i];
printf("頻度の最大値 = %d\n", max_frequency);
/* ヒストグラム画像を image2 に代入 */
x_size2 = IMAGESIZE; y_size2 = IMAGESIZE;
for ( y = 0; y < y_size2; y ++ )
for ( x = 0; x < x_size2; x ++ )
image2[y][x] = 0;
for ( i = 0; i < GRAYLEVEL; i ++ ){
data = (int)( MAX_BRIGHTNESS /
(double)max_frequency * (double)histogram[i] );
for ( j = 0; j < data; j ++ )
image2[IMAGESIZE-1-j][i] = MAX_BRIGHTNESS;
}
}
0797デフォルトの名無しさん
NGNG{
load_image_data( ); /* 原画像を image1 に読み込む */
make_histogram_image( ); /* ヒストグラムの画像を image2 へ */
save_image_data( ); /* image2 を保存する */
return 0;
}
このプログラムをグラフの上限値をじゆうに設定できるようにするには
どうすればいいですか
0798デフォルトの名無しさん
NGNG数値1: 123
数値2: 456
演算子: +
答え:578
とかこんな感じ?
0799デフォルトの名無しさん
NGNG0800( ○ ´ ー ` ○ )
NGNGぷ
0801デフォルトの名無しさん
NGNG#include <stdio.h>
#include <string.h>
int
main(void)
{
char op,buf[BUFSIZ]; int x,y;
fprintf(stderr, "try: 2*3\n");
while(!feof(stdin)) {
fprintf(stderr, "> ");
fgets(buf,BUFSIZ,stdin);
if (3 == sscanf(buf, "%d %[-+*/] %d", &x, &op, &y)) {
switch(op) {
case '+': fprintf(stderr, "= %d\n", x+y); break;
case '-': fprintf(stderr, "= %d\n", x-y); break;
case '*': fprintf(stderr, "= %d\n", x*y); break;
case '/': fprintf(stderr, "= %f\n", ((double)x)/y); break;
}
}
}
return 0;
}
0802デフォルトの名無しさん
NGNG#include <stdio.h>
#include <ctype.h>
struct cell { char up, down, left, right; };
struct cell table[3][3]; int count = 0, flags = 0;
char q[9][4]={"RrGb","WWGR","rGgb","Wbrg","wgBb","GgBg","WbBG","Wwwg","WWGG"};
struct cell rotate(struct cell x) { struct cell y;
y.up = x.right; y.right = x.down; y.down = x.left; y.left = x.up; return y; }
struct cell create(char s[4]) { struct cell x;
x.up = *s++; x.right = *s++; x.down = *s++; x.left = *s; return x; }
int check(char x, char y) { return x != y && tolower(x) == tolower(y); }
void loop(int x, int y) { int i, j; struct cell *p = &table[x][y];
for (i = 0; i < 9; i++) {
if (flags & (1 << i)) continue;
flags |= 1 << i;
for (*p = create(q[i]), j = 0; j < 4; *p = rotate(*p), j++) {
if (x != 0 && !check(table[x-1][y].down, p->up)) continue;
if (y != 0 && !check(table[x][y-1].right, p->left)) continue;
if (x == 2 && y == 2) count++; else if (y == 2) loop(x+1, 0); else loop(x, y+1); }
flags &= ~(1 << i); } }
int main(void) { loop(0, 0); printf("%d\n", count); return 0; }
0804デフォルトの名無しさん
NGNGこれでいいのかな?
double waru(double f,double s){
double a;
a=f/s;
return a;
}
main(){
int first,second,third;
printf("最初の数値を入力してENTERを押してください");
scanf("%d",&first);
printf("1,2,3,4の演算を選んでENTERを押してください 1:+ 2:- 3:* 4:/\n");
scanf("%d",&second);
printf("最後の数値を入力してENTERを押してください");
scanf("%d",&third);
if(second==1)printf("%d",first+third);
if(second==2)printf("%d",first-third);
if(second==3)printf("%d",first*third);
if(second==4)printf("%lf",waru(first,third));
return 0;
}
0805デフォルトの名無しさん
NGNG0806デフォルトの名無しさん
NGNGでできるんだねスマソ
0807デフォルトの名無しさん
NGNG少しは頭使え
0808デフォルトの名無しさん
NGNG少しは気をつかえ
0809デフォルトの名無しさん
NGNGアニメーションさせるあたりが全く分からなくて困っています
どんな命令を使うのか教えてください
お願いしますm(__)m
0810デフォルトの名無しさん
NGNG>このプログラムをグラフの上限値をじゆうに設定できるようにするには
意味不明。
それから、ソースを載せるなら省略せずに全部載せろ。
#できれば私が出勤するまでにv
0811デフォルトの名無しさん
NGNG標準Cでは無理。ウインドウズアプリケーションなら、Win32APIと言うのがあって、
ドットを打てる関数があるので、その点で時計を表示する。SetPixelとか、速度に
こだわるなら、BitBltとか。
アニメーションはまず止まっている時計を書けるようにする。
次に引数によって針の角度が変えられる止まっている時計をかけるようにする。
後は、時間を得られる関数を引数にして、時計の表示→消す→表示を繰り返す。
0812デフォルトの名無しさん
NGNGディスプレイに表示する限りどうがんばってもアナログにはならない
出題者にお前は脳みそが腐っているから病院へ逝けと言っておけ
Cで組み込み制御すると言うのなら話は別だが
0813デフォルトの名無しさん
NGNGうわー、頭いいねー、すごーい
0814デフォルトの名無しさん
NGNG0816デフォルトの名無しさん
NGNGディスプレイだとある意味アナログかもしれないよ
0817デフォルトの名無しさん
NGNG0818デフォルトの名無しさん
NGNG0819デフォルトの名無しさん
NGNG針の動きは一定でこそないがアナログさ(w
(n秒の位置からn+1秒の位置へ瞬間移動するわけじゃないから)
0820デフォルトの名無しさん
NGNG何ゆえに標準エラー出力?
0821デフォルトの名無しさん
NGNG要素数が no である int 型の配列 vc の要素の最大値と最小値の差を
返す関数 diamarray(int vc[], int no) を作成せよ。
動作確認をするために、main 関数も作成しなさい。
0822デフォルトの名無しさん
NGNGそのクラスのコンストラクタ・デストラクタを
オブジェクトを作成せずに呼び出す方法ありませんか?
class test{public:test(){return;};};
int main(int c,char**v)
{ BYTE*pby=new BYTE [sizeof(test)];
test*pclT=pby;
pclT->test();//この処理がしたいが「test」の関数でないとエラーになる
}
コンストラクタと同じ処理をするものを作っても、いいんですが
できれば、一つの定義で収めたいです。方法ありませんか?
0823デフォルトの名無しさん
NGNG動作確認は自分でどうぞ。テストもしてません。
int daimarray(int vc[],int no)
{ int max=vc[0],min=vc[0],i;
for(i=1;i<no;i++)
{ if(vc[i]<min)min=vc[i];
if(vc[i]>max)max=vc[i];
}return max-min;
}
全角スペースに気をつけてください
0824823
NGNGifがネストしているみたいに
なってますがネストしてません。
全角スペースでずれました。すいません
0826デフォルトの名無しさん
NGNGclass test{
public:
void foo();
test(){foo();}
};
同じ処理をするものを作っておいて、
コンストラクタはそれを呼ぶようにする。
宿題ではないのなからスレ違いだな。
0827826
NGNG0828デフォルトの名無しさん
NGNG822の目的とは多少違うだろ
スレ違いにマジレスしてやる義理は無いが
0829デフォルトの名無しさん
NGNGnewが領域の確保しかしていないと思っているのだろうか?
呼ぶのなら関数にstaticを付けるべき
0830デフォルトの名無しさん
NGNGクラス内にコンストラクタと同じ処理の関数をPublicで作り、
コンストラクタはそれを呼ぶ。
>>826と同じことを言っているようだが「コンストラクタと同じ処理」を
外部に公開しないですむ。
0831デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNGこういうことかな?
class test{
public:
test(){likeConstractor();}
static void likeConstractor()
{
return;
}
};
0834デフォルトの名無しさん
NGNGそんな馬鹿なプログラムは作りたくない
0835デフォルトの名無しさん
NGNGぜひともほかの人にもやってほしい。
問題:
2次元配列に"abc", "def", ... "vwx", "yx"を入れる。
ループなどを使わずにこの配列を使い、「abcdef...vwxyz」を表示せよ。
0836デフォルトの名無しさん
NGNG{
char const array[][3] = {
"abc", "def", "ghi", "jkl", "mno", "pqr", "stu", "vwx", "yz",
};
printf("%s\n", &array);
return 0;
}
0838836
NGNG→各要素を連結する→最初から切れ目を作らない
以上v
0839835
NGNGアルファベットが27文字だったら4文字ずつ区切ったのだろうか。
0840画像処理か
NGNGピンク色の本に洗脳されすぎ。
それから,INT_MINってなに?どこで定義されてる?
0841デフォルトの名無しさん
NGNG0843デフォルトの名無しさん
NGNG0845デフォルトの名無しさん
NGNG0846デフォルトの名無しさん
NGNG何の話だ?
0847デフォルトの名無しさん
NGNGコマンドプロンプトからファイル名を一つだけ読み込み、 そのファイルを開いて数字列を読み込み、 平均値を求め、標準出力に表示するプログラムを作成せよ。
というのがUNIX Cの授業で出ました。
がくがく。
どなたかおねがいいたしますー。
0848デフォルトの名無しさん
NGNG0849デフォルトの名無しさん
NGNGsizeof (*array) == 3 でない可能性があるという事だろう。
0850847
NGNGファイルの中身は、
たとえばclass1.datというファイルが、
83
54
59
80
94
・・・
といった具合です。
0851デフォルトの名無しさん
NGNGありうるのか?
sizeof( array )/sizeof( array[0] ) は array の要素数を返すんじゃないのか?
array = char[3] とすると
sizeof( char[3] )/sizeof( char ) = sizeof( char[3] ) = 3 でないと困るんじゃ?
0852デフォルトの名無しさん
NGNG#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define BUFSIZE 1024
main(){
FILE *fp;
int sum=0,count=0;
char buf[BUFSIZE];
printf("input file name >> ");
scanf("%s",buf);
fp = fopen(buf,"r");
if(fp==NULL){
printf("ERROR FILE OPEN [%s]\n",buf);
return;
}
while(fgets(buf,BUFSIZE,fp)){
sum += atoi(buf);
count++;
}
printf("平均 : \n",sum/count);
fclose(fp);
}
0853852
NGNG×printf("平均 : \n",sum/count);
○printf("平均 : %d\n",sum/count);
あと#include <string.h>はいらないや。
0854デフォルトの名無しさん
NGNG#include <iostream>
#include <iterator>
#include <fstream>
#include <vector>
double foo(const char* s)
{
std::ifstream f(s);
std::vector<int> v((std::istream_iterator<int>(f)),
std::istream_iterator<int>() );
std::vector<int>::iterator st , en;
st = v.begin();
en = v.end();
int cnt;
double temp;
cnt = temp = 0;
while(st != en){
++cnt;
temp += *st++;
}
return temp/cnt;
}
int main(int,char **s){
std::cout<<foo(s[1]);
return 0;
}
0855デフォルトの名無しさん
NGNG目安は初心者の参考書は見ないで済むくらいのスキルになるまで。
0856デフォルトの名無しさん
NGNG0857デフォルトの名無しさん
NGNGたまーに使う関数 → google で manpage
めったに使わない関数 → 参考書とかgoogleでサンプル探す
0858デフォルトの名無しさん
NGNGあと、scanfなどはプロは滅多に使わないと聞いたのですが・・。
他にもそんな関数ありますか?
0859デフォルトの名無しさん
NGNG0860デフォルトの名無しさん
NGNG調子に乗りすぎました
0861デフォルトの名無しさん
NGNGよく使うとかさ。
目的に最もあったの使えよ。
大体聞いてどうすんだ?
おれがmallocつったらお前これからmalloc使いまくる気か?スタックで十分なときでも。
てかなんでこんな連続でスレ違いばっかり・・・
0862デフォルトの名無しさん
NGNG処理系用の専用ライブラリつかうからmallocもstrcpyもprintfもない。
0863デフォルトの名無しさん
NGNG10になったらまたカウントダウンして1までってな感じのプログラムを
作りたいのですが。C初めて3日ですが、何も分からないまま
やってみました。ぐちゃぐちゃで申し訳ないんですが、どうか
添削してください。意味不明なら流すか、ネタだと思って
酒のつまみにでもしてください。
#include <stdio.h>
int main(void)
{
char star='★';
int a;
for(a=1;a<=10;a++){
printf("%c\n",star);
star++;
if(a==10){
for(;a>=1;a--){
printf("%c\n",star);
star--;
}
}
}
}
0864デフォルトの名無しさん
NGNG平仮名や漢字や★見たいな記号はワイド文字といって2byte使う。
char は1byeしか格納できないから、それじゃだめ
0865864
NGNG0866デフォルトの名無しさん
NGNGで星が増えていくわけじゃないぞ。
0867863
NGNG自分は寝惚けてたんでしょうか
0868863
NGNG0869デフォルトの名無しさん
NGNGwarata
0870863
NGNG恥を忍んで聞かせていただきます。
では、どのようにしたらいいですか?
0871デフォルトの名無しさん
NGNGループで出力したい個数だけ改行を打たずに★をプリントし、
その後一個改行を出力。
それを行数分繰り返す。
0872デフォルトの名無しさん
NGNGprintfで★一つ表示。
printfをn回実行。
0873863
NGNG0874デフォルトの名無しさん
NGNGやるとしたらこんな感じ。
void print_n_star(int n) {
int i;
for (i = 0; i < n; i++) {
printf("★");
}
printf("\n");
}
int main(void) {
const int MAX = 10;
int i;
for (i = 1; i <= MAX; i++) {
print_n_star(i);
}
for (i = MAX; i > 0; i--) {
print_n_star(i);
}
return 0;
}
0875デフォルトの名無しさん
NGNG文字列。
char *s = "★";
0876デフォルトの名無しさん
NGNGmain()の2度目のループは課題が1までなので
i > 0
より
i >= 1
の方がよくない?
0877デフォルトの名無しさん
NGNGここいってみては?
http://jbbs.shitaraba.com/computer/6765/
あんたみたいな人が盛り上げられるかもしれん
0878デフォルトの名無しさん
NGNG#include <cstdio>
void show(char *s,int c)
{
while(c-- > 0)
std::printf("%s",s);
std::putc('\n',stdout);
}
void foo()
{
char *star = "★";
int i;
for(i=0; i<10; ++i){
show(star,i);
}
for(; i>0; i--){
show(star,i);
}
}
0879デフォルトの名無しさん
NGNGネームスペースとxstdioとかいらぬ混乱を招こうとしてまつね
0880デフォルトの名無しさん
NGNGひとつ質問があります。
★をprintfで10回表示しながら前より1個★の数を増やすには
char *s = "★"; を使うのでしょうか?
要するに1〜10の和の数だけ星を表示すると言うことです。
お願いします。
0881デフォルトの名無しさん
NGNGおまえは874とか878を見て何も感じないのか…
0882デフォルトの名無しさん
NGNG10個表示させるなら10回、11個なら11回ループすればいい。
0883880
NGNG僕も超初心者ですから
0884デフォルトの名無しさん
NGNGchar *s = "★"; //sに星マークをセット
printf("%s",s); //★ を表示
printf("%s",s);を2回実行 //★★ を表示
printf("%s",s);を10回実行 //★★★★★★★★★★ を表示
0885880
NGNGこの場合、★は6個表示
0886デフォルトの名無しさん
NGNG#include <stdio.h>
main(){
int i,j;
for(i=1;i<=10;i++){
for(j=1;j<=i;j++){
printf("★");
}
printf("\n");
}
for(i=1;i<=9;i++){
for(j=9;j>=i;j--){
printf("★");
}
printf("\n");
}
return 0;
}
0887デフォルトの名無しさん
NGNGprintf("hoge");
0888デフォルトの名無しさん
NGNGprintf("★");
}
関数でくくれ。
0889デフォルトの名無しさん
NGNGforの使い方理解してる?
0890デフォルトの名無しさん
NGNG関数でもないし、このばあい括らなくてもいいし。
0891デフォルトの名無しさん
NGNGfor(i=1;i<=10;i++){
for(j=1;j<=i;j++){
printf("★");
}
printf("\n");
}
この部分、Cやったことない漏れには分からない。
どういう動きなのか説明してもらえんかの
0892890
NGNG0893デフォルトの名無しさん
NGNG0894デフォルトの名無しさん
NGNG0895デフォルトの名無しさん
NGNGそんなのCでなくてもたいがいのプログラミング言語である話だが・・
0896デフォルトの名無しさん
NGNGprintf("\n");
for(j=1;j<=i;j++){
printf("★");
}
}
こう書き換えたらダメ?
0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNG0899デフォルトの名無しさん
NGNGしょっぱなから改行かませるの
0900デフォルトの名無しさん
NGNG0901デフォルトの名無しさん
NGNG#define MAX 10
int main(void)
{
int i,j;
for(i=1;i<=MAX;i++){
for(j=1;j<=i;j++){
printf("★");
}
printf("\n");
}
}
0902デフォルトの名無しさん
NGNG0903デフォルトの名無しさん
NGNGどんなプログラムにするかアルゴリズムが思いつきませんでした。
forを2重に使うとあんな風になるなんて。
理解力のない漏れにもわかるようなアルゴリズムの解説サイト
ありましぇんか?
0904デフォルトの名無しさん
NGNGint i,j;//整数i,jを宣言
for(i=1;i<=10;i++){//i=1をi<=10になるまでiを1ずつ足す
for(j=1;j<=i;j++){//�@i=1★を一個表示
printf("★");//�Bi=2★をニ個表示
}//�Di=3★を三個表示i=10まで繰り返し
printf("\n");//�A改行�C改行�E改行
�@から見てく
0905デフォルトの名無しさん
NGNG0906デフォルトの名無しさん
NGNG0907デフォルトの名無しさん
NGNGやっても「こういう動作じゃないんですよ」とか言われるし
相手するのは面倒。
0908デフォルトの名無しさん
NGNGおながいします
0909デフォルトの名無しさん
NGNG>>907
相手しなきゃ良いじゃん。(「あ、そう」で良いじゃん)
そもそも労力に見合うって何よ。
ここは自己満足の為に書き込むスレざんしょ。
0910デフォルトの名無しさん
NGNG0911デフォルトの名無しさん
NGNG0912。。。
NGNGを検査するプログラムを作りたいのですが。
0913デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1055749538/l50
0914649
NGNGフラグを立ていろいろする
0915デフォルトの名無しさん
NGNGCの本持ってんなら、
制御文のところをよ〜く読んで、
あとは自分で考えろ。
0916デフォルトの名無しさん
NGNG宿題なら宿題らしく。
カウンタの加減算で良いのでは?
0917デフォルトの名無しさん
NGNG作ればいーじょん。
0918912
NGNG・閉じ括弧ならpopして、同じ種類の括弧かどうか調べ、異なっていればエラー
・すべての文字を見終わって、スタックも空であれば正解
すいません書き忘れてました
0919デフォルトの名無しさん
NGNG( [ )] こういうエラー見つけにくいんじゃないかな?
スタックに開きカッコをつんでいって、閉じカッコがきたら、取り出してチャックしてみるのがいいんじゃないか?
0920デフォルトの名無しさん
NGNG0921デフォルトの名無しさん
NGNG#include <string.h>
int nSt;
char aSt[1024];
int KakkoCheck( char* pIn )
{
char* sB = "[{(";
char* sE = "]})";
nSt = 0;
while( *pIn ) {
if( strchr( sB, *pIn ) ) {aSt[nSt] = *pIn; nSt++;}
if( strchr( sE, *pIn ) ) {
if( strchr( sB, aSt[ nSt - 1 ] ) - sB != strchr( sE, *pIn ) - sE )
return -1; // Error
nSt--;
}
pIn++;
}
if( nSt ) return -1; // Error;
return 0; // OK;
}
int main( void )
{
char sBuf[1024];
while( 1 ) {
fgets( sBuf, 1024, stdin );
printf( "%d\n", KakkoCheck( sBuf ) );
}
return 0;
}
0922デフォルトの名無しさん
NGNG一度に書き込める行数の制限あるんでこんななった。
正式な動作確認もしてないし main() も雑だけど変かな?
突っ込み希望。
0923デフォルトの名無しさん
NGNG1〜Xまでの数字全部を足した数を表示させるプログラムを『できるだけ簡潔に』
作ろうとするとどうなりますかね?
お話にならないレベルで申し訳ないデス。知恵を授けたまえー。
0924デフォルトの名無しさん
NGNG0925デフォルトの名無しさん
NGNGint sum = 0;
int c = getc();
if(isdigit(c)){
for(i='1';i <= c;i++){
sum += i - '0';
}
printf("sum %d",sum);
}
0926デフォルトの名無しさん
NGNGint main(void)
{
int n;
scanf("%d",&n);
printf("%d\n",n*(n+1)/2);
return 0;
}
濡れはここまでしかでけん・・・
0927デフォルトの名無しさん
NGNGはぅぁっ。
そういうものですか…。
PCもレポート書くぐらいにしか使ったこと無いもので。
0928デフォルトの名無しさん
NGNGscanf("%d",&x);
printf("%d\n",x*(x+1)/2);
0930デフォルトの名無しさん
NGNGおー、短いw
ありがとうございます〜。
って感謝レス多発ですいません。
0931デフォルトの名無しさん
NGNGプログラムを書け.
0932デフォルトの名無しさん
NGNG0933デフォルトの名無しさん
NGNGn*(n+1)/2
0934デフォルトの名無しさん
NGNG「循環参照をおこさないスマートポインタのテンプレートを書け」
とかだされたら俺できないよ
0935デフォルトの名無しさん
NGNG高校の数学でやったろ
0936デフォルトの名無しさん
NGNG再帰使うと書けるよ
0937デフォルトの名無しさん
NGNG厨房に言っても・・・
0938デフォルトの名無しさん
NGNGガーソ。
ズボシジャン
0939デフォルトの名無しさん
NGNG高校なのか?
漏れは小学校でやったが
0940デフォルトの名無しさん
NGNG0941デフォルトの名無しさん
NGNG1234・・n-2n-1n
1234・・n-2n-1
1234・・n-2
:
1234
123
12
1
これを合計したのが知りたい。これをひっくりかえした
1
12
123
1234
:
1234・・n-2
1234・・n-2n-1
1234・・n-2n-1n
をあわせると
1 nn-1n-2・・4321
12 n-1n-2・・4321
123 n-2・・4321
1234 :
: :
1234・・n-2 321
1234・・n-2n-1 21
1234・・n-2n-1n 1
これは高さがnで幅がn+1の長方形。n(n+1) これを半分にして n(n+1)/2
0942デフォルトの名無しさん
NGNG0943デフォルトの名無しさん
NGNG奴はいろんな公式持ってるが。
0944デフォルトの名無しさん
NGNG0945デフォルトの名無しさん
NGNG0946デフォルトの名無しさん
NGNG0947デフォルトの名無しさん
NGNGいたいた。小学校の先生に「1〜9まで足したら何になる?」とか
聞かれて考え出したんでしょ。
0948デフォルトの名無しさん
NGNG明日は100%だよ。
分かったか?傘持ってけよ
0949デフォルトの名無しさん
NGNGそんな風に習った?
Sn=1+2+・・・+(n-1)+n
として、並びを逆にしたもの
Sn=n+(n-1)+・・・+2+1
と足し合わせると、全ての項が(n+1)になる。つまり、
2*Sn=(n+1)+(n+1)+・・・+(n+1)+(n+1)
全部で項はn個あるから、
2*Sn=n*(n+1)
両辺を2で割って、
Sn=n*(n+1)/2
俺はこう習った。
0950デフォルトの名無しさん
NGNG1〜100までだったと思うが
0951デフォルトの名無しさん
NGNG0952デフォルトの名無しさん
NGNGおなじだべ
0953デフォルトの名無しさん
NGNG1から100まで足せ、とクラスに問題を出して
その空き時間で内職しようとした教師が
一瞬で正解を答えたガウスに驚いたという伝説だったかと。
0954デフォルトの名無しさん
NGNG次に、一文字を入力、最初に入力した文字列の先頭からその文字を探し
最初に見つかった位置より後ろの文字列を出力する。
AIUEOkakikukeko
a
kikukeko
となるプログラム
0955デフォルトの名無しさん
NGNG#include <stdio.h>
#include <string.h>
int main()
{
char str[1234],*p;
int c;
printf("25文字以下の文字列を入力 : ");
fgets(str,sizeof str,stdin);
if(strlen(str)>25){
fprintf(stderr,"死ね\n");
return 1;
}
c=getchar();
p=strchr(str,c);
if(p)
printf("%s\n",p+1);
else
printf("ねーよ\n");
return 0;
}
0956955
NGNG0957デフォルトの名無しさん
NGNGint c;
ゲッツ!25文字
c = ゲッシ!1文字
printf("%s\n"strchr(str,c));
0958デフォルトの名無しさん
NGNG0959デフォルトの名無しさん
NGNGNULL! とか印字する処理系があったが、規格はどうかな。
多分だめなような気がする(根拠なし)。
ちなみに印字する処理系は昔のMS-C。6.0あたりかな。
VC++の1.0がMS-Cの8.0に相当するからはるか太古の話だ。
0960デフォルトの名無しさん
NGNG例えば 36の平方根は6ですよね。
今まで使ったことなくって いまふと使わないといけないんですけど
わからなくて困ってます。
0961デフォルトの名無しさん
NGNGそのじゃあってのはなんだ。じゃあってのは。
平方根ならmath.hをインクルードしてsqrtを使えばいい。
#include <math.h>
double sqrt(double x);
0962デフォルトの名無しさん
NGNGほんとだ。ワロタ。
0963will
NGNGこれは2個のサイコロの目を足して出た数をカウントするというものなのですが
カウントしてヒストグラムの表示がうまくいきません。
分かる人、誰か教えてください。
0964デフォルトの名無しさん
NGNG((((AT BV) CX) DY) EZ) とか (((AT BV) CX)(DY EZ))
とかの木を全て書き出したいのですが、うまい書き方が分かりません。
大まかな方針だけでも教えていただけませんか?
0965デフォルトの名無しさん
NGNGAT, BV, CX, DY, EZ
この順番は保ったまま?
0966デフォルトの名無しさん
NGNG((((AT BV) CX) DY) EZ)だったらAT, BV, CX, DYとEZに。
(((AT BV) CX)(DY EZ))だったらAT, BV, CXとDY, EZに。
0967デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1055864305/49-
0968デフォルトの名無しさん
NGNG0969デフォルトの名無しさん
NGNGKill();
0970デフォルトの名無しさん
NGNGvoid mode(int freq[], int answer[])
{
int rating, j , h, largest = 0, modeValue = 0;
for(rating = 1; rating <= 12; rating++)
++freq[answer[j]];
これを
void mode(int freq[], int answer[])
{
int rating, j , h, largest = 0, modeValue = 0;
for(j = 0; j < SIZE; j++)
++freq[answer[j]];
こうすればいいんでない?
あと、5,10,15,…てのがずれてる気がするけどそこは自分でなおしてね
0971デフォルトの名無しさん
NGNGすぐに思いつくのはこれの前後を組にしていく方法。
http://pc2.2ch.net/test/read.cgi/tech/1055864305/49
それ以外だとこれ。
http://pc2.2ch.net/test/read.cgi/tech/1055864305/56
並びに関しては、できる組合せ全てに対して上記の操作を行えばよい。
でも、2個目の方法だと同じものが重複して出てくるのを
どうやってさければよいかが思いつかないな。
例えば4つの時、
abcd
境界は012
これの組合せは6通り、
012 (((ab)c)d)
021 ((ab)(cd))
102 ((a(bc))d)
120 (a((bc)d))
201 ((ab)(cd))
210 (a(b(cd)))
021と201が同じだということをどうやって判別するか。
0972デフォルトの名無しさん
NGNG〇〇を表示するって可能ですか?
0973デフォルトの名無しさん
NGNG0974972
NGNG0975デフォルトの名無しさん
NGNGブラウザでアクセスすれば?
0976972
NGNGう〜ん・・
0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNG>クリック〜
マウスを使う時点で環境依存。無理。
0979デフォルトの名無しさん
NGNG2003年06月18日と出力せよ。
0980964
NGNG場所は入れ替わりOKです。
ただ、(ad) と (da) は同じとみなします。
>>967
http://pc2.2ch.net/test/read.cgi/tech/1055864305
は私です。
>>971
これも私です。
たとえば 012 と 021 は最後の3つが一緒なので、
それを判別するだけです。
なんですけど、うまい方法が分からないのです。
0981デフォルトの名無しさん
NGNGprintf("2003年06月18日");
0982デフォルトの名無しさん
NGNGstrncpyとかstrcatとか 使うらしいんですが・・・
0983デフォルトの名無しさん
NGNGm2[4][3];
m3[7][5][4];
という風にあって、それぞれの先頭アドレスが同じ時
m1[6] のとき m2[?][?] , m3[?][?][?]
という計算は、どのようにすればいいんでしょうか?
0984デフォルトの名無しさん
NGNGchar *b = "2003年06月18日";
strcat(a,b);
strcpy(a,b);
printf("%s",a);
0985デフォルトの名無しさん
NGNG> それを判別するだけです。
どういう意味でしょうか?
私が言ってるのは021と201の話なんですが…
0986デフォルトの名無しさん
NGNG聞いてください
身の回りでデジタル化されたものを1つあげ、その際に生じた
メリット・デメリットをあげよ。です。
CDとか、カメラは出てしまいました。なんかわからない・・・・
こーゆーのって、ここは場所が違いますかね・・(汗
0987デフォルトの名無しさん
NGNGどういう計算だ、そりゃ?
>>986
正解。
0988デフォルトの名無しさん
NGNG板違いも甚だしい
0989デフォルトの名無しさん
NGNG0990デフォルトの名無しさん
NGNG0991デフォルトの名無しさん
NGNG0992964
NGNGすいません。勘違いしました。
021 と 201 でしたね。
0993デフォルトの名無しさん
NGNGじゃあどこへ行けばいいですかね?あ、986です。
0994デフォルトの名無しさん
NGNG> ただ、(ad) と (da) は同じとみなします。
こんな条件があるなら、これしかないような気がする。
http://pc2.2ch.net/test/read.cgi/tech/1055864305/49
0995デフォルトの名無しさん
NGNG0996デフォルトの名無しさん
NGNG0997デフォルトの名無しさん
NGNGこれは別物?
((ab)c) (c(ab))
0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。