1 :
デフォルトの名無しさん :
2012/07/22(日) 23:08:24.46 あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他の発言はスルーの方向で。
【質問者へ】
回答者の便宜のため、質問の際は以下を行うことを推奨します。
・質問は【質問テンプレ】を利用してください。
>>2 以降にあります。
・問題文は、出題されたまま全文を書いてください。
・問題文やコードをリンクするときは、一言内容にについて説明をつけましょう。
・計算問題は数式をあげ、どのような計算をするのか詳しく説明してください。
・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。
・後から問題に付け足しするのはコラー!!です。付け足しは作業を無駄にしがちです。
・なりすましを防ぐため、トリップを使ってください。名前欄に、「#」に続けて任意の文字列を入力して投稿すると、その文字列を知らない他人に騙られることを防ぐことができます。
>>前999 修正したコード曝さないとエスパーゲーだろ... 17行目の最後で;忘れてるんじゃね?
4 :
デフォルトの名無しさん :2012/07/23(月) 02:12:43.42
>>前999 C言語だから 関数呼び出す前に、使う変数を定義しないとだめだよ。 (初期化をのぞく) getline(buf, 1024); int i, j = 0; を int i, j = 0; getline(buf, 1024); にするだけ。
>>3 すいません、そうでした。
今後気を付けます
>>4 入れ替えたら無事に動きました、ありがとうございます。
今時Cで開発するものなの?
今時というか分野によってすみ分けてる 一般的にハードウェアに近い部分はC言語で記述する
[1] 授業単元: [2] 問題文(含コード&リンク): 試合で自分のチームが勝つ・負ける・引き分けるの予想を、10人に予想してもらってプログラムに入力する。 予想した人が男性の場合は M を入力し、女性の場合は W を入力する。 勝ちを予想した場合は 整数1 を入力し、負けを予想した場合は 整数 2 を入力し、引き分けを予想した場合は 整数 0 を入力する。 それら10人分の予想結果を、「 勝ち1・引き分け0・負け2 」に男女別に集計し表示するプログラムを、 構造体 struct datatype { char sex;// 男女の性別、男性 M、女性 W int expectation;// 勝ち 1、負け 2、引き分け 0 } を利用して作成せよ [3] 環境 [3.1] OS:Win7 [3.2] コンパイラ名とバージョン:VS2008 [3.3] 言語:C [4] 期限:7/25 [5] その他の制限:
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://codepad.org/T1z7LREU 次のプログラムのポイントを説明せよ。
[3] 環境
[3.1] OS:Windows
[3.3] 言語: C
[4] 期限: 2012年7月24日まで
[5] その他の制限:文字列の長さを取得する関数プログラムです。
口頭で説明しなくてはいけないので、ポイントとなる部分を教えていただけたら助かります。
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://codepad.org/MgzgubzZ 次のプログラムのポイントを説明せよ。
[3] 環境
[3.1] OS:Windows
[3.3] 言語: C
[4] 期限: 2012年7月24日まで
[5] その他の制限:文字列をコピーする関数プログラムです。
口頭で説明しなくてはいけないので、ポイントとなる部分を教えていただけたら助かります。
Cの文字列定数 "ABC" はメモリ上では 'A', 'B', 'C', '\0'と末尾に'\0'が入る。 mystrlen()は'\0'は含まない文字列の長さを返す。 while()文の条件式は、与えられたアドレスの中身を取り出し、1つポインタをすすめ、 中身が'\0'でなけければlenを1加算する。 '\0'ならループを終了する。 mystrcpy()はs1へs2の内容を\0まで\0を含めてコピーする。 コピーするバイト数はmystrlen(s2)+1バイトである。 それぞれ、NULLが渡されたときのことを考慮に入れていない。 口頭で説明する際には、「ここは、がーっとやって、こーなるわけですよ」 と答えればよい。
適切な御贈答ありがとう
15 :
デフォルトの名無しさん :2012/07/24(火) 00:12:08.94
[1] 授業単元:c言語 [2] 問題文(含コード&リンク): ビット単位の論理演算を用いて、1文字の英字の大文字を小文字に変換する関数と、 小文字を大文字変換する関数をそれぞれ作りなさい。 また、char型の変数のビットの並びを表示する関数を作成しなさい。 ただし、ビット単位の論理演算とシフト演算子を用いることとし、 四則演算(加減乗除)は使わない。 例えば、文字'A'は0x41であるので、0100 0001となる。 配列のサイズなど、定数は#defineを利用すること. 入力や表示を目的とする関数以外では、 関数の中で標準入力や標準出力への入出力は行わないこと [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限:2012年7月29日まで [5] その他の制限: お手数ですが、よろしくお願いします。
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://codepad.org/aARzaP9m 次のプログラムのポイントを説明せよ。
[3] 環境
[3.1] OS:Windows
[3.3] 言語: C
[4] 期限: 2012年7月24日まで
[5] その他の制限:文字列から10進数へ変換する関数プログラムです。
口頭で説明しなくてはいけないので、ポイントとなる部分を教えていただけたら助かります。
>>17 色んな所にマルチポストしてたからみんなレス付けなかっただけじゃねえの
敷居が高いの使用法がおかしい
>>19 簡単な問題ならマルチでもつく。数値解析や微分方程式を解くとかは、理由をつけて誰もやらない。
みんな数学苦手なんだね。
>>20 確かに
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/jE2IX [3] 環境
[3.1] OS:linux
[3.2] gcc
[3.3] 言語: C
[4] 期限: 2012年7月26日まで
[5] その他の制限:
よろしくお願いします
マンコ マンド
[1] 授業単元:C言語 [2] 問題文(含コード&リンク) 上記プログラムを関数を定義して書き直してください。 よろしくお願いします。 [3] 環境 [3.1] OS:linux [3.2] gcc [3.3] 言語: C [4] 期限: 2012年7月27日まで [5] その他の制限: よろしくお願いします
ねーよwww マッシヴすぎんぞwww
うわっQ臭い
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): 以下の問題文の ^ はべき乗をあらわす記号とする。 1.二次方程式 "ax^2+bx+c=0" のxの解を"解の公式"を使って求め、表示しなさい。 a,b,cは乱数によって決定されるdouble型の変数とする。 a,b,cは "a≠0 , b^2-4ac>=0" を満たすものとする。 解の公式は {-b±√(b^2-4ac)}/(2a) を使うこと。 2.解の公式を使って解く上記方法には問題点があります。 上記問題点とは、"a=0 , b^2-4ac<0"の時という意図ではありません、 あくまで"a≠0 , b^2-4ac>=0"である前提での問題点です。 その問題点がなんであるかを答え、 その問題点を解決するプログラムを作成しなさい。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C
以下、ルート4.0000を計算できずに詰まる回答が登場します。 ご期待くだしあ。
b^2-4ac=0で解が1つしかないくらいしか思いつかない
重根を重根と判定出来ない可能性があるって事か
重婚と結婚詐欺が区別できないてことか
虚根、いや巨根の扱いは?
a=0, b≠0 とか a=b=0、c≠0 とか a=b=c=0 とか
>>35 が指摘しているが、a, c に比べて b が十分大きいと、
解の公式の分子部分がbと「ほぼb^2の平方根」の引き算になるので
桁落ちが発生しやすくなる。数値計算特有の問題
>>40 それは α= -b-sqrt(b*b - 4*a*c) を先に求めておいて、後は解と係数の関係を用いて
β= -(b/a)-α
とすれば回避できそう。
いろいろヒントが出てきたね。
>>41 解の公式大丈夫かよ・・・
そもそも同じくらいの大きさのでかい数の引き算で死んでるんだから, それじゃ意味無いだろ.
普通に-b/(2a)から二分探索でもすればよい.
-b/(2a)を計算する時点でずれるような奴はこれだけじゃ辛いけど.
>>43 おっとっと。分母をわすれていた。α= (-b-sqrt(b*b-4*a*c))/(2*a)
b^2 >> 4ac を仮定するとα≒-b/a
β≒ 0 ... やっぱり桁落ちはさけられないですかね。
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):次のプログラムを一つ一つ手順を追って説明せよ。
http://codepad.org/iARWUPGk [3] 環境
[3.1] OS:Windows
[3.3] 言語:C言語
[4] 期限: 2012年7月27日
[5] その他の制限:main関数では〜のように、など一つ一つ
どのような動きをしているか説明していただけたら幸いです。
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):次のプログラムを一つ一つ手順を追って説明せよ。
http://codepad.org/WyihG6LV [3] 環境
[3.1] OS:Windows
[3.3] 言語:C言語
[4] 期限: 2012年7月27日
[5] その他の制限:連投すみません。
main関数では〜のように、など一つ一つ
どのような動きをしているか説明していただけたら幸いです。
50 :
デフォルトの名無しさん :2012/07/25(水) 14:52:12.18
>>46 void swap(struct addressSheet ary[], int i, int j) {
struct addressSheet tmp;
tmp = ary[i];
ary[i] = ary[j];
ary[j] = tmp;
return;
}
この書き方で構造体配列の全メンバを入れ替えられたっけ?
52 :
デフォルトの名無しさん :2012/07/25(水) 15:00:24.21
[1] 授業単元:c言語 [2] 問題文(含コード&リンク): 複素数z=x+iyの実部Reと虚部Imをメンバに持つ構造体を定義し、 2つの複素数z1,z2に対して、和z1+z2と積z1×z2を求める関数を それぞれ作成しなさい。返却値型もこの構造体とする。 構造体の定義例 struct my_complex { double Re; /** 実部 **/ double Im; /** 虚部 **/ } 配列のサイズなど、定数は#defineを利用. 入力や表示を目的とする関数以外では、 関数の中で標準入力や標準出力への入出力は行わない. [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限:2012年7月30日まで [5] その他の制限:
#include <stdio.h> typedef struct { double Re, Im; } MYCOMPLEX; MYCOMPLEX sum(MYCOMPLEX c1, MYCOMPLEX c2) { MYCOMPLEX c; c.Re = c1.Re + c2.Re; c.Im = c1.Im + c2.Im; return c; } MYCOMPLEX prod(MYCOMPLEX c1, MYCOMPLEX c2) { MYCOMPLEX c; c.Re = c1.Re * c2.Re - c1.Im * c2.Im; c.Im = c1.Re * c2.Im + c1.Im * c2.Re; return c; } int main(void) { MYCOMPLEX z1 = {1, -2}, z2 = {-3, 4}; MYCOMPLEX z3 = sum(z1, z2), z4 = prod(z1, z2); printf("z3 = (%f, %f)\n", z3.Re, z3.Im); printf("z4 = (%f, %f)\n", z4.Re, z4.Im); return 0; }
ああ構造体配列はポインタ配列なのか intとはちがうのだよintとは、と覚えますね ありがとう
55 :
50 :2012/07/25(水) 15:57:07.03
でも
>>50 の例だと
struct addressSheet *test;
test = ary[0];にするとエラーで
test = &ary[0];なら当然通る
構造体配列はポインタ配列だけどポインタ配列じゃない振りをする、偽装ポインタ配列か
>>54 >>55 http://codepad.org/ZkghZJHk 上記のとおり
struct addressSheet *test;
で swap を書こうとしてもうまくいかない。
構造体の配列の配列であっても何の配列であっても、swap() にわたるのは配列の先頭。
今回の例では構造体の配列について、その配列の先頭のアドレスが swap() にわたっただけ。
構造体の配列はポインタ配列ではない。構造体のそのものが連続して並んでいる実体の配列だと思う。
ポインタ配列、というのが私にはよくわからないんではあるけれども。
57 :
デフォルトの名無しさん :2012/07/25(水) 18:43:37.44
>>57 表示できないよー
ELSC0501: 本文PDFが表示できません。
以下の方法をお試しください。
1. CiNiiの画面から、直接現在の表示になった場合、ご使用のブラウザで
Cookie(クッキー)を拒否している可能性があります。
Cookieを許可するよう、ブラウザの設定変更を行ってください。
2. このページに直接アクセスした場合や、長時間CiNiiの画面を開いたままにしていた場合、
セッションが切れている可能性があります。
以下のボタンから、論文情報のページに戻って再度アクセスしてください。
ただし、表紙や目次の本文を表示しようとしていた場合などは、CiNiiのトップページに戻ります。
有料の本文を表示しようとしています。 ユーザIDをお持ちの方はログインしてください。
そこのCiNii、 大学生で学内ならおおよそ有料会員、 それ以外の一般ピーポーにゃあ見せネーy、 みたいな話もある
>>33 >>43 >>44 これでは片手落の気もしますが。
http://ideone.com/GEqCS 桁落ちの可能性があるのは
1. -b-sqrt(xxx)
の部分と、sqrtの中の
2. b*b - 4*a*c
だと思いますが、
2の桁落ちに関しては、
bに対してsqrt(xxx)は十分に小さい値となるはずなので、
-b-sqrt(xxx)の有効桁数はbのものが守られる。
よって1のケースだけ考えればいいという発想ですけど、
あげたソースで著しい桁落ちが発生するケース有りますかね?
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://s2.muryo-de.mydns.jp/~c_cpp_homework/cgi-bin/joyful/img/371.txt 上のコードは、配列a[4][3]の各行の合計を求め、配列b[4]に保存し、求めた値を出力するプログラムです。
これを改造して次のプログラムを作成せよ。
・配列a[4][3]の各行において、その合計の昇順に行を並び替え、配列 c[4][3]に保存し、出力しなさい。
ただし、各行の合計の値が等しいものがあった場合、行番号が小さいものを小さい順番にする。
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ: gcc
[3.3] 言語: C
[4] 期限: 2012年7月29日まで
[5] その他の制限:
上のURLで、配列aの一行目の数が {3,5,3} となってますが、{3,5,8}と間違えました。
宜しくお願いします。
64 :
◆VD2btbRbPs :2012/07/25(水) 21:50:36.06
二分探索木の高さを調べる実験とその結果 #include<stdio.h> #include<stdlib.h> #include<malloc.h> #define NODE_NUM 10 #define RAND_SEED 0x1031000 必要な関数・構造体の定義をここに書く int main(void){ struct BST_Node *T_root; int i; T_root=(struct BST_Node*)malloc(sizeof(struct BST_Node)); T_root->left=T_root->right=NULL; T_root->value=0; srand(RAND_SEED); for(i=0;i<NODE_NUM; i++){ insert_v(T_root,rand()/(double)RAND_MAX*NODE_NUM*10); } 木の高さや木の形をここで表示 } 必要な関数・構造体の定義と木の高さと木の形を表示するプログラムを書いてくださいますようお願い申し上げます [3] 環境 [3.1] OS:Windows7 [3.2] bcpad C++ [3.3] 言語:C [4] 期限: 2012年7月29日まで
70 :
12 :2012/07/26(木) 00:30:17.60
72 :
デフォルトの名無しさん :2012/07/26(木) 06:49:46.73
[1] 授業単元:C言語演習U
[2] 問題文:
以下のデータは、3つの商品A、B、Cのある月の売り上げ個数と単価である。
以下のリストの< >の処理をコメントに従って埋め、商品A、B、Cの売り上げをそれぞれ計算するプログラムを作成せよ。
<売り上げデータ>
商品 個数 単価[円]
商品A 32 500
商品B 27 700
商品C 12 1200
<リスト>
http://ime.nu/codepad.org/2VWOcUPS [3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:7月30日
[5] その他の制限
分岐、繰り返し、関数、ポインタ、配列を学習しています。
よろしくお願いいたします。
73 :
デフォルトの名無しさん :2012/07/26(木) 06:51:02.15
[1] 授業単元:C言語演習U
[2] 問題文:
以下の実験データは、あるコンピュータAのメッセージ発生時刻と、そのメッセージが宛先コンピュータBに到着した時刻である。
以下のリストの< >の処理をコメントに従って埋め、メッセージ毎の転送時間を出力するプログラムを作成せよ。
但し、メッセージ転送時間は、メッセージ発生時刻との差である。
<実験データ>
メッセージ番号 発生時刻[ミリ秒] 到着時刻[ミリ秒]
0 0 25
1 5 30
2 10 38
3 15 50
4 20 52
5 25 55
6 30 57
7 35 60
8 40 65
9 45 70
<リスト>
http://ime.nu/codepad.org/PW5VddGM [3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:7月30日
[5] その他の制限
分岐、繰り返し、関数、ポインタ、配列を学習しています。
よろしくお願いいたします。
>>71 ここのスレは「C/C++の宿題片付けます」なんで、コードを書かないと言うのは良くないかもしれないけど。。。
C言語の問題というより、ロジックをどう組み立てるかの問題だと思います。
プログラムのなんて、ロジックを各言語に落としただけなんで。
ただ、ロジックを組む上で、特定の言語で出きる事、出来ない事があるのでまったく無関係という訳ではないけど。
んで、「関数にしろ」と先生に言われたのなら、闇雲にmainに書いてみるんじゃなく、どの部分を関数にしたら良いかを考えるとよいよ。
まぁ、ヒントの1-6の部分をそれぞれ、全部関数にしちゃうって手もあるよ。
そうすると
void main(){
sturuct Data *pDate;
strunct Data **arrayData;
fp = file_open(.....); /* 1.ファイルのオープン */
pData = readData(fp); /* 3.データの読み込み */
calcBMI(pData); /* 4.BMIの算出 */
.....
sortBMI(arrayData); /* 5.BMIの大きい者順に並べ替える */
printData(arrayData); /* 6.画面表示 */
.....
}
引数、戻り値はまだ未定。
3.データ構造の用意 については、今、どのくらいの段階の勉強をしているのか分からないのでなんとも言えないのですが、ポインタとか領域確保(malloc)とかがイメージ出来て入れば、
初めにデータ数を知らなくてもかけないこともない。
ただ、今の段階で、そのレベルの勉強をしているのかが分からないので保留させて頂きます。
まぁ、ざっくりと骨組みらしきものは出来た。
こういう風に考えた物をもとにして、これは、こっちが良いんではないかと考える。
(だから、上のプログラム(の原型にとらわれる必要はない・どんどん、変化していけば良い。)
なんか、考え方等、間違っていたら他の人も指摘・訂正をお願いいたします。
大筋はいいんじゃない? void main()とかわざわざ規格に沿わない書き方をサンプルに上げるのはどうかと思うけど
未だに void main() 笑 とか時代遅れだろ
>中級者むけ どこが? むしろ初学者向けだろう
79 :
デフォルトの名無しさん :2012/07/26(木) 10:48:28.97
みれまsyyy−−−−−−−−ん!!!!!!!!!
81 :
50 :2012/07/26(木) 10:55:57.36
>>56 gccにアセンブラ出力させてtmp = ary[i];のところを見てみたら
movl $7, %eax
movl %edx, %edi
movl %ebx, %esi
movl %eax, %ecx
rep movsl
となっていました。ecxの7は7*4=28バイトで丁度構造体配列のひとつ分なので構造体を丸ごと入れ替えてます。
なので、構造体配列はポインタ(アドレス)の配列を使わずにそのままメンバをメモリ上に並べています。
構造体はポインタ配列などと書いてすみませんでした。
>>79 有料の本文を表示しようとしています。 ユーザIDをお持ちの方はログインしてください。
Displaying Paid Full Text requires users to be logged in.
83 :
デフォルトの名無しさん :2012/07/26(木) 12:00:12.98
[1] 授業単元:C言語
[2] 問題文:
http://fan.naist.jp/~yoneda/prog2010/kadai3/ [3] OS:Windows
コンパイラ:gcc
言語: C
[4] 期限:8月9日
[5] その他の制限:上記<課題>のオプション1の場合のソースコードを作成することが宿題です。リンク内に書かれている実行環境や提出期限は関係ありません。
プログラム入出力仕様は、 入力 : 矩形集合ファイル 出力 : 各矩形の配置位置 です。
よろしくお願いします。
たびたびすいません。
どなたか
>>12 をお願いします。
どうかお助けを…
89 :
71 :2012/07/26(木) 16:11:40.56
>>74 さん
レスありがとうございます。
やってみてもわからないので…
プログラムを作っていただけるとありがたいのですが…
よろしくお願いします。
90 :
デフォルトの名無しさん :2012/07/26(木) 17:40:13.34
助けてください! C言語の課題です。 「自分のフルネームをアルファベット小文字で入力し、そのアスキーコードを、10進数で求めて平均、分散、標準偏差を表示」 を表すソースを教えてください。
>>81 いえいえ。別にあやまることじゃないと思いますよ。じっくり考えるのもいいことだと思います。
92 :
roza ◆i6RgINNEzw :2012/07/26(木) 20:05:00.97
93 :
roza ◆i6RgINNEzw :2012/07/26(木) 20:06:58.85
>>92 鯖がてんぽってて見れない
ideoneかcodepadに上げなおして
バkじゃねーのコイツ なんでbrタグが残ったママなんだよ よみにけーだろ もう一度上げ直せよアホ
98 :
デフォルトの名無しさん :2012/07/26(木) 21:17:51.56
[1] 授業単元:C言語演習U
[2] 問題文:
以下のデータは3つの商品A、B、Cのある月の売り上げ個数と単価である。
以下のリストの< >の処理をコメントに従って埋め、商品A、B、Cの売り上げをそれぞれ計算するプログラムを作成せよ。
<売り上げデータ>
商品 個数 単価[円]
商品A 32 500
商品B 27 700
商品C 12 1200
<リスト>
http://codepad.org/PkkNn9kV [3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:7月31日
[5] その他の制限
分岐、繰り返し、関数、ポインタ、配列、構造体を学習しています。
よろしくお願いいたします。
>>98 おいアホ
おまえは
>>72 とは別人か?
それとも現行スレを読めないような
何か特殊で特別な環境で2ch見てんの?
100 :
デフォルトの名無しさん :2012/07/26(木) 21:24:00.35
>>84 ありがとうございます。
[1] 授業単元:C言語演習U
[2] 問題文:
http://codepad.org/DbAPWfUk 上記のプログラムを修正して、メッセージ転送時間の平均値を計算するaverage関数を追加し、main関数側で平均メッセージ転送時間も出力するようにせよ。
[3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:7月30日
[5] その他の制限
average関数の呼び出し方法はaverage(data,&ave);とする。
但し、aveは平均メッセージ転送時間を入れる実数型変数となる。(returnで平均メッセージ遅延を戻してもよい)
分岐、繰り返し、関数、ポインタ、配列を学習しています。
よろしくお願いいたします。
101 :
98 :2012/07/26(木) 21:29:09.94
>>99 >>77 のプログラムだとダメだと言われましたので、もう一度お願いします。
なんでそれを先に描かんの? マジでアホなの? お前が同一人物で先のがダメだって言われたって そこまでエスパーせにゃあアカンのかよwwww まぁ実を言えば 中級者向けの他に初心者向けのも作ってあるwwwwwwwwwww ちょっとまってろ 後ついでに どこがダメなのかも教えろ
103 :
デフォルトの名無しさん :2012/07/26(木) 21:41:59.63
[1] 授業単元:C言語U [2] 問題文: 2つの整数aとb(但しa<b)を入力すると、aからbまでの和と積を求めるプログラムを作成せよ。 但し、#if〜#endif文を用いて、「#define on 1」と「#define on 0」の制御により、最終的な結果だけを出力する場合と 和を入れる変数waと積を入れる変数sekiの計算途中の値も出力する場合の2通りで実行できるようにせよ。 そして両方の場合について実行せよ。 <入力例> wa=3 seki=6 <結果のみ出力する場合> wa=18 seki=360 <途中経過も出力する場合> wa=3 seki=3 wa=7 seki=12 wa=12 seki=60 wa=18 seki=360 (最後の結果が重複して表示されてもよい。) [3] 環境 [3.1] OS:Linux [3.3] 言語:C言語 [4] 期限:7月31日 [5] その他の制限 分岐、繰り返し、関数、ポインタ、配列を学習しています。 よろしくお願いいたします。
104 :
99 :2012/07/26(木) 21:46:16.44
>>102 while( ( ret = fscanf( fp, "%s%d%d", s, &n1, &n2 ) ) != EOF ){
このやり方は教えていないのでダメと言われました。
scanfでするようにしなさいと言われました。
105 :
デフォルトの名無しさん :2012/07/26(木) 21:52:44.17
[1] 授業単元:C言語U [2] 問題文: 以下のマクロを用いて、2つの整数aとbをキーボード入力すると、aとbの和、差、積、商を計算して出力するプログラムを作成せよ。 #define READ(X) {printf(#X"="); scanf("%d",&X);} #define WRITE(X) printf(#X"=%d\n",X); [3] 環境 [3.1] OS:Linux [3.3] 言語: C言語 [4] 期限:7月31日 [5] その他の制限 分岐、繰り返し、関数、ポインタ、配列を学習しています。 よろしくお願いいたします。
106 :
デフォルトの名無しさん :2012/07/26(木) 22:14:25.78
[1] 授業単元:C言語プログラムU
[2] 問題文:
http://codepad.org/dZkqNN3s 上記のプログラムを参考にして、以下のファイルidata.txtから8文字を読み出して画面出力するプログラムを作成せよ。
但し、以下の内容のデータファイルidata.txtを、emacsであらかじめ作成しておくこと。
<出力例>
FILE READ OK
READ DATA->Aiba 160
[idata.txt]
Aiba 160 59.3
Kurata 162 51.6
Masaki 182 76.5
Nakashima 168 65.2
Tanaka 170 60.7
[3] 環境
[3.1] OS:Linux
[3.3] 言語:C言語
[4] 期限:7月31日
[5] その他の制限
分岐、繰り返し、関数、ポインタ、配列、構造体を学習しています。
よろしくお願いいたします。
107 :
デフォルトの名無しさん :2012/07/26(木) 22:20:20.24
[1] 授業単元:C言語プログラムU [2] 問題文: 以下のファイルsdata.txtに入っている商品名、単価、売り上げ個数を1件ずつ読み込んで商品別の売上高を求め、 それらの結果を画面表示するとともに、ファイルodata2.txtに書き込むプログラムを作成せよ。 但し、以下の内容のデータファイルsdata.txtをemacsであらかじめ作成しておくこと。 [sdata.txtの内容](商品名、単価、売り上げ個数) coffee 250 75 tea 270 52 milk 300 22 juice 350 54 coke 300 36 [3] 環境 [3.1] OS:Linux [3.3] 言語: C言語 [4] 期限:7月31日 [5] その他の制限 分岐、繰り返し、関数、ポインタ、配列、構造体を学習しています。 よろしくお願いいたします。
109 :
デフォルトの名無しさん :2012/07/26(木) 22:54:55.89
[1] 授業単元: 応用C言語 [2] 問題文(含コード&リンク): ・2倍長整数の除算関数を作成せよ。 ・作成する関数は以下の通りとする。 typedef struct w_intStruct { int flag; /* 正負を示すフラグ。 0:負、1:正 */ int upper; int lower; } w_int; void DivFunc(w_int* pNumA, w_int* pNumB); /* pNumA:被除数 */ /* pNUmB:除数 */ /* pNumAには、pNumA/pNumBの結果を代入して関数を終えること */ /* pNumBには、pNumA%pNumBの結果を代入して関数を終えること */ ※除算は、「単純に引き算を繰り返す」等のプログラムにしないこと ビットシフトを利用すること とりあえず今回は2倍長整数=64bitとしてOKです。 [3] 環境 [3.1]Windows [3.2]Borland 5.5 [3.3] 言語: C言語 [4] 期限: 2012年7月27日 [5] その他の制限: 特になし よろしくお願いします。
/* pNumAには、pNumA/pNumBの結果を代入して関数を終えること */ /* pNumBには、pNumA%pNumBの結果を代入して関数を終えること */ ウソだろこれ pQUiotientとかpModuloとかするだろフツー 何か意味あんの わざわざpNumAに入れ直す 重大な理由が 意味が分からなくて死にそうだ
どなたか
>>46 >>47 お願いいたします。
参考書にあるプログラムの例なのですが、
授業にて解説をしなくてはならないので・・・
>>106 work.txt→idata.txt
if(fgets(moji, 2, fp) != NULL)
↓
if(fgets(moji, 9, fp) != NULL)
>>109 upperとlowerはunsigned intではないかしら?
>>85 非常に助かりました。
ありがとうございました。
【質問テンプレ】
[1] 授業単元:C言語
[2] 問題文(含コード&リンク): 問題:
http://codepad.org/rB1ziaEc Data.txt:
http://codepad.org/qQW36PPE [3] 環境
[3.1] OS:Windows XP SP3
[3.2] コンパイラ名とバージョン:Visual Studio 2010
[3.3] 言語:C++ (C/C++/どちらでも可 のいずれか)
[4] 期限: 2012年07月27日 06:00
[5] その他の制限:現在、配列、ポインタ、構造体、関数、繰り返しを学習済みです。
期限が短くて申し訳ありませんが、よろしくお願いします。
ファイルアップロードの内容などに不備があったので書き直しました。
お手数ですがよろしくお願いします。
>>104 >このやり方は教えていないのでダメと言われました。
未だにこんな教え方してるのか。
道理で日本がソフトで負け続けるわけだ。
ここの教え方で勝ち負けが決まるなら、すでに日本は終わっている
このスレで質問するような奴は負けるもクソもないレベルだから関係ない
>>118 ありがとうございます。
今Visual Studio2010で確認してみたんですが、エラーは出ないもののプログラムがすぐに終わり表示も何も見れない状態でした。
テンプレに書いていなかった自分が悪いのですが、
乱数、数学ライブラリ、関数、構造体、ポインタ、ファイル入出力、文字列、配列、繰り返し
の内容を使ったもので書いていただけないでしょうか?
本当にすいません。
よろしくお願いします。
>>120 すいません。
何も見れない状態でよかったです。
自分が問題を勘違いしていました。
ですが、何を書いてあるのか全く分からない状態なので
>>120 に書いてある制限で書いてほしいです。
初回投稿時に書かなくてすいませんでした。
>>120 >プログラムがすぐに終わり表示も何も見れない状態
問題文にはファイル出力だけで標準出力への指示はないけど何を出力するの?
>乱数、数学ライブラリ、関数、構造体、ポインタ、ファイル入出力、文字列、配列、繰り返し
>の内容を使ったもの
全部使ってるよ
>>122 初心者向けに書き直していただくということはできないでしょうか…
標準出力に関しては自分の勘違いだったので大丈夫です。
124 :
デフォルトの名無しさん :2012/07/27(金) 06:16:27.90
[1] 授業単元:数値解析 [2] 問題文(含コード&リンク): LU分解によって、連立一次方程式を解くプログラム(ドゥ−リトル法)を 作成してください。 ただし、実行例は以下の連立一次方程式の場合について示してください。 行列3*3 (2,3,-1 4,4,-3 2,-3,1)*(x1 x2 x3)=(5,4,-1) 行列4*4 (1,1,0,3 2,1,-1,1 3,-1,-1,2 -1,2,3,-2)*(x1,x2,x3,x4)=(4,1,-2,4) [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限:2012年8月2日まで [5] その他の制限: よろしくお願いします!
どなたか
>>71 お願いします。
今日が締め切りなのでよろしくお願いします。
この程度の長さで関数に分割しろとか意味が分からん 処理の重複を避けるとか長すぎる関数を適度に分割するのなら分かるけど
128 :
デフォルトの名無しさん :2012/07/27(金) 08:05:32.96
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): 学籍番号(数字1〜10)と、それぞれの学籍番号ごとの得点を入力し、 平均点より20点以上を S +20点未満+10点以上をA +10点未満平均点以上をB 平均点未満-20点以上をC -20点未満を F と評価し、学籍番号とその得点をS〜Fの評価によって分けて出力するプログラムを作成してください。 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Borland C++ Compiler 5.5 [3.3] 言語: C++ [4] 期限:2012年8月3日18:00まで [5] その他の制限:出力の方法、入力の方法、変数、四則演算、分岐、繰り返し(whileとfor)までを習ったので、その範囲内でお願い致します。 よろしくお願い致します。
136 :
デフォルトの名無しさん :2012/07/27(金) 17:19:44.93
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): cos(3t)を計算しtとcos(3t)をdata1.datに保存し エクセルグラフを書くこと ただし t=0.0 , 0.1, 0.2 , 0.3 ,,,,,,,, 360.0 とすること [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン:Microsoft visualstudioC++ Compiler 5.5 [3.3] 言語: C++ [4] 期限:2012年8月3日18:00まで
138 :
デフォルトの名無しさん :2012/07/27(金) 22:54:17.48
[1] 授業単元: パーティクル、ビルボード、加算合成を使用したプログラム [2] 問題文(含コード&リンク): DIRECTXを使って パーティクル、ビルボード、加算合成を使用した演出プログラムの作成。 例)炎や爆発など [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2008 [3.3] 言語: C/C++/どちらでも可 [4] 期限: ([2012年8月10日20:00まで] [5] その他の制限: お手数ですが、コメントのほうよろしくお願いします。
139 :
あきら :2012/07/27(金) 23:19:55.24
宿題ではないのですが 自主勉強でわかりません。 勉強期間がまだ3カ月程度でまだよくわかっていないので 説明お願いしたいです。 本当に困っているので すみませんがよろしくお願いします! int i=0,n=1000; while(n>0){ n=n-7; i++; } printf("i=%d,n=%d",i,n); 答えがi=143,n=-1になることを説明お願いします。 iは1000/143であってますか? 他多数質問したいのですが!
夏だな マルチのアホは出てけ
>>139 nは1000, 993, ……, 6, -1と変化する。n > 0の条件によって-1のときに処理がwhileを抜けるから-1以下にはならない。
iはnから7を引くごとに1増えるから1000 / 7 + 1。
>>142 揚げ足どりしてんじゃねえよ、マジ気分わりいんだけど?
/ ̄\
| |
\_/
ノ L__|__
⌒:::\:::::/::\
/ <●>::::<●>\
/ (__人__) \
| |::::::| |
\ l;;;;;;l /l!|
/ `ー' \ |i
/ ヽ !l ヽi
( 丶- 、 しE | ドンッ!みんな
>>142 を絶対に許すな、こんな横暴があってたまるか、うおー
`ー、_ノ 煤@l、E ノ >
レY^V^ヽ
>>142 叩きは明らかに質問者の自作自演だろ・・・
>>137 レスありがとうございます!
できれば7月31日までにお願いしたいです。
>>142 これ以上は進めないといったらこれまでは進めるということだろ。
千円以上は出せないといったら千円までは出せるということだろ。
以のときイコールの値は有効な方に含まれるわけであるから、
-1以下にはならないといったら-1までにはなるということだろ。はい勝利。
>>142 はないよねー
( ´д)ヒソ(´д`)ヒソ(д` )
>>152 以上、以下はその値は含む
未満は含まない。
はいあんたの負け。
/ ̄ ̄\
/ _ノ \
| ( ●)(●)
. | (__人__)
| ` ⌒´ノ
>>142 はないだろ、常識的に考えて…
. | }
. ヽ }
ヽ ノ \
/ く \ \
| \ \ \
| |ヽ、二⌒)、 \
____
/_ノ ヽ_\
/( ●) ( ●)\
>>142 は荒唐無稽だお
/::::::⌒(__人__)⌒::::: \
| ( ( |
\ `ー' /
>>142 . ィ
._ .......、._ _ /:/l!
:~""''.>゙' "~ ,、、''‐'、| _ またまた ご冗談を
゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':,
``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ
" .!-'",/ `'-‐'') /\ `/ でノ-〈
.-''~ >'゙:: ‐'"゙./ ヽ.,' ~ /
//::::: ', / ,:'゙
/|
/ .| ∧
./ | / .|
/ | / |
/ | / |
,. '\ ┌’ / .|
! ! ,≦ .└・・・・丶-、、 / |
, 、 ! !__-'  ̄ ’丶≦ |
' \\..!-'! /'' ̄ヽ ≧
'ヽ' ' | ● / ..-- ,-丶、 \ とーーとーーろーー(
>>142 はない)
/ '-- ' 〒¶¶♯ .| ● '| ヽ __
__ ヽ___ ,/ __,,--''_,,
,/'└-「、 ̄ ̄'''''''-----............,,,,, --''''',,-
ヽ, '''''--- 、,,____」_______」__ ̄''''」-....  ̄└
丶,,..-`` ̄ ̄~''----------...,,  ̄ _ /
ヽ..,,, `ヽ,,..-'''
'''---..._____________,,,..--''''
>>152 >千円以上は出せないといったら千円までは出せるということだろ。
残念でした。
「千円以上」は千円も含む。だから「千円以上はだせない」は「千円も出せない」という意味も含む。
999円までだせる、というのが正確な意味だ
>-1以下にはならないといったら-1までにはなるということだろ。
残念でした。
「-1以下」は -1 も含む。「-1以下にはならない」というのは「-1にならない」という意味も含む
「0 までにはなる」というのが正確な意味だ
ここはム板。言葉の意味には正確を期していただきたいところ。日常語のあいまいさをもって論拠とするなど論外
>はい勝利。
あんたの負け
ところで、辞書は引いてみたの?
>>159 辞書を引いて意味を厳密に説明したら、ム板がどうとか言い訳するの?情けない。
警察官「おふくろさんも心配しているぞ。ほんとはやさしいやつだっていってたぞ。さあ人質を放しなさい」
誘拐犯「うるせえ。それ以上しゃべったら撃ち殺すぞ」
警察官「……」
誘拐犯が人質を射殺。
警察官「どうして撃ったんだ!」
誘拐犯「以上はそれを含むからだ」
警察官「アスペ乙」
>>161 日常語のあいまいさをもって論拠とするなど論外(再掲)
>>162 あいまいなところは一つもない。誘拐犯は以上がそれを含むと解釈して
人質を射殺した。それを目撃した警察官は誘拐犯がアスペであると確信した。
なぜならば以上はそれを含まないから。擦りガラスのように白濁した水晶体を通して
日常をながめたらあいまいに見えるのかもしれないが、みんなはクリアに明確に
以上がそれを含まないと認識できる。
>>164 含むというのは肯定の側に含むという意味だから「パンが3個以下にはならない」と言ったらパンの数は3〜ということだ。
>>165 「パンが3個以下」は パンが0〜3個のこと。
したがって、「パンが3個以下にはならない」とは、パンが 4 個を含む 4 個以上のこと。
シータ「バル……」 パズー「シータやめるんだ。それ以上言ったらラピュタが崩壊してしまう」 ラピュタ「ドカーン!」 シータ、パズー「どうして!?」 ムスカ「以上がそれを含むからだ」 シータ、パズー「?」
168 :
109 :2012/07/28(土) 19:33:16.38
すいません、誰か109ができる方はいますか? わかりにくい問題ですが、力をお貸しください。 あと、upperとlowerはunsigned intでした。
すれが伸びているのでひさしぶりにきてみたら
>>167 日常語のあいまいさをもって論拠とするなど論外(再掲)
>>170 あいまいなところは一つもない。ラピュタは以上がそれを含むと解釈したから崩壊した。
それを説明したムスカはパズーとシータからアスペであると認識された。
なぜならば以上はそれを含まないから。擦りガラスのように白濁した水晶体を通して
日常をながめたらあいまいに見えるのかもしれないが、みんなはクリアに明確に
以上がそれを含まないと認識できる。(新規)
>>173 /\___/\
/ / ヽ ::: \
| (●), 、(●)、 | / ̄ ̄ ̄ ̄ ̄ ̄ ̄
| ,,ノ(、_, )ヽ、,, | < うぃきぺぢあw(嘲笑)
| ,;‐=‐ヽ .:::::| \_______
\ `ニニ´ .:::/
/`ー‐--‐‐―´´\
l| ト、
l | ヽヽ.
l |、 -‐l ヽ-ヽヽ.
,イ 」_ | ヽ._ヽヽ
/ └-...二| ヽ/.゙l
l ,. -ー\,,/. 、 l
| / ____';_..ン、 |
/、./´ <二> <二ン ....ト!
/ /| ,-----─へ-ー--、.| \
>>142 はない(とどのつまり)
<-‐''" !/ (__人__) │ /
`''‐ .,,_\ ` ⌒´ //
/,,― --ー 、 , --ゝ 、
( , -‐ '" )
`;ー" ` ーー-ー -ー'
l l
夏休みの小学生が紛れ込んでるんだな。 以上・以下が、基準値を含まないんだったら、10点以上と10点超えの違い、10点以下と10点未満の違いを説明してみ。
>>180 10点以上は10、11・・・
10点越えは11、12・・・
10点以下は10、9・・・
10点未満は9、8・・・
「これ以上犯罪を犯すな」はこれまで犯罪を犯している
10点以上にはならないは10、9・・
10点以下にはならないは10、11・・・
>>181 >10点以上にはならないは10、9・・
「10点以上」は 10, 11, 12 ‥‥。したがって「10点以上にならない」は、9, 8, 7 ‥‥。
>10点以下にはならないは10、11・・・
「10点以下」は 10, 9, 8 ‥‥。したがって「10点以下にならない」は、11, 12, 13 ‥‥。
>>182 それが成り立たないことはラピュタ(
>>167 )で否定される
「バル」といっただけでラピュタが崩壊する。
シータ「バ……」
パズー「シータだめだ。それ以上言ったらラピュタが崩壊する」
ラピュタ「ドカーン」
シータ、パズー「!?」
「バ」といっただけでラピュタが崩壊する。
シータ「……」
パズー「シータやめろ。それ以上言ったらラピュタが崩壊する」
ラピュタ「ドカーン」
シータ、パズー「!?」
∴ラピュタは存在しない
>>183 日常語のあいまいさをもって論拠とするなど論外(再掲)
>>184 あいまいなところなど一切ない。
「10点以上」を丸ごと否定するならば、「10点以上であるでない」にする必要がある。
「10点以上にはならない」と「10点以上であるでない」は違うもの。
>>185 >10点以上であるでない
そんな日本語が存在するのか?
「10点以上にならない」は「10点以上」の否定だ。だから 「10, 11, 12 ‥‥」の補集合であるところの「9, 8, 7 ‥‥」となるのは自明。
なにこれ、小学生が日本語の勉強してるの?
>>171 おいおいこれが正しかったらCPUの条件分岐がおかしくなるぞ
greater or equal
less or equal
が正しい
訂正送っとくか
>>189 存在しない。「であるでない」とはいわず「でない」という。
「10点以上でない」は「10点以上」の否定だ。だから 「10, 11, 12 ‥‥」の補集合であるところの「9, 8, 7 ‥‥」となるのは自明。
,..-──- 、
. /. : : : : : : : : : \ < >
/.: : : : : : : : : : : : : : ヽ <
>>142 はない! >
.,!::: : : :,-…-…-ミ: : : : :', < >
{:: : : : :i '⌒' '⌒' i: : : : :} ∨∨∨∨∨∨∨∨
{:: : : : | ェェ ェェ |: : : : :} _.. ‐ァ=r‐''⌒゙二ニ二つ
{ : : : :| ,.、 |:: : : :;! _. -‐ '"´ l l r} } }l
ヾ: :: :i r‐-ニ-┐ | : : :ノ __ . -‐ ' "´ l ヽ 、 ヽ_ノノ
ゞイ! ヽ 二゙ノ イゞ‐′-‐ ' "´/`゙ ーァ' "´ ‐'"´ ヽ、`ーテヽJ
_.. -‐''フ|フヽr-‐ ''''フ. ̄「´ / / __.. -'-'"
. ‐ '7 く/|〉-rへ. / l l / . -‐ '"´
r=、r=、
__{_0.{ 0.}
/´l r `'、_,ノi、
{ )
>>142 は成り立たない
`、 _.r(_ ノ
`´-r _ノ)
/ !`i)
i i 「ン__r'^i
/! / (_`!し'i j
Li、 '、_ツ`ー' /
__ >、j__ r'
i'´ Y⌒ヽ ̄}
`=-{ )
`-=='`=
え? なにこの流れ みんな今日は暇だったの?
アホみたいなことだけしか書き込めないんだよ やってるのは大体同一人物
>>191 「であるでない」とはいわない。いってせいぜい、であるとは限らない、であるとはいえない、ぐらいか。
「である」の後ろに「で」はつかない。この「で」は断定の助動詞「だ」の連用形と推測されるが、助動詞「だ」は体言および一部の助詞にしか接続しない。
断定の助動詞「だ」は用言の終止形には接続し得ない。
したがって、「であるでない」という言い方は文法上ありえない。
C++の比較は曖昧になりました
>>195 そして論破されそうになるとAAを貼ってごまかす。
小学生もう寝ちゃった?
>>199 ____
/ \
/ ─ ─\
/ ⌒ ⌒ \ 論破wハハッワロス
| ,ノ(、_, )ヽ |
\ トェェェイ /
/ _ ヽニソ, く
>>200 小学生なら文法はやらないから
>>196 みたいな品詞分解と文法/語法解析は理解できないだろう。
高校生になれば、いやでも更科や枕草紙や源氏の中古文法、徒然草の中世文法、翻って現代文法をみっちりやるはずだ。楽しみにしておくように。
>>202 >>196 は品詞を述べて、ありえないと感想を書いただけだろ、語法解析wなんの中2設定だよ
大学で論理学を習ったら「であるでない」が理解できる
>>203 だから
>>196 に示したとおり「であるでない」という日本語は文法上存在し得ない。
論理学の教科書の日本語は、少なくとも現代文法に沿った日本語のはずだ。論理学の教科書が文法から逸脱した破格日本語で記述されるはずがない。
論理学を典拠にして説明したいのであれば、現代文法にのっとった語法で説明しろ。「であるでない」は認められない。
そもそも本当に論理学の教科書を読んだのか?
スレチ
Qに論破されてやんの、お前らそろって馬鹿か?
>>142 叩きをしている奴、そろそろ通報しとくわ うぜぇ
211 :
109 :2012/07/29(日) 16:06:10.43
すいません。 誰か109が解ける方はいませんか? upperとlowerはunsigned int です。 わかりにくい問題ですがお願いします。
>>212 2秒で自分の無知がわかったんだね。それはいいことだ。
>>214 >>196 がでたらめ?単に理解できないだけなんじゃない?
そりゃ、理解できなかったら、単にでたらめにもみえるだろうね。
でも普通は「○○がでたらめ」とか「××がおかしい」とか、そういう感想がでてくるものなんだけれどもね。
たんに「全体がでたらめ」というのでは、そりゃわからない=無知=馬鹿と区別がつきませんよね。
>>215 「であるでない」の文法を知らなかったからといってそれが馬鹿だとは思わない
2秒でわかったけどね、
>>196 がでたらめだってことは、2秒だった
217 :
デフォルトの名無しさん :2012/07/29(日) 19:05:38.78
[1] 授業単元:アルゴリズムとデータ構造
[2] 問題文:
http://codepad.org/DbLCEeF3 このプログラムの走査関数を完成させてください。
[3]コンパイラ:gcc
言語: C
[4] 期限:7月30日
[5] その他の制限:よろしくお願いします
>>216 >「であるでない」の文法を知らなかった
のではなく存在しない。
>>196 に示すとおり。
>、
>>196 がでたらめ
どこがでたらめか?それが指摘できないようでは、わからない=無知=馬鹿と区別がつかない。
[1] 授業単元:C言語基礎
[2] 問題文(含コード&リンク):
http://codepad.org/ZFvqmY0O 次のプログラムが何を行っているか、プログラムの手順を追って解説せよ。
[3] 環境
[3.1] OS: Windows
[3.3] 言語: C
[4] 期限: 7月30日
[5] その他の制限:C初心者です。
main()で何をしているか。どの関数がどのような動きをしているかなど
それぞれ教えていただけますでしょうか。
>>219 えと、丁寧に関数が命名されているんでその通りでいんでない?
住所録を名前項でASCII昇順に並べ替えて結果を標準出力に書き出す でいいだろ あとは追加で聞かれたことに対してその都度返答すればいい
222 :
103 :2012/07/29(日) 21:34:09.75
>>220 、
>>221 御解答ありがとうございます。
関数の意味は分かるのですが、その中身が良く分からないというか…
例えば
int findMin(struct addressSheet ary[], int n, int start)
{
int min;
int i;
min = start;
for (i=start+1; i<n; ++i) {
if (compare(&ary[i], &ary[min]) < 0) {
min = i;
}
}
return(min);
}
ここの一文でもfor文の()の中身がどのように動いているのか…
もしよろしければ手順を追って教えていただけないでしょうか?
226 :
100 :2012/07/29(日) 21:56:13.67
どなたか
>>100 の課題をお願いします。(>_<)
明日までなので困っています。よろしくお願いします。
>>223 int da[] = {4, 9, 6, 2, 7, 3, 8};
を小さい順に並べ替えるとして、
da[0]とda[0]を比較しても意味が無いので
最初にda[0]とda[1]を比較する
ソースではstartとstart+1から始めている
もしも、start+1がstartよりも小さかったらstart+1をminに保存して
次はstart+1(min)とstart+2を比較する
これを要素の数だけ繰り返す
>>228 ×小さい順に並べ替える
○最小値を調べる
231 :
デフォルトの名無しさん :2012/07/29(日) 22:33:04.96
[1] 授業単元:C言語プログラムU
[2] 問題文:
http://codepad.org/sbw6DzI0 上記のプログラムは、平均身長と平均体重の計算結果を画面表示したが、それらをファイルodata.txtに書き込むようにプログラム修正せよ。
[3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:7月31日
[5] その他の制限
分岐、繰り返し、関数、ポインタ、配列、構造体を学習しています。
よろしくお願いいたします。
>>223 min に start を入れる。
i は start + 1 から (n - 1) まで 1 ずつ増える。
序数が i の要素と、序数が min の要素とを比較する。
序数が i の要素が、序数が min の要素より小さければ
min に i を入れる。
戻り値は、配列の start から (n - 1) までの序数のうち最小の要素が入っているもの。
234 :
デフォルトの名無しさん :2012/07/30(月) 04:14:56.61
すみませんが、どなた
>>52 をよろしくお願いします;;
236 :
デフォルトの名無しさん :2012/07/30(月) 09:55:20.33
[1] 授業単元:C言語プログラム [2] 問題文:f(x,y)=10x^2+6(x+y)+3の値を返す関数 double f(double x, double y); を定義しなさい。(関数部分だけでよい) [3] 環境 [3.1] OS:Linux [3.2] gcc [3.3] 言語: C言語 [4] 期限:7月30日 [5] その他の制限 初歩的な問題ですがよろしくお願いします。
// f(x,y)=10x^2+6(x+y)+3の値を返す関数 double f(double x, double y); double f(double x, double y){ return 10*x*x + 6*(x+y) + 3; }
238 :
デフォルトの名無しさん :2012/07/30(月) 10:16:35.92
[1] 授業単元:C言語プログラム
[2] 問題文:
http://codepad.org/yL0GUnrC [3] 環境
[3.1] OS:Linux
[3.2] gcc
[3.3] 言語: C言語
[4] 期限:7月30日
[5] その他の制限
よろしくお願いします。
240 :
デフォルトの名無しさん :2012/07/30(月) 10:34:36.22
[1] 授業単元:C言語プログラム
[2] 問題文:
http://codepad.org/QRdLexKH [3] 環境
[3.1] OS:Linux
[3.2] gcc
[3.3] 言語: C言語
[4] 期限:7月30日
[5] その他の制限
上記2問よろしくお願いします。
穴埋め問題です。
[1] 授業単元:C言語基礎
[2] 問題文(含コード&リンク):
http://codepad.org/KNOpEks4 次のプログラムが何を行っているか、プログラムの手順を追って解説せよ。
[3] 環境
[3.1] OS: Windows
[3.3] 言語: C
[4] 期限: 7月30日
[5] その他の制限:何を定義し、main()で何をしているか。
どの関数がどのような動きをしているかなど手順通りに教えてくださると助かります。
[1] 授業単元:アルゴリズムとデータ構造
[2] 問題文(含コード&リンク):
・問 マルチキークイックソートを非再帰で実装せよ。
マルチキークイックソートは文字列を辞書順にソートする手法である。
例えば、文字列appleを5回巡回し、5つの文字列を生成する。
この5つの文字列を辞書順にソートすると、以下のようになる。
巡回 ソート後
apple apple
pplea eappl
pleap → leapp
leapp pleap
eappl pplea
実際には文字列appleを2倍にし巡回文字列を得る。
例 : appleapple
この文字列に対して非再帰のマルチキークイックソートを適用せよ。
[3] 環境
[3.1] Linux
[3.2] gcc
[3.3] C/C++
[4] 期限: 8月1日
[5] その他の制限:
ttp://www.geocities.jp/m_hiroi/light/pyalgo08.html こちらのサイト等を参考にしているのですが、
いまいち何をスタックに積めばよいか分かりません。
よろしくお願いします。
再帰にしなくて済むのをわざわざ再帰にしたり 再帰にした方が簡単なのをわざわざ再帰にしなかったり
低脳だからまるちきーくいっくそーとの時点で頭が沸騰しそう
247 :
デフォルトの名無しさん :2012/07/30(月) 16:37:44.40
どなたか240お願いします。
#include <iostream> using namespace std; int main(){ int n[4]; int* p = n; cout << "p: " << (size_t)p << endl << "&n[0] : " << (size_t)&n[0] << endl; p += 2; cout << "p: " << (size_t)p << endl <<"&n[2]: " << (size_t)&n[2] << endl; } どこが間違ってるか速やかに回答お願いします。
>>243 C/C++ってCかC++かどっちなんだよ
257 :
231 :2012/07/30(月) 20:22:40.56
誰か
>>231 をお願いします。
明日のお昼までに提出しないといけないので、お願いします。
リダイレクト使えばいいんじゃね?
263 :
デフォルトの名無しさん :2012/07/30(月) 22:07:23.07
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク): minitalkプログラム
minitalkとは、インターネット上の通信で最小限必要な関数を使って作成した、最小構成の会話プログラムです。
待ち受け側(サーバ)と呼び出し側(クライアント)の2つのプログラムがあります。
課題:minitalkプログラムを改良し、複数のクライアントをサポートするチャットサーバを作成せよ。クライアント数の上限はあらかじめ定めないこと、また、クライアントの接続および切断は適宜発生するものとする。
[3]
[3.1] OS: Windows
[3.2] gcc
[3.3] 言語:C
[4] 期限: 7月31日17;00まで
minitalkプログラムは
クライアントプログラム
ttp://ideone.com/mIJPl サーバープログラム
ttp://ideone.com/mW7wE 改良後のサーバープログラム
ttp://ideone.com/yVRy0 コンパイルするとセグメンテンション違反をしてしまいます。
どこが間違っているのか分かりません。
よろしくお願いします。
>>263 自力でやる気があるので gdb 使ってみれば?
>>244 ありがとうございます。
お恥ずかしい話ですが、プログラムの意図は分かるのですが、
中身がどのように動いているのかさっぱりなんです。
よろしければ中身の動きについて教えていただけないでしょうか?
[1] 授業単元:アルゴリズム演習
[2] 問題文(含コード&リンク):スタート地点の駅からゴールの駅までの距離を最短経路を、 ダイクストラのアルゴリズムにより
求めるプログラムを作成せよ。隣接する2駅間の距離(辺の重み)として、緯度と経度から計算される2点間のユークリッド距離を用いること。
出力の最後にスタートの駅からゴールの駅までのコストの総和を表示すること。
次の関数を用いること
発見した経路を表示する関数:display_path()
各辺の重みを計算する関数:compute_edge_weight()
(教科書で言うところの、最短距離が確定した集合である)集合Sに要素を追加する関数:add()
まだSに追加されていない要素の中から、暫定距離が最小の要素を選ぶ関数:select_min()
[3] 環境
[3.1] OS: Linux
[3.2] gcc 3.4
[3.3] 言語:C
[4] 期限:7月31日12時まで
http://www.dotup.org/uploda/www.dotup.org3257076.jpg 今回は簡易的に0駅から5駅までの最短距離を求めるプログラムを考えます。
http://codepad.org/3K6fWDQT ↑
ここまではできたんですが、最短距離の駅をスタートから順に表示するために関数display_pathを実行しようとするとセグメントエラーがでます(なのでコメントアウトしています)
最短距離自体は求まってるようですが本当に正しいのか自身はありません。すいませんよろしくおねがいします。
>>261 >>262 ありがとうございます!
前に課題をやっていただいた方も同じ方だったんですね。
>>261 さんと
>>262 さんは同じ方ですか?
動作チェックをしていただけるなら全然待ちますのでお願いしたいのですか…
268 :
デフォルトの名無しさん :2012/07/30(月) 23:03:22.47
>>264 263です。
お恥ずかしい話なのですが、デバッグが苦手な物でして・・・
そんなわけでこのスレのお方に片づけて貰おうと思った次第です。
どうかお願いできないでしょうか?
269 :
267 :2012/07/30(月) 23:06:40.88
×お願いしたいのですか… ○お願いしたいのですが…
dijkstraをpriority queue無しにやるとかなんという意味なっしんぐ. display_pathより前で落ちてるっぽいよ.
ていうかよく見たら全然DijkstraじゃなくてBFSだよなこれ・・・ デバッグじゃなくて書き換える事になる気がするのだが.
>>273 完全に書き換えてしまっても大丈夫です。よろしくお願いします
>>275 助かりました!!本当にありがとうございます!!
277 :
デフォルトの名無しさん :2012/07/31(火) 00:53:46.00
[1] 授業単元: パーティクル、ビルボード、加算合成を使用したプログラム [2] 問題文(含コード&リンク): DIRECTXを使って パーティクル、ビルボード、加算合成を使用した演出プログラムの作成。 例)炎や爆発など [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2008 [3.3] 言語: C/C++/どちらでも可 [4] 期限: ([2012年8月10日20:00まで] [5] その他の制限: お手数ですが、コメントのほうよろしくお願いします。
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): 起動するとローマ字で姓と名を入力、姓と名の合計ポイントが基本のポイント、姓と名の合計が7の倍数なら最終ポイントは1.5倍、姓と名にl,u,c,k,yが含まれていたら追加で、lとcは1ポイント 、他は1ポイント、tとbが文字に含まれていた場合3ポイント追加するプログラムの作成 [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2008 [3.3] 言語: C [4] 期限: (2012年7月31日12:00まで) [5] その他の制限: (大学1年が習うレベルでお願いします、構造体まで習っています)
出でよエスパー
つまり大学一年生の脳みそがないとネットでカミングアウトするのですね
>>280 ポイントの算出の仕方がよくわからなくない?
> 姓と名にl,u,c,k,yが含まれていたら追加で、lとcは1ポイント、他は1ポイント、
なにこれ?
ポイントが7の倍数であることを確認するタイミングと、ポイントが7の倍数であるときにポイントを
1.5倍するタイミングもわからん。
>>267 ・検証方法は、適当な位置にデバッグプリント文を書く。
・デバッグプリントを保存する
・デバッグプリントから統計をとり、設題どおりに(あるいは設題に近く)動いているか確認する
だけだから、自力でやってみて。大丈夫、速い人なら1時間かからない。
オイラは遅いし、これから用事なので。じゃ、出かけてくるね。
>>263 srv_addr は bcopy とか memset とかするものだと?
>>278 こりゃねーわwwww
問題文かいたヤツはアホだww
わっかんねーーーーーーーーーモンww
絶対にアホバカクズの筆頭だから、
「書きなおせ」と抗議しろよw
名前のアルファベットを点数に変換、ボーナスをつけて合計得点を出す……
くらいはボンヤリとは分かるけど、
ポイント加算の手順がわっかんねーーーーーよw アホw
のっけの基本ポイント算出方法がわからねーんだよks
説明しろアホ
> 起動するとローマ字で姓と名を入力、
> 姓と名の合計ポイントが基本のポイント、
> tとbが文字に含まれていた場合3ポイント追加する
> 姓と名にl,u,c,k,yが含まれていたら追加で、lとcは1ポイント、他は1ポイント、
> 姓と名の合計が7の倍数なら最終ポイントは1.5倍、
>>284 指定されていないことはオレオレ仕様でいいんじゃね?
char sei[100], mei[100]; printf("姓:"); scanf("%s", sei); printf("名:"); scanf("%s", mei); printf("基本点: %d\n", (int) sei[100] + (int) mei[100]); オレオレ仕様で基本点までは作った。
質問は、質問スレで。
>>260 ありがとうございます。
C/C++と書いておいて申し訳ないのですが
Compの部分がいまいち理解出来ないので、
もし良ければCのコードもうpして頂けませんか?
>>291 テンプレートが理解できないとかならまだしも
Comp部分が理解できないならCで書いても理解できないだろ
>>265 ・sortTableにaddressBookをコピー。
・sortTableをnameが小さい順にソート。(sortByName)
・指定した配列の範囲から最小の要素のインデックスを探す。(findMin)
・nameを比較する。(compare)
・配列の要素を交換する。(swap)
・sortTableを出力する。(printSheet)
ソートアルゴリズムは選択ソート。
選択ソート - Wikipedia
http://ja.wikipedia.org/wiki/%E9%81%B8%E6%8A%9E%E3%82%BD%E3%83%BC%E3%83%88 > データ列中で一番小さい値を探し、1番目の要素と交換する。次に、2番目以降のデータ
> 列から一番小さい値を探し、2番目の要素と交換する。これを、データ列の最後まで繰
> り返す(厳密には、データ列の最後より1つ手前までの繰り返しでよい。一つ前まで交
> 換済みであれば、最後(残り)は必ず最大値になるからである)。
>>291 理解する必要ねーだろそういうスレじゃねえ
>>294 本当にありがとうございました!
明日解説しないといけないので助かりました・・・
>>282 わかりました。なんとか自分でやってみることにします。
本当に助かりました。ありがとうございました。
298 :
デフォルトの名無しさん :2012/07/31(火) 21:39:31.77
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): 配列、文字列、関数、構造体をすべて用いたプログラムを考え 設計しなさい。データ構造を構造体で定義し、関数原型宣言を書き、 どんなプログラムかをコメント文で書いたファイルをアップロードしなさい。 プログラム例: * リバーシ(オセロ) プログラム設計をしてから、プログラムを作成し、適切な実行例を示しなさい。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限: 8月3日 [5] その他の制限: 少しも形が思い浮かばず困っています。 参考にさせていただきたいです。 学習不足でまだあまりプログラム言語を理解できていないので すみませんが、なるべくシンプルなものをお願いします。
>>298 プログラム全体で
アカフォリシヴを行うヤツでもいいのな?
リバーシ書ける奴なら とりあえず勉強しなくても いいと思う
302 :
デフォルトの名無しさん :2012/07/31(火) 22:18:44.29
[1] 授業単元: C言語実習 [2] 問題文(含コード&リンク): 「分母と分子にある同じ数字を消す」という間違った約分を行うと、正しく約分した値と同じになる分数が存在する。 (例えば「187/748」は、普通に約分すると1/4に、分母と分子で重複している7と8を消すと1/4となる) このような分数は無限に存在するので、下のような条件を付ける。 (1)うbん簿と分子で同じ数字があればそのペアは必ず消す (2)消されるペアは、分母と分子に1文字ずつしか入っていない。つまり消すペアは一意に決まり、また、同じ数字で複数のペアが存在することもない (3)最終的に分母分子がそれぞれ1桁でできた、1未満の既約分数となる (4)数字の0(ゼロ)は使わない (5)負の分数は考えない この条件で、上記の間違った約分を行った結果が、正しく約分した値と同じになる分数は何通りあるか。 [3] 環境 [3.1] OS:Win7 [3.2] gcc [3.3] C [4] 期限:2012年8月2日中 [5] その他の制限:特になし よろしくお願いします。
うbん簿
306 :
デフォルトの名無しさん :2012/07/31(火) 22:32:57.55
Cマガかー。復刊せんかね。
308 :
デフォルトの名無しさん :2012/07/31(火) 23:53:24.07
[1] 授業単元:C言語プログラム演習U
[2] 問題文:
http://codepad.org/gSiVgqsJ 上記の関数ransuuは、整数型の引数uを受け取ると1からuまでの乱数(1からuまでの中からでたらめに選んだ数)を返す。
この関数を用いて、1から10までの乱数をN回発生させ、1から10までのそれぞれの数が発生した回数を数値で表示するプログラムを作成せよ。
但し、#define文でNを100回と設定せよ。
<出力例>
1 :9回
2 :11回
3 :10回
10 :5回
[3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限8月1日13:00
[5] その他の制限
明日までなのですみませんが、よろしくお願いします。
本当に困ってます。<(_ _)>
309 :
デフォルトの名無しさん :2012/07/31(火) 23:58:29.38
[1] 授業単元:C言語プログラム演習U
[2] 問題文:
>>308 の関数を用いて、1からuまでの乱数をN回発生させ、1から10までのそれぞれの数が発生した回数を数値および*の数で表し、さらに乱数の平均値も表示するプログラムを作成せよ。
<出力例>
1 :9回 : *********
2 :11回 : ***********
3 :10回 : **********
10 :5回 : *****
平均:5.54
[3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限8月1日13:00
[5] その他の制限
明日までなのですみませんが、よろしくお願いします。
本当に困ってます。<(_ _)>
>>308 #define N 100
int main(void)
{
int array[10]={0};
int i;
for(i=0; i<N; i++)
{
array[ransuu(10)-1]++;
}
for(i=0; i<10; i++)
{
printf("%2d : %2d times\n", i+1, array[i]);
}
return 0;
}
インド人の口癖 ・これは急いでいます ・あなたはこれができます
>>309 int main(void)
{
int array[10]={0};
int i,j;
double sum=0;
for(i=0; i<N; i++)
{
array[ransuu(10)-1]++;
}
for(i=0; i<10; i++)
{
printf("%2d : %2d times :", i+1, array[i]);
for(j=0; j<array[i]; j++)
{
printf("*");
}
puts("");
sum += (i+1)*array[i];
}
printf("average: %.02f\n", sum/100);
return 0;
}
313 :
308 :2012/08/01(水) 00:33:02.91
314 :
デフォルトの名無しさん :2012/08/01(水) 00:46:29.37
[1] 授業単元:C言語プログラム [2] 問題文: メッセージ番号 発生時刻[ミリ秒] 到着時刻[ミリ秒] 0 0 25 1 10 30 2 20 38 3 30 50 4 40 52 5 50 55 6 60 57 7 70 60 8 80 65 9 90 70 到着時間を乱数で決定し、上記のようにメッセージ番号、発生時刻、到着時刻をファイルdata.txtに保存するプログラムを作成せよ。 但し、数値データのみをファイルに保存すればよい。 メッセージ数は、番号0から番号99までの100個とし、発生時刻はメッセージの順で10ミリ秒単位で増えていく。 到着間隔は1から10の乱数を用いて決定せよ。 ここでは「到着時間=メッセージ発生時間+20+R(Rは1から10までの乱数の値)」とする。 [3] 環境 [3.1] OS:Linux [3.3] 言語: C言語 [4] 期限:8月1日15:00 [5] その他の制限 期限が今日の午後15時までです。 本当に困ってますので、誰か助けてください。お願いします。
315 :
デフォルトの名無しさん :2012/08/01(水) 00:49:16.80
[1] 授業単元:C言語プログラム
[2] 問題文:
>>314 で作成したdata.txtを読み込んで、平均メッセージ転送時間を計算し、ファイルdata1.txtに保存するプログラムを作成せよ。
[3] 環境
[3.1] OS:Linux
[3.3] 言語: C言語
[4] 期限:8月1日15:00
[5] その他の制限
期限が今日の午後15時までです。
本当に困ってますので、誰か助けてください。お願いします。
1日に二つも宿題あるの
両者ともにperlで一行くらいでかけそうなんだけどな、 余りにも課題がつまらなそうで だーれも喰いつかなかったろソレ
320 :
314 :2012/08/01(水) 08:21:34.89
321 :
314 :2012/08/01(水) 08:26:07.32
>>318 乱数のところは
rand() / (RAND_MAX + 1.0)
にしないと1から11までの乱数になっちゃうよ
>>131 ありがとうございます。
このプログラムを、構造体を使用せずに組んでいただけないでしょうか。
325 :
デフォルトの名無しさん :2012/08/02(木) 03:25:41.93
[1] 授業単元:数値解析 [2] 問題文(含コード&リンク): 行列AをLU分解することで、逆行列を求めるプログラムを作成してください。 ただし、実行例は以下の行列の場合について示してください。 行列3*3 (2,3,-1 4,4,-3 2,-3,1) 行列4*4 (1,1,0,3 2,1,-1,1 3,-1,-1,2 -1,2,3,-2) [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限:2012年8月3日まで [5] その他の制限:
326 :
デフォルトの名無しさん :2012/08/02(木) 03:28:15.78
[1] 授業単元:数値解析 [2] 問題文(含コード&リンク): 行列AをLU分解にし、行列式を計算するプログラムを作成してください。 ただし、実行例は以下の行列の場合について示してください。 行列3*3 (2,3,-1 4,4,-3 2,-3,1) 行列4*4 (1,1,0,3 2,1,-1,1 3,-1,-1,2 -1,2,3,-2) [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語: C [4] 期限:2012年8月3日まで [5] その他の制限: お手数ですがよろしくお願いします。
朝鮮人の扱い方 ∧ ゝ∧ ( ´∀`) 【 旧日本陸軍の朝鮮兵に対する注意書き】 .ノ|ソ|"\ \ノ」==ヽ!ノ /_l _| 一、いつ、いかなる時でも唐辛子粉を食事に際し好きなだけ使わすこと。 一、絶対に頭、体を叩いてはいけない。怨みを持って復讐する気質があり、脱走の原因となる。 一、清潔な食事運搬用バケツと雑巾バケツの区別をよく教えること。 一、危険な状況下では銃を投げ捨てて哀号!と泣き出す習癖があるから、日本兵二名で一名の朝鮮兵を入れて行動せよ。 __ │ | _☆☆☆_ ( ´_⊃`) 【米軍による韓国兵の扱いマニュアル 】 ( ∞ ) | | | (__)_) 1.韓国人には強気で押せ。抵抗する場合は大声で命令しろ。 2.命令を聞かない場合は身体で解らせろ。 3.同じことをくり返す場合、犬のように何回でも同じ様に叱れ。こちらが上と言うことを身体で解らせろ。 4.理由は聞くな。どうせ大したことは言っていない。 5.身体で解らせた場合、根に持つ場合があるので、後で身辺には気をつけて行動しろ。但し、徹底的に解らせる迄、手を抜いてはいけない。 6.相手を3才児と思い、信用したり頼りにはするな。重要な仕事は任せるな。 ,,,,,,,,,,,,,,,, ミ,,,,,;露;;;,ミ ∩;`_っ´∩ ヽ / 【 旧ソ連共産党による朝鮮の扱い方 】 | | し⌒J 1、頭痛の種になるだけだから関わるな 2、手段を選ばぬキチガイ揃いだから関わるな 3、関わるとこっちが痛い目に遭うから関わるな 4、関わってきたらウォッカ飲んで忘れようぜ
上と下で何か違いがあんの? 数字が一つ二つだけ間違い探し程度に換えてアンノ? それとも大事だから二回いったの? ぶっちゃけGOBAKU? どれよ
332 :
デフォルトの名無しさん :2012/08/02(木) 15:15:05.03
>>83 の課題を、どなたかお願いします。
期限まではまだ少し日にちがありますが、少し早めにやっていただけるとありがたいです。
ハハハ こやつめ
よし、今夜はがんばるか
[2] 問題文(含コード&リンク): char 配列のバイナリから、int 型へ変換しなさい。 ------------------------------ >8 ------------------------------ char str[2] = { 0x00, 0x06 }; // => int result = 6 char str[2] = { 0x04, 0xD2 }; // => int result = 1234 ------------------------------ >8 ------------------------------ [3] 環境 [3.1] OS: Linux / Windows [3.2] コンパイラ名とバージョン: gcc (4.x) / Microsoft Visual Studio [3.3] 言語: C (or C++) [4] 期限:無期限 [5] その他の制限: Linux / Windows ... 処理系依存なしでお願いします。 -- ビット演算を駆使して実装することはできましたが よりスマートな解法があるんじゃないかと思い質問しました。 たとえば str[2] = { 0x06, 0x00 }; であれば int result = *(unsigned short *)str; で、求めることができます。(リトルエンディアン環境のみ) このような感じで、スマートでかつ処理系に依存しない方法はありますか? よろしくお願いします。
「char 配列のバイナリ」がどういうものでどのような法則のもとint値にしたいのかあいまい 宿題じゃないなら他のスレでやれ
ntohs ネットワークバイトオーダー変換 (
>>336 )
#if を駆使してエンディアンを調べ union で個々に代入?
>>338 ごめんなさい。宿題レベルの質問かと思い。。。
>>339 arpa/inet.h にこんな機能があるんですね。
他の関数もみたら、いろいろとバイトオーダーの処理がありますね。
ありがとうございます!
CHAR_BITが8でない環境でそれ同じ結果になるのかな
ま そこがわかったっら こんなトコでは聞いてねーわな ならねーよ
4bitだけど現役です
348 :
デフォルトの名無しさん :2012/08/03(金) 00:00:07.44
>>330 すごく助かりました!
ありがとうございました。
>>330 うーむこういうのを見るとC++のクラスの有り難みが良く分かるな
同じような事を何回も繰り返し書く無駄が省けてしまう
しかもデストラクタにまとめて書いたりvectorを使えばメモリリークの心配もない
350 :
デフォルトの名無しさん :2012/08/03(金) 04:06:55.83
[1] 授業単元:プログラミング [2] 問題文: ビット単位の論理演算を用いて、scanfで読み込んだ1文字の英字の大文字を小文字に 変換する関数と、小文字を大文字変換する関数をそれぞれ作りなさい。 また、char型の変数のビットの並びを表示する関数作成しなさい。 ただし、ビット単位の論理演算とシフト演算子を用いることとし、 四則演算(加減乗除)は使わない。 例えば、文字'A'は0x41であるので、0100 0001となる。 [3]環境 [3.1]OS:Linux [3.2]コンパイラ:gcc [3.3]言語: C [4] 期限:8月5日 [5] その他の制限: 大文字→小文字にする関数では、引数の文字が大文字のときに、小文字に変換し、その他の場合は、無変換で返す関数を期待しています。 この関数の外で文字判定はしません。 大文字と小文字の判定に、isupperやislowerも使いません。この判定にもビット 単位の論理演算を使います。 isupperやislowerの代りに、各文字の上位3ビットの並びが010ならば大文字、 011ならば小文字と判断します。上位3ビットを見るためには、シフト演算子を用ます。 #define MASK 0x20 #include <ctype.h> #include <limits.h> などは使用しません。 制限が多いですが、どなたかよろしくお願いします。
('A') ンポーイ
isupper、islower使うな 上位3ビットの並びが010ならば大文字、011ならば小文字と判断しろ という問題だからこれでいいのだ
>>351 char型をビットシフトするなとあれほど…
0xE0でマスクしようと思ったけどシフト演算子使えという仕様だもの
unsignedでないことを問題にしてるなら、この場合は関係ない
>>355 どこかにそう断らないとまずいだろう。いつどこで模範解答として使われるかもわからない。
>>360 それは、宿題スレ如きから模範回答を作ろうとする輩の責任だな。
【質問テンプレ】 [1] 授業単元: c言語入門 [2] 問題文(含コード&リンク): スライダーとプログレスバーを連動させスライダーを動かすとその分プログレスバー が動くプログラムを作成せよ [3] 環境 [3.1] OS:Windows7 [3.2] vc2010 [3.3] 言語: C [4]期限なし お願いします
cuiでスライダーとプログレスバーを作るということ?
いやGUIだろ
> [3.3] 言語: C ?
>>362 DelphiかC++Builder使ってもいいのならすぐに出来るよ
できた。完璧だわ。 #include <stdio.h> int slider_pos = 0; void draw_slide(void) { int i,c; printf("<-"); for(i=0; i<slider_pos; i++) { printf(" "); } printf("+"); for(i=slider_pos; i<20; i++) { printf(" "); } printf("->\n"); c = getch(); if(c == 0x4B) { if(slider_pos > 0) { slider_pos--; } } else if(c == 0x4D) { if(slider_pos < 20) { slider_pos++; } } } void draw_progress(void) { int i; for(i=0; i<slider_pos; i++) { printf("■"); } for(i=slider_pos; i<20; i++) { printf("□"); } printf("\n"); }
続き int main(void) { while(1) { system("cls"); draw_progress(); draw_slide(); } return 0; }
[3.3] 言語: WinMain で始める。
http://qoly.jp/index.php/news/11207-olympic-20120731-swiss ミシェル・モルガネッラは、自身のツイッターに「韓国人みんなボコボコにしたいぜ。業火に焼かれちまえ。この先天異常者どもが」と投稿。
経過
サッカーの試合で韓国選手がスイス選手の足を少し踏む
↓
やや大袈裟に倒れ、韓国選手にイエロー
↓
モルガネラのフェイスブックに「ダイブ」だと批判の書き込みが殺到し炎上
↓
モルガネラ激怒、ツイッターで「韓国人はクレージー」発言
↓
韓国人が「人種差別」と通報
↓
モルガネラ、ツイッターで謝罪しアカウント削除
↓
事態を重く見たスイスオリンピック委員会がモルガネラをチームから追放
↓
ニダーさん達、にっこり
373 :
109 :2012/08/04(土) 20:28:10.56
>>109 です。
以前、こちらに書き込みをして、
>>197 さんが回答してくださり、
一週間ほど考えてみましたが、
内容が自分では理解できませんでした。
どなたか197さんのプログラムについて、
各行の処理の意図を解説していただけないでしょうか。
韓国ハンファグループ日本法人のハンファ・ジャパンは2日、
総合商社の丸紅が建設を計画している日本全域の太陽光発電所に、
向こう4年間で約50万キロワット分の太陽光モジュールを供給することで
丸紅側と合意したと明らかにした。近く本契約を締結する。
供給されるモジュールは全てハンファソーラーワンの製品で、
売上額は6000億ウォン(約416億円)に達すると見込まれる。
日本への太陽光モジュールの供給が本格化したのは、
東日本大震災が発生した昨年3月以降だ。
ハンファグループは震災後、鳩山由紀夫元首相の支援要請に応じて
太陽光発電システムなど10億ウォン相当の支援を実施。
これを機に金升淵(キム・スンヨン)グループ会長が日本を訪れ、
野田佳彦首相や丸紅の朝田照男社長と面会し、太陽光発電事業での提携を協議した。
http://japanese.yonhapnews.co.kr/headline/2012/08/02/0200000000AJP20120802003300882.HTML >ハンファグループは震災後、鳩山由紀夫元首相の支援要請に応じて
>太陽光発電システムなど10億ウォン相当の支援を実施。
>これを機に金升淵(キム・スンヨン)グループ会長が日本を訪れ、
>野田佳彦首相や丸紅の朝田照男社長と面会し、太陽光発電事業での提携を協議した。
>>375 だからこういうスレ貼るな
再利用可能エネルギーの高価買取りの時点で売国なのは分かってたし
韓国製や中国製のソーラーパネルは10年でダメになる
日本製のは10年以上使える
>どうもうまくいきません ならそのコードを書け
>>377 問題文を全文教えてください。できれば日本語か英語で。
リンクで示されたデータは何をあらわすのでしょうか?
どういう問題を解きたいのでしょうか?
初期解、近傍解生成法、評価関数は問題により適切に設定しなければいけませんが、
なんの問題がわからなければどうしようもありません。
あのゲームのCM見てて、釣りって言葉が嫌いになった。
【質問テンプレ】 [1] 授業単元: [2] 問題文:objファイルを任意の点から任意の座標軸に平行に切断して、その断面のデータを出力するプログラムを作成せよ [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン: visual studio 2010 express [3.3] 言語:C++ [4] 期限: 2012年9月末 [5] その他の制限:objファイルの読み込み・表示には「objファイル 表示」でググった一番上のページにあるobjファイル表示プログラムを使用 とっかかりすらつかめない… どうかお願いします
fuckだな メタセコイアでやれと言わんばかりの課題だ それとも それのpluginでも作るのか?
384 :
デフォルトの名無しさん :2012/08/05(日) 21:26:36.76
[1] 授業単元:プログラミング
[2] 問題文:
>>52 の問題を
http://ideone.com/PQY6f のように提出したのですがが以下のように添削が入りました。
必要に応じて、const型修飾子を使いましょう。
まだ、使える部分があります。
外積の関数以外はn次元ベクトルに対して計算できるので、
汎用性を考えて作ってください。
つまり、関数の引数にベクトルの次元を取ります。
お手数ですが、どなたか修正お願いします。
[3]環境
[3.1]OS:Linux
[3.2]コンパイラ:gcc
[3.3]言語: C
[4] 期限:8月8日
[5] その他の制限:
[1] 授業単元:C
[2] 問題文(含コード&リンク):
http://pastebin.com/Unq37FBw 以下のプログラムにコメントを付け加えよ。
[3] 環境
[3.1] OS:Windows
[4] 期限: 2012年8月6日
[5] その他の制限:ソート関数プログラムです。
初心者が見ても関数の動きや構造が分かるようにコメントをお願いいたします。
>>387 とても分かりやすいコメントありがとうございました
よくやる気になるなあんた職業プログラマに向いてるよ
[1] 授業単元:C
[2] 問題文(含コード&リンク):
http://pastebin.com/HFp4SWZW 以下のプログラムにコメントを付け加えよ。
[3] 環境
[3.1] OS:Windows
[4] 期限: 2012年8月7日
[5] その他の制限:16進変換関数プログラムです。
初心者が見ても関数の動きや構造が分かるようにコメントを付けてくださると助かります。
長いプログラムでお手数おかけしますがよろしくお願いいたします。
391 :
デフォルトの名無しさん :2012/08/06(月) 02:40:35.06
[1] 授業単元: パーティクル、ビルボード、加算合成を使用したプログラム [2] 問題文(含コード&リンク): DIRECTXを使って パーティクル、ビルボード、加算合成を使用した演出プログラムの作成。 例)炎や爆発など [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2008 [3.3] 言語: C/C++/どちらでも可 [4] 期限: ([2012年8月10日20:00まで] [5] その他の制限: お手数ですが、コメントのほうよろしくお願いします。
fuckだな gimpでやれと言わんばかりの課題だ それとも それのfilterでも作るのか?
デジャビュー
>>378 語弊でした。ほぼわかってない状態です・・・
>>379 返信おそくなり、申し訳ないです
このファイルのデータは正方20行で表される2つの行列A,Bです。
近傍解を2-opt(行列の数字を入れ替え)に生成、タブーリストと呼ばれるリストから局所解にとどまるのを防ぐのですが、いまいち理解してない点が多いです。
http://ideone.com/FULhj これが実際のソースコードみたいなのですが、とても精錬にかかれているため初心者には理解が難しいです。
もし、良ければこちらのソースコードを解説して頂けないでしょうか?
396 :
384 :2012/08/06(月) 15:46:29.99
ガタガタぬかさんとさっさと答えろカス
このスレも夏厨だらけ・・・
struct node { int value; struct node * next; }; int main(void) { int i=0; struct node top; struct node *newNode,*tmp; /* top.next=NULL; うまくバグになる良いのだが */ top.value=0; for (i=0;i<10;i++) { newNode=(struct node *) malloc(sizeof(struct node)); newNode->next=top.next; newNode->value=i*3; top.next=newNode; } tmp=⊤ while(tmp!=NULL) { printf("%d\n",tmp->value); tmp=tmp->next; } return 0; } セグメンテーションフォルトを直したいんだけれど教えていただけないだろうか
ごめんなさい、レンプレ読んでませんでした
>>401 に加えて
[1] 授業単元:プログラミング
[2] 問題文 「セグメンテーションフォルト」を見つける
[3] 環境
[3.1] OS: (Windows/Linux/等々)
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
[3.3] 言語: C
[4] 期限: 2011年8月10日16:00まで。
>>403 ありがとうございます
whileループで思いっきりNULL判定使ってましたね・・・
先生も気付きやすいようコメントで書いてくれてるというのに..
いやはや助かりました
つーかコメントも問題文の一部かよ 答え書いてあるようなものじゃないか
プログラミング以前に なにか読み書きの中枢に異常があるんだろ それか注意力欠陥とか 文章を読みこむ能力が足りないとか、 根本的に脳の配線がおかしいとか、 キーボード打つまえにもっと能力向上の余地がある 逆に、無いと困る これでMAXとかいったら 学校じゃあなくてもっと別の保健所的な場所に赴いた方がいい
どんな社会に居るんだよ・・・
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
http://codepad.org/oJZv75HG プログラムを実行した時に10個のサイトが表示されるが、その中でも右上の黒枠が濃いラベルを持つサイトが一つある。
このラベル部分に他のラベルが重っているかどうかを判定するプログラムの作成。
[3] 環境
[3.1] OS:Vista
[3.2] VC
[3.3] 言語:C++
[4] 期限: 2012/08/07
[5] その他の制限:
よろしくお願いします。
ずいぶんと力作じゃあねぇか
とくに
glBegin(GL_LINE_LOOP);
glVertex2f(LPx[i], LPy[i]);
glVertex2f(LPx[i]+Lx[site[i]], LPy[i]);
glVertex2f(LPx[i]+Lx[site[i]], LPy[i]+Ly);
glVertex2f(LPx[i], LPy[i]+Ly);
glEnd();
のトコロなんて
あまりにも嬉しくて涙が出そうになった
ttp://www.pro.or.jp/~fuji/mybooks/cdiag/ ここに投稿するといい
ソースの殿堂に並ぶ、という栄誉を得られる
今の時期は宿題少ないなぁ。 8月最終週になったらドバッと来るんだろうけど。
どうせやらないかんのならはやめにこのスレに晒してくれ。
無職のオッサンは暇だなあ
415 :
デフォルトの名無しさん :2012/08/11(土) 13:34:58.15
[1] 授業単元:プログラミング演習 [2] 問題文:1行ごとに1単語(英単語)が書かれたファイルがある。 このとき、このファイルの内容をソートして出力するプログラムを作成せよ。 ファイルの行数は不定(事前にわからない)とし、また上限を定めないこと。 ソートは昇順あるいは降順いずれにも対応できること。 [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4] 期限:8月31日まで [5] その他の制限: ・ファイルの読み込みは1回のみとする。 ・Cライブラリ関数のqsortは利用してはならない。 ・単語を格納するデータ構造として配列は使用してはならない。 どうかよろしくお願いします。
windowsなら まずは sort data.txt > data_sorted.txt とでも試してみろ
>>415 ファイルの行数が不定という事は、メモリに全部テキストを読み込めない
可能性も考慮しなければいけないって事?
もしその場合はランファイルを用いたマージソートが必要になるけど
メモリに収まると分かっているのなら簡単
ランファイルって何?
外部ソート ラン でぐぐってみ 要するにマージソートの途中過程をファイルにして持っておくしか手がないわけだ その細かく分割されたそれ自体はソート済になっているファイルをランと呼ぶ それをマージする時にソートを崩さないようにマージして行き、済んだらマージ前の ランは消去 こういうアルゴリズム
それだと今度はディスクに十分な空きがあることが条件になるだけだし > ファイルの読み込みは1回のみ という制限に引っかかるんじゃね?という気がする。 だから単純に全部オンメモリでもいいと思うけど 期限はまだ先だし題意を確認してからのほうがいいだろ
>>421 まあそうなんだけどわざと意地悪してみた
>ファイルの行数は不定(事前にわからない)とし、また上限を定めないこと。
この場合はリストでも使うかポインタ配列にしてポインタ配列をrealloc()するかだな
ただしC++のstd::vectorと同じくrealloc()する度にポインタ配列のサイズを倍々にしていかないと
O(1)でメモリが確保できなくなる
>・ファイルの読み込みは1回のみとする。
だから先読みして行数をカウントするのは駄目だし
>・Cライブラリ関数のqsortは利用してはならない。
自前のクイックソートでいいんでしょ
リストにするとソートが大変なんで結局 char *が入ったポインタ配列になるだろうな
>>426 >ソートは昇順あるいは降順いずれにも対応できること。
が抜けていた。あと、同一単語が連続するとリークしてました。
それから
xmalloc()ってなんですかあ?マクロで無効にされてますけど
走らせてみたら木構造を表すのにデータの1/2ほどのメモリを使ってますよ
>>427 >xmalloc()ってなんですかあ?マクロで無効にされてますけど
#define xmalloc(x, y) malloc(x)
#define xfree(x, y) free(x)
#define xrealloc(x, y, z) realloc(x, y)
#define xmallocdump()
がすべてです。そう読み替えてくださいな。
>走らせてみたら木構造を表すのにデータの1/2ほどのメモリを使ってますよ
単語が短いとね、というか単語は短いものだしね。仮に木構造をマネージする構造体
>>426 の struct node が、sizeof(struct node) == 12 なら、
>木構造を表すのにデータの1/2ほどのメモリ
というのは単語の平均長が24くらいになりますね。ちょっとありえないか。
どこぞのキャッチフレーズ「重複排除」とか不定長構造体をつかってみましょうか。
>>429 いや
>>428 のプログラムを走らせて言ってるんだけど
一行が1001文字ありますよ?
約1.4GBのメモリ食ってます
>>430 検証ありがとうございます。こちらでも
>>428 で確かめました。しかし、
>約1.4GBのメモリ食ってます
はこちらでは確認できませんでした。
17c17
< #define BUFFSIZE 3 /* >= 2 */
---
> #define BUFFSIZE 1024 /* >= 2 */
http://codepad.org/rm5Gl0qf で状況が変わる性質のものでしょうか?
環境: PhenomIIx6(1100T?)/16G/Windows7-64bit/gcc4.3.2(cygwin)32bitアプリとしてコンパイル
0.4なら誤差かも知れない
>>432 見栄張らなくていいのに(。´・д・)
PenV850MHzなんでしょ
それともCPU-Zのスクショマダァ?(・∀・ )っ/凵⌒☆チンチン
簡単に見抜く方法があるぞ SSE3のバイナリ吐かせて走らせてもらえばいい
>>434 愛用していた Let's note ではあったのですが、残念なことに壊れてしまいました。
でも凋落著しいアムド屁ノムごときで見栄を張っているとかいわれても困惑するばかりなのですけれども。
>>435 ソースを codepad に貼り付けていただければ、その実行結果をお返ししますよ。
>愛用していた Let's note ではあったのですが、残念なことに壊れてしまいました。 じゃ今使っている現用機のCPU-Zのスクショ貼れるよな?
>>433 メモリ使用量の算出で、
malloc() での要求量を積算し、free() での解放は考えないタイプ(どうせ端したをfree()してもOSに返るわけでもなし)
malloc() 自体が要求量よりも大目にあらかじめ確保しておくタイプ(PHK malloc() とか)
realloc() = malloc() + memcpy() + free() なタイプ
みたいなものであれば、40% ほど大目にでてきても仕方がないかもしれません。
>>431 で示しているとおり、アイデアリスティックな表現
#define BUFFSIZE 3 /* >= 2 */
のために realloc() が頻発してしまっているのが悪そうです。
そんな処理系があるかどうかはよくわかりません。
shell関数でsort呼べばいいんじゃね?
キッチン・トイレメーカー
やってみた いろいろ手抜き #include <stdlib.h> #include <stdio.h> #include <limits.h> int main(int argc, char *argv[]) { char c[PATH_MAX+1]; switch(argc){ case 2: sprintf(c,"sort %s",argv[1]); break; case 3: sprintf(c,"sort %s %s",argv[1],argv[2]); break; default: exit(1); break; } system(c); }
これもうそのままsort使えば早いんじゃないかな
オンメモリが前提でよければ、stat呼んで、ファイルサイズ取得し、 必要メモリサイズを確保して一気読みしたら?
>>447 stat(2)/fstat(3) が標準Cライブラリなら。となれば fseek()/ftell() か。
一揆読みのあと、一行の単位で区切らなければいけないのが、はてさて。
>>447 パイプ使って標準入力から流れてきたらどうすんの?
>>449 >>415 に
>[2] 問題文:1行ごとに1単語(英単語)が書かれたファイルがある。
とありました。
分かった これは標準のsortが どれだけ洗練されているかを理解させるための実習なんだ
>>447-448 一気読みしたファイルの \n を \0 に置き換えながら char* 配列に文字列先頭アドレスを格納する
char* 配列のサイズは一気読みしたファイルサイズの5〜10分の1くらいを確保して足りなくなったら拡張する
>>449 を考慮しないなら一番早いかも知れないね
こんな課題にムキになんなよなぁ 速いのが欲しいならflash sortでもしろよO(n)だぞ
>>454 そりゃflash sortとか書けねーよ, 金貰えるなら調べて頑張るかもしらねーけど.
Flash Sort調べてみたけどバケットソートと同じで使える条件が著しく限られてるんじゃないの?
ほほう それで?
バケットソートみたいな整数制約とかは無いな 一様分布なめちゃくちゃ大量の実数とかで速いけど、定数項でかいので実用的にはアレなソート
>>458 もちろん、要素間に大小関係がある、というだけの前提のもとでの
ソートの時間計算量はO(n log n)を下回らないだろう
>>457 お金を貰ってコードを書くのではなく、
コードを書いてお金を貰うんだ
463 :
デフォルトの名無しさん :2012/08/16(木) 23:31:24.32
休み中の課題なのですが、わからないので教えて頂きたいです。
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):
http://ideone.com/vb7pZ [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限: (2012年)8月17日 23時59分59秒まで
[1] 授業単元:C言語徹底入門
[2] 問題文(含コード&リンク):
http://codepad.org/lgXR0ur1 次のプログラムは書式指定可能な10進16進変換表示を行う関数プログラムである。
関数の機能についてコメントで解説を入れ、同時にプログラムの流れを説明せよ。
[3] 環境
[3.1] OS: Windows
[3.3] 言語: C言語
[4] 期限: 2012年8月19日
466 :
デフォルトの名無しさん :2012/08/17(金) 17:12:09.17
>>466 どういうプログラムを求めてるんだよ, 問題文とかねえのか
468 :
デフォルトの名無しさん :2012/08/17(金) 23:36:21.23
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/kfh1t [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限: 2012年8月18日18:00まで
関数定義の空欄の部分に
void stradd(char A[], char B[]){
int i,j;
j=0;
printf("入力してください");
scanf("%s",A);
i=0;
while(A[i]!='\0'){
for(i=strlen-1; i>=0; i--){
j++;
}
B[i]='\0';
}
printf("answer = %s\n" ,B);
}
と書いたのですが、間違っていると言われ、どこが間違っているのかわからないので
教えて頂きたいです。 お願いします。
>>466 暗号文字が I/J になった時の説明が抜けているように思う。
必ずIでいいのかな。
平文にXが来たらどうするのか、とか。
473 :
◆5bhYRM1Rdk :2012/08/19(日) 09:45:57.21
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/rlR3n [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
[5] 自分で考えて書いたつもりですがど素人なので読みにくいと思いますが、
お願いします。
Line36 scanf("%d\n",d); アドレス演算子が抜けてますよ
475 :
◆5bhYRM1Rdk :2012/08/19(日) 21:07:24.03
>>474 レスありがとうございます。演算子を付け加えたのですがファイルが開けません。
となるのですが、ファイルの指定の仕方はfp = fopen(a, "r");のようにして読み込む
事はできないのでしょうか?
>>475 入力が適切でないだけだろ
"%s\n"なんだからちゃんと
[入力ファイル名][改行][EOF]
と入力してるか?
478 :
デフォルトの名無しさん :2012/08/19(日) 23:32:56.09
考えてみましたが、理解が出来ないので教えて頂きたいです。
お願いします。
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/hnMGh [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 2012年8月20日 12:00まで
readDataなんて忘れろ 消せ 削除しろ mainに全て納めろ
481 :
デフォルトの名無しさん :2012/08/20(月) 11:31:22.78
466です。返信が遅くなってしまいすみません。 平文にxがきてもそのまま変換します。 I/Jについてはどちらかで統一できるようにしたいです。 プログラムについてはCで作れれば自由という感じです。
背景グレーに黒文字のページを作る奴の頭の中を覗いてみたい
[1] プログラミング言語 [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: Visual Studio2010 ) [3.3] 言語: C++ int main(void){ double d2, s2; int i; s2 = 0.0; d2 = 1.0/10000000.0; for(i = 0; i < 10000000; i++){ s2 = s2 + d2; } printf("%f\n",s2); printf("%17.14f\n",s2); return 0; } 上記のプログラムを実行すると,コマンドプロンプトには 1.000000 0.999999999750170 と出力される. どちらも同じs2を出力しているのにもかかわらず, 表示させる桁数を変えるだけで出力内容が変わる理由, および,2行目の方で計算結果が 1.000000000000000 とならない理由を述べよ.
計算機ちゃんの気まぐれだろjk 自分のPCくらいちゃんと手懐けておけよ
レスしないならウザいでください わからないだけです
>>486 期日書いてないから宿題と思わないし、C++じゃなくてCだと思うけども。
1) 2進数は習いましたか?
2) 浮動小数点数の表現方法は習いましたか?
それとも、あれかな。そのあたりを調べろっていう課題なのかね。
490 :
486 :2012/08/21(火) 09:17:16.48
>>489 すみません 2012-08-24までです
491 :
486 :2012/08/21(火) 09:23:09.22
>>489 1)習いました
2)習いました
どうしてこうなるかを調べる課題です
打ち切り誤差 桁落ち 情報欠落 丸め誤差のいずれかだと思うのですが
>>491 なるほど。丸め誤差ですね。
http://e-words.jp/w/E4B8B8E38281E8AAA4E5B7AE.html 0.5 0.25 0.125 ... を組み合わせて足してできる小数でないと、
丸め誤差が生じます。
誤差をがある数を足しあわせたら、答えも誤差を含みます。
これが、答えの一方になります。
わかりづらいようでしたら、十進数の0.1を二進数に変換してみてください。
これが後段の答えです。
前段の答えは、
printf()が十進数でいうところの四捨五入を行う位置が違うからです。
私は国語が苦手なので、答えはそちらでまとめてくださいね。
493 :
486 :2012/08/21(火) 11:51:58.96
>>492 詳しくありがとうございました!なんとかなりそうです
494 :
デフォルトの名無しさん :2012/08/21(火) 14:55:59.45
[1] 授業単元:データベース概論(レポート内容がcプログラムを作成しなさいというものでしたので)
[2] 問題文(含コード&リンク):
1.
CSVファイルからAccessデータベースを作るプログラム
2.
7桁の郵便番号を与えると,その郵便番号に対応する住所を表示するプログラム.
3.
住所の一部を文字列として与えると,その文字列を含む住所と郵便番号を表示するプログラム.
http://www.mi.s.osakafu-u.ac.jp/~fujimoto/gakka/db/ の6月26日のものを参考にということです。
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: すみませんわからないです
[3.3] 言語: C
[4] 期限: 8月31日まで
データベースの講義ですのでここで質問してよいのかわかりませんがプログラムを作る課題でしたので、
分かる方ぜひおねがいします。
こりゃアレだな ken_all.csv を使えっていうお告げだ
CからDB扱ったことないから、練習してみるか。週末ためしてみよう。
いや ちがうだろコレ CでDBを作れっちゅー課題だ
そもそもCSVの仕様はどうするの? RFC4180準拠なの? リンク先にある「CSVを楽に読みだすプログラム」みたいな馬鹿チョン仕様でいいの?
>>498 お前がRFC4180準拠で書ける訳ないんだから選択の余地無しだろ
値にメタ文字を含むと爆発するおそれがありますって書いておけばいい
郵便局のサイトにあるCSVを読むんだろ それg読めればいいだけだ
>>494 にあるURLに、材料は全部用意されてるよ。
エスケープ後もエスケープ以外のメタ文字が残るような クソフォーマットの話はこのスレではどうでもいいと思います
Access上のテーブルは、予め作っておくのかな? それとも、テーブルもプログラムで作成しろということなのかな?
506 :
デフォルトの名無しさん :2012/08/21(火) 20:24:07.47
/⌒ヽ⌒ヽ Y 八 ヽ ( __//. ヽ,, ,) 丶1 八. !/ ζ, 八. j i 丿 、 j ,. -‐=≦=| 八 |=≧=‐- 、 /´ ! i 、 `ヽ .,v─ーv_ .{:::.: ,:. i し " i ' .:、 :.:::} ..,i(厂 _,,,从vy |::.:.: l::. ノ ( i i .::l . :.:.::| ..l ,zll^゙″ ゙ミ ∧:.:... i::, '~ヽ ! .::i ...:.:∧ ..《 il|′ フーv,_ !: :ヽ:. ::. . ..:. ,. | i .l .、.:.. . .:: .:ノ: :! _( "''''''::::. \《 ヽ .゙li ._¨''ーv,,_ { ノ| | | | ヽ :::::::::::::::::::::::::::::;;;;;,, ---‐'' "^~ ゙^ー、,,,¨ - ''¨.─ / | ;;-.;i \ ,/ ,;-/;;; /' '' ;;;X;, ヽ i' /_,,;-‐'' |;; ;i;;.. 〜 ;;| ''‐-;,,_\_ 'i i `i X〜 ;i;;; ;; (___'_っ
507 :
◆5bhYRM1Rdk :2012/08/21(火) 21:41:04.88
3 : ◆5bhYRM1Rdk :2012/08/19(日) 09:45:57.21
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/rYMeK [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
>>507 >strcpyするのに型が違うとコンパイルエラーが出たのですが、型は一緒だと私は思っているため、なぜ違うのかわかりません。
char と char*
>辞書的に後ろ前をif文でどのように表現すればいいのか
strcmp
>文字列結合にstrcatを使うと思うのですが、結合の合間にスペースをいれる方法
前半の文字列とスペースを結合後、その文字列と後半の文字列を結合
>>476 を無視してるけど今回のコードを見る限り理解してないよね
511 :
◆5bhYRM1Rdk :2012/08/21(火) 22:57:05.82
>>509 >>476 すいません、ファイル名を入力して改行してCTRL+dを押しても
ファイルが開けないってでるんですが、どういう意味でいっているのかわかりません。
>>510 分かりやすいプログラムありがとうございます。ただ関数内で使用しているfprintf,sprintf
は一体何をしているんでしょうか?fprintfはファイル書き込みの時に使用するのではないんですか?
sprintfは意味がわかりません・・・。それ以外は自分の理解不足、勘違いがよくわかりました。
512 :
◆5bhYRM1Rdk :2012/08/22(水) 00:55:45.30
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/eeKJB [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
514 :
◆5bhYRM1Rdk :2012/08/22(水) 01:57:49.30
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/LGHF6 [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
515 :
◆5bhYRM1Rdk :2012/08/22(水) 02:07:46.45
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/ZXLEr [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
520 :
デフォルトの名無しさん :2012/08/22(水) 13:58:49.70
>>517 ,518,519
とてもはやい解答ありがとうございます。
大変助かります。
[1] 授業単元:独学
[2] 問題文(含コード&リンク):
http://ideone.com/jBgUV [3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン: VC++ 2010
[3.3] 言語: どちらでも可
[4] 期限: 無期限
[5] その他の制限: 特になし
>>521 あとtypedefの話だったから書いてなかったけど
「_」で始まる名前と「__」(_が2個)を含む名前は使わないようにね
詳細はC C++ 予約名とかでググって
>>524 ありがとうございます。
非常に参考になりました。
隠蔽についてはまだ理解仕切れてませんが、
これから学んでいきます。
526 :
◆t3V4YN9hBY :2012/08/23(木) 00:21:07.26
【質問テンプレ】 [1] 授業単元: プログラミング演習 [2] 問題文 巡回セールスマン問題の厳密解を総当たり法で求めるプログラムを、再帰呼び出しを用いて作成せよ (例) 1 2 3 4 5 6 1 0 470 550 420 300 200 2 470 0 800 900 770 560 3 550 800 0 330 650 750 4 420 900 330 0 450 400 5 300 770 650 450 0 180 6 200 560 750 400 180 0 [3] 環境 [3.1] OS:Windows [3.2] コンパイラ名とバージョン:Visual C++ 2010 [3.3] 言語:C++ [4] 期限: 8月30日 [5] その他の制限:なし プログラムが動けばいいと教授に言われました。 どうぞよろしくお願いいたします。
それ ナニ行列だったっけ
528 :
◆t3V4YN9hBY :2012/08/23(木) 09:58:11.31
なに行列かはわかりませんが、 1→2→3→4→5→6 2230 といった結果を出すプログラムをつくるらしいのですが、 馬鹿だから俺には全くわからない。
123456で全順列作って、合計距離を計算し、 最小値を出せば良いんじゃないの?
530 :
◆t3V4YN9hBY :2012/08/23(木) 10:45:44.49
最小値は出さなくていいんです。全通りの合計距離がでれば
フツー グラフ理論つったら 隣接行列使わね? だからそれナニ行列なのよ
どう見ても隣接行列だろw
>>530 えっ? 最小値を出さなくていいの? 意味が分からんよ
巡回セールスマンって普通は「全通りの中で最小距離のもの」を求める問題なんだけど
534 :
◆5bhYRM1Rdk :2012/08/23(木) 12:16:07.06
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/1Z7RF [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
535 :
◆t3V4YN9hBY :2012/08/23(木) 12:20:58.04
すいません。馬鹿なので勘違いしてました。529さんのいっているとおりで 123456で全順列作って、合計距離を計算し、 最小値を出せば良いんじゃないの? ってことでよろしいです。よろしくお願いします。
539 :
◆t3V4YN9hBY :2012/08/23(木) 16:11:10.90
>>538 ありがとうございます。
6→5→4→3→2→1 の合計距離が違うと思うのですが・・・
1→2→3→4→5→6→1 じゃね? 巡回セールスマン問題は出発地に戻ってくるところまでだし
541 :
◆t3V4YN9hBY :2012/08/23(木) 16:32:03.72
>>540 そうっすね^^じゃあ完成すね。ありがとうございました。
解読していきやす。
542 :
538 :2012/08/23(木) 20:20:00.36
すまんねw 528 で始点への枝が書いてなかったから省略するもんかと思ってたw
543 :
◆5bhYRM1Rdk :2012/08/23(木) 23:25:10.39
544 :
◆5bhYRM1Rdk :2012/08/24(金) 00:39:58.49
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/rVIkp [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
545 :
◆5bhYRM1Rdk :2012/08/24(金) 00:47:14.72
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/bycLg [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
546 :
◆5bhYRM1Rdk :2012/08/24(金) 00:58:28.44
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/Ax7di [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内
問題文くらい書き写せよ。
548 :
◆t3V4YN9hBY :2012/08/24(金) 01:23:58.54
>>542 すいません。バイト終わって家で動かしたのですが、INFINITYとprevが識別できません。
どうすればよろしいでしょうか?
お手数かけて申し訳ないっす;;
INFINITYじゃなくて<limits>をインクルードしてstd::numeric_limits<double>::infinity() ってやればいいじゃんせっかくあるんだから
const double INF = 99999999; とかのでかい数突っ込んでおいてもよろしい
551 :
◆5bhYRM1Rdk :2012/08/24(金) 08:56:06.35
553 :
◆5bhYRM1Rdk :2012/08/24(金) 09:08:31.31
>>すばやい回答ありがとうございます。あなたいつも回答してくれてるような・・
554 :
◆5bhYRM1Rdk :2012/08/24(金) 09:56:06.01
struct queue{ struct data *top,*rear; }; じゃなくて struct queue{ struct queue *top,*rear; }; じゃねーの?
556 :
555 :2012/08/24(金) 10:15:59.29
557 :
555 :2012/08/24(金) 10:43:05.07
558 :
デフォルトの名無しさん :2012/08/24(金) 10:43:32.15
[1]授業単元:マイコン実習 [2]問題文 H8マイコンを使ってマイクロスイッチを押した回数をカウントして2桁LEDディスプレイに表示させるプログラムを作りたいです。 カウントリセットもできたりしたです。行く行くは音源を付けて流れるようにしたりマイクロスイッチの数を増やしたいです。 [3]環境 [3.1]OS:Windows [3.2]コンパイラ名とバージョン:gcc [3.3]言語:C言語 [4]期限:8月31日 [5]その他の制限:
>>558 いいなぁ。楽しそう。1週間あれば余裕を持って作れるね。
おれも学生に戻りたい。
560 :
◆5bhYRM1Rdk :2012/08/25(土) 01:37:01.41
561 :
デフォルトの名無しさん :2012/08/25(土) 01:41:25.04
>>560 ヒープとは動的に確保されるメモリ領域のことだよ
malloc()とかで確保される領域ね
スタックだって動的じゃんw 何を言ってるんだ
563 :
デフォルトの名無しさん :2012/08/25(土) 01:53:16.56
つまりスタックも動的なのでヒープであるってことでいいですか?
565 :
デフォルトの名無しさん :2012/08/25(土) 02:43:21.11
566 :
◆5bhYRM1Rdk :2012/08/25(土) 02:45:27.43
567 :
デフォルトの名無しさん :2012/08/25(土) 02:48:50.62
>>566 curとtopの変数の使い方逆じゃね?
568 :
◆5bhYRM1Rdk :2012/08/25(土) 02:53:14.26
569 :
デフォルトの名無しさん :2012/08/25(土) 02:58:05.64
570 :
◆5bhYRM1Rdk :2012/08/25(土) 03:04:19.02
>>567 にかいてあるんですが、何か不足してますか?
571 :
デフォルトの名無しさん :2012/08/25(土) 03:08:42.25
>>◆5bhYRM1Rdk 何個も宿題書いてるみたいだけど 小出しにしないで全部書いたほうが良いよ 一連の問題だって分かると解答も変わるし
それから自分のソースを添削してもらいたい場合を除き問題はコピペする。 なぜかというと、アップしたサイトから問題が消えてしまうと、最近の地方都市の ようにシャッターが下りたままだらけのスレとなってしまう。
>>573 ここにリンク張れ
変なスレに誘導すんなカス
できれば、小出しにしないでほしいな。 数多くてもいいいから。
578 :
◆5bhYRM1Rdk :2012/08/26(日) 11:25:52.58
複数レスに渡るようなコードはうpろだに貼った方がいいけど その場合でも問題の概要くらいは書いた方がいいな。手をつけてもらえなくなる あとideone重い
>>578 酷い問題だなぁ
スタックとキューの実装比較がテーマなのにインターフェイスが異なるとかw
そも queue.rear って必要か?
print_queue_list() の実装も気持ち悪いし
>>575 ideone や codepad は 5 年前の内容でも引っ張り出せる。5年前の自分のコードをみるとさすがに赤面ものだ
>>582 メールでやり取りするとまた削除対象になりますよ
洋ゲーのデータ読み込む宿題とは珍しい
>>585 test->Struct = (Struct *)(MEMORY_gff + 0x38);
で代入しちゃってるからなぁ
ローカル変数用意してそこに代入した方がいいかもね
Struct *testStruct = (Struct *)(MEMORY_gff + 0x38);
printf("0x%08lx\tStruct[%d]->Type\t0x%08lx(%lu)\r\n", &testStruct[i].Type, i, testStruct[i].Type, testStruct[i].Type);
あとマクロとか使ったほうがいいかもね
ttp://ideone.com/cDq75
>>587 ありがとうございます。
以下のような構造体を作ることは可能なのでしょうか?
可変長の部分は結局ポインタで繋げることになるのでしょうか?
構造体1
|=DWORD aa;
|-int bb;
|-構造体2[bb]
||-int count;
|\-DWORD aaa;
\-構造体3[bb]
|-char foobar[0][50];
|-char foobar[1][50];
\-char foobar[2][50];
>>588 >可変長の部分は結局ポインタで繋げることになるのでしょうか?
そうなるね
typedef struct {
int attr;
int num;
int items[ ];
} info_t;
info_t *info = malloc(sizeof(info_t) + sizeof(int) * num);
info->num = num;
構造体の最後のメンバである時に限って0長配列メンバは可能だけど
これは全メンバのアドレスが決まっているから可能
>>589 0長配列が使える様になったのは何時ごろからか知ってる?
昔、Xlib とかの構造体では items[1] とかやってて面倒だった記憶が有るんだけど
[1] 授業単元:データ構造入門
[2] 問題文(含コード&リンク):問題文が長いためこちらに記載しました
http://ideone.com/R8gaZ [3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語: どちらでも可
[4] 期限: (2012年9月5日13:00まで)
[5] その他の制限: (ポインタの理解ができていないのでポインタを使わずに作成の方お願致します)
よろしくお願い致します。
595 :
592 :2012/08/29(水) 16:08:35.20
596 :
デフォルトの名無しさん :2012/08/29(水) 16:11:10.85
#include < >内の、 stdio.h、sys/types.h、sys/socket.h、netinet/in.h などにはどんな意味があるんですか? ざっと調べてみるといろいろ意味を含んでいるみたいなんですが、機能が一覧になっているサイト等があれば教えて頂けると助かります。
意味の一覧じゃなくて 機能の一覧が欲しいのか。 プログラミングの意味論と機能論について 一体どのような意見をもっているのか是非とも聞きたい 書かれている以上の機能なんてないし、 その機能に「名前」をつけてそれが「意味」の階層を成してゆく、 それらプリミティブな構成要素はC言語のごくごく原始的な ブロックのみから構成されていく、 それらの機能と意味については 人間が解釈する以上の機能が付されているとは思えないのだが
598 :
デフォルトの名無しさん :2012/08/29(水) 17:46:16.40
>>597 ややこしくなってすいません。
プログラムの最初にinclude <~>ってつけますよね?
その時に何を書かなければいけないのか判断がつかないんです。知りたいのは機能の一覧です。
stdio.hを使いたければstdio.hを書く、それだけ。 機能としてはそこに書いたものをその位置に取り込む、それだけ。
>>598 例えばprintf()を使う時に、何を#includeに書けばいいのか調べる方法はなんだってな話?
Unix系ならmanコマンドのセクション2か3で man 3 printf とかやれば#include の例文が出てくるよ
MSならMSDNのサイトいけば関数毎にインクルードファイルが書いてあるよ
>>598 意味というか、単に「stdio.h」ってヘッダファイルに書いてある関数が使えるようになるだけの機能
内容物が知りたいなら「c言語 関数一覧」とでもググればその手のサイトが腐る程出てくる
>>598 #include < >内に書くのはファイル名
まず「#include」や「ヘッダファイル」(拡張子hなど)についてググってみるといい
stdio.hはC言語の仕様で規定(コンパイラ側が用意)されているファイル
sys/types.hなどは特定の環境向けに用意されているファイル
何を書かなければいけないのかは環境次第、
例えばWindowsでの開発でWin32APIを使いたいならwindows.hをインクルードする
604 :
デフォルトの名無しさん :2012/08/29(水) 18:28:33.09
605 :
デフォルトの名無しさん :2012/08/29(水) 18:31:05.87
>>605 こういうのは無自覚なマルチだ
こっちか向こうか
どちらかを取り下げてくれると助かる
607 :
デフォルトの名無しさん :2012/08/30(木) 02:24:37.42
誰かarduino uno使っておられる方いらっしゃいます?
ここは質もスレじゃねえやい
609 :
デフォルトの名無しさん :2012/08/30(木) 10:11:25.13
ここは質問スレじゃねえよ
611 :
デフォルトの名無しさん :2012/08/30(木) 20:21:34.37
>>609 C++使えるよ
ただ、ちゃんとArduino IDEからコンパイルして使ってね☆
612 :
nettu :2012/08/31(金) 12:19:02.70
[1] 授業単元: 画像処理 [2] 問題文(含コード&リンク):エッジの画像からエッジの分布(どのような角度のエッジがどのぐらいあるか)を抽出するプログラムを作る [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: Visual c++ 2010 express [3.3] 言語: C [4] 期限: 2012年9月4日24:00まで [5] その他の制限: opencv使ってます。
性別は 穴のある0が女で 棒の1が男だよな?
俺には0が棒で1がスジにしか見えない
618 :
◆5bhYRM1Rdk :2012/09/07(金) 19:58:23.11
>>618 問題文くらい転記しろよ
見るのがめんどくせえの
620 :
◆5bhYRM1Rdk :2012/09/07(金) 20:29:10.32
>5bhYRM1Rdk ゴミをコンパイルするなよ
622 :
デフォルトの名無しさん :2012/09/08(土) 01:00:33.99
>>622 それは書ける人の論理でしかない。書けるからそういうこともわかる。書けなければわからない。ググッても検索結果すら意味不明。
書けなかったらまるでわからない、今 haskell に夢中だが、GHC のバージョン違いが原因で教科書どおりでははまることも多々。
初心を忘れるのはちとまずいんじゃないの?
初心者のQが何を言ってるのか
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): numbers.datから10個の整数を読み込みヒープソートでソートし、小さい順に表示せよ。 numbers.datから10個の整数を読み込みマージソートでソートし、小さい順に表示せよ。 numbers.datから10個の整数を読み込みクイックソートでソートし、小さい順に表示せよ。 numbers.dat 91 63 71 14 60 1 24 13 80 15 [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン:gcc [3.3] 言語:C [4]期限 1週間以内 お願いします
628 :
◆5bhYRM1Rdk :2012/09/09(日) 14:00:55.54
>>618 のinsertの問題なんですが、自分でやってみたのですが分からないので質問させてください。
問題文:ヒープに新たなデータを挿入する関数insertを作成せよ。空の配列に複数回insertを行うことで
構成したヒープがヒープ条件を満たしていることをcheck_heapを用いることで確認せよ。プロトタイプ宣言は以下とする。
void insert(int val, int a[],int *n);
質問:
複数回はおいといてとりあえず1回insertしようと思って書いたんですが、ヒープの最後に新しいノードを
作って親より小さければ親の値と交換を繰り返してヒープを完成させようとしてるんですが、1回しか交換されません。
どうすればいいですか?
自分のソース
http://ideone.com/q6fDH
>>628 親のインデックスに移動するようにすればいいよ
i = *n;
while (0 < i) {
if (a[(i - 1) / 2] <= a[i]) {
break;
}
temp = a[(i - 1) / 2];
a[(i - 1) / 2] = a[i];
a[i] = temp;
i = (i - 1) / 2;
}
631 :
◆5bhYRM1Rdk :2012/09/10(月) 01:05:22.31
633 :
デフォルトの名無しさん :2012/09/11(火) 12:29:41.12
[1] 授業単元:C言語
[2] 問題文:
http://ideone.com/lYr0P [3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限: 9/15まで
よろしくお願いします。
634 :
デフォルトの名無しさん :2012/09/11(火) 17:54:44.80
635 :
デフォルトの名無しさん :2012/09/11(火) 20:04:01.01
>>634 ありがとうございます。
ソート法は指定されていないのでマージソートで大丈夫です。
参考にさせて頂きます。
637 :
◆5bhYRM1Rdk :2012/09/12(水) 16:20:04.10
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/839Qo [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 1週間以内 お願いします
問題:numbers.datから10個の整数を読みこみヒープソートで昇順に表示せよ。
numbers.dat
91 63 71 14 60 1 24 13 80 15
質問: insertで配列のヒープ化をしてdeleteminで最終ヒープの根を取り出して再ヒープ化をしているんですが、
実行すると1 13 13 13 13 13 13 13 13 13になるんですが、どう変更していけばいいでしょうか?
>>637 ┃m[9-i] = deletemin(a, i, n-1);
main関数でdeletemin関数を呼ぶところ。
deletemin関数の第3引数は配列の新しい末尾のインデックスなのでi-1。
m[9-i] = deletemin(a, i, i-1);
┃temp = a[j];
┃a[i] = a[j];
┃a[i] = temp;
deletemin関数で交換を行うところ。
temp = a[i];
a[i] = a[j];
a[j] = temp;
639 :
◆5bhYRM1Rdk :2012/09/12(水) 23:52:08.59
641 :
デフォルトの名無しさん :2012/09/13(木) 13:44:14.86
[1] C言語
[2]
http://ideone.com/m8dZRの関数を利用して 、
キーボードから日付を読み込んで、その次の日を求める
プログラムを作成しなさい。
実行例
---------------------
年月日:20120913
次の日は:2012/09/14
---------------------
[3.1] Windows7
[3.3] C言語
[4] 9/13 19:00まで
644 :
デフォルトの名無しさん :2012/09/13(木) 16:38:57.32
645 :
デフォルトの名無しさん :2012/09/17(月) 14:43:32.29
[1]C言語 [2]文字 char 型の変数cに文字 ‘a’ を代入して、cの値を画面に表示するプログラムを 作成せよ。また、変数 c の値を %d でも表示し、その値が何を意味するか考えよ [3]ubuntu C言語 [4]本日中 [5]C言語歴2日目 前半は #include<stdio.h> int main(void) { char c; c='a'; putchar(c); } であってますか?後半がどういうことかわかりません
printf("'%c'=%d\n", c, c);
> 後半がどういうことか C言語が'a'をどうやって変数に保持し、どうやって文字として表示してるか考えろって事だと思う、 答えから言うと、 printf("%d", c); を足すと、97 って追加で表示されるようになる、 その 97 は 'a' のASCIIコード。 もう少し突っ込んで言うと、C言語には文字ってのは存在してなくて、変数に入れる時も使う時も全部数値として扱われる putchar(c); は変数c内の値を文字として出力していて、 printf("%d", c); は変数c内の値を数値として出力している。 だから c='a'の部分を c=97 に変えても、出力される結果は同じになる。 試しに↓のコードを実行してみて、Hello って表示されると思う。 #include <stdio.h> int main(void) { putchar(72); putchar(101); putchar(108); putchar(108); putchar(111); return 0; }
648 :
デフォルトの名無しさん :2012/09/17(月) 16:30:40.67
[3] 環境 [3.1] OS: Windows [3.3] 言語: C [4] 期限: 2012年9月19日3時00分まで [5] 標準体重を計算して対応表を表示するだけの単純なもの 計算式は標準体重(kg) = 身長(cm)×身長(cm)×22/10000でお願いします 実行例 対応表 --------------- 150.0 cm : 49.5 kg 155.0 cm : 52.9 kg 160.0 cm : 56.3 kg 165.0 cm : 59.9 kg 170.0 cm : 63.6 kg ---------------
#include <stdio.h> int main(void) { int i; printf("対応表\n---------------\n"); for(i = 150; i <= 170; i += 5) printf("%d.0 cm : %.1f kg\n", i, i * i * 22.0 / 10000); printf("---------------\n"); return 0; }
[1] 授業単元:画像処理 [2] 問題文:二次元配列に512*512のグレースケールのbmp画像を読み込み、中心座標(cx,cy)を任意で与え半径3の円内部のピクセルの画素値の総和を求めよ。 [3] 環境 [3.1] OS: Windows7 [3.2] コンパイラ名とバージョン: visual studio [3.3] 言語:C言語 [4] 期限:9/20 17:00 [5] その他の制限: 画像の読み込みは出来ているので円内部のピクセルの総和を求めるの部分をお願いします。
x, y 参照ピクセル座標 if ((x - cx) * (x - cx) + (y - cy) * (y - cy) <= 3 * 3) { /* ピクセル加算 */ }
>>653 参照ピクセル座標x,yというのはどうやって取得するんでしょうか
for (y=0; y<512; y++) for (x=0; x<512; x++) 画像の全座標を総なめしつつ 条件(円の中にあるか判断)に合致した場合に限定して 和をとる OK?
せっかく中心が与えられてるんだから範囲絞って計算量減らそうぜ
円のふちの部分はどうするんだ?
>>655 そういうことですか。ありがとうございます!
有償スレに誘導せずに、ここで回答するべきですよ
Qはアスペなので人の言う事が耳に全く入らない 言うだけ無駄
向こうのスレを削除してもらうのが一番だよな
>>657 数学上の円と交差するピクセルをどう扱うか?のことを言ってるんだよね?
整数座標値が示してるのをピクセルの中央と定義し (仮に実数座標だった場合 ±0.5 が境界)
その中央部が理想上の円内かを判定してるのが
>>653 他に
交差したものは数える、交差したものは重みをつけて数える、交差したものは数えない
等が考えられるけど… 判定が複雑になるので割愛した。
>>662 その前に名無し変更できないようにするのが先だ
>>664 日本語でおk
向こうのスレがなければ向こうに誘導する事も出来ないだろ
誘導される前にちゃんとコンパイルできる回答をつけることだね
[1] 授業単元:C言語
[2] 問題文:
http://ideone.com/tRkzM [3] 環境
[3.1] OS:Windows
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限: 9/22まで
よろしくお願いいたします。
>>667 お前さんだけじゃないけどさ、
codepadやideoneに書くならコード以外はコメントアウトしろよw
>>668 以後気をつけます。
大変申し訳ありませんでした。
以後じゃねーよ 今すぐやり直せアホ
3は他の人に任せる
678 :
667 :2012/09/20(木) 23:10:18.24
>>675 答え、打ち込むのがめんどくさいので、ごめんだけど
組合せの問題だろ?
確かnCrじゃなかったっけ?
あとは
char *moji = "abcdefghijklmnopqrstuvwxyz";
でインデックスでならべかえしたらいいんじゃない?
[1] 授業単元:画像処理
[2] 問題文:二次元配列に512*512のグレースケールのbmp画像を読み込み、中心座標(cx,cy)を任意で与え半径3の円内部のピクセルの画素値の総和を求めよ。
[3] 環境
[3.1] OS: Windows7
[3.2] コンパイラ名とバージョン: visual studio
[3.3] 言語:C言語
[4] 期限:9/21 17:00
[5] その他の制限: 以前作っていただいた部分は大丈夫そうなんですが自分で作成したbmp画像の読み込み部分が上手く動いてないようです。一応
http://codepad.org/eJiU2Z8Cこんな感じで書いたのですが値が上手く配列に入ってないみたいです 。
>>681 それじゃbmpを読みことになっていない
>>659 はフルスペックに近いしそこまでやんなくていいけど、bmpフォーマットの仕様は調べておけ
再現する最小のコードを載せろ
>>681 C言語のfopenは単にファイルを開いてデータの先頭を指してくれるだけ、
そのソースで期待してるみたいにbmpのフォーマットを解析して画像データ部分の先頭を指す、なんて事はしてくれない、
そこは自分で実装しないといけない
ンコナロ「バーwwwww」
バーロン「ンゴゴゴゴwwwww」
バコナン「ローバーwwwww」
コナバーラオー「wwwwンンオゴオオオオwwww」
これ書いてるのおっさんなんだぜ・・・
バーロンウンコゴ「wwwwwナーロー」
ンノゴ「ロバババwww」
移って来たのかな。 このスレだけは荒らさないで欲しいけど。
>>682 WindowsのBMPフォーマットのファイルを取り扱う宿題って
授業の過程でこれ使ってねって何らかのライブラリが指示されてるか
実は 俺俺フォーマットのファイルを ”ビットマップファイル” と呼んでいるのか…
フォーマットの自由度と、バイナリ列が素と圧縮(ランレングス, jpeg)があるから
WindowsAPIを使わずに 標準関数だけで実装するには条件つけないと厳しいよね
バーロンノ「wwwwロンババwwwww」
ンコナロ「ルバロwwバローwww」
ルポナンwww「wwwwブルアオーww」
コナーン「コナーンコーアンwww」
ローラリア「バコナロンwwwww」
ンッペーナ「wwバロアバロスwwwww」
バロペッチョwww「バロスバロスwwwww」
ブロニニ「コナンバロンwww」
ンペエエーナ「ブロsローナーw」
>>704 誰でもが書き込む設定のスレです
心理的に書き込み難くなるから止めてください
バルバロスバーロンwww「んww」
真・スルー 何もレスせず本当にスルーする。簡単なようで一番難しい。 偽・スルー みんなにスルーを呼びかける。実はスルーできてない。 予告スルー レスしないと予告してからスルーする。 完全スルー スレに参加すること自体を放棄する。 無理スルー 元の話題がないのに必死でスルーを推奨する。滑稽。 失敗スルー 我慢できずにレスしてしまう。後から「暇だから遊んでやった」などと負け惜しみ。 願いスルー 失敗したレスに対してスルーをお願いする。ある意味3匹目。 激突スルー 話題自体がスルーの話に移行してまう。泥沼状態。 疎開スルー 本スレではスルーできたが、他スレでその話題を出してしまう。見つかると滑稽。 乞食スルー 情報だけもらって雑談はスルーする。 質問スルー 質問をスルーして雑談を続ける。 思い出スルー 攻撃中はスルーして、後日その思い出を語る。 真・自演スルー 議論に負けそうな時、ファビョった後に自演でスルーを呼びかける。 偽・自演スルー 誰も釣られないので、願いスルーのふりをする。狙うは4匹目。 3匹目のスルー 直接的にはスルーしてるが、反応した人に反応してしまう。 4匹目のスルー 3匹目に反応する。以降5匹6匹と続き、激突スルーへ。
ドライブスルー
ブペノンバーロン「ンゴロンww」
ンコナ「ww「ンバローwwww」
バーロー「コナンww」
バルバローバーロンバルス「ンコナw」
チョコナ「バーローwwwww」
ンゴナロ「ンンンンwwwwwwwwwwwwwwwww」
>>686 お礼が遅くなりました。
ありがとうございました。
助かりました。
バゴアン「ロwwww」
>>682 >>684 イマイチbmpフォーマットの仕様というのがつかめません。ヘッダーからfreadとかで読み込んでいけばいいのでしょうか?
バーロン「」ンアゴノノwwwww
向いてないから死ね
ンゴアノバルバリアバーロス「wwwwwンゴwwwwwwwwwwwww」
ロバロバス「ナンコーナンコーwwwwwwwwwwwwwwwwwww」
>>695 圧縮とかに手をだすと大変だけれども、まあ、それが理由で手がつかないのは最悪だから、俺々仕様で5割のbmpが読めれば/書ければいい、というのが
>>659 なんです。
>>717 理論から現実世界へのアタッチの第一歩として、あなたのPCにも眠っている bmp の大概を扱えるようにすることはいい演習になりますよ。
私もそういう理由で
>>659 を書き始めました。ググって出てくる bmp ヘッダ仕様書をとっかえひっかえしながら、まともに動くようになるまで 3時間×7 ほどかかりました。
バコナロダスwwww「バカwwww」
バロス「ナーンコwwwwwwwwwwwwwwww」
バイロスナンコーwww「バロロロロッロwwwwwww」
ンンーwww「バロニアwwwwwwwwwwwwwwwwwwwww」
WindowsのBMPフォーマットって指定だから無圧縮前提でも問題ないと思うよ データ内のヘッダやカラーパレットのフォーマットも、 例えばWindowsXP標準のペイントソフトで、32bitBMPとして書きだしたファイルを読み込む、って限定すれば、 ファイルヘッダはBITMAPFILEHEADER ヘッダのフォーマットはBITMAPINFOHEADER カラーパレットはRGBQUAD だけに対応するだけだから比較的シンプルに作れるし。
コナーン「バーローwwwwwwwwwwwwwww」
そうそう、やってて思ったのは 32ビットbmpと24ビットbmpの差8ビットって何? でしたね。これ、どういうものでどう処理すればいいでしょうね。
>>729 使われてないよ
32bitて扱うことで処理がわずかに早くなる効果がある程度
>>729 32bit単位はCPUが得意なデータ単位なので高速
24bit単位だとCPUにデータを載せる時に一つのデータを二つのレジスタで持つ必要が出たりするので遅くなる
バコナロ「ナーローwwwww」
ナロナロバロー「バコバオwwwwwwwwwwwwwww」
コナンバーロー「wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ロバンナコ「ーーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
736 :
デフォルトの名無しさん :2012/09/22(土) 17:50:01.27
>>735 名探偵コナンのスレで心的外傷を負うようなことがあったのか? 荒らすな、出てけブサイク
ンナロコバロバロス「ロババローwwwwww」
ロバス「ナンコルバーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ナンコル「バーアーバーバーwwwwアウアウアーwww」
ルートの使い方がよくわかりません [1]C言語 [2]キーボードから2つの実数x,yを入力し(x.0)と(0,y)の距離の二乗をもとめよ [3]Linux gcc [4]無期限 試し書きですが・・・ #include<stdio.h> #include<math.h> int main(void) { double x,y; scanf("%lf",&x); scanf("%lf",&y); printf("%lf\n",sqrt(double x , double y)); //??? return 0; }
ルートの使い方じゃあなくて 出来上がっている関数にどうやって値を渡せばいいのか そこが分からんのだろう もしも何かの授業なら 根本的なことを教えてくれてないみたいだから もっと根掘り葉掘り聞いた方がいい
>>740 求めるのが距離の二乗ならルート使わないんじゃね
#include<stdio.h>
int main(void)
{
double x;
double y;
printf("x:");
scanf("%lf", &x);
printf("y:");
scanf("%lf", &y);
printf("%f\n", x * x + y * y);
return 0;
}
>>740 >>743 で書かれてるけど親切に二乗を求めるとこで止めてあるから、
printf("%f\n", x*x + y*y);
で終わりでは?
目的は実数の入力と出力のおさらいではないかと予想。
あえて関数を使うなら、
printf("%f\n", pow(x,2) + pow(y,2));
ついでに言うと、printfはl修飾子なしの%fでdouble出力して良くね?って思って調べたら%fの方が本来正しいみたいだな。
その点
>>743 はよろしい。
あ、scanfは%lf必須だからね!
ルポナン「バンロwwwww」
ルポコンア「ンバローwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ルペアノコナン「バーローバローwwwwwwwwww」
>>745 知ってるやり方より頭悪い方法だとやる気が失せるな
コナン「バーローwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ナコナコ「シコナデwwwwwwwwwwwwwwwwwwww」
コナーン「ナーコンwwwwwwwwwwwwwwwwww」
コナコナ「シオナベwww」
ナココナナン「ロバwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
でその知ってるやり方は表にはでない、と。 なぜなら馬頭の連鎖が続くからです。
チョコナ「バロバロバロバロバロスwwwwwwwwwwwwwwwwww」
ID出ないからって好き放題荒らすなよ・・・
プロコナン「ンバーロゥーーwwwwwwww」
>>745 1.
http://codepad.org/XCQbDsSK 2.
http://codepad.org/M1zjzeHZ 1.ほぼ問題文にしたがい穴埋め。
2.は順列を
>>667 の 3 にしたがって生成する点では問題文と同様であるが、角道チェックは順列の数字がひとつ確定するたびに行っており、無駄な局面の生成を省くようにしている。
ヒント
順列の生成について、4-queen ならば int a[8] の状態配列を生成している。このうち前半 a[0]〜a[3] は順列生成のために使用しており、後半 a[4]〜a[8] がクイーンの置き場を示す。
a[4] は x = 0 のときのクイーンの y 座標、a[5] は x = 1 のときのクイーンの y 座標、以下、n-queen 問題において座標 (x, a[n + x]) にクイーンが置かれているものとする。
この局面表現(解表現)により、飛車道チェックのロジックを省くことができ、角道チェックのみ記述すればよい。
たのむから、荒らしてるやつ関西人でないでほしい。 俺、大阪の人間だけど、大阪の人間はアホが多いから。
日本語でおk
ブコナン「バルバロwwwwwwwwwwwwwww」
ナーコン「ノーコンノーコンwwwwwwwwwwwwww」
ブペコナ「ナコナーwwwwwwwwwwwww」
ナコバロウ「バーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ナコローバ「ンーwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
コンバナロ「ーーwwwwwwwwwwwwwwwwwwwwwwwwww」
コンバナロウ「ーーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
ンバ「コーナンーwwwwwwwwwwwwwwwwwwwwww」
ルナコナン「バローwwwwwwwwwwwwwwwww」
コナン「wwwwwwwwwwwwwwwwwwwwwwwwwwバロー」
ナンコウ「バーロウwwwwwwwwwwwwwwwwww」
>>776 追試をお願いいたします。
こちらでは n = 17 以上で試行を繰り返していますが、よく使っているお手製 push()/pop() がまたも悪さをしており、スタックがあふれちゃっています。
データを「散らすように」 cmp() に工夫を加えていますが、あまりかんばしくない。
上でAVLtree に言及されていますが、まだ外にだせるほど完成しておらず余計に陥穽となるやもしれない‥‥
その糞なお手製のクソを晒せよアホ
ナコバーロウ「アハハハハハハアwwwwwwwwwwwwwwwwwwwww」
バーロンコナス「ロコロコwwwwwwwwwwwwwwwwwwww」
フェコナ「yハハハハハハハwwwwwww」
ボナバーロー「コココンアンwwwwwwwwwwwwww」
パナコナ「ロンバローーーーwwwwwwwwwwwwwwwwww」
コナ「ンーwwwwwwwwwwwwwwwwwwwwwww」
バー「ローwwwwwwwwwwwwwwwwwwwwwwww」
俺も荒らしてる奴通報しといたわ コイツ他のスレも荒らしてるから
コンロ「バーナーwww」
書名の中に"が含まれる場合は""だけど これもそうなの?
>>794 書名の中に"が含まれることはないです。
書名が,で区切られている場合のみ書名が""で囲まれているということです。
説明不足で申し訳ありません。
ついでにcsvの文字コードは?
うんこーど
ナコバーロー「wwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
BOMとかついちゃってるUTF-8じゃ無いよね?
UTF-8は付いてても付いてなくてもいいんだから両方対応しろよ
>>800 BOMはついていないと思います。
よろしくお願いします。
ルポナン「ンバーwwwwwwwwwwwww」
パコナ「パコパコwwwwwwwwwwwwwwwwwwww」
ロパコナコン「ルポwwwwwwwwwwwww」
ン「コナwwwwwwwwwwwwwwwwwwwwww」
ルビー「ドナドナwwwwwwwwwwwwwwwwwwwwwww」
ンーwwwwwwwwwwwwwwwwwww「コナーン」
ンナコ「ローバーwwwwwwwwwwwwww」
コーナン「ロバーwwwwwwwwwwwwwwwww」
ロンバー「ナーンwwwwwwwwwwwwwwwww」
こいつ書き込み禁止にできねえの
>>805 ありがとうございます。
しかしこちらだとセグメンテーションエラーになってしまいました。
修正法などあれば教えていただけると助かります。
>>815 エラーになるデータ教えてもらえますか?
この内容のCSVで確認しましたが問題なかったですよ。
出版社名, 書名, 発行年, 本体価格
羊土社,RNA 実験ノート上巻― RNA の基本的な取り扱いから解析手法まで,2008,4300
羊土社,RNA 実験ノート下巻― 小分子RNA の解析からRNAi への応用まで,2008,4200
中山書店, 行った! 見た! バイオ・ゲノムベンチャー― これが米国流バイオビジネスだ,2001,1810
金芳堂, 医療・福祉系学生のための専門基礎科目,2007,5600
羊土社,"細胞・培地活用ハンドブック― 特徴, 培養条件, 入手法などの重要データがわかる",2007,4500
医学中央雑誌刊行会, 医学中央雑誌Web 版,,250000
医歯薬出版, 入門X 線写真を読む,2005,4600
医歯薬出版, 入門無歯顎補綴治療,2006,5000
>>816 すいません、こちらでも動作しました。
お手数をお掛けして申し訳ありませんでした。
動作って…… 文字コードがUTF-8で コンソールにマトモに表示されるワケ? 一体OSは何なの?
>>818 Windows上でTeratermをたちあげて作っています。
とりあえずこちらの状態では正常に動かすことができました。
いろいろ無知で申し訳ないです…
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):
http://ideone.com/wmeep [3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4]期限 本日15時30分まで
全く手が付けられません…
期限が短くて申し訳ないですが、作ってくださる方がいましたらよろしくお願いします。
ルポナンコ「ローwwwwwwwwwwwwwwwwwwwwwwww」
ナwwwwwwwwwwww「ンコww」
>>820 システムlocaleと「全角文字と改行のみで書かれた日本語のテキストファイル」の文字コードは同じと仮定していいの?
>>823 同じと考えて大丈夫です。
よろしくお願いします。
ナンコ「バアアアwwwwwwwwwwwww」
問題文にはUTF-8と指定されてるが? BOMはどうなってるのかしらんが あと例文 >私は東京大学の学生です。 >東京都に住んでいます。 のうち1行目の「す。」は2文字の連続文字列と見なされないが 2行目の「す。」は2文字の連続文字列と見なされている つまり >改行は無視される とは改行コード(CR, LF, CR+LF)及び改行コードの直前に現れる句点はその直前・直後の文字と結合しない ただし改行コードの直前に現れる句点はその改行コード直後の文字と結合し2文字の連続文字列と見なすということでいいのか
ナロナン「バコナンwwwwwwwwwwwwwwwww」
>>826 data.txt内の文字は正常に表示されているので、
UTF-8で表示できれば問題ないと思います。
そのあたりのことは詳しく理解しておらず適切に回答できずすいません…
例文はこちらのミスです、申し訳ありません。
訂正前
です
。東
訂正後
です
す。
。東
お手数をかけてしまい申し訳ありません。
>>826 確認したところBOMはついていません。
よろしくお願いいたします。
ナコバーロー「wwwwwwロマン」
バロン「ナンコウwwwwwwwwwwwww」
ナンバロブ「ノコナwwwww」
>>793 の3つめどなたかよろしくお願いいたします。
ナーコ「ンローバwwwwwwwww」
コ「ナwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
アリガトネ「コナンバーローwwwwwwwwwwwwww」
コナ「ンーwwwwwwwwwwwwwww」
バッコン「コーwwww」
コ「ナンバロwwwwwww」
ナロー「バコンwwwwwwwww」
コナバロフ「コナニーヤwwwwwwwwwwウラーwwwww」
字が化けるな なぜだろう
コナロバ「スーwwwwwwwwwwwwwwww」
スゲェ 別々の三角形が1000個もできんのか スゲェよ いったいどこの次元・時空間にお住まいなのか 聞いてみたい
バロス「ナーコーwwwwwwwwwww」
バコナコス「ンアーーーwwwwwwwwwww」
コナバロウ「ンペーナコナンwwwwwwwwwwwwww」
>>850 1:
double power(double a,unsigned int b)
{
int i;
double c = a;
for(i = 1;i<b;i++)
a*=c;
return a;
}
>>854 三辺の長さがひとしければ合同としていいのでは?
859 :
844 :2012/09/27(木) 09:04:49.02
みなさんありがとうございました。 お手数をお掛けしました。
パロコナン「ルナーwwwwwwwwwwwwwwww」
ルポ「ナンwwwwwwwwwwwwwwww」
パコパコ「ナンナンwwwwwwwwwwwwww」
ポナコナン「ロババwwwwwwwwww」
毎回荒らしてる奴ってプログラム板に張り付いてる「uy」とか言うコテハン野郎だろ? 他のスレで論破されたからって腹いせで荒らすなよ
スルー推奨。
QZじゃないの?
[1] 授業単元:C言語 [2] 問題文(含コード&リンク): 1からnまでの偶数の総和を求めるプログラムを作成し、総和の最大値と最大のnをしらべてください ( <limits.h>に記述されている INT_MAX を利用してください) [3] 環境 [3.1] OS: Windows [3.2] コンパイラ名とバージョン: Microsoft Visual Studio 2010 [3.3] 言語: C [4] 期限: 9月30日まで
n*(n+1)
ンッペコバンナー「ナーコンwwwwwwwwwwww」
パッコン「ナーバーwwwwwwwwwwww」
ペッペコ「「ナロバーwwwwwwwwww」
ナンコ「ローバーwwwwwwww」
ナコローバー「ンゴwwwwwwwwwwwwwwwwwwww」
パコナロ「ンルローwwwwwwwwwwwww」
ンパコナルン「ロババーwwwwwwwwwwwwwwwwwww」
ロバ「ナコwwwwwwwwwwwwwwwww」
ロナ「ンローwwwwwwwwwwwwwwwwww」
バコナロ「ンーwwwwwwwwwwwwwww」
気圧の変化が脳に作用しているようだ
>>881 誹謗中傷・hate crimeは通報レベルだぞ。
やめとけ。
>>882 URL の内容は誹謗中傷ではなく事実ですけれども
ちょっと訳してみましょうか?
Don't touch "That"!
Don't say "AssHoooooooooole"!
ナンコバン「ンコwwwwwwwwwwwwwww」
パコ「ナンーーーーーwwwwwwwwwwwwwwwwwwwww」
コウナン「バウロウwwwwwwwwwwwwww」
バロナコ「ーーーンwwwwwwwwwwwwww」
コナバロン「wwwwwwwwwwwwwwwwwwwwwwwww」
コロバ「ナンwwwwwwwwwwwwwwwwwww」
コロナ「バーーンwwwwwwwwwwwwwwwwwww」
wwwwwwwwwwwwww「コナンバーロー」
ロナ「バコンwwwwwwwww」
バーナーン「コwwwwwロwwwwwwww」
バーロン「コナ」
スレ違は、こないだから荒らしてる奴だろ。 メンタルが気味悪いくらいそっくり。
899 :
デフォルトの名無しさん :2012/10/01(月) 16:44:22.52
1.C言語 変数・型・条件文 2.問題3個 ・キーボードから実数を1つ入力し10倍した数の整数部だけをint 型の変数に代入して表示す るプログラムを作成せよ。 ・キーボードから実数を1つ入力し10倍した数の一の位を表示するプログラムを作成せよ。 ・平面上の点の座標(2つの実数) をキーボードから入力し、その点が原点を中心とする半径1の 円の中にある場合には中、 外にある場合には外と表示するプログラムを作成せよ。 3.Linux gcc C言語 4.本日中 よろしくお願いします。
[1]C言語
[2] 問題文(含コード&リンク):
http://codepad.org/Gpxv1fSh [3] 環境
[3.1] OS: Windows 7
[3.2] コンパイラ名とバージョン: visual studio2010
[3.3] 言語:C
[4] 期限:10/3
[5]単純挿入ソートに関する問題です
よろしくお願いします。
パコナーロー「バッコーンwwwwwwwwww」
> 0 からn-1 の値を返す関数nrandom(int n) これ関数は何になりゃいいの 整数なの 実数なの
バナンコ「パチンコwwwwwwwwwwwwwwww」
906 :
899 :2012/10/01(月) 18:40:34.95
平方根するの忘れてたけど rは正確にはr^2で、1^2=1との比較だから結果オーライではある
バコナ「ロンwwwwwwwwwwwwwwwww」
ナローバロー「ナwwwwwwwwwwwwww」
ナロバ「ンコーーwwwwwwwwwwwwwwwwww」
ンア「コンwwwwwwwwwwwwww」
ナンパコル「ンナパローwwwwwwwwwww」
913 :
デフォルトの名無しさん :2012/10/01(月) 23:52:10.78
[1]C言語
[2] 問題文(含コード&リンク):
http://codepad.org/bf2IAZ8O [3] 環境
[3.1] OS: Windows Vista
[3.2] コンパイラ名とバージョン: visual studio2008
[3.3] 言語:C
[4] 期限:10/2 朝5時まで
[5]構造体を使った戦闘ゲームの課題です。時間が厳しいですが
力を貸してくれると幸いです。
……ちくわすら書いてねぇ
int str int def int lucky なんで運だけがフルスペルなんだ 子の文脈でいけばlucだろ あといくら略字と言えどstrは危険だから むしろ全部のを綴りを正式にした方がいいんじゃないのか あと乱数 フツーの乱数じゃねーよなコレ 二つのダイス使うのか? それとも20めんたいか?
916 :
デフォルトの名無しさん :2012/10/02(火) 00:13:40.99
課題のプリントに書いてあることをそのまま書いたんですが 問題が発生しそうなら略字じゃなくておkです。 あとダイスは使わないです。 20めんたいとは?
918 :
デフォルトの名無しさん :2012/10/02(火) 00:26:26.08
乱数の範囲は hpが50〜100 攻撃力25〜75 防御力25〜75 運0〜100 です。 えっと攻撃力だったらstr=rand()%50+25 みたいな感じです。
>>902 整数でお願いします よろしくお願いします
922 :
デフォルトの名無しさん :2012/10/02(火) 06:19:41.92
>>921 なんとかなりそうです、ありがとうございました。
バコナ「ンwwwwwwwwwwwwwwwwww」
ナロバン「コココwwwwwwwwwww」
パコナウロー「ンアwwwwwwwwwwwwwww」
コナコナ「コナーユキーwwwwwwwwwwwwwwwww」
パナ「コナーンwwwwwwwwwwwwwwwwww」
パンナコ「ナナナーwwwwwwwwwwwwwwwwwwww」
ナウパロ「ンコナーwwwwwwwwwww」
ルポナン「ナローwwwwwwwwwwww」
コナ「ユキーwwwwwwwwwwwwwwwwwwwwwwwwww」
>>920 ありがとうございます!本当に助かりました…
ナーコ「ローバーwwwwwwwww」
ナーコ「ンバーwwwwwwwwwwwwwwwwwwwwww」
パ「ッコーンンアーwwwwwwwwwwwwwwwww」
ナロバロ「ンバ^wwwwwwwwwwwwww」
937 :
デフォルトの名無しさん :2012/10/05(金) 17:34:57.04
[1] 授業単元:マルチメディア実習
[2] 問題文(含コード&リンク):
1.
0x01, 0x02, 0x03, ・・・, 0x09, 0x0a, 0x0b, 0x0c の12バイトの内容を持つバイナリファイルを”ex1.bin”というファイル名で作成するCプログラムを書け.
2.ex1.bin の内容を1バイトずつ読み出して,画面にprintfするCプログラムを書け
3.ex1.bin をファイル先頭から int が3つ順に記録されたバイナリファイルと見なして読み出し,その3つのintの値を画面にprintfするCプログラムを書け.なぜそのような整数値になったか説明せよ.
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:
[3.3] 言語: C
[4] 期限: (10月11日24:00まで
ttp://www.mi.s.osakafu-u.ac.jp/~fujimoto/gakka/mm/ にあるスライドの最後にある問題です。
初歩的なものかもしれませんがよろしくお願いします。
ロナコン「バロロwwwwwwwwwwwww」
パコナンロバー「ウホwwwwwwwwww」
パロ「ンナコウwwwwwwwwwwwwwwwwww」
>>937 /*1.*/
#include <stdio.h>
int main(void) { int i; char buf[12];
FILE *fp = fopen("ex1.bin", "wb");
for(i = 0; i < 12; i++) buf[i] = (char)(i + 1);
fwrite(buf, 1, 12, fp);
fclose(fp); return 0;
}
/*2.*/ #include <stdio.h> int main(void) { int c; FILE* fp = fopen("ex1.bin", "rb"); while((c = fgetc(fp)) != EOF) printf("%d\n", c); fclose(fp); return 0; }
/*3.*/ #include <stdio.h> int main(void) { int i, a[3]; FILE *fp = fopen("ex1.bin", "rb"); fread(a, 3 * sizeof(int), 1, fp); for(i = 0; i < 3; i++) { printf("%d\n", a[i]); } fclose(fp); return 0; }
3.の実行結果: 67305985 134678021 202050057 理由:67305985を16進数に変換すると、0x04030201。これは、0x01, 0x02, 0x03, 0x04というデータを逆順に並べたものとなっている。134678021、202050057も 同様。Windowsはリトルエンディアンのため、int型として読み込むと このような順のデータとして扱われる。
以下、intは何byteであるべきかの試論が繰り広げられます
32ビットWindowsでも64ビットWindowsでもintは4バイト。 16ビットWindowsならintは2バイト。 今時16ビットWindowsを使っている学校は無い。
まさかと思うことがあり得るのが現実 windowsのヴァージョンも コンパイラの名前もヴァージョンも書かれてない こりゃひっかけ問題じゃねーの 最後の最後でwin3.1とかふざけた処理系が出てくる流れだろコレ そこまで考えてこの手の問題を出してるなら よほどの教育家かキチガイのどちらか
残念、intのサイズはOSの対応bitとはあまり関係ない LP64モデルが主流というだけで、コンパイラオプションでILP64で吐ける Windowsだからintは4バイトとか、どこの学校で習ったんだい?
大阪府立大学 理学部で今でもwin3.1使っていると? OSやその上で動くソフト揃えるだけですごい手間だと思うの
950 :
デフォルトの名無しさん :2012/10/05(金) 19:05:07.45
32で16ビットアプリを使っている可能性もある。
intで書いてた32bitアプリを16bitに移植してlongに書き換えまくった事がある 今でも8bitとかあるし、そんときゃそん時
そういうときにtypedefしてあると楽できることがあるね
64ビットOSだと、16ビットアプリが動かないんじゃなかった?
仮想x86モードが64bitだと動かないって意味? それともWindowsの64bit版でDOSアプリが動かないって意味?
64ビット環境ではCPUが仮想8086モードをサポートしていないため、64ビット版WindowsではDOSアプリを利用できない。 ただし64ビット版Windows上の仮想マシンで動く32ビット版WindowsやXPモードでは利用可。
パコナーロー「ナロバwwwwwwwwwww」
バロバロ「コンアノ」
きっと答えは windows上でターミナルを使っている、 なんだろうな
959 :
デフォルトの名無しさん :2012/10/06(土) 00:51:36.43
>>941 ~944
解答ありがとうございます。助かりました。
それから質問文に不備がありすみませんでした。
コナーノ「バローウwwwwww」
で 結局 windowsの何で コンパイラのお名前とそのヴァージョンは 何なんだ まさか それも知らずにプログラミングしてるのか? 大学生にもなって
コナーリッヒ「コナブルゥアwwwwwww」
コナニラフ「バロコーニャwwwwwwww」
コナラン「バロコンウンニャwwwwwwwww」
コナソン「バーロウwwwwwwwwwwwww」
コナゾ「ロバンwwwwwwwwwwwwwwww」
コナー「バロスwwwwwwwwwwwwwwwwww」
ロコン「バフーンwwwwwwwwwwwwww」
コロゾ「バロロロwwwwwwwwwwwwwwww」
マッハロッドで
パクコナ「ニダーwwwwwwwwwwwwwwww」
ナコナ「ンンーバローーwwwww」
コナモト「ブルアアアアアアアアアwwwwwwwwwwww」
コナ「ルアアアアアアアアアアwwwwwwwwwwwww」
荒らしの人よく飽きないな、関心するわw
コナルンナ「ルナコナアwwwwwwwwwwwwwwwww」
荒らしの人はアホな発言したスレッドを落とすためにやってる(恥の上塗り) いっそのこと書き込むのやめたらいいのに 2年以上は同じ症状が続いてる
コウナアーン「ンンバアアアロオオオwwwwww」
>>977 どんな恥をさらしたのかしらないが◆QZaw55cn4cがあの醜態を繰り返してもなおぬけぬけと生きているというのにねえ
ナロバロ「ンコwwwwwwwwwwwwwww」
次スレ立てます
乙です
バロバロ「コナーンwwwwwwwww」
コンノ「ロバwwwwwwwwwwwww」
ココ「ナwwwwwwwwwwwwwwwwwwwwwwwwww」
ルポポポ「コナンコンアw」
ーローバ「ンナコwwwwwwwwwwwwww」
ジョンコナー「コナンwwwwwwwwwwwwwwww」
コナニーフ「コナブルァニーヤwwww」
荒らすのやめて(´;ω;`)
書き込み禁止にしろよこいつ まじ迷惑
荒らしてる奴IDが出ないからって調子に乗るなよ
荒らしてる奴いままでスルーしてきたけど さすがにこれは通報したわ
梅
梅
次スレでもよろしく
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。