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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2009/10/17(土) 01:08:18 ]
あなたが解けない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++の宿題片付けます 130代目
pc12.2ch.net/test/read.cgi/tech/1250204272/

596 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 19:19:55 ]
[1] 授業単元:
アルゴリズムとプログラミング
[2] 問題文(含コード&リンク):
下のアドレスのプログラムに追加して、ダイクストラ法のプログラムを完成させてください
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10070.txt
プログラムに使用するデータファイル↓
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10071.txt
[3] 環境
 [3.1] OS: (Windows/Linux/等々)
Linux
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
gcc
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
11月10日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
特にありません

よろしくお願いします。

597 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 19:59:34 ]
>>569
台形公式のことですよね。
codepad.org/XRuQqaF0

598 名前:初心者 ◆.6Hqkk7dyk [2009/11/05(木) 21:06:28 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク): 2つの整数値と1つの文字を、例えば「4+2」のように入力し、
                   入力に応じた四則演算を行って結果を出力するプログラムを作成しなさい。
                   ただし、中央の文字に四則演算の記号以外の文字が入力された時のことも考慮しなさい。
[3] 環境
 [3.1] OS: UNIXのemacs
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:2009年11月7日17時まで

まだまだ初心者でよくわかりませんorz
よろしくお願いします。

599 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 21:51:19 ]
[1] 授業単元: プログラミング
[2] 問題文(含コード&リンク):
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10073.txt

[3] 環境
 [3.1] OS: UNIX
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:11月13日まで
[5]無し

構造体とポインタの問題です、よろしくお願いします。

600 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 03:11:52 ]
>>507
誰もやらないから最初の問題だけやってみた
提出あさってじゃんね

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

601 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 08:26:53 ]
>>599
1問目
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10075.txt

2問目
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10076.txt


602 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 13:20:08 ]
>>565
N*2が並び替える配列のサイズであるとしたら、
最初に呼び出したときにSENTINELがb[N]、c[N]の範囲外に代入されてしまう。

再帰関数を呼び出すごとにb[N],c[N]を確保するのは領域の無駄以外の何者でもない。

603 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 15:43:27 ]
>>602
codepad.org/JEJ72Jb5

604 名前:デフォルトの名無しさん [2009/11/06(金) 22:56:50 ]
#include <iostream>
using namespace std;

int main() {

int i,goukei=0;
int kokugo[5];
float heikin;

for(i=0;i<5;i++) {
cout << "出席番号" << i+1 << "番の国語の成績を入力してください\n";
cin >> kokugo[i];
goukei = goukei + kokugo[i];
}

heikin = (float)goukei/5.0;
cout << "平均点は" << heikin << "点です\n";

for(i=0;i<5;i++) {
cout << "出席番号" << i+1 << "番の国語の成績は" << kokugo[i];
cout << "点で、平均との差は" << heikin-(float)kokugo[i] << "です\n";
}

return 0;

}

これを
数学の点数も入力する
数学の平均も出力する
国語と数学の総合的な平均点も出力する
ようにするにはどうすればいいんですか?



605 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 23:01:32 ]
>>1を読む

606 名前:604 [2009/11/06(金) 23:21:34 ]
ごめんなさい
C++です

607 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 23:45:10 ]
じゃなくてちゃんとテンプレに従った形で書けって事
プログラムはろだにうpしろ

608 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:08:45 ]
>>604
小学生でも出来るレベルだぞ・・・それ

609 名前:609 mailto:sage [2009/11/07(土) 02:02:45 ]
#include <iostream>
using namespace std;
int main() {
  int goukei_k = 0, goukei_s = 0;
  int kokugo[5], suugaku[5];
  float heikin_k, heikin_s, heikin;

  for(int i=0; i<5; i++) {
    cout << "出席番号" << i+1 << "番の国語の成績を入力してください\n";
    cin >> kokugo[i];
    goukei_k += kokugo[i];
    cout << "同じく数学の成績を入力してください\n";
    cin >> suugaku[i];
    goukei_s += suugaku[i];
  }
  heikin_k = (float)goukei_k/5.0;
  cout << "国語の平均点は" << heikin_k << "点です\n";
  heikin_s = (float)goukei_s/5.0;
  cout << "数学の平均点は" << heikin_s << "点です\n";
  heikin = (float)(goukei_k + goukei_s)/5.0;
  cout << "合計の平均点は" << heikin << "点です\n";
  for(int i=0; i<5; i++) {
    cout << "出席番号" << i+1 << "番の国語の成績は" << kokugo[i];
    cout << "点で、平均との差は" << heikin_k - kokugo[i] << "です\n";
    cout << "同じく数学の成績は" << suugaku[i];
    cout << "点で、平均との差は" << heikin_s - suugaku[i] << "です\n";
    cout << "同じく合計の成績は" << kokugo[i] + suugaku[i];
    cout << "点で、平均との差は" << heikin - (kokugo[i]+suugaku[i]) << "です\n";
  }
  return 0;
}

610 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 10:36:26 ]
[1] 授業単元:オペレーティングシステム実習
[2] 問題文
マルチプロセスを利用したシステムの開発を行い,結果を以下の項目にまとめ報告せよ. fork(),セマフォ,メッセージをすべて使用すること.
・システムの要求仕様
・プログラムのソースファイル
・上記プログラムの簡単な解説,特に fork(),メッセージ,セマフォの周辺について
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: Gcc
 [3.3] 言語: C言語
[4] 期限: 11/9いっぱい
[5] その他の制限:なし

フォーク、セマフォの作り方がよくわからないのでよろしくおねがいします。

611 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 13:48:39 ]
>>610
>>474-479

612 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 16:31:27 ]
>>598
なにか異常な状況になると、なにもせずに終わります。
codepad.org/kU1vQSYE

613 名前:デフォルトの名無しさん [2009/11/07(土) 21:44:16 ]
>>609
ありがとうございました

614 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 22:13:11 ]
>>598
↓空白が入った場合は考慮していない(1 + 2など)。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10077.c



615 名前:デフォルトの名無しさん [2009/11/07(土) 23:42:13 ]
C++で10進数を2進数に変換するプログラムを配列使って
順番通りに表示できるようにするのってどうするんですか
#include <iostream>
using namespace std;

int main() {
で始まる感じで(もしかしたらcmathとか使うかもしれないですが)
最後は
return 0;
}です

616 名前:デフォルトの名無しさん [2009/11/08(日) 00:52:50 ]
>>608
へぇ〜ほぉ〜小学校でC言語やプログラミングって習うんだぁ。どこ?

617 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 00:56:18 ]
冥途市立地獄小学校

618 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 01:34:55 ]
>>616
小学校は難しいとしても、勘のいい人なら普通の人でもできる内容かもね。
国語を算数に変えたら算数になることは分かるだろうし。

619 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 01:39:12 ]
出来ようが出来まいがプログラミング言語を小学生がやるのは愚の骨頂

620 名前:620 mailto:sage [2009/11/08(日) 01:42:22 ]
#include <iostream>
using namespace std;
int main() {
  int i, n, bin[32];

  cout << "Number:"; cin >> n;
  cout << "Binary:";
  for(i=0; i<32; i++) {
    bin[i] = n & 1;
    n >>= 1;
  }
  for(i=31; i>=0; i--)
    cout << bin[i];
  return 0;
}

621 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 01:47:24 ]
>>619
小学生がやるのは個人の好き勝手だと思うし、愚かだとは思わない。
よしんば愚かだと思ってもそれが骨頂の愚かな行為とまでは思えない。

622 名前:デフォルトの名無しさん [2009/11/08(日) 01:52:07 ]
>>620
19を2進数にすると10011だと思うんですが
その前に0が沢山並ぶのはOKなんでしょうか?

623 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:04:07 ]
>>621
プログラミングというのは本来、プログラミング言語自体を
作りながらやるもの。これは到底小学生に出来る世界じゃない。

出来合のプログラミング言語解釈疑似実行プログラム(=コンパイラ)
を使って遊ぶことは、実はプログラミングとは言うのはかなり
恥ずかしい。

有害無益とまでは言わないが、商業的には兎も角、教育的な意味で
有益にするのはかなり難しい。
相当に優秀な教師でも居ない限りね。

624 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:14:49 ]
>>623
たとえば何の言語作ったの?



625 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:20:48 ]
Cはそれなりに安定した多方面に応用されている信頼できる言語の
ひとつだが万能な言語じゃない。万能な言語など無い。

626 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:22:36 ]
Cが万能じゃないことなどプログラマなら誰でも知ってる。
それはそうと、俺は言語作ったこと無いけどみんなはあるの?

627 名前:デフォルトの名無しさん [2009/11/08(日) 02:26:47 ]
>>623
プログラム言語だってコンパイラだって出来合いのをコンパイルしたもんだろ
機械語に直接翻訳するようなのを自分で作るなら話は別だが

628 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:28:20 ]
>>623

>プログラミングというのは本来、プログラミング言語自体を
>作りながらやるもの。

そもそもこの定義はどこから来たのw?

629 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 02:30:18 ]
比喩が理解出来なくなってる段階で、すっかりプログラム
されちゃってるなw

630 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:01:49 ]
比喩なんてもんじゃない、ただのバカだろw

631 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:03:10 ]
俺にはどれが何の比喩表現なのかが分からない

632 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:05:38 ]
バカなプログラマは、コードにバグが無いと信じ、言語にバグがあると信じ込む。だから言語を作れるんだみたいな傲慢なことを言う。

優秀なプログラマは、天賦な言語にバグなどないと敬虔に信じ
救われる。

633 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:23:30 ]
彼は言語を作れるんだなんて言ってない。
プログラミングとは言語を作ることだと言っている。
つまり、プログラマと名乗る以上、優秀であろうとそうでなかろうと言語を作っているはずなんだよ

だから俺はプログラマじゃないの。

634 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:25:48 ]
プログラムをされている方なんですね...わかります



635 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:27:24 ]
行ってることが意味不明
C言語でおk

636 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 03:27:26 ]
文法とかの理解も妖しいのに言語なんか作れるのか?

637 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 04:23:01 ]
文法など理解出来るしろものじゃないからこそ言語を天賦の
ものじゃないと考えるわけだ。

638 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 05:23:26 ]
[1] 授業単元:
[2] 問題文(含コード&リンク):ソケット通信を用いたチャットの作成
(mikilab.doshisha.ac.jp/dia/research/report/2003/0714/006/report20030714006.html)
にある2.1、2.2のクライアント、サーバのプログラム(出来れば簡単な解説もお願いします)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C++
[4] 期限: 2009年11月08日23:00まで
[5] その他の制限: なし


639 名前:620 mailto:sage [2009/11/08(日) 07:55:58 ]
 >>620
 19を2進数にすると10011だと思うんですが
 その前に0が沢山並ぶのはOKなんでしょうか?
620は○△先生じゃないから、質問されても答えられない。
-9を2進数にすると幾つだと思うか?!

640 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 09:03:53 ]
>>616
東京にIQ130以上の子供だけを入園させることが出来る幼稚園(だっけな?)とかなかったかな
確かそこでプログラミングしてたはず

それに近頃の、ませた小学生がプログラミングに興味を持ってるのもいるしなぁ。

641 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 09:34:41 ]
>>596お願いします><

642 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 12:47:03 ]
俺、小学生の時、パソコン買って、プログラミングしてたよ。
簡単なお絵描きプログラムなんですが、
BASICの本のサンプルみたいなのを、機能拡張しながら使ってた。
そのときはテープも使えず、フロッピーディスクなんてのもないから、
覚えてしまったコードを毎回入力してたけど、毎回すこしずつ違ったコードでした。


643 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 13:49:24 ]
>>639
負の数を2進数にする時のためにも、最初に全体のビット数は
何ビットなのかはっきりさせておかなければ

2進数では大抵負の数は2の補数という表現を取り、最上位
ビットは1になる

644 名前:デフォルトの名無しさん [2009/11/08(日) 20:09:22 ]
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10079.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限:11/13まで
[5] その他の制限: 特になし



645 名前:デフォルトの名無しさん [2009/11/08(日) 20:35:07 ]
[1] 授業単元: 画像情報工学
[2] 問題文:ブレゼンハムのアルゴリズムを用いて、ウィンドウ内に線分を描画するプログラムを
      作成しなさい。(以下の仕様で作成せよ)

      ■仕様(マウスの右と左のボタンを使用する。候補線の表示なし。)
       マウスの左ボタンクリック      線分の始点座標の指定
       マウスの右ボタンクリック      線分の終点座標の指定及び線分の描画

[3] 環境
 [3.1] OS: Windows vista
 [3.2] コンパイラ名とバージョン: Visual C++ 2008
 [3.3] 言語: C++
[4] 期限:2009年11月17日まで
[5] その他の制限:特になし

646 名前:デフォルトの名無しさん [2009/11/08(日) 21:52:25 ]
>>639
○△先生ってなんですか?

647 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 22:55:28 ]
丸さんかっけー

648 名前:デフォルトの名無しさん [2009/11/08(日) 23:32:22 ]
>>647
意味わからないですよね?
普通に読むとそうですが

649 名前:デフォルトの名無しさん mailto:sage [2009/11/08(日) 23:45:32 ]
>>639
#include <iostream>
#define TRUE (1==1)
using namespace std;
int main() {
  int i = 0, n, bin[sizeof(int) * 8];
  
  cout << "Number:"; cin >> n;
  cout << "Binary:";
  while(TRUE){
    bin[i] = n & 1;
    if ((n >>= 1) == 0){break;}
    i++;
  }
  while(i >= 0){
    cout << bin[i--];
  }
  cout << '\n';
  return 0;
}

650 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 00:05:27 ]
つーか直書きやめてcodepad使おうぜ

651 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 00:27:39 ]
[1] 授業単元: C言語演習
[2] 問題文(含コード&リンク):
正の整数nの2乗の数に、2種類の数字しか現れない
4桁の正の整数 n をすべて挙げなさい
[3] 環境
 [3.1] OS: linux
 [3.2] コンパイラ名とバージョン: gcc 
[3.3] 言語: c言語
[4] 期限: 2009年11月13日13:00まで
[5] その他の制限:なるべく簡単にお願いします
よろしくお願いします

652 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 00:40:56 ]
>>651
#include<stdio.h>
int main(void){
puts("1000 2000 3000 3114");
return 0;
}

653 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 00:44:06 ]
>>652
求めるプログラムお願いします

654 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 01:09:50 ]
>>596
ダイクストラ法の部分だけ実装しています。シミュレーション部分は、そもそもなんのシミュレーションなのかわからないので
放っています。
codepad.org/bxTi0dpv
何をシミュレートしているのか詳しくおしえていただければ、あるいは続きを書けるかもしれません。



655 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 01:41:35 ]
>>651
()を適当に埋めて整数の桁に現れる数を数え上げる関数
count(int n)を作ってこれを使って完成させな

int count( int n ){
int i,c[10],d;
for(i=0;i<(?);i++) c[i]=( );
while(?){ c[(?)]++;n/=10; }
for(i=d=0;i<10;i++) d+=(c[i]==0)?(?):(?);
return (?);
}

656 名前:656 mailto:sage [2009/11/09(月) 01:42:47 ]
#include <stdio.h>
int main(void){
  int i, j, ii, count, digit[10];
  for(i=1000; i<10000; i++){ // sqrt(1000) = 31.6227
    for(j=0;j<10;j++) digit[j]=0;
    ii = i*i;
    for(j=0;j<8;j++) { // 10,000*10,000 = 100,000,000
      digit[ii%10] = 1;
      ii /= 10;
      if(ii==0) break;
    }
    count = 0;
    for(j=0;j<10;j++)
      if(digit[j] == 1) count++;
    if(count==2) {//printf("-->");
      printf("%d %d %d\n", i, count, i*i);
    }
  }
}

657 名前:デフォルトの名無しさん [2009/11/09(月) 03:47:58 ]
[1] 授業単元: C言語のポインタ、配列、ファイルの問題です
[2] 問題文(含コード&リンク):
n件のデータを配列に入力しその平均値を出力するプログラムをつくり、
実行部において添字演算子は用いず、*(p+i)と*p++それぞれを用いるパターンを作る
ただし、入出力処理をファイル処理に、入出力ファイル名はコマンドラインで指定する
[3] 環境
 [3.1] OS: とくになし
 [3.2] コンパイラ名とバージョン: とくになし
[3.3] 言語: c言語
[4] 期限: 2009/11/09日中
[5] その他の制限:途中まで出来ている部分を使ってください。
#include<stdio.h>
int main(void)
{
int A[100];
int a,b,i,n,*p;

*p=A[0];
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",*(p+i));
}
for(i=0;i<n;i++){
b+=*(p+i);
}
a=b/n;
printf("%d",a);
return(0);
}
です。よろしくお願いします。

658 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 05:50:29 ]
>>655-656
ありがとうございます.コンパイルしてみます

659 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 09:20:08 ]
>>651
#include <stdio.h>

int check(int n)
{
int i, a[2], temp, c = 0;

while(n) {
temp = n % 10;
for(i=0; i<c; i++) if(a[i]==temp) break;
if(i==2) return 0;
if(i == c) a[c++] = temp;
label:
n /= 10;
}
return 1;
}

int main(void)
{
int i;

for(i=1000; i<10000; i++) if(check(i*i)) printf("%d\n", i);

return 0;
}

660 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 09:21:02 ]
ゴミが残った
label:は消しといて

661 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 09:29:06 ]
>>659
バグってるぞ

実行結果

1000
2000
3000
3114


662 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 09:33:09 ]
お前は何を言ってるんだ?

663 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 09:36:33 ]
>>652>>656も答えはその4つなんだが、どこがバグってるんだろ
表示するのは4桁の整数の方だし

664 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 10:34:07 ]
正の整数 nの2乗の数に、「10の倍数でなく、
10進数表記で、3種類以上の数字が現れる、
もしくは1種類の数字しか現れない」という
ことが無いものをすべて挙げなさい



665 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 10:35:27 ]
正の整数 nで、その2乗が10の倍数でなく、
「「10進数表記で、3種類以上の数字が現れる、
もしくは1種類の数字しか現れない」という
ことが無いもの」をすべて挙げなさい

666 名前:656 mailto:sage [2009/11/09(月) 10:37:30 ]
4桁までの数。
int main(void)
{
  int i;
  for(i=1; i<10000; i++) if(check(i*i)) printf("%04d\n", i);
  return 0;
}

667 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 10:52:35 ]
で、勝手に問題書き換えてバグがないものをバグって言い張るつもり?

668 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 10:56:46 ]
>>665>>661とは無関係
>>652への追加課題

669 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 10:59:29 ]
問題出したきゃ、大学でも専門学校でもどこでもいいから講師になってからにしろよw

670 名前:656 mailto:sage [2009/11/09(月) 11:01:05 ]
書き換えてないぞ。柿加えた。10の倍数を含まない。
int main(void) {
  int i;
  for(i=1; i<10000; i++) if(i%10) if(check(i*i)) printf("%4d %d\n", i, i*i);
  return 0;
}

671 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:02:37 ]
恥ずかしい突込みをした661が話を逸らそうとして必死にしか見えないんだがw

672 名前:656 mailto:sage [2009/11/09(月) 11:07:19 ]
1回だけのは除く。
for(i=4; ......


673 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:08:21 ]
講師は問題を解いて説明する
生徒はそれを写す
んだろ?

674 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:12:54 ]
656なら他人の関数使ってないで、自分が書いたやり方でやれよw



675 名前:656 mailto:sage [2009/11/09(月) 11:34:26 ]
>>670 で、数字が1種類でも動くようにcheck()を改良せよ。

676 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:39:58 ]
>>661
で、どこがバグってるの?

677 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:40:22 ]
>>656
出来ないの?

678 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 11:50:08 ]
>>675
お前はなんで自分にレスしてんだよw

679 名前:613 mailto:sage [2009/11/09(月) 14:32:26 ]
関数ポインタをconstで宣言したいんですがー

const int(*func)(void*) = ...
のように宣言すると、funcの挙動としてconstが定義されて(戻り値がconst int型となり)
変数func自体はconst化されず、プログラム中でポインタの書き換えが行えてしまいます。

関数の挙動としては戻り値にconstをつけず、ポインタ自体にconstを当てはめたいのですがー
どなたかいい手法をご存知ないでしょうか?

680 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 14:35:30 ]
多分 int(* const func)(void*)

681 名前:679 mailto:sage [2009/11/09(月) 14:42:37 ]
>>680
早レスありがとうございます。が、だめでしたora

682 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 14:42:39 ]
やってみた

#include <stdio.h>

int func(void)
{
return 1;
}

int main(void)
{
int (* const fun)(void) = func;

printf("%d\n", fun());

return 0;
}

出力結果
1

683 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 14:44:50 ]
ちなみに

#include <stdio.h>

int func(void)
{
return 1;
}

int func2(void)
{
return 2;
}

int main(void)
{
int (* const fun)(void) = func;

printf("%d\n", fun());

fun = func2;

return 0;
}

const_func2.c: In function 'main':
const_func2.c:19: error: assignment of read-only variable 'fun'

684 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 14:44:59 ]
そもそも なぜそのようなことをするのか
という疑問のほうが...



685 名前:679 mailto:sage [2009/11/09(月) 14:47:55 ]
>>680
早レスありがとうございます。が、だめでしたora

686 名前:679 mailto:sage [2009/11/09(月) 14:49:30 ]
>>680
と思ったら右辺のほうも書き換えないといけないんですね。
両方(*const func)で解決致しました。ありがとうございます。

687 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 14:49:56 ]
コンパイラ何?ってかそろそろスレ違いなんで

【初心者歓迎】C/C++室 Ver.69【環境依存OK】
pc12.2ch.net/test/read.cgi/tech/1256022655/

ここあたりに行こうぜ

688 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 15:19:21 ]
funcに一度値を設定したら書き換えることが出来ないんだろ?
どういう状況でfuncという変数を使うのか知ってみたい

689 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 15:27:38 ]
int Stage1( void );
int Stage2( void );
int Stage3( void );

int (* const func[])(void) = { Stage1, Stage2, Stage3 };

{
 while(1) func[now_stage];
}

690 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 15:45:19 ]
趣味の問題ね()

691 名前:656 mailto:sage [2009/11/09(月) 16:37:19 ]
>>659 待った?
int check(int n) {
  int i, a[2], temp, c = 0;

  while(n) {
    temp = n % 10;
    for(i = 0; i < c; i++)
      if(a[i] == temp) break;
    if(i == 2) return 0; // check NG
    if(i == c) a[c++] = temp;
    n /= 10;
  }
  if(c == 2) return 1; // check OK
  return 0;
}

692 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 16:45:16 ]
659は関係ないだろw

693 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 16:49:14 ]
おいおい、>>675の名前欄は656、つまりお前自身じゃねーかよw
自演で何やってんだよw

694 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:05:46 ]
[1] 授業単元:画像処理
[2] 問題文(含コード&リンク):
  ブレゼンハムのアルゴリズムを用いて、ウインドウ内に線分を描画するプログラムを作成しなさい。
  動作の仕様は2通りの中から選びなさい。(どちらでもよい)

  仕様1(マウスの左ボタンと右ボタンを使用する。候補線を表示はなし。)
  マウスの左ボタンクリック   線分の始点座標の指定
  マウスの右ボタンクリック   線分の終点座標の指定及び線分の描画

  仕様2(マウスの左ボタンだけで操作する。候補線を表示する。)
  マウスの左ボタンクリック   線分の始点座標の指定、及び線分の描画開始
  マウスの移動         始点から線分を絶えず候補として描画。(古い線分は消す)
  マウスの左ボタンクリック   線分の終点座標の確定。線分を描画。

ただし、ライブラリの点を描画するAPI関数を使って線分を引くこと。直線を引くAPI関数を使ってはならない。

[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ: Microsoft Visual C++ 2008 Express Edition
 [3.3] 言語: C++
[4] 期限: 09年11月11日(水)
[5] その他の制限: 特になし

仕様は1と2どちらでもOKなので、簡単なほうで構いません。
よろしくお願いします。




695 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 18:36:14 ]
[1] 授業単元: C言語
[2] 問題文(含コード&リンク):不定方程式が解を持つか判断して、持つ場合には解を求めるプログラムを作れ
[3] 環境
 [3.1] OS: Windows vista
 [3.2] コンパイラ名とバージョン: Visual C++ 2008
 [3.3] 言語:C++
[4] 期限: 明日まで
[5] その他の制限: 特になし

もしどなたかやっていただけるならばお願いしますm(_)m




696 名前:デフォルトの名無しさん [2009/11/09(月) 19:30:06 ]
[1] 授業単元: C言語
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10081.txt
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: VC2003
 [3.3] 言語: C
[4] 期限: 明日中
[5] その他の制限: 特になし

697 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 19:58:10 ]
>>654
ありがとうございます!
シミュレーション内容について詳しく書いたファイルを↓に上げました。
よければよろしくお願いします。

[1] 授業単元:
アルゴリズムとプログラミング
[2] 問題文(含コード&リンク):
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10082.txt
プログラムに使用するデータファイル↓
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10071.txt
[3] 環境
 [3.1] OS: (Windows/Linux/等々)
Linux
 [3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)
gcc
 [3.3] 言語: (C/C++/どちらでも可 のいずれか)
C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか)
11月17日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
特にありません

698 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 19:59:12 ]
>>696
buf[4] = '\0';

699 名前:デフォルトの名無しさん [2009/11/09(月) 20:37:11 ]
#include <iostream>
using namespace std;

int main() {
int a[100],b=-9999;
int i=0,j;

do {
cout << "整数値を入力してください\n";
cin >> a[i];
b += a[i];
i++;
}while( a[i-1] != 9999);

cout << b << '\n';

for(j=0;j<i-1;j=j+1)
cout << a[j] * 3 << '\n';

return 0;
}

このプログラムってループを抜ける条件は9999と入れた時だけですか?

700 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:02:19 ]
>>699
いえ、他にも、100回を超えても何度も何度も操作を続けて
書き込み禁止のメモリに到達したときにも抜けます(異常終了という形で)。

701 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:27:03 ]
>>694
仕様2で
ttp://codepad.org/IeQFbfNo

702 名前:デフォルトの名無しさん [2009/11/09(月) 21:29:26 ]
>>700
ありがとうございます

703 名前:604 [2009/11/09(月) 21:37:51 ]
国語と数学の総合的な平均点も出力する
っていう言葉の意味が分からないんですが、これは、合計を5で割ればいいんですかね?
10で割ればいいんですかね?

704 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:41:36 ]
国語の合計と数学の合計の合計を10で割るのが一番正確だが
国語の平均と数学の平均の合計を2で割ってもまぁ良い



705 名前:デフォルトの名無しさん [2009/11/09(月) 21:44:31 ]
[1] 授業単元:データ構造とアルゴリズム設計
[2] 問題文(含コード&リンク):
入力された小文字のアルファベットを,リストを用いて順次格納する.
’−’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示するプログラムを作成
せよ.
ただし,リストに格納する際,リストの最後に追加するようにせよ.
例(a, b, c, - と順に入力したときa,b,cと出力される)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:特に無し
[5] その他の制限:双方向リストは使わない。
ヘッダは#include <stdio.h>以外は使わない

706 名前:604 [2009/11/09(月) 21:45:16 ]
>>704
つまり、これは総合的平均っていうのは100を越すことはないという事ですか?


707 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 23:07:35 ]
>705
制限付きで面白そうなのでやってみようかな

708 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 23:22:25 ]
>>706
そういうことになるな。

709 名前:デフォルトの名無しさん [2009/11/09(月) 23:24:36 ]
>>708
ありがとうございました

710 名前:デフォルトの名無しさん [2009/11/09(月) 23:35:40 ]
10進数を2進数に変換するプログラムを 順番通りに表示できるようにするプログラムを配列を使って作るんですが

#include <iostream>
using namespace std;
int main() {
int i,n,bin[32];

cout << "10進数:";
cin >> n;
cout << "2進数:";
for(i=0; i<32; i++) {
bin[i] = n & 1;
n >>= 1;
}
for(i=31; i>=0; i--)
cout << bin[i];
return 0;
}
結局これは、0がいっぱい出てくるから、ダメですかね?
それとも負の数も考慮に入れたから、こういう事になったんですか?






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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