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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2008/06/18(水) 22:40:55 ]
あなたが解けない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++の宿題を片付けます 109代目
pc11.2ch.net/test/read.cgi/tech/1212895856/

577 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 12:16:06 ]
>>408
いろいろ試してみたが、AMDのプロセッサ(AthlonX2)はL1 Data
Cacheが2Way-Set AssosiativeのためにCore 2 Duoのような
8Way-Set Assosiativeのマシンに特定の場面で大幅に負ける事がある。

データ・テーブルも今回は2個だがこれが10個〜20個と増えてくると
AMDとIntelではあまり差がなくなってくるだろう。

578 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 12:41:06 ]
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7041.txt
[3] 環境
 [3.1] OS:Win
 [3.2] コンパイラ名とバージョン:Borland C++Compiler
 [3.3] 言語:C
[4] 期限:今日中
[5] その他の制限:特になし

お願いします!

579 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:12:49 ]
>>578
#include <stdio.h>

float interest(float r, int n)
{
float ret = 1.0;
int i;

for(i=0; i<n; i++) ret *= (1 + r / 100);

return ret;
}

int main(void)
{
float r;
int y, n;

printf("利率(r):");
scanf("%f", &r);
printf("金額(y):");
scanf("%d", &y);
printf("期間(n):");
scanf("%d", &n);

printf("返済金額は%d円です", (int)(y * interest(r, n)));

return 0;
}

580 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:16:30 ]
>>577
ちょっとスレ違いになるかも知れないが、何故L1Chacheの構造が
原因であると断定できるのか教えて欲しいと思います。

581 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:17:30 ]
1] 授業単元:
[2] 問題文(含コード&リンク):
次々に入力される値を合計する処理である。
変数dtにデータを入力する処理を繰り返し行い、
入力終了後その合計sumと平均aveを出力する。
なお、入力データは正の整数とし、
入力するデータがなくなったら、
終わりの印として負の値を入力する。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:

582 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:18:58 ]
1] 授業単元:
[2] 問題文(含コード&リンク):
次の説明を読んで、プログラムを作成しなさい。

小数で入力される気温のデータを5℃単位の整数に丸めたい。
キーボードからdouble型変数kに気温を入力し、
丸めた数値はint型変数gに求め、gを画面に出力する。

ただし入力データに負の気温はないものとする。

また必要なら、
計算途中の中間結果を格納するint型変数wなど、
適宜変数を用意すること。

【実行例】
温度を入力 22.4
約20度です

温度を入力 22.5
約25度です

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C++
[4] 期限:
[5] その他の制限:なし
2問ありますが、よろしくお願いします

583 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:46:07 ]
>>581
#include <iostream>

int main()
{
int dt, i = 0, sum = 0, ave;

while(1) {
std::cin >> dt;
if(dt<0) break;
sum += dt;
i++;
}

if(i!=0) {
ave = sum / i;
std::cout << "合計:" << sum << "平均:" << ave << std::endl;
}
}

584 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 13:54:48 ]
>>582
#include <iostream>

int main()
{
int g, w;
double k;

std::cout << "温度を入力";
std::cin >> k;

for(g=0; g<k; g+=5);
if(g - k > 2.5) g -= 5;

std::cout << "約" << g << "度です" << std::endl;
}

585 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 14:27:16 ]
>>581
[1]コード品質:未チェック
[2]コード:直接記入
#include <stdio.h>
#include <stdlib.h>
int main(void){
int sum,count=0,current;
char s[32],*ss;
do{
if (ss==fgets(s,32,stdin)) continue;
while(*ss){ if( (*ss=13)||(*ss=10) )*ss=0;ss++;}
if(( current=atoi(s) )<0)continue;
count++;sum+=sum+current;
printf("%6d:value=%6d sum=%6d average=%lf¥n",count,current,sum,
(double)sum/(double)count);
}while(0);
retrun(0);
}
[3] 環境:Linux/Gcc/C++
[4]コメント:上記コードはC++でもコンパイルできる筈です。
C++はCのほぼスーパーセットです。ループの中で、stdinから文字列
を読み込み、atoi関数で整数に変換しています。平均の計算はdoubleで
行っています。駄コードですがご参考にどうぞ。



586 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 14:35:16 ]
駄コードってレベルじゃねーぞ

587 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 14:48:46 ]
>>585みたいな明らかにおかしい、見てるだけで頭が痛くなるようなコードにも
ソースを書かなきゃ文句言っちゃいかんのか?

588 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 14:53:10 ]
チラシの裏にでも書いてろ

589 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 15:25:15 ]
>>541
できました!ありがとうございます。
ところで、資料に書いてあったようにbitree.hを作ってインクルードする意味ってなんなんでしょうか?
また、bitree.hを作る場合は、bitree.hに一応
int main(int args, char **argv);
BITREE_TYPE sumValue(BITREE_NODE *p);

なども書き加えておいたほうがよいのでしょうか?意味はない気がしますが・・

590 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 16:18:17 ]
かなり考えましたが、綺麗な形の木じゃない場合の計算がわからなかったのでお願いします。
[1] 授業単元:プログラミング
[2]問題リンク:ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7042.txt
[3]期限:2008年6月27日

591 名前:デフォルトの名無しさん [2008/06/24(火) 16:19:08 ]
このスレをいろんな大学に通報すればいいんですねわかります

592 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 16:53:51 ]
通報なんかしなくてもこんな所で丸投げする奴はどうせ卒業できん

593 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 17:28:14 ]
>>585 点○虫か。コード品質なんて項目要らない。
>>581
#include <stdio.h>
#include <stdlib.h>

int main(void){
// int sum, count=0, current;
  int sum=0, count=0, current;
  char s[32], *ss;
  do{
//   if (ss == fgets(s, 32, stdin))
    if (!(ss = fgets(s, 32, stdin)))
      continue;
    while(*ss){
//     if( (*ss=13) || (*ss=10) )
      if( (*ss==13) || (*ss==10) )
        *ss = 0;
      ss++;
    }
    if(( current = atoi(s) ) < 0)
      continue;
    count++;
//   sum += sum + current;
    sum += current;
    printf("%6d:value=%6d sum=%6d average=%lf\n",
      count, current, sum, (double)sum/(double)count);
// }while(0);
  }while(current >= 0);
// retrun(0);
  return(0);
}

594 名前:お願いします [2008/06/24(火) 19:20:36 ]
C++言語を使ってスタックを実現するクラスを定義し,その実行を確認するプログラム(main関数)を書く.

クラス名はstackとする.

要素のデータの型はintとする.
格納できる要素の最大数は10とする.
公開されているインターフェースは下記のものとする.

void push(int data);
int pop();

初期設定は,以下のいずれかにより行う.
(1) クラスのコンストラクタ(constructor)の機能を用いる.
(2) 初期設定用のインターフェース(init)を定義し,スタックを使用する前に,initを呼び出す.

機能確認のためのインターフェース(たとえばスタック内のデータを表示させる)を追加してもよい.

上記の仕様を満たさない(インターフェース名が上記と一致しない等)プログラムは対象としない.


595 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 19:50:28 ]
#include <iostream>
#include <vector>
using namespace std;

int main()
{
vector<int> stack;
stack.push(1);
stack.push(2);
cout << stack.pop() << endl;
cout << stack.pop() << endl;
}

じゃ駄目ですか(><;



596 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 19:53:19 ]
>>594
#include<iostream>
#include<vector>
class stack{
public:
void push(int data){ if(m_data.size()<m_datanummax) m_data.push_back(data); }
int pop(){
int ret=-1;
if(m_data.size()>0){
ret=m_data[m_data.size()-1];
m_data.pop_back();
}
return ret;
}
void display(){ for(unsigned i=0;i<m_data.size();i++) std::cout << m_data[i] << std::endl; }
stack(){m_datanummax=10;}
stack(int datanummax):m_datanummax(datanummax){};
private:
std::vector<int> m_data;
unsigned m_datanummax;
};
int main(void){
stack a, b(5);
for(int i=0;i<20;i++){
a.push(i);
b.push(i);
}
a.display();
std::cout<<"-----"<<std::endl;
b.display();
return 0;
}

597 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 20:02:32 ]
添削屋が虫作ってどーすんだよw

598 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:23:54 ]
麻呂のクソースはいらんかえぇ〜

599 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:32:00 ]
>>589
main関数はヘッダで宣言したらダメ
sumValue関数はヘッダで宣言してもいい
bitree.hを作ってincludeさせてるのは勉強のためじゃない?
main関数と同じファイルに関数を定義してるなら普通はわざわざ宣言部をヘッダに分けない
main関数以外をbitree.cとかいうファイルにでも定義するならbitree.hを作る必要がある
分割コンパイルについて知りたいなら、ググるか他のC言語質問スレに質問しましょう

600 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:40:24 ]
>>590
完全2分木って書いてあるけど、綺麗な形の木じゃない場合ってことは
完全2分木ではない場合を考えろってこと?

601 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 21:40:44 ]
>>599
わかりました、ありがとうございました!

602 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:06:29 ]
[1] 授業単元:情報処理
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7043.txt
[3] 環境
 [3.1] OS:XP
 [3.3] 言語: C++
[4] 期限: 08年06月30日
[5] その他の制限:もしやっていただけるなら出来るだけ簡単に、分かりやすく(初心者でも理解できる構成)


603 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:10:31 ]
問1
A : [] B : 0 C : * D : * E : * F : 0 G : vc


604 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:21:00 ]
>>603
エスパーいないなー

605 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 22:21:45 ]
問3
A : d B : d C : s



606 名前:デフォルトの名無しさん [2008/06/24(火) 22:50:35 ]
1

607 名前:デフォルトの名無しさん [2008/06/24(火) 22:53:53 ]
[1] 授業単元:Cプログラミング
[2] 問題文(リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7044.txt
[3] 環境
 [3.1] OS: Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C言語
[4] 期限:2008年06月25日いっぱい

608 名前:デフォルトの名無しさん [2008/06/24(火) 23:03:35 ]
[1] 授業単元:数学演習3
[2] 問題文(含コード&リンク):
3a-2b+ - d= 7
. 2b+2c+ d= 5
.a-2b-3c-2d=-1
. b+2c+ d= 6
上の行列をピポット選択を使い前進消去法で解くプログラムを作る。
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VisualStudio2005
 [3.3] 言語:C
[4] 期限:2008年06月25日07:00まで
[5] その他の制限:特に制限はありません
以下が作っては見たもののアルゴリズムエラーでどこが悪いのかもわからない自作プログラム。
nijibox.ohflip.com/futabafiles/001/src/sa26951.txt

609 名前:608 ◆k4INPBPZ3E [2008/06/24(火) 23:04:30 ]
トリップ忘れてた

610 名前:デフォルトの名無しさん [2008/06/24(火) 23:11:40 ]
1] 授業単元:基礎プログラミング
[2] 問題文
(1)標準入力からint 型引数に文字コード (ASCII) を読み込むと, その文字が小文字 (a〜z) であれば大文字のコードを返し
   そうでないならば受け取ったコードをそのまま返す関数を設計し, その関数を利用するプログラムを作成しなさい
(2)char 型の配列の名前を引数として受け取ると, その配列に記憶されている文字列の逆順に 並べか替えた文字列を表示し
   何も返さない関数を設計し, その関数を利用するプログラムを作成しなさい.
(3)char 型の配列の名前を2つ引数 P, R に受け取ると, P に記憶されている文字列を逆順に並べか替えた文字列を R に記憶して
   何も返さない関数を設計し, その関数を利用するプログラムを作成しなさい.
(4)char 型の配列の名前を引数として受け取ると, その配列に記憶されている文字列が回文ならば 1 を, そうでなければ 0 を返す関数を設計し
   その関数を利用するプログラムを作成しなさい. ただし,前問の関数を利用すること.
(5)char 型の配列の名前を引数として受け取ると, その配列に記憶されている文字列が回文ならば 1 を, そうでなければ 0 を返す関数を設計し
   その関数を利用するプログラムを作成しなさい. ただし,前々問の関数を利用せず, 直接,文字列中の文字を先頭と末尾から比較する方針を用いること.
[3] 環境
 [3.1] OS: (Windows)
 [3.2] コンパイラ名とバージョン:(cygwin)
 [3.3] 言語:C
[4] 期限:(明日の15時まで)
[5] その他の制限:

611 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:12:48 ]
>>607
#include <stdio.h>
int main(void)
{
int i, j, sum;

for(i=1, sum=0; i<=100; i++) sum += i;
printf("1から100までの整数の和は%d\n", sum);

for(i=1, sum=0; i<=100; i+=2) sum += i;
printf("1から100までの奇数の和は%d\n", sum);

for(i=1; i<=20; i++) {
if(i<10) for(j=0; j<i; j++) putchar(' ');
else for(j=20; j>i; j--) putchar(' ');
printf("%d\n", i);
}

return 0;
}

612 名前:607 mailto:sage [2008/06/24(火) 23:26:48 ]
>>611
ありがとうございます

613 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:34:49 ]
2進数変換の問題を出されました。。。基本的な部分は作ってみたのですが、完璧にできません…小数変換の工程などは手ではできるのですが…
どなたかご助力宜しくお願いします。


[1] 授業単元:実験
[2] 問題文(含コード&リンク):
10進数を2進数に変換するプログラムを作成せよ。
その際、入力する10進数が小数点ありの数値(例:2.56)でも変換可能なものとする。

[3] 環境
 [3.1] OS:XP
 [3.3] 言語: C
[4] 期限: 08年06月27日
[5] その他の制限:
基本的に習ったことの利用がメインなので、特殊な関数などは使えません。原始的なアルゴリズムでないとだめなようです。
もちろん、構造体、配列、ポインタなどの基本は習いました。



614 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:35:34 ]
作ってみたプログラムです。(また、どうしてもMSBに0が羅列してしまって…変換した数値のみを表示させたいのですが…。つまり、000000000000000000010110とかではなく10110と。)

#include <stdio.h>
const int BitSize = sizeof(int) * 8; // 整数型のビットサイズを算出
void dtob(int x) {
int bit = 1,
i;
char c[BitSize];

for (i = 0; i < BitSize; i++) {
if (x & bit)
c[i] = '1';
else
c[i] = '0';
bit <<= 1;
} // 計算結果の表示
printf("2進数: ");
for ( i = BitSize - 1; i >= 0; i-- ) {
putchar(c[i]);
}
printf("\n");
}

int main(){
int x = 0;
do {
printf("10進数を2進数に変換します(0で終了)\n");
printf("xの値: ");
scanf("%d", &x);
dtob(x);
} while (x != 0);
return 0;}

615 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:36:38 ]
あ、すみません、

>613 = >614

です。



616 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:44:06 ]
for(i=BitSize-1; c[i]=='0'; i--); //最初に1が出るまでスルー
for( ; i>=0; i--) putchar(c[i]);  //後は普通に表示

617 名前:デフォルトの名無しさん mailto:sage [2008/06/24(火) 23:55:50 ]
>616

レスありがとうございます!
なるほど〜ちょっと改良してみます。

あとは小数点が問題ですね。。。
やっぱりとりあえず、整数部分と小数点以下をわけてスキャンしなきゃだめですよね

618 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:01:46 ]
>>604
ん?>>603間違えてる?

619 名前:デフォルトの名無しさん [2008/06/25(水) 00:05:49 ]
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
登録番号(int no)と名前(char *name)と年齢(int age)を含む構造体person型のポインタ変数を宣言し、登録人数分だけの動的メモリ確保をせよ。そして、データをファイルから入力せよ。
ファイルの形式は、先頭に登録する人数とし、そのあとに人数分のデータを登録番号、名前、年齢の順に書いていく(下の例を参照。登録番号は入力順に1,2,3,4,5,・・・とする。そして、入力した全員データを表示せよ。)

(ファイルの例)
3
1 田中 20
2 太田 40
3 井上 35

[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VisualStudio2005
 [3.3] 言語:C
[4] 期限: できるだけ早くお願いします。
[5]問題文でわかりにくいところがありましたら、聞いてください。

620 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:14:27 ]
>>614
んー?その課題ってそういう解き方を期待してるのかな。
それでもいいんだけど、初歩的な段階ということを考慮すると
整数部なら2で割ったあまりをせっせと詰めていくように思えた。
小数部は2倍したものの整数部を詰める、みたいな。

その段階でビット演算でできるという発想をしたなら優秀な
生徒さん(もしくは経験者)なんだなあって思う。
// 皮肉じゃないです。念のため

621 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:20:03 ]
何を習ったのかお前知ってるのかよw

622 名前:デフォルトの名無しさん [2008/06/25(水) 00:25:57 ]
[1] 授業単元:基礎プログラミング
[2] 問題文
キーボードから2つの自然数を入力し、入力した値が10以下で2の倍数なら足し算
それ以外はかけ算させた結果を表示させるプログラムを作成せよ。
但し、if文を用いて自然数以外を入力したらエラー文を表示させる。
[3] 環境
 [3.1] OS: Windows/linux
 [3.2] コンパイラ名とバージョン:VC++ 6.0/gcc
 [3.3] 言語: C
[4] 期限:6/27
[5] その他の制限:入力はscanf、出力はprintf stdio.h
よろしくお願いしますorz


623 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:26:37 ]
>>621
あーもーそういう煽りが欲しいわけじゃなくてな。
関数、ポインタ習いました。とか原始的なアルゴリズムで、とか前置きしなきゃならない段階でしょ?
その段階でビット演算を直感的に理解できる子は少ないでしょ。
わかんないかなー。

学生の頃周りがどうだったか、自分がどうだったか思い出しなよ。
学校では習ってません独学です、ならビット演算をスムーズに理解できたのはいつのことだった?

624 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:29:33 ]
>基本的に習ったことの利用がメイン
って書いてあるのに、ビット演算を習ってないと思うほうがおかしいだろ。

625 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:37:27 ]
ってか>>613にアドバイスしたらどうなん?

>>622
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7047.txt



626 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:38:02 ]
>623 >624 さん方

お二人ともすみません(汗)

自分の書き方がまぎらわしかったです・・・
ビット演算は習っていません。

柴田先生の本を読みまして、
内部表現とビット などの説明あたりを読んでいるときに
先生が以前ビット演算でやればサマートなんだけどな・・・ブツブツと
ボソっといってたのを思い出して、
それから少し自分で勉強してみました。

ですが、挫折しかけてこのサイトに、、です。(汗)

というか途中で疑問に思ったのですが、なんでC言語には2進数で表示する機能がないのでしょうか・・・?



627 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:40:40 ]
>>623
相手するだけ無駄
>>624
宿題解いてもらえなくて涙目なんですよね、わかります。
催促していいよw

628 名前:613 mailto:sage [2008/06/25(水) 00:41:18 ]
あ、ちなみに
原始的なアルゴリズム とはありますが、
たぶんビット演算くらいはOKかと思います。

先生は期待してはいないと思いますが…。

その、手計算でやるときのアルゴリズムと
まったくそのままのほうが、わかりやすいのだとは思うのですが、
違う方向性でやりはじめてしまったので…。

最終的にダメそうなら、ホントに原始的な方向でいくつもりですが。

629 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 00:51:30 ]
[1] 授業単元:プログラミング実験
[2] 問題文(含コード&リンク):
2題あります。
片方でも構いません。
上については、ソースに記載されてるpartitionって関数を使って、再帰でクイックソートです。
下については、ソースに記載されているmergeって関数を使って、再帰でマージソートです。
それぞれ、作成する部分にコメントがあるので、大体それと同じ行数でできるらしいです。
でも長くなっても構いません。
ifとforかwhileでできるみたいなことも言ってました。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7048.txt
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7049.txt
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン: CPad for Borland C++Compiler Version 2.31
 [3.3] 言語:C
[4] 期限: 2008年6月25日17:00まで できるだけ早く完成させたいです。提出は明日の夕方です。
[5] その他の制限: ポインタは使わない感じで授業やってます。再帰必須です。あとは上に書いた通りです。

よろしくお願いします。

630 名前:608 ◆k4INPBPZ3E [2008/06/25(水) 01:03:52 ]
ヘルプ!ヘールプ!!!

631 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:06:35 ]
>>629
void quicksort(int left, int right)
{
int i=0;

if(left >= right) return;

i = partition(left, right);

quicksort(left, i-1);
quicksort(i+1, right);
}

void mergesort(int l, int r)
{
int m;

if(l>=r) return;

m = (l + r) / 2;

mergesort(l, m);
mergesort(m+1, r);

merge(l, m, r);
}

632 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:11:17 ]
>>628
>>316


633 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:20:45 ]
>>631
あなたが神か
ありがとうございます!
超絶感謝!!!

634 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:20:49 ]
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
(1)1つの整数を2進数に変換表示する関数convert(a)を作成せよ。そして、キーボードより任意の正の整数を入力し、
その整数の2進数が表示されるプログラムを作れ。

(2)1つの正の整数を素因数分解し表示する関数bunkai(a)を作成せよ。そして、キーボードから任意の正の整数を入力し、
その整数の素因数分解を表示するプログラムを作れ。
------表示例------
整数を入力: 50
50=2x25
25=5x5
5=5
5*5*2

[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: Borland C++ Compiler 5.5
 [3.3] 言語: C
[4] 期限: 明日
[5] その他の制限:関数についての演習です。実は(1)に関しては十分な実行結果は得られました。
蛇足があれば指摘していただきたいです。

635 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:21:56 ]
(1)の作成したプログラムです。(2)の参考になればよいのですが。
#include <stdio.h>
void convert(int n)
{
if(n>1)
convert(n/2);
if(n==1)
printf("1");
else
printf("%d",n%2);
}

void main()
{
int n;
printf("10進数を入力してください:");
scanf("%d",&n);
printf("2進数に変換すると\n");
convert(n);
}



636 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:45:23 ]
[1] 授業単元: アルゴリズム
[2] 問題文(含コード&リンク):
アスキーコードにより文字操作を行い、暗号化された文字列を解読するプログラム
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7050.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: cyagwin gcc
 [3.3] 言語: C
[4] 期限: 6/26 午後3時まで

暗号文(アスキーコードをずらしただけ)を解読するプログラムを作成する課題です。
よく見る課題ですが、プログラム仕様が特殊で過去ログに該当するものがなかったので
どなたかお願いします。

637 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 01:54:37 ]
>>628
手作業で小数を2進数に変換することができることに加え、浮動小数点のビット列が
どのように構成されてるかを理解する必要があるよ
それでもビット演算しますか?(y/n)

638 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:12:06 ]
前回教えてくださったありがとうございます!!

以下のようなプログラミングはどのようにすればよいのでしょうか?

「組み合わせ」を求める数学の公式にコンビネーションがあります。このコンビネーションのプログラミングを教えてください!

nとrをscanf()で読み、nCrの値を計算して表示させます。
条件として、nとrの値はマイナスでなく、またゼロでなく、さらにここではn<=10であることを確認させて、正しい数値を入力させる。もし誤った数値を入力したら「入力ミスです」と表示させる。

0!=1も扱えるようにすることを忘れない。

これもよろしくお願いします

639 名前:613 mailto:sage [2008/06/25(水) 02:12:31 ]
>637
はい…そこなんですよ…。
それが頭いっぱいになって、ここにたどり着きました。。。

1年間アセンブリ言語をやっていたことがあって、
そのとき浮動小数点に苦労しました。。。

でも原始的なアルゴリズムよりもスマートに、短くできるんだったら
大変興味があります。なのでとりあえずやりたいと考えます。

640 名前:613 mailto:sage [2008/06/25(水) 02:23:50 ]
ちなみに
丸め誤差については特にいわれてないのですが、
4ビット程度表示できればいいかなぁと考えています。

641 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:24:42 ]
[1] 授業単元:数値解析
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7053.txt
[3] 環境
 [3.1] OS: WindowsXP SP2
 [3.2] コンパイラ名とバージョン: visual Studio NEt2003
 [3.3] 言語: C/C++/どちらでも可
[4] 期限:今週土曜まで
[5] その他の制限: 大域変数(グローバル変数)を使う。
今あるプログラムを改善した形で書き換えてくれるとありがたい。
(プログラムの授業ではなく数値解析なので変な形にはなっていると思うが
なるべくこのような形にしてもらいたい。)自分が理解しやすいのもあるが


642 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:32:20 ]
前スレの人?

643 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:36:55 ]
>>641
yを求めた時のiの値とxn[i],xn[i+1]とxの関係を考えてみろ。
っていうか前スレのヤツならなんできちんと写さない?

644 名前:613 mailto:sage [2008/06/25(水) 02:37:40 ]
>642

え、自分でしょうか??

自分はこのスレ、はじめてです。(検索で見つけました)

645 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:38:14 ]
いや641のこと。



646 名前:613 mailto:sage [2008/06/25(水) 02:38:42 ]
あ、すみません m()m

647 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 02:41:48 ]
東京高価万歳
凄いぞ東京高価

648 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 03:28:21 ]
>>611
(・∀・)ニヤニヤ

649 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 03:32:55 ]
ニヤニヤするぐらいならどこがおかしいか指摘ぐらいしたら?

650 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 03:38:15 ]
おかしくなんかないよ、ただ、おそらく等差数列の差を使うとか
一番最後は工夫すりゃif else 不要

651 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 03:41:48 ]
ループの中にムダな分岐つっこんで効率と可読性下げるより、あのままで十分だと思うけど。

652 名前:デフォルトの名無しさん [2008/06/25(水) 04:12:17 ]
>>619 お願いします。

653 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 05:17:34 ]
>>650
これでいいですか><?
for(i=1;i<=20;i++)
    printf("%*s%d\n",i<=10?i:20-i,"",i);

654 名前:590 mailto:sage [2008/06/25(水) 06:42:59 ]
>>600
えっと・・・完全2分木っていうのは葉以外の全てのノードが枝を2つ持っている事が必要十分条件ではないのですか?
それならば一部のパスだけが長いという場合も考えられますよね。
それとも左右対称の三角形みたいな形の木になることを意味しているんでしょうか。

655 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 06:49:09 ]
完全二分木は、「すべての葉の深さが等しい二分木」という定義が普通だと思う



656 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 06:51:23 ]
AVL木とか赤黒木なら回転を伴うが常にバランスした二分木が作れる
何も考えずに昇順に挿入したりするとリスト構造の高価なシミュレーションになる

657 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 06:54:56 ]
あ、質問の意図を誤解してたかも
NlogNじゃねーの?

658 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 07:01:24 ]
>親ノードから左右の
>子ノードの中身を比較することで、完全2分木中の任意のノードの探索が行えるとする
この意味が分からん
「左右の子ノードの中身を比較」ってどういうことだろう

普通の二分探索木なら簡単に解ける
完全二分木の高さをhとすると、N=2^h-1だから、h=log2(N+1)
比較回数の最大値は高さと同じだから、log2(N+1)回

659 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 08:39:21 ]
>>619
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7055.txt

660 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 08:45:17 ]
>fscanf(fp, "%s", p->name);

661 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 08:55:49 ]
#include<stdlib.h>いれろよ

662 名前:デフォルトの名無しさん [2008/06/25(水) 10:38:17 ]
[1] 授業単元: プロC演習
[2] 問題文(含コード&リンク):()
# 下記のようにキーボードから4桁の10進数の入力を2回受付ける.
Input the 1st value > 6479
Input the 2nd value > 1497

但し,4桁の各位の数は必ず互いに異なるものが入力されるとする.
# 入力された数値に対して,次のようにに定義する「ヒット数」と「ホームラン数」を求める.

* ホームラン数: 二つの数字を同じ位ごとに比較した場合,何ヶ所の位について一致してるかを表す.
* ヒット数: 二つの数字を異なる位同士で比較した場合,一致している組み合わせの数を表す.


1234と1234のとき,0ヒット4ホームラン
1234と4321のとき,4ヒット0ホームラン
6479と1497のとき,2ヒット1ホームラン


# ヒット数とホームラン数を下記のように表示する.
2 hit(s) 1 home run(s)
[3] 環境
 [3.1] OS: WindowsVista
 [3.2] コンパイラ名とバージョン:Cygwin gcc
 [3.3] 言語: C
[4] 期限: 6月26日正午
[5] 現時点で習ってるのは、条件分岐、繰り返し、配列、ソート、ポインタまでです。

よろしくお願いします。

663 名前:デフォルトの名無しさん [2008/06/25(水) 10:54:32 ]
memcpy(n1,n1,sizeof(int)*2*3);
memcpy(n1+(2*3),n2,sizeof(int)*2*3);
これって何やってるの?
調べたんだけどよくわからないです…

664 名前:デフォルトの名無しさん [2008/06/25(水) 11:12:06 ]
だれか610を助けて…

665 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 11:53:36 ]
>>663
どうすれば調べきれないのかよくわからないです…
www.google.co.jp/search?complete=1&hl=ja&q=manpage+memcpy&lr=



666 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 12:30:32 ]
>>610
#include <stdio.h>
#include <string.h>
/*1)*/ int getUpper(){ int r=getchar(); return 'a'<=r && r<='z' ? (r-'a'+'A') : r; }
/*2)*/ void showReverse(char *s){ int i; for(i=strlen(s)-1; i>=0; putchar(s[i--])); putchar('\n'); }
/*3)*/ void letReverse(char *P, char *R){ int i,k; for(k=0, i=strlen(P)-1; i>=0; R[k++]=P[i--]); R[k]='\0';}
/*4)*/ int isCircular(char *s){ char *r=(char*)malloc(sizeof(char)*(strlen(s)+1)); int ret; letReverse(s,r); ret=strcmp(s,r)==0; free(r); return ret; }
/*5)*/
static int isCircular2s(char *s1, char *s2){ if(s1>=s2) return 1; else{if(*s1==*s2) return isCircular2s(s1+1, s2-1); else return 0; } }
int isCircular2(char *s){ return isCircular2s(s,s+strlen(s)-1); }

// なんか色々関数を利用するプログラム
void checkCircular(char *s){ printf("%s is %scircular string.\n", s, isCircular(s) ? " " : "not ");
int main(void){
  char rev[10];
  printf("Hit keyboard: ");fflush(stdout);
  printf("getUpper() is .. %c\n", getUpper());
    
  showReverse("abcde");
  letReverse("a1b2c3", rev);
  printf("reverse a1b2c3 = %s\n", rev);
  checkCircular("abcba"); checkCircular("12321");
  printf("12321 is %scircular string.\n", isCircular2("123321") ? " " : "not ");
}


667 名前:デフォルトの名無しさん [2008/06/25(水) 12:56:24 ]
>>666
神様ありがとう!
でも分けかからんww 勉強せねば…

668 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 14:11:11 ]
>>662
#include <stdio.h>

int main(void)
{
char value[2][5];
int i, j, hit = 0, homerun = 0;

printf("Input the 1st value > ");
scanf("%s", value[0]);
printf("Input the 2nd value > ");
scanf("%s", value[1]);

for(i=0; i<4; i++) {
for(j=0; j<4; j++) {
if(value[0][i] == value[1][j]) {
if(i == j) homerun++;
else hit++;
}
}
}

printf("%d hit(s) %d home run(s)\n", hit, homerun);

return 0;
}


669 名前:デフォルトの名無しさん [2008/06/25(水) 14:53:44 ]
[1] 授業単元:計算機システム
[2] 問題文(含コード&リンク):擬似シェル(UNIX上で動く)を作る
必要な機能
・リダイレクト(>>、>、<)
・パイプ(|)
・パイプは複数つなげるように
・できればcdやaliaseも。

[3] 環境
 [3.1] OS:UNIX
 [3.2] コンパイラ名とバージョン:gcc 3.4.6
 [3.3] 言語: C
[4] 期限:明日の午前中
[5] その他の制限:
リダイレクトとパイプの実装ができません。
お願いします。

670 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 15:05:01 ]
【質問テンプレ】
[1] 授業単元:コンピュータアーキテクチャー
[2] 問題文(含コード&リンク):ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7057.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: bcc32
 [3.3] 言語: C
[4] 期限: 六月二十九日
[5] その他の制限: 特にありません

よろしくお願いします

671 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 15:11:16 ]
> 1.gettimeofday関数を用いて、サイズ5000の配列を用い、 それを100000回程度繰り返して、 倍精度浮動小数乗算の演算性能を測定し、それをMFLOPSで求めよ。 
> また、使用したプログラムも提出せよ。 
におんごでおk

672 名前:670 mailto:sage [2008/06/25(水) 15:25:06 ]
>>671
すみません
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7058.txt
↑のようにサイズ5000の配列を用いて、それを100000回程度繰り返して、 倍精度浮動小数乗算の演算性能を測定し、それをMFLOPSで求めることです。


673 名前: ◆DuoCt8/SKk [2008/06/25(水) 15:41:19 ]
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7059.txt
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:Visual C++ 6.0
 [3.3] 言語:C言語
[4] 期限:2008/06/28
[5] その他の制限:ポインタ,構造体は習っています.
全く分からないので,よろしくお願いします!

674 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 17:53:14 ]
>>625
if (a <= 10 && a % 2 == 0 && b <= 10 && b % 2 == 0)
(・∀・)ニヤニヤ

675 名前:634 mailto:sage [2008/06/25(水) 17:55:45 ]
一応途中まで作ってみました。
問題は最後の一行(素因数展開の表示:ex.「5*5*2」)なんですけど・・・
配列作って素数を入れてかないと駄目ですかね?

#include <stdio.h>
void bunkai(int n,int i)
{
if(i==n){
printf("%d=%d\n",n,n);
}
else if(n%i==0){
printf("%d=%dx%d\n",n,i,n/i);
bunkai(n/i,i);
}
else
bunkai(n,i+1);
}

void main()
{
int n,i=2;
printf("整数:");
scanf("%d",&n);
bunkai(n,i);
}



676 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 17:58:21 ]
うpロダー使えYO!

677 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:01:48 ]
>>676
すいませんでした。。
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7060.c

678 名前:634 mailto:sage [2008/06/25(水) 18:07:06 ]
すいません、自己解決しました。

679 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:09:12 ]
[1] 授業単元:C 文字の処理
[2] 問題文(含コード&リンク): kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7061.txt
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: Cygnus
 [3.3] 言語: C
[4] 期限: 明日の17:00まで
[5] その他の制限: 2問同時で申し訳ありませんが、なるべくシンプルなものをお願いします。

680 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:09:13 ]
いや、もうおせーYO!w

681 名前:637 mailto:sage [2008/06/25(水) 18:22:06 ]
>>613
>>639
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7062.txt
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。

Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。

682 名前:637 mailto:sage [2008/06/25(水) 18:25:58 ]
補足で、doubleが8byteであることを期待したコードになってる箇所がいくつかあります。
sizeof(double)やってたりやってなかったりで汚いんですが、
そもそも8byte以外だった場合にビット構造がどうなるのか知らないので8byteな環境
以外でどうなるかわかりませんです。
誰か教えてくれるとありがたいです。

683 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:27:22 ]
637をテンプレに沿って清書すると

[1]回答レベル:検証済み?
[2] コード:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7062.txt

[3]環境 Linux?/Gcc/C

[4]コメント
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。
Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。

684 名前:637 mailto:sage [2008/06/25(水) 18:38:29 ]
>>683
そうか、テンプレがw

>>613
[1]回答レベル:ある程度検証済み
[2] コード:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7062.txt
[3]環境 Windows/VC7/C およびLinux/gcc4.1.2
[4]コメント
きれいではなくて申し訳ないんだけど、double型の構造を元に2進変換したつもりです。
負の場合どうするのか分からなかったので、とりあえず符号だけつけてます。
Windowsならリトルエンディアンきめうちで処理をしてもいいのかもしれないけれど、一応。
正の整数についてはWindowsの電卓を使って検証しました。
小数についてもある程度検証してそれらしい結果を確認しています。
負数については、ごめんなさい><

685 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:48:08 ]
累計
   50 49 48 47 46
  45 44 43 42 41
   35 34 33 32 31
   30 29 28 27 26
  25 24 23 22 21
   20 19 18 17 16
  15 14 13 12 11
  10 9 8 7 6
  5 4 3 2 1
累計

を一次元配列のみを使ってどうやって書けますか?



686 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:49:07 ]
>>685
ずれてすみません
縦累計と横累計ということです><

687 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 18:57:14 ]
>>685
これと同じかな
pc11.2ch.net/test/read.cgi/tech/1212895856/850

pc11.2ch.net/test/read.cgi/tech/1212895856/920
このレスをしたの俺なんだが、ネタレスのつもりだったのに
感謝されて非常に困惑した記憶がある

688 名前:デフォルトの名無しさん [2008/06/25(水) 18:59:59 ]
x68000.q-e-d.net/~68user/net/c-ftp-1.html
をみてCでftpクライアントのプログラムを作成しましたが
サンプルソースの224行目が実行されて
「150 Opening ASCII mode data connection」がサーバから返却された後
226行目が実行されて
「226 Transfer complete」がサーバから返却されるまで180秒かかってしまいます。
何故でしょうか?

サーバはredhatlinux上でProFTPD 1.3.1が動いています。
クライアントは上記サーバと兼ねています。下記のようなログがでます。

<-- 220 ProFTPD 1.3.1 Server (ProFTPD Default Installation) [127.0.0.1]
--> USER ユーザ名
<-- 331 Password required for ユーザ名
--> PASS パスワード
<-- 230 User ユーザ名 logged in
--> PORT 127,0,0,1,229,242
<-- 200 PORT command successful
--> RETR ファイル名のフルパス
ファイルの中身
<-- 150 Opening ASCII mode data connection for ファイル名のフルパス (13 bytes)
<-- 226 Transfer complete(これが出るのは1つ上の行が出力されてから180秒後)
--> QUIT
<-- 221 Goodbye.

689 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 19:05:26 ]
>>688
なぜここに?
とりあえずサーバのログおよびパケットキャプチャをしてみて原因探るしか。

690 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 19:07:50 ]
>>687
あ、同じですね><
明日提出なんですがさっぱりなんです

691 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:14:21 ]
>>690
>>685
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7063.c

692 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:24:00 ]
>>691
ありがとうございます

まだ入門編なので、複雑でよく分かりません><
これ以上簡単に表現できないのですか?

693 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:30:17 ]
>>692
理解しようとする気があるならちゃんと授業中に理解しようね
教員には「沢山勉強してわかるようになりました」って言っておけばなんとかなる

694 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:33:53 ]
>>693
すみません
自力でやってみます
ありがとうございました><

695 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:38:57 ]
#define が見慣れないだけか?ROWを10にCOLを5に書き換えれば良いが
もちろんそれが分かっていれば、そんなことせんでROW と COL で定義し
後はそれらを変更することでそれに応じて結果を出すソースのままにしときゃええがな



696 名前:デフォルトの名無しさん [2008/06/25(水) 20:41:00 ]
[1] 授業単元:プログラミングT

[2] 問題: kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7064.txt
 [3.1] OS: WindowsXp
 [3.2] コンパイラ名とバージョン:visualstdio 2008
 [3.3] 言語:C
[4] 期限:6月29日
[5] その他の制限:なし。

   よろしくお願いします.

697 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:45:22 ]
[1] 授業単元: プログラミング演習
[2] 問題文(含コード&リンク):
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7065.txt
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語:C
[4] 期限:無期限



698 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 20:48:41 ]
>>695
#defineは分かります!
tr,tcというのはトータルという事ですね。事故解決しました!
ありがとうございました

699 名前:デフォルトの名無しさん [2008/06/25(水) 20:52:03 ]
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
構造体person型を自己参照的構造体(下の例を参照)にし、配列に入力していたデータを単方向連結リスト構造に入力せよ。
ファイルからデータを入力したリストの先頭を引数として、入力した年齢と一致する人物をリスト内から検索し、該当人物がいれば表示するプログラムを作れ。
自己参照的構造体とは、構造体のメンバの中に自分と同じ型の構造体のポインタ変数を持つ構造体のことである。
単方向連結リスト構造とは、自己参照的構造体で次の要素をポインタを使って一定の方向に辿るデータ構造である。

(読む込むファイルの例)
入力するリストの先頭
1 20 田中
2 40 大田
3 35 井上
7 60 斉藤
4 23 佐藤

(自己参照的構造体)
struct person{
int no,age;
char name[40];
struct person *next;
}

[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:VisualStudio2005
 [3.3] 言語:C
[4] 期限: できるだけ早くお願いします。


700 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:36:28 ]
>>699
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7066.c

701 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:37:40 ]
>>699
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7067.c

702 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:42:07 ]
>>699
[1]コード品質:模範解答(丸写ししても、独力で同じ品質のコード
書いても提出すると心証悪くします。)

[2]コード
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7067.c

[3]普通の C処理系でコンパイルできます。

[4]品質を落としたコードを提出して下さいね。(難しいですけど)

703 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:45:49 ]
>>699
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7068.c

704 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:47:56 ]
>>700-703
なんでロダあらしてんの?ここのログも。
もうちょっと落ち着こw

705 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:52:02 ]
>>704
>[4] 期限: できるだけ早くお願いします。
じゃね?w



706 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:55:54 ]
>>704
意味が分からんけど >>702 は無関係


707 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 21:59:38 ]
>>704
ちょこちょこみてるけど>>700-703が同じソースだったので。
消しては次消しては次、と。なんじゃろ?
>>702は無関係なのですか。

708 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:06:50 ]
どなたか>>572お願いします


709 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:10:02 ]
[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)

2^nの計算
n=0〜30に対して、2~nを計算して出力する。結果の最大桁数は10進数10桁であるので、
long int型の変数をしようすること。
なお、再帰法を用いてもよい


実行例
2** 0=1
2** 1=2
2** 2=4

 ・
 ・
2**30=1073741824

[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: (visual studio 2005 )
 [3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします)

710 名前:613 mailto:sage [2008/06/25(水) 22:15:54 ]
>>637
(>>684)

ありがとーございますっ!
自分もcygwin(windows)でコンパイルして、
それなりに検証しましたが、十分機能しているようです!

あとは自分で一文ずつ動きを見て、内部表現を書き出し、
改良していこうかと思います。

えっと、doubleは64bitの8byteであっていたかと思います。

なんにせよ、ありがとうございました!!

711 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:15:57 ]
>>709

#include <stdio.h>
int main()
{
int i;
long int n = 1;

for (i = 0; i<=30; i++)
{
printf("2** %d=%d\n", i, n);
n *= 2;
}

return 0;
}

712 名前:637 mailto:sage [2008/06/25(水) 22:18:35 ]
>>710
きれいじゃなくてごめんね。
やったことない内容だったのでこちらも楽しめました。
こちらこそありがとうw

713 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:19:51 ]
>>711
ビットシフトの方がスマート

714 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:22:34 ]
>>713
シンプルなプログラムだから
これでいいのだ

715 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:22:36 ]
>>713
他人にケチつける前にソース書け



716 名前:711 mailto:sage [2008/06/25(水) 22:23:38 ]
>>713
言うのは勝手だが、せめてパッチぐらいおいてって欲しかった。

9,10c9
< printf("2** %d=%d\n", i, n);
< n *= 2;
---
> printf("2** %d=%d\n", i, 1 << i);

717 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:24:34 ]
>>713
勝手に自分基準でスマートとかぬかしてんじゃねーよw

718 名前:711 mailto:sage [2008/06/25(水) 22:24:40 ]
ちょw擁護されてたwありがとうwww

719 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:25:31 ]
>>713 の人気にぃ〜〜 shit!

720 名前:709 mailto:sage [2008/06/25(水) 22:26:55 ]
うお、早いですねw
ありがとうございます。

721 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:28:47 ]
まるで日本語、C言語トランスレータ君だなw

722 名前:636 mailto:sage [2008/06/25(水) 22:38:06 ]
どなたか636をお願いします。
期限は後日6/26午後3時です。
課題の追加・補足はありません。

723 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:40:05 ]
>>636 暗号文でおk

724 名前:709 mailto:sage [2008/06/25(水) 22:50:21 ]
すいません、あと2問分からないのがあるので
できればお願いします。


[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)

2つの正の整数a,bを入力して、ユークリッドの互除法により最大公約数(GCM)を
求める。ユークリッドの互除法は次の手順により最大公約数を求める方法である。
(1)a,bの大きい方をa、小さい方bとする。
(2)aをbで割った余りをcとする。c=0ならばbが最大公約数となる。
(3)c≠0ならば
    a←b
    b←c
    として、(2)に戻る。

実行例
入力データ:a = 88
      b = 256
     GCM = 8




[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: (visual studio 2005 )
 [3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします、ポインタなどはまだ使えません)


725 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:52:17 ]
失礼します

(1)階乗を再帰を用いずに表示

という問題なんですが教えてください。



726 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:53:28 ]
printf("階乗");

727 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:55:10 ]
ワロタ

728 名前:636 mailto:sage [2008/06/25(水) 22:56:16 ]
>>723
いえ、内容は指定の暗号文を復号するプログラムを作成せよです。

課題内容で仕様など不明な箇所があったら言ってください。

729 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 22:59:16 ]
>>728
ようするに "KOUKA" がどこに隠れてるか探せばいいんですよね?

730 名前:709 mailto:sage [2008/06/25(水) 23:12:49 ]
もう1問。 すいません、よろしくお願いします。

[1] 授業単元: Cプログラミング演習
[2] 問題文(含コード&リンク)

直角三角形の斜辺の長さをc、ほかの二辺の長さをa、bとしたとき、
 a^2 + b^2 = c^2
が成り立つ。これを三平方の定理という。
2以上100以下の整数a,b、cに対して
 a^2 + b^2 = c^2
を満たす組(a、b、c)をすべて求める。ただし、a≦b≦cとする。
max(a^2、b^2)≦ a^2+b^2
であるから、aとbの値を先に設定して、cの値をmax(a、b)から1ずつ増やし

 a^2 + b^2 = c^2 (解あり)
または
 a^2 + b^2 < c^2 (解なし)
となるまで変化させて求めればよい。
なお、cの値を先に設定して、aとbを求める方法もある。

実行例
a=3 b=4 c=5
a=5 b=12 c=13
a=6 b=8 c=10

[3] 環境
 [3.1] OS: (Windows vista)
 [3.2] コンパイラ名とバージョン: (visual studio 2005 )
 [3.3] 言語: (C言語)
[4] 期限:明日まで
[5] その他の制限: (シンプルなプログラムでお願いします、ポインタなどはまだ使えません)

731 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:14:00 ]
>>636
[1]回答レベル:検証済み
[2] コード:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7069.txt
[3]環境 Windows/VC7/C およびLinux/gcc4.1.2
[4]コメント
ずらす方向の指定とかローテーションの必要性が明記されていなかったので
解が出た方法だけ。
すごいぞ!東京工科万歳!

732 名前:636 mailto:sage [2008/06/25(水) 23:14:43 ]
>>729
はい、そうですお願いします。

(例え)
暗号文:huisdfhnauid
アスキーコード1行ずらし:oujafkadmioafa これは×
アスキーコード1行ずらし:KOUKAkiasdfkao これは「KOUKA」が含まれているので複合化成功
この段階でアスキーコードをずらす処理を終了して、複合化結果の「KOUKAkiasdfkao」を表示する。
という題意です。

733 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:17:09 ]
[1] 授業単元: Cプログラミング
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7070.txt
[3] 環境
 [3.1] OS:Windows vista
 [3.2] コンパイラ名とバージョン:CPad for Borland C++Compiler
 [3.3] C++
[4] 期限:6/27
[5] その他の制限:始めたばかりですが特に制限はありません。すみません、どうか宜しくお願いします

734 名前:トランスレータ?ないない mailto:sage [2008/06/25(水) 23:20:41 ]
>>730
ばかしょうじきに。
#include <stdio.h>

int main()
{
int a, b, c;

for (a = 1; a <= 100; a++)
{
for (b = a; b <= 100; b++)
{
for (c = b; c <= 100; c++)
{
if (a*a + b*b == c*c)
{
printf ("a=%d b=%d c=%d\n", a, b, c);
}
}
}
}

return 0;
}

735 名前:636 mailto:sage [2008/06/25(水) 23:21:18 ]
>>731
ありがとうございます!!

それにしても動作させてみて笑いました、バレバレですねwww
まさかこんな痛い内容とは思いませんでした。



736 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:23:05 ]
>>636
> 例えば「ABC]という文をアスキーコードを1つ後にずらすと「BCD」となる。
> このずらした数を総当りで探索すればよい。
KOUKA というなら Kが2つあるわけだから、当然ずらす前も
その該当の5文字には同じ文字が1文字目と4文字目にあるわけだが

暗号文:huisdfhnauid
ん〜〜〜・・・、小文字と大文字両方含まれる?

737 名前:731 mailto:sage [2008/06/25(水) 23:23:56 ]
>>732
その例を見ると俺が作ったの全然ダメかもしれない。
1行ずらしとやらを行うと文字数増えるの?
あと問題付属のソースコードが構文エラーありまくりでした。

>>735
とおもったらこれでいいのかよ!

738 名前:636 mailto:sage [2008/06/25(水) 23:27:13 ]
>>736
あ〜それは例えの暗号なので解けない&解はないです。
暗号文自体は「KOUKA]の文字列が入っていれば複合化成功なので、
大文字だけ、小文字だけ、大小文字混合のどれでも大丈夫だと思います。
とくに指示はなかったので

739 名前:636 mailto:sage [2008/06/25(水) 23:29:53 ]
>>737
まぎらっこしくてすいません。
自分は>>731の回答で満足なので、本当にありがとうございます。

740 名前:トランスレータ?ないない mailto:sage [2008/06/25(水) 23:36:05 ]
>>724
入力方法が記載されていなかったのでカンマ区切りで入力するようにしました(ex. 4,24)
#include <stdio.h>

int main()
{
int ia, ib;
int a, b, c;

scanf("%d,%d", &ia, &ib);

if (ia >= ib) {
a = ia; b = ib;
}
else {
a = ib; b = ia;
}

c = a % b;
while(c != 0)
{
a = b;
b = c;
c = a % b;
}

printf("入力データ:a = %d\nb = %d\nGCM = %d\n", ia, ib, b);

return 0;
}

741 名前:デフォルトの名無しさん [2008/06/25(水) 23:39:48 ]
1] 授業単元: c言語
[2] 問題文(含コード&リンク):固定長テキスト形式のファイルの内容を構造体に読み込むプログラムを作成しなさい.
              
[3] 環境
 [3.1] Windows
 [3.2] VC 6.0
 [3.3] 言語: C
[4] 期限: 6/26 12:00
[5] その他の制限: 固定長テキスト形式のファイルの内容を構造体に読み込むプログラムを作成しなさい

742 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:42:43 ]
>>741
ファイルのレイアウト、もしくは構造体のレイアウトを提示すべきだと思う。

743 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:50:21 ]
679です。どなたかよろしくお願いします…。

744 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:54:49 ]
>>743

1文字ずつチェック
ヒットしたらカウンタ++


1行ずつチェック
ヒットしたらカウンタ++

745 名前:デフォルトの名無しさん [2008/06/25(水) 23:55:13 ]
>>742
すいません。

typedef struct{
int num;//出席番号
char class;//クラス
char name[14];//名前
}meibo;

構造体はこんな感じです。
ファイルには最大10人分のデータがあります。

よろしくお願いします



746 名前:デフォルトの名無しさん mailto:sage [2008/06/25(水) 23:57:04 ]
>>739
っつか、暗号文すべてを復元したのを比較するよりも
KOUKAを暗号化して、その暗号化されたものを含む場合で
判断した方が、暗号化する文字数を減らせないか?

747 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:13:32 ]
>>744
ううう…どうにも思い浮かばないんだな。
だからここのスレに質問してるんだな。
プログラムお願いしますなんだな…。

748 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:15:23 ]
>>679 アンカーつけておきますね
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7061.txt


749 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:17:27 ]
[1] 授業単元:プログラミングU
[2] 問題文(含コード&リンク)
  問題:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7071.txt
  サンプル:kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7072.txt
[3] 環境
 [3.1] OS:WindowsXP
 [3.2] コンパイラ名とバージョン:VisualStudio2005
 [3.3] 言語:C++
[4] 期限:2008年6月26日12:00まで
[5] その他の制限
:問題の仕様、アルゴリズムに従うこと。

問題が長いですが、どうかよろしくお願いします。

750 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:20:08 ]
[1]C
[2]kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7073.txt
[3](1)LINUX
(3)C
[4]6月28日
[5]関数は使わず if for などの文だけでお願いします。
前回も投稿させてもらったのですが
桁数が3桁 4桁と増える場合にスペースを入れるという条件があるのを書き忘れてました
どなたかお願いします。

751 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:25:53 ]
>>679 No.1
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7074.c

752 名前:709 mailto:sage [2008/06/26(木) 00:29:55 ]
>>734
>>740

普通に動きました♪
ありがとうございます。



753 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:53:29 ]
>>679 No.2
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7075.c

754 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 00:59:23 ]
>>750
pc11.2ch.net/test/read.cgi/tech/1212895856/961
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6960.c

755 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:02:07 ]
>>746
減らせますね。そのように作ってコードを載せてからいいましょうよ。



756 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:08:35 ]
>>751,>>753
ありがとうございます!
soremisitemo>>753hanyuuryokunagai…。

757 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:09:23 ]
>>755
> コードを載せてからいいましょうよ。
はぁ?コードを書いたわけでもないお前に言われたくねーよ
お前こそ言うくらいなら書けよ

758 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:12:25 ]
>>753
strcmp使わないでわざわざ効率悪い関数自作するのはなんで?

759 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:14:26 ]
>>750
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7076.c

>>756
名前の入力が面倒なら、入力する名前を1行ずつに表示している部分をコピーして
入力受付の場面で貼り付けてやれば、連続して改行ごとに区切って取り込んでくれるよ。
不要なら後は何も入力せず改行を連打。

760 名前:755 mailto:sage [2008/06/26(木) 01:14:54 ]
>>757
俺コード書いたよ。>>731がそれ。
文脈で分かると思ったんだけど、ごめんな。

761 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:16:44 ]
>>758 = >>755
お前がコードを書けよw

762 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:19:02 ]
>>758
> strcmp使わないで
使ったのをお前が書けば良いだろ、果たして うまく いくかな?w
口先だけってのはそういうことだ。

763 名前:731=755 mailto:sage [2008/06/26(木) 01:19:27 ]
本人じゃないとわめかれても困るのでソース削除しといた。

764 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:24:48 ]
>>762
それがstrcmp使わないでnamecmpを使う理由だと思っていいのかな?
strcmpじゃ比較がうまくいかないと。

765 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:31:08 ]
1人幼い子がますね



766 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:32:52 ]
>>762
あ、もしかしたらstrncmpと勘違いしてるかも?
strcmpは完全一致したときだけ0返すお。

namecmpが桁数チェックとかしてるのって
strncmp("abc", "abcd", 3)が0返す挙動に対する考えに見える。
違ったらごめんね。

ただ、だからといってstrcmp使えよとは言わないけどなあ。
あくまでも宿題やってるうちは車輪の再発明万歳だと思うし、
俺が教授なら努力賞あげる。

767 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:33:23 ]
>>761 = >>762 のことですね、わかります

768 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:34:46 ]
>>759
ありがとうございます
申し訳ないんですが、
何故 printf("%*c ",w,0x20); の"%?"は1つしかないのに後ろに2つ値があるんですか?
普通は printf("%d",12);みたいな感じで1対1じゃないんでしょうか?
ショボイ質問ですが分からないので教えて下さい。

769 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:35:23 ]
strncmpって一致したのにfalseを返すのかって一時思ってたことがある

770 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:36:54 ]
>>766
<string.h>使わないならともかく、使ってるんじゃ再発明もないと思うがなあ

771 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:38:35 ]
>>768
www.geocities.jp/ky_webid/c/040.html
適当にぐぐっただけだけど最小フィールド幅の項を参照するといいよ。
キーワードは「出力変換仕様」。scanf系に使うのは「入力変換仕様」ね。

772 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:40:35 ]
>>768
その%dの間にある * は、%3d といったように、最低の桁数を指定できる書式。
後ろの引数には * で桁数を指定するのに w を用いている
最初に n から桁数を求めて w に入れている
この手法が駄目なら、wの分だけfor分を使ってスペースを入れるとか

773 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 01:58:30 ]
>>772
そうだったんですかありがとうございます
問題の方なんですが
例えばn=10なら
2 3 4 5 6 7 8 9 10 11 12………98 999 1000 1001
と言うように
二桁の場合は2回スペース
3桁の場合は3回スペース
4桁の場合は4回スペース
というようにしたいのですがその場合も教えて下さいませんでしょうか?
大変すいません…

774 名前:773 mailto:sage [2008/06/26(木) 01:59:39 ]
>>773
間違えました
2桁なら3回スペース
3桁なら4回スペース
4桁なら5回スペース
でした…

775 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:07:26 ]
>>774
んじゃ、そのときの最大公約数の桁数を求めて、最小限必要な桁数 w との
差をとって繰り返して入れてみては?さぁ考えてみよー



776 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:11:10 ]
それよりも本当にそのように表示したいのかが気になるところではある
各列幅がnの桁数 + 1になるようにしたいなら分かるんだけどね

777 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:14:50 ]
またおまいか、憶測野郎。自分が思った疑問なら何でも投げかける
自分が思った通りじゃないからという理由だけで。相手が既に
こうだと言っているにも関わらず、自分はそれに対して
こうするね、という意見を出すから、お前人の話聞いてんのかっ!?
はぁ?俺はそんなことを聞いてんじゃないよって言い返される。
孤立する人間のパターンそっくりだな。

778 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:18:41 ]
このスレで孤立してるのはお前だけだからw

779 名前:773 mailto:sage [2008/06/26(木) 02:22:40 ]
>>775
ますますわかりません…orz
>>776
上に書いた例はスペースの個数が反映されなく全て1回のスペースで書かれてしまいましたが
言おうとしてることはまさにそうです


780 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:24:24 ]
できたら問題文を一字一句正確に写したものをあげてくれない?

781 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:35:19 ]
>>778
自己紹介乙、そういう言い返しをする時点でバレバレなんだよ

782 名前:デフォルトの名無しさん [2008/06/26(木) 02:36:16 ]
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7077.txt
[3] 環境
 [3.1] OS: Windows XP
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 来週まで
[5] その他の制限: Which文は×

おねがいします

783 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:38:05 ]
>>750
[1]品質:未検証
[2]コード:直接記入
void main(void){
double n,i,j,a,b,tmp;
do{printf("n=(n>=3)");fscanf("%d¥n",&n);}while((n<3)||(n>=1000));
fprintf("%3 s ","");
for(i=3;i<=n;i++)printf("%-3d",i+1);
printf("¥n");
for(i=2;i<n;i++){
sprintf("%3d:",i);
for(j=3;j<i+1;j++)printf("%3 s","");
for(j=i+1;j<=n;j++){
a=i;b=j;
whlie(a!=0){tmp==b % a;b==a;a==tmp;}
fprintf("%-3d",b);
}
printf("¥r");
}
return 0;
}
[3] Windows Visual C++ 6.0 Cモードコンパイルを想定
[4]すんごく難しい課題でした。ユークリッドのアルゴリズムは
良くわかりません。参考にどーぞ

784 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:38:29 ]
あくまでオプション的な事なのでできる人だけやれと講義の最後に口伝えで言われたので書くにも書けないんです…すいません
言ってたことは 各幅が nの桁数 + 1 です。


785 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:41:29 ]
>>774 >>750
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7078.c

>>778 >>776
クソースも書かずにクソレスとな?



786 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:43:18 ]
>>785
マジでありがとうございます。
マジで感謝します。

787 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:44:02 ]
っつか、やっぱ普通に %*d 使えYO!w

788 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:47:19 ]
>>786
>>773の要求とは全く違うようにしか見えないが、それで本当にいいの?

789 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:47:55 ]
>>788
> それで本当にいいの?
またお前か・・・自分がレスしている相手のレスが見えんのか?

790 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:48:44 ]
>>755>>757>>760
>>776>>777>>779
どっちもスタートは俺なんだけどさ、どうしたらいい?w
過去にも割と噛み付かれてるんだよねwww

>>785
クソレスじゃなくて確認しただけだお。ソース作成乙。

791 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:52:04 ]
誰でも同一人物認定して噛み付くからな。

792 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:52:55 ]
>>789
お前には聞いてねーよ、引っ込んでろカス

793 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:55:12 ]
>>783
void main ひょっとしてギャ(ry

794 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:55:15 ]
もうお前らトリ付けろよwww
IDがないからグチャグチャだぜ…

795 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 02:56:31 ]
>>792
誰でも同一人物認定して噛み付くからな。
っつか、なんか最近必死な奴が紛れ込んだよなw
新学期、4月を境に分かりやすいw
2ちゃん慣れしてないだろ、こいつ?
前々からこのスレを見ている人にはバレてんぞ、ヘタレ小僧
もちっと 煽り耐性 を身につけてから出直せ。
でなきゃ、こんな場所じゃまずやっていけないよ。
お前みたいな揚げ足取りもいるからな。



796 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:00:57 ]
長文書いて、レス回数が一番多いヤツのことを必死って言うんだよw

797 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:02:07 ]
>>1
> 気に入らない質問やその他や発言はスルーの方向で。
おいっ、新入りファビョり厨、↑が読める?読めない?w
ttp://jp.youtube.com/watch?v=RIL28wqOQGA

ファビョり厨「読めないわけないだろっ!お前日本語知ってのかっ!?日本語でおk」
ってなるのがオチだからな。触らぬ神にたたり無し、日本語が読めない奴は以後スルーで。
ここでは時には エスパー も必要さ、(チェリー)ボーイ?

あと、特徴がモロに出てるよ。余計な一言、罵倒。バカ、アホ、カスなど
陰湿に、不必要に相手を煽る、罵る。その時点でバレてるって言っただろ?
人格、人間性が言動に出ているとあれほど忠告したのに、駄目な奴は何をやっても駄目なんだな。

798 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:04:21 ]
「またお前か」←これはもう勘弁してくださいwww

799 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:05:57 ]
彼のいうエスパーとは、一般人なら普通に理解できる>>26のすまんの意味が理解できずに
>>34 >>37
とファビョることですw

800 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:08:32 ]
>>797
全部、お前が言うなwってことだらけじゃねーかw

801 名前:790 mailto:sage [2008/06/26(木) 03:10:44 ]
>>799
アラヤダ!申し上げにくいんだが>>26も俺なんだorz

802 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:12:23 ]
そして俺は32だったりするw

803 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:13:34 ]
おまえらもう寝ろ
こんな時間にからかって遊ぶな

804 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:14:50 ]
>>789
うpして2分後のレスで実行して動作チェックまで完璧にしたと思うのか?
ただソースがあがってるのを見て御礼しただけの可能性の方が高いだろ。

805 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:16:47 ]
>>802-803
はあくした



806 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 03:19:34 ]
>>804
> うpして2分後のレスで実行して動作チェックまで完璧にしたと思うのか?
あのソースをコンパイルして実行したのなら、今になってそれすら言っても
説得力ねーよ・・・またお前は憶測で物を言ったな。相手がしていないという証拠は?
何もかもがお前の思い込みだって気づけよ。

807 名前:802 mailto:sage [2008/06/26(木) 03:19:35 ]
そういや>>26のリンク先も俺だったわw

808 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 04:08:02 ]
>>572
>>708
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7079.c

809 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 04:49:55 ]
回答者もテンプレに従えとは言わんが、
アンカー+直リン||直ペーストだと
通りすがりの女の娘に声をかけて、股間を指差して見せて喜ぶ
露出狂のオヤジみたいで、スレが荒れる傾向にある。

やはり、コード品質とかコメントとか、書いてやったほうが
いいんではないかい?

810 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 05:03:55 ]
コメントも情報も何も無しでソースだけ見せられてもな
回答者自身のソースが無駄になるだけ

てか、自分が○○だから他人も○○だ、なんて考え持つなよ

811 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 05:11:09 ]
>>809
お前国語1だったろwww

812 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 05:35:17 ]
まぁ、麻呂のクソースにはいくら突っ込まれようが
初心者レベルに落としたクソース ということで免罪符を貼ってます故
意見されても訂正する気がござらんので、言うくらいなら
訂正して賜う

813 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 05:55:02 ]
麻呂のソースは初心者レベルじゃねーだろ。
間違った方向に勘違いした初級者レベルってところだ。

814 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:06:17 ]
>>813
> 間違った方向に勘違いした
お前が理解できないだけだろ。妬み僻みをあらわす発言がしてたのお前だろ?w

815 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:07:05 ]
>>813
> 初級者レベル
言うまでもない、無理に初心者っぽくしているとは言え
何が初心者か?なんて基準がないから。
にしても、貶しすぎ。お前のレベルの低さが露呈しているぞ。



816 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:07:19 ]
麻呂で行くのかファビョるのかどっちかに統一しろよw

817 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:08:41 ]
>>813
何か言わなきゃ気が済まないんだよな、お前って。
マジうざい。だから周りから嫌われているって気づけよ、基地外。
そこまで言うなら、お前は必ずソースを書けよ、意見をする前に。
そして意見をするなら。間違いの指摘という指摘すらせずに
そんなのは、って自分の主観でしか言わんだろ。
あれだろ、意見をすると自分の無知を露呈するから怖くて
そんなのはと自分が気に入らなきゃ蹴るタイプだろ?
そんな奴は人生を失敗した負け組みくらいだぞ。

818 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:26:08 ]
>>813
前に、LISTの課題で、CSV形式とバイナリー形式での保存のときに
必死に噛み付いていて、結局お前が答えずに口先だけで負けたから
悔しいんだろ?初心者レベルに落とすってのがどれだけ難しいか
一度知ってしまうと、便利なものは使わずにはいられないもんだぞ。
ましてや、それが費用が掛かるわけでもなく、単にコードを記述するだけ。
お前のような他人を貶すような口出しをする奴は、人間としてもレベルが高くないどころか
ワレこそはと、自分の主観や主張のみを押し切るタイプだろ。

819 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:26:21 ]
すみません
どなたか>>749お願いできないでしょうか

820 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:28:21 ]
必死に噛み付いてきて、結局自分は答えなかった粘着↓
pc11.2ch.net/test/read.cgi/tech/1208268461/80-87
pc11.2ch.net/test/read.cgi/tech/1208268461/402-411

何か言うと、それに反応せずにはいられない一言居士。分かり易いだろ?
この世に後10年くらい生きて、様々なタイプの人間を見て観察してみろ。
自分という人間がどういったタイプに当てはまるか、分かるから。
この世に自分は唯一無二とは言え、大まかに性格や行動パターンってのは
過去に存在した何かに準ずるものがあって、分かりやすいんだよw

821 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:32:30 ]
そうやって過去スレのリンク張るってことは専ブラ使ってるのか……
一度今までの自分の書き込みを冷静振り返ってみることをお勧めするよ。

822 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:33:24 ]
"に"が抜けた。
冷静 → 冷静に な。

823 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:34:01 ]
意見、いちゃもんをつけるくらいなら自分が書け。
相手に意見をするなら、それのどこが客観的にかつ
動作する上で問題か、指摘しろ。
もっとこう、効率の良いものはあるよといわれても
所詮このスレは初心者向け。標準ライブラリを用いても
それを使うなという注文もあるが、確かにそれに応じずとも
良いといえば良いが、ここで初心者をバカにしに来ているなら
性格が捻じれてんぞ。まぁ、過去にあんたが誰かにやられたのかも
しれんが、そんなの知ったこっちゃねーだろ、第三者には。
無関係な奴を罵倒するなよ?なぁ、最後に必ず罵倒レスを入れなきゃ
気が済まないあんた?

824 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:46:27 ]
無視してりゃそのうち自分が惨めになってどっかいくでしょ

825 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 06:50:58 ]
>>1
> 気に入らない質問やその他や発言はスルーの方向で。
日本語も読めない奴が、コードを読解する能力があるとも思えん。



826 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 07:34:56 ]
>>636
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7080.c

827 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 07:55:18 ]
>>624 酷い言い掛かりだ。こりゃ嫌われるぞ。
いい加減、新学期から来ているなら3ヶ月以上経っているんだから
このスレの基本的な流れを理解しようや?お前一人が回答者じゃないんだぞ。

828 名前:デフォルトの名無しさん mailto:sage [2008/06/26(木) 08:02:22 ]
>>1
>気に入らない質問やその他や発言はスルーの方向で。






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

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

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