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


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

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



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

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

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

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

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

232 名前:デフォルトの名無しさん mailto:sage [2009/01/05(月) 23:48:51 ]
[1]授業単元:C言語
[2]問題文:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8531.txt
[3]環境
[3.1]OS:windows XP
[3.2]コンパイラ名: visualC++2005
[3.3]言語:C
[4]期限:2009年1月6日午前8時
[5]特になし。

233 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 00:16:37 ]
>>232
for(int i=0; i <= 100 ; i++ )if( i * ( i + 1 ) / 2 >= N ) { printf("%d\n",i); break;}
while( i * ( i + 1 ) / 2 < N ) { i++; }

234 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 00:17:14 ]
whileの方の初期化忘れたw

235 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 00:18:23 ]
>>232
#include<stdio.h>
int main() {
int i=0, n;
scanf("%d", &n);
while ((n-=++i)>0) /* または for(;(n-=++i)>0;) */
if (i==100) {printf("100まで加算してもだめだった\n"); return 0;}
printf("%dまで加算すればおk\n", i);
return 0;
}

236 名前:デフォルトの名無しさん [2009/01/06(火) 00:19:31 ]
>>232
int func_for(int n) {
  int i;for(i=1;i<=100;i++) if(i*i+i >= 2*n) return i; return -1;
}
int func_while(int n) {
  int i=0; while(++i<=100) if(i*i+i >= 2*n) return i; return -1;
}
main() {
  int i,ans;scanf("%d",&i);ans = func_for(i);if(ans>=0) printf("answer = %d\n",ans); else printf("not found\n");
}

237 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:09:51 ]
>>225
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8532.txt
一応、例題の計算結果には合致するようだが、理屈は分からん。

238 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 01:11:59 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8533.txt
[3] 環境
 [3.1] OS:windows XP
 [3.2] コンパイラ名とバージョン:visual C++ 2008 Express Edition
[3.3] 言語:C言語
[4] 期限:1月9日
[5] その他の制限:特にありません。

よろしくお願いします。

239 名前:デフォルトの名無しさん [2009/01/06(火) 02:18:23 ]
[1]プログラミング
[2]int 型(符号つき32 ビット整数)および、unsigned int 型(符号なし32 ビット整数)のそれぞれの最大の素数を求めよ。
[3]環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名bcc
 [3.3] 言語:C言語
[4]特になしですが早めで。
[5]制限:エラトステネスを用いずに素数を求める。
どうか、よろしくお願いします。


240 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 03:38:59 ]
>>239
>>177あたりでどう?



241 名前:デフォルトの名無しさん [2009/01/06(火) 04:40:34 ]
>>240
みのがしてました。ありがとうございますです。

242 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 08:19:55 ]
スイマセン、どなたか>>200
(99+1)/2
の処理の意図を教えて頂けないでしょうか・・後から質問でスイマセン。

243 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 08:32:30 ]
>>242
等差数列の和=項数*(初項+末項)/2

244 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 08:44:07 ]
>>239 >>182 辺りが良いでおじゃるよ?

245 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 09:03:46 ]
>>238
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8534.txt

246 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 10:03:14 ]
>>242
ttp://www.kwansei.ac.jp/hs/z90010/sugakua/suuretu/tousasum/tousasum.htm

247 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 12:31:15 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):氏名と年齢を扱うプログラムを作りたい。これらのデータはリスト構造を用いて管理したいので、
1.リスト構造の要素となる構造体の型宣言を行え
2.上記構造体によって構築されたリスト構造の適切な箇所に新しい要素を追加する関数を作成せよ

なお、以下の点も守ること
・リスト構造は単方向リストとすること
・リスト構造のデータは年齢順に並ぶようにすること
・リスト構造はポインタ変数rootから始まるようにすること
・関数は新しい要素を受け取って、それをリスト構造に追加する形式にすること
・変数rootはグローバル変数とし、関数に渡さなくてもよい


[3] 環境
 [3.1] OS:windows XP
 [3.2] コンパイラ名とバージョン:visualC++2005
 [3.3] 言語:C/C++
[4] 期限:1月7日12:00まで
[5] その他の制限:特になし

よろしくお願いします。

248 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 12:38:29 ]
麻呂のクソースを改変するでおじゃるよ

249 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 15:05:44 ]
[1] 授業単元:C言語プログラミング
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8535.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VC2005
 [3.3] 言語:C++
[4] 期限:2009/1/8 23:00まで
[5] その他の制限:for,if等基本的なものを使う。strは禁止。

それではよろしくお願いします。

250 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 15:08:14 ]
>strは禁止。
str〜系関数のこと?
最初std::stringかと思ったが・・・



251 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 16:35:41 ]
[1] 授業単元:プログラミング
[2] 問題文
Step 1. float型配列の先頭アドレスを受け取り,その配列内から最大の値を探して,
それを関数値として戻す関数 float max(float data[], int n) を定義せよ.ここで,nは配列data[]に入っている有効なデータの数(有効な配列要素は,0〜n-1)である.
またデータに負の値はないものとする.

Step 2. main()関数内で,要素数100程度のfloat型配列を宣言し,課題11-2で作成したデータ入力関数のinput()関数を再利用してデータを配列に入力するようにプログラムする.
次に,Step1で作成した関数をmain()関数内呼び出して最大値を表示せよ.

[3] 環境
 [3.1] OS:Windows vista
 [3.2] コンパイラ名とバージョン:VC2008
 [3.3] 言語:C++
[4] 期限:2009/1/8 23:00まで
[5] その他の制限 特になし

よろしくお願いします



252 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 17:01:44 ]
>>251
問題文も読まずに丸投げとは・・・

253 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 17:08:38 ]
まだスレタイも読めない奴がいるのか

254 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 17:12:52 ]
[1] 授業単元:プログラミング演習U
[2] 問題文:
以下の仕様で収支残高管理プログラムを作成せよ.ただし,残高処理の関数を独自で定義すること.
その際,ファイルポインタについてはグローバル変数として宣言しても良い.
初期状態を除いてプログラム実行時に既存の残高額のファイル(balance.txt)を読み込む.
ファイルが存在する場合に限り,balance.txt)を読み込む処理をすれば良い.
各処理を選択するメニュー画面を残高額とともに表示する.可能であれば,残高は桁区切りカンマを用いて表示すること.
終了時にその時点の残高額をファイル(balance.txt)に書き込む.
ヒント:最初にbalance.txtを読み込みモードで開いて読み込んだ後は,即座にファイルを閉じ,最後の書き込み時に,改めて書き込みモードで開いて同名のファイルに書き込みをすれば良い.
また,ファイルからの金額の読み込みにはfscanfを,書き込みにはfprintfを使用すると良い.

255 名前:254 mailto:sage [2009/01/06(火) 17:15:48 ]
>>254続き

[実行例]
***** 収支残高管理 *****

残高は \0 です.

[1] 収入
[2] 支出
[99] 終了

処理を選択してください:1

収入金額:12345


***** 収支残高管理 *****

残高は \12,345 です.

[1] 収入
[2] 支出
[99] 終了

256 名前:254 mailto:sage [2009/01/06(火) 17:16:27 ]
>>255続き

処理を選択してください:2

支出金額:20000


***** 収支残高管理 *****

残高は \-7,655 (赤字)です.

[1] 収入
[2] 支出
[99] 終了

処理を選択してください:99
終了します.

[3] 環境
 [3.1] OS:Windows XP
 [3.2] コンパイラ名とバージョン:Microsoft Visual Studio.Net 2003
 [3.3] 言語:C++
[4] 期限:2009年1月8日
[5] その他の制限:特になし

よろしくお願いします。

257 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 17:21:54 ]
>>253


258 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 17:38:13 ]
>>251
#include<iostream>
#include<algorithm>

float max(float data[], int n){
if(n<=0) return -1.0;
return *std::max_element(data, data+n);
}

int input(float data[], int data_num_max){
int data_num;
for(data_num=0;data_num<data_num_max;){
float value;
if(!(std::cin >> value)) break;
data[data_num++]=value;
}
return data_num;
}

int main(void){
float data[100];
int data_num, data_num_max=sizeof(data)/sizeof(data[0]);

data_num=input(data, data_num_max);
std::cout << max(data, data_num) << std::endl;

return 0;
}

259 名前:デフォルトの名無しさん [2009/01/06(火) 18:26:57 ]
[1] 授業単元: プログラミング入門演習
[2] 問題文(含コード&リンク):
 複数の整数のうち、指定した数で割り切れる整数の個数を求めるプログラムを作成せよ。
 入力に関して
  キーボードから入力する整数の個数を入力し(最大で128に対応すること)改行する。
  次に指した数の整数をスペース1つずつ開けて1行で入力し、改行する。
  最後に1つ整数を入力し、改行する。この最後に入力した値で割り切れるかどうか
  判定する。この一連の入力時,例題や解答例のような入力を保す文字等は決して表示
  しないこと。
 出力に関して
  割り切れる整数の個数を数値のみ(+改行)を出力する。指定した数値・改行以外の
  文字等の出力は一切行わないこと。
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:Visual Stdio 2008
 [3.3] 言語:C言語
[4] 期限: 1/8 12:00
[5] その他の制限:C言語の基礎を習っています。

よろしくお願いします

260 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 19:07:31 ]
>>250
説明不足でごめんなさい
strlen関数のことです

#include <stdio.h>

void main(){

char moji[100];
int i=0,x;

printf("文字列を入力:");
gets(moji);
printf("\n\n");
while(moji[i] != '\0'){
i;
i++;
}
x=i+1;
printf("文字列の長さ=%d",x);
printf("\n\n");
}

という求め方を習ったのですが、strlen関数は習っていないので・・・



261 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 19:38:19 ]
>>260
C++?

262 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 19:46:33 ]
>>243
>>246
ありがとうございました
助かりましたw

263 名前:つばめ [2009/01/06(火) 20:35:24 ]
分からない問題があります。
正の整数nを入力し、nの約数の和を表示するプログラムを作る問題です。
初心者なので、宜しくお願いします。

264 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 20:40:56 ]
一つの整数の約数って・・・・1からnまで全部足せばいいのか?w

265 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 20:52:19 ]
>>263
#include <stdio.h>
int sum(int n){ return n == 0 ? 0 : n + sum(n - 1); }
int main(int n){ return scanf("%d", &n), printf("%d\n", sum(n)); }


266 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 20:55:10 ]
約数の意味がわからないアホがここで何してんの?

267 名前:265 mailto:sage [2009/01/06(火) 20:56:12 ]
アッー

>>264に騙された

268 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:00:21 ]
>>263
#include <stdio.h>

int main(void)
{
int i, n, sum;
scanf("%d", &n);
for(i=1,sum=n; i<n; i++) if(!(n%i)) sum += i;
printf("%d", sum);
return 0;
}

269 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:14:41 ]
>>259
#include<stdio.h>

int main(void){
int data[128], data_num;
int i, div;

scanf("%d", &data_num);
for(i=0;i<data_num;i++) scanf("%d", &data[i]);
scanf("%d", &div);

for(i=0;i<data_num;i++) if(data[i]%div==0) printf("%d\n", data[i]);

return 0;
}

270 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:17:12 ]
表示するのは個数だろ



271 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:27:20 ]
>>261
返事遅くなって毎度毎度すいません・・・
C++です

272 名前:つばめ [2009/01/06(火) 21:31:50 ]
質問回答ありがとうございます。
C++ではなく、C言語の方です。


273 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:38:08 ]
>>270
このツンデレが!

274 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:39:56 ]
なんでもツンデレ言うアホにはうんざりだ

275 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:43:58 ]
じゃあ世話焼きで俺のことが大好きな妹で

276 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 21:59:37 ]
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8536.txt
[3] 環境 
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: visualc++2005
 [3.3] 言語:C
[4] 期限:2009年1月7日AM7時

よろしくお願いします

277 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:06:46 ]
[1] 授業単元: 情報処理応用
[2] 問題文(含コード&リンク):
DirectShowを用いてtest.aviなどファイルから再生している動画をout.aviなど別ファイルとして保存する
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C++
[4] 期限: 1月7日
[5] その他の制限:
スレ違いかもしれませんができればお願いします


278 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:08:05 ]
>>276
#include <stdio.h>

int main(void)
{
int i, j = 0;
while (j < 2 && scanf("%d", &i) != EOF) {
if (i < 0) {
puts("negative value");
j++;
}
else {
j = 0;
printf("%d\n", 2*i);
}
}
return 0;
}

279 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:12:58 ]
[1] 授業単元:アルゴリズムの基礎および演習
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8518.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 2009年1月10日12:00まで
[5] その他の制限:特にありません。
よろしくお願いします。

280 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 22:26:15 ]
>>279
1. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8540.txt
2. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8543.txt



281 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:07:11 ]
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8538.txt
[3] 環境 
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン: visualc++2005
 [3.3] 言語:C
[4] 期限:2009年1月7日AM9時
よろしくお願いします

282 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:10:01 ]
>>279
3. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8544.txt
4. kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8545.txt

283 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:29:31 ]
>>281
pc11.2ch.net/test/read.cgi/tech/1229424329/601


284 名前:デフォルトの名無しさん mailto:sage [2009/01/06(火) 23:57:36 ]
>>283
これを利用しろということですか?

285 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 00:04:29 ]
>>278
ありがとうございます
ちなみにfor文の方はどうなっているのでしょうか?

286 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 00:11:58 ]
[1] 授業単元:C言語
[2] 問題文:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8546.txt
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン:gcc
[3.3] 言語:C
[4] 期限:09年1月7日24:00まで
[5] その他の制限:丸投げですいません。基礎的な関数のみでよろしくお願いします。

287 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 00:14:42 ]
>>285
#include <stdio.h>

int main(void)
{
int i, j = 0;
for (;j < 2 && scanf("%d", &i) != EOF;) {
if (i < 0) {
puts("negative value");
j++;
}
else {
j = 0;
printf("%d\n", 2*i);
}
}
return 0;
}

こんな感じでどうかな

288 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:03:59 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8547.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C
[4] 期限: 1月7日
[5] その他の制限: 特になし

よろしくお願いします

289 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:10:06 ]
>>288
課題7-3がないと無理

290 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:17:22 ]
>>289
無視してかまわないです

追記
データ入力数は最大のmax個に達するか,負値が入力されるまでデータ入力を繰り返すものとする



291 名前:デフォルトの名無しさん [2009/01/07(水) 01:21:38 ]
[1] 授業単元:計算機工学
[2] 問題文(含コード&リンク):下記
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: VC++2008
 [3.3] 言語: C
[4] 期限: 1月15日
[5] その他の制限: 特になし


検索問題

データ数10万 ランダムな対象を1万回検索する
先頭から検索すると平均で1000秒かかった
高速化するにはどうしたらよいか
ソートされてる場合とされてない場合のそれぞれについて答えよ


292 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:26:38 ]
>>291
ソートされてない場合
まずソートする、 このとき オーダーが n log になるようなまともなソートを使う
これを二分探索する

ソートされてる場合
二分探索する



293 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:27:09 ]
オーダーは n * log (n) ね

294 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:28:24 ]
>>286
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8548.txt

295 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:31:32 ]
>>288
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8549.txt

296 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:42:34 ]
>>291
それは本当にプログラミングの課題なのか?
考察ではなく実際に試したとしたら、116日ほどかかった計算になるんだが

297 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:42:55 ]
>>295
ありがとうございます

298 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 01:54:29 ]
>>249
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8552.txt

299 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 02:31:06 ]
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):
キーボードから入力した整数と小数(それぞれ1つずつ)を乗算した結果を表示するプログラムを、
ポインタによる間接参照演算子を用いて作成せよ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:1月7日24時
[5] その他の制限: 入力、乗算、表示部分全てでポインタを用いる

よろしくお願いします。

300 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 02:50:01 ]
>>296
その発想はなかったわ。



301 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:09:50 ]
>>299
設問者の意図がよく分からんが、こういうことか

#include <stdio.h>
int main(void) <%
char buf<:256:>;
int n;
double d;
int *np = &n;
double *dp = &d;
printf("input interger number: ");
fgets(buf, 256, stdin);
sscanf(buf, "%d", np);
printf("input decimal number: ");
fgets(buf, 256, stdin);
sscanf(buf, "%f", dp);
printf("%d times %f equals %f.\n", *np, *dp, *np**dp);
%>

302 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 03:56:04 ]
宿題出てるんですがよくわかりません
よろしくお願いします

次のように、整数値を表すクラスを設計する

データメンバ
x:xの座標(ただし 0-1000とする)
y:yの座標(ただし 0-1000とする)
z:zの座標(ただし 0-1000とする)
    
メンバ関数
void setX(int a): xの座標を設計する(範囲外の値は、error messageを出力する)
void setY(int b): Yの座標を設計する(範囲外の値は、error messageを出力する)
void setZ(int c) Zの座標を設計する(範囲外の値は、error messageを出力する)
int getX(): Xの座標値を得る
int getY(): Yの座標値を得る
int getZ(): Zの座標値を得る

結果は、次のように表示する

Please Input X
3
Please Input Y
1000067
The value of Y is a mistake, Please input Y again!
5
Please Input Z
7
The result is: (3,5,7)

303 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 04:01:54 ]
>>302
テンプレ嫁

304 名前:デフォルトの名無しさん [2009/01/07(水) 09:05:19 ]
[1] 授業単元:Cプログラミング
[2] 問題文(含コード&リンク):下記
[3] 環境
[3.1] OS: WindowsVista SP1
[3.2] コンパイラ名とバージョン:StadyC
[3.3] 言語: C
[4] 期限: 2009年1月7日 21時まで
[5] その他の制限: 特になし

『ジョーカーを除くトランプ52枚(1~13×4種)からランダムに5枚を抜き出した時、
・ワンペア(同じ数字が2枚)
・ツーペア(同じ数字が2枚のものが2組)
・スリーカード(同じ数字が3枚)
・ストレート(5枚連続した数値、[10,11,12,13,1]や[1,2,3,4,5]はOKだが[12,13,1,2,3]など1をまたぐケースはNG)
・フラッシュ(5枚とも同種)
・フルハウス(ワンペアとスリーカードの組み合わせ)
・フォーカード(同じ数字が4枚)
・ストレートフラッシュ(ストレートとフラッシュの組み合わせ)
それぞれの役が発生する確率(実際には試行した回数)をモンテカルロ法により求めるプログラムを作成する。
ただし、上位(記載が下にあるもの)の役と下位の役を同時に満たす場合は上位の役を優先する。
因数にポインタを含む関数を適当に作成し、利用すること。
メイン関数直下での処理はできるだけ避けることが望ましい

入力に関して
キーボードから、試行回数(+改行のみ入力する)。
最大でもint型に収まる数値とする。
このとき、入力を促す文字などは決して表示しないこと。
出題に関して
試行したうち、上記の8つの役の成立回数(+改行)のみワンペアから順に1行ずつ出力(計8行)。
指定した数値・改行以外の文字などの出力は一切行わないこと。



305 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 09:06:33 ]
>>304
マルチ死ね

306 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 09:11:56 ]
>>305
>>1


307 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 09:23:49 ]
>>280
ありがとうございます。

308 名前:304 mailto:sage [2009/01/07(水) 09:26:40 ]
なんとか自力で出来ました
どうもお手数おかけしました

309 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:08:04 ]
>>300
エンジニアにむいてないな、オマエ。

310 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:10:14 ]
>>306




311 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:27:55 ]
>>310
>>1


312 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:27:59 ]
>>304
引数を「いんすう」と読んでる教育機関なんか存在しないんじゃね?

313 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:28:11 ]
>>311


314 名前:回答する気もないくせに居座るだけの無能、粘着基地外 [2009/01/07(水) 11:35:04 ]
313 名前:デフォルトの名無しさん 投稿日:2009/01/07(水) 11:28:11
>>311

315 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:36:28 ]
>>312
そこから考えると、
コイツは前のスレッドで同じ宿題二度投げてるやつじゃね?

316 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:36:35 ]
>>314


317 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:36:44 ]
>>314
>>1

318 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:38:12 ]
>>304
pc11.2ch.net/test/read.cgi/tech/1231180205/128

319 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:43:13 ]
>>304
detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1422008424

320 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 11:52:44 ]
マルチ先を貼られた途端におとなしくなった。



321 名前:デフォルトの名無しさん [2009/01/07(水) 12:00:17 ]
>>317


322 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 12:01:14 ]
>>321


323 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 12:01:20 ]
>>319
うわぁ〜〜〜、質問する側もどうかと思うが、それを見つけてくる粘着基地外暇人も
きめぇ〜〜〜

324 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 12:01:40 ]
>>323
>>1

325 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 12:34:32 ]
巡回先が複数あるやつは多いだろ
特に質問系のスレは

326 名前:デフォルトの名無しさん [2009/01/07(水) 13:13:30 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):下記
[3] 環境
 [3.1] OS: Windows Vista
 [3.2] コンパイラ名とバージョン:Visual Stdio 2008
 [3.3] 言語:C言語
[4] 期限: 1/8 12:00
[5] その他の制限:なし。

中央値を求める関数を作成し、その関数を使用して中央値を出力する
プログラムを作成せよ。関数は下記の通りとする。

int median(int *in,int num)
   in   複数の整数値が格納された配列(先頭)ポインタ
   num  入力値の数
   戻り値 中央値

入力に関して
 キーボードから入力する整数の個数を入力し(最大で128に対応すること)改行する。
 次に指定した数の整数をスペース1つずつ開けて1行で入力し、改行する。

よろしくお願いします。

327 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:22:16 ]
>>298
できました。ありがとうございます。

ですが
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8553.txt
こういった形にできますでしょうか?
なるべくforじゃなくてwhileを使いたいのですが・・・


328 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:23:13 ]
>>326
C/C++の宿題を片付けます 101代目
pc11.2ch.net/test/read.cgi/tech/1197132472/929


329 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:25:14 ]
1年前ワロタww

330 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:28:44 ]
毎年同じ内容の講義なんて当たり前だろ?



331 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:32:07 ]
>>330
注目点は、環境がStudy Cなところじゃね?
>>304今年の学生はそれもつづれないようだけど。

332 名前:デフォルトの名無しさん mailto:sage [2009/01/07(水) 13:38:33 ]
>>326
#include <stdio.h>
int median(int *in, int num)
{
int i, j, temp;
for(i=num-1; i > 0; i--) {
for(j=0; j<i; j++) {
if(in[i] > in[j]) {
temp = in[i];
in[i] = in[j];
in[j] = temp;
}}}
return num & 1 ? in[num/2] : (in[num/2-1] + in[num/2]) / 2;
}
int main(void)
{
int i, num, in[128];
scanf("%d", &num);
for(i=0; i<num; i++) scanf("%d", in + i);
printf("%d", median(in, num));
return 0;
}






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

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

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