C/C++の宿題片付けます 137代目at TECH
C/C++の宿題片付けます 137代目 - 暇つぶし2ch259:デフォルトの名無しさん
10/06/27 21:52:25
#include <stdio.h>

int main(void)
{
char no[] = "0000000A", name[] = "aaaaa aaaaaaaa";

printf("私の学籍番号は%sです。\n", no);
printf("氏名は %sです。\n", name);

return 0;
}

260:デフォルトの名無しさん
10/06/27 22:23:44
>>256
ありがとうございます。

261:デフォルトの名無しさん
10/06/27 22:35:45
>>257
ありがとうございます。

262:デフォルトの名無しさん
10/06/27 22:45:00
>>241
>>241で書いてもらったみたいな感じです。ありがとうございました

263:デフォルトの名無しさん
10/06/27 23:22:42
a

264:デフォルトの名無しさん
10/06/27 23:25:25
>>259
本当に助かります(涙)ありがとうございます!!!!

265:デフォルトの名無しさん
10/06/27 23:45:11
>>264
いえいえ

266:デフォルトの名無しさん
10/06/28 00:33:27
お礼を言われると返って心苦しくなるなw

267:デフォルトの名無しさん
10/06/28 00:41:58
>>241
忘れてました
全部の平均ってどういう意味なんですかね?これがいまいちわからないです

268:デフォルトの名無しさん
10/06/28 00:47:00
>>267
例えば、
英数国合計の平均=(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点)/3

269:268
10/06/28 00:56:58
これのほうがまだわかるかな
(Eavg)
+(Mavg)
+(Javg)

=(Aさんの英語の点+Bさんの英語の点+Cさんの英語の点+Dさんの英語の点)
+(Aさんの数学の点+Bさんの数学の点+Cさんの数学の+Dさんの数学の点点)
+(Aさんの国語の点+Bさんの国語の点+Cさんの国語の点+Dさんの国語の点)

=(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点)/4


=英数国合計の平均

270:みすった
10/06/28 00:58:13
(Eavg)
+(Mavg)
+(Javg)

=(Aさんの英語の点+Bさんの英語の点+Cさんの英語の点+Dさんの英語の点)
+(Aさんの数学の点+Bさんの数学の点+Cさんの数学の+Dさんの数学の点点)
+(Aさんの国語の点+Bさんの国語の点+Cさんの国語の点+Dさんの国語の点)

=(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点)


これを人数分で割ると
(Aさんの英数国合計点+Bさんの英数国合計点+Cさんの英数国合計点+Dさんの英数国合計点)/4
=英数国合計の平均

271:デフォルトの名無しさん
10/06/28 01:15:43
すみっこつつきで申し訳ないけど、変数名がavgなのがちょっと変かもね。
質問者がそれで理解できてるようだからいいけれど。

272:デフォルトの名無しさん
10/06/28 06:33:29
>>271
うざいです(>_<)

273:デフォルトの名無しさん
10/06/28 07:26:32
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
社員の情報を管理するプログラムを作りたい。
そこで、以下の例のような構造体Employeeを考える。
以下の構造体Employeeの例は、社員の名前を保存するchar型の配列変数name、年齢を保存するint型の変数age、年譜を保存するint型の変数salaryを有している。
名前は、アルファベットで記述することとし、この構造体では名字だけを管理することとする。(ただし、この構造体のメンバは変更してもかまわない。)
URLリンク(kansai2channeler.hp.infoseek.co.jp)
このような構造体を用いて、下の実行例のような社員データベースを処理するプログラムを実装しなさい。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年6月29日まで
[5] その他の制限:特にありません。よろしくお願いいたします。



274:デフォルトの名無しさん
10/06/28 10:31:05
1] 授業単元: プログラム入門
[2] 問題文(含コード&リンク): 2つの自然数 n と m を入力し、その積 n×m を
たし算のみで計算するプログラムを作成せよ。
[3] 環境
 [3.1] OS: Windows
 [3.2] borland c++ compiler 5.5
 [3.3] 言語: C
[4] 期限: 2010年06月28日14:30まで
[5] その他の制限: 特になし

よろしくお願いします

275:デフォルトの名無しさん
10/06/28 10:36:05
#include <stdio.h>

int main(void)
{
int n, m, ans;

scanf("%d%d", &n, &m);

printf("%d * %d = ", n, m);

for(ans = 0; m; m--) ans += n;

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

return 0;
}

276:246
10/06/28 11:02:07
>>247
>>248
ありがとうございます。
助かりました。

277:274
10/06/28 12:02:00
>>275
ループ変数使用して、printf 文をまとめた方がよくないですか?

278:デフォルトの名無しさん
10/06/28 14:05:40
[1] 授業単元: C言語プログラミング入門
[2] 問題文:関数の再帰的呼び出しによりAckermann(アッカーマン)関数を計算するプログラムを作れ。同じプログラムを繰り返し処理(ループ計算)により実現できるか考えよ。Ackermann関数は次式で定義される。
[3] 環境 
 [3.1] OS: Mac OS
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 2010年6月30日
[5] その他の制限: 特にはないです。

よろしくお願いします。

279:278
10/06/28 14:07:58
Ackermann関数は次式で定義される。の次式を書き忘れてましたすいません。
n+1 m=0 and n>_0
ack(m,n)= ack(m-1,1) m>0 and n=0
ack(m-1,ack(m,n-1)) m>0 and n>0


280:デフォルトの名無しさん
10/06/28 14:19:21
>>277 足し算で
#include <stdio.h>
int main(void)
{
int a,b,c;
scanf("%d %d",&a,&b);
if (a<b){c=a;a=b;b=c;}c=0;b=-(b);
while (b++)printf(b?"%d + ":"%d = %d\n",a,c+=a);
return 0;
}

281:デフォルトの名無しさん
10/06/28 14:20:10
>>274
#include <stdio.h>
int main(void) {
  int i, n, m, ans;

  printf("input:"); scanf("%d", &n);
  printf("input:"); scanf("%d", &m);
  if(n<0 || m<0) { printf("error"); return 1; }
  ans = 0;
  if(n < m){
    for(i=n; i > 0; --i)
      ans += m;
  }else{
    for(i=m; i > 0; --i)
      ans += n;
  }
  printf("\nans:%d * %d = %d", n, m, ans);
  return 0;
}

282:224 ◆C/HmxiIl0o
10/06/28 16:02:40
>>224について、教えていただいたプログラムで提出したのですが、
logxの真値と補間で求めた値の誤差を比較していないとのことで受理されませんでした。

>>249さんのような結果を出さないといけないようなのですが、c++だったので、
Cに作り直そうとしたのですが、うまくできませんでした。

大変申し訳ないのですが、Cで作り直していただけないでしょうか?
宜しくお願い致します。

283: ◆/91kCCQXBo
10/06/28 16:05:01
いいよCで作り直して。
>>280 文章よめ

284:デフォルトの名無しさん
10/06/28 16:16:58
>>282
URLリンク(ideone.com)

285:224 ◆C/HmxiIl0o
10/06/28 16:26:08
>>284
ありがとうございました。

286:デフォルトの名無しさん
10/06/28 17:36:30
[1] プログラミング1
[2] 現在のインターネットを実現しているTCP/IP通信プロトコルでは主にIPv4
  を用いており、コンピュータを一意に識別するために32ビットのIPアドレスを
  用いている。これを踏まえ、IPアドレスの4つの数字を入力させ、これらを32ビットの
  データ型であるunsigned int型の変数にIPアドレスを示す2進数の数値として保存せよ。
  保存したIPアドレスがunsigned intの整数値として解釈するといくつとなるか表示する
  プログラムを作成せよ。
[3] 環境
 [3.1] OS Linux
 [3.2] gcc
 [3.3] 言語 C言語
[4] 期限:2010年6月30日19:00まで
[5] 特に制限はありませんが、while文は習っていません。
  if文、for文、配列など基本的なものを習いました。

どうぞよろしくお願いします。

287:デフォルトの名無しさん
10/06/28 18:07:05
>>286
int main(int argc, char* argv[])
{
int i;
unsigned int val;
unsigned int addr = 0;

for (i = 0; i < 4; i++)
{
printf("%d:", i + 1);
addr <<= 8;
scanf("%d", &val);
addr |= val;
}

printf("addr=%u\n", addr);

return 0;
}


288:デフォルトの名無しさん
10/06/28 18:24:56
[1] 応用プログラミング
[2] 問題文(含コード&リンク):  
  URLリンク(kansai2channeler.hp.infoseek.co.jp) 
[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2008
 [3.3] 言語:C
[4] 期限:30日まで
[5] その他の制限:プログラミング経験はほとんどないです。
         構造体の授業での宿題です。
         構造体はまだわかるのですがそれに苦手なポインタが加わるとどうにもわかりません。
         宜しくお願いします。

289: ◆QZaw55cn4c
10/06/28 18:35:59
>>278
URLリンク(codepad.org)

290:デフォルトの名無しさん
10/06/28 18:40:17
>>287
ありがとうございました!

291: ◆QZaw55cn4c
10/06/28 18:46:34
>>288
URLリンク(codepad.org)

292:デフォルトの名無しさん
10/06/28 18:49:03
>>288
URLリンク(codepad.org)

293:デフォルトの名無しさん
10/06/28 18:59:13
>>292
> scanf("%s",p[i].name);
buffer overrun...

294:デフォルトの名無しさん
10/06/28 19:07:57
元がそうなってんだからそっちに文句つけろよw

295:デフォルトの名無しさん
10/06/28 19:15:50
>>294
氏ねといわれたら氏ぬんですね、よくわかります。

296:デフォルトの名無しさん
10/06/28 19:19:18
長すぎる文字列入れたら正しく動作しないのは>>291もかわらないしw

297:デフォルトの名無しさん
10/06/28 19:36:54
>>295
原要求を無視したらテンプレの意味が(ry

298:デフォルトの名無しさん
10/06/28 19:50:14
>>291 = >>293か?

299: ◆QZaw55cn4c
10/06/28 20:05:36
>>296
たしかにうまく処理できませんね。標準で入力バッファをクリアする方法はなんでしょうかね。

>>298
違います。

300:デフォルトの名無しさん
10/06/28 20:46:00
[1] 授業単元:情報処理学
[2] 問題文(含コード&リンク):
例1は、3教科5人の生徒の合計得点を求めるプログラムである。
これを実行し、動作を説明せよ。さらに、教科毎の平均点、
生徒毎の平均点を計算して表示できるようにプログラムを修正し、
結果とともに示せ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年6月30日

よろしくお願いします。

301:デフォルトの名無しさん
10/06/28 20:47:24
>>300の例1
例1
#include<stdio.h>
#define KAMOKU 3
#define SEITO 5
int main()
{
int ten[][KAMOKU]={{ 80, 65, 70},
{ 70, 55, 75},
{ 75, 80, 70},
{ 80, 60, 60},
{ 90, 80, 75}};
int j,k,s;
printf(“ kokugo sugaku eigo gokei\n”);
printf(“------------------------------------------------\n”);
for (j=0;j<SEITO;j++) {
s=0;
for (k=0;k<KAMOKU;k++) {
printf(“%8d”,ten[j][k]);
s=s+ten[j][k];
}
printf(“%8d\n”,s);
}
return 0;
}


302:デフォルトの名無しさん
10/06/28 21:18:08
>>300

> これを実行し、動作を説明せよ。
URLリンク(codepad.org)

> 教科毎の平均点、生徒毎の平均点を計算して表示できるようにプログラムを修正し、
結果とともに示せ。
URLリンク(codepad.org)

303:デフォルトの名無しさん
10/06/28 21:29:23
[1] 授業単元:プログラミング演習
[2]問題文:長いので次のレスに書かせていただきます
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名:gcc
 [3.3] 言語:C
[4] 期限:2010年6月29日17:00まで
[5] その他の制限:特に制限はありませんが、なるべく簡単な文法で書いていただけるとありがたいです


304:303
10/06/28 21:31:23
次レスにまとめても規制されてしまったので・・・・
[2] 問題文:[1],[2]のプログラムを作成せよ。
      [1]多項式の次数nと係数a,(i=0,1・・・・,n)を入力し、
その多項式f(x)=a_nx^2+a_n-1x^n-1+・・・+a_2x^2+a_1x+a_0と
       その微分の多項式f'(x)を出力するプログラムを作成せよ。
       ただし、nはint型,a_iはdouble型の配列とせよ。n<100と仮定してよい。
       以下に入力例を示す
n=5
a5=1
a4=0
a3=2
a2=0
a1=3
a0=0
f(x)=x^5+2x^3+3x
f'(x)=5x^4+6x^2+3

305:303
10/06/28 21:32:41
続きです
[2]以下の要領で、平均点、分散、標準偏差、最小値、最大値を求めるプログラム
        を作成せよ。
        (1)100人分の点数(int型)を記憶するための配列変数aを定義する
        (2)人数(int型)を記憶するための変数nを定義する。
        (3)人数nの初期値を0とする
        (4)点数をa[n]に入力する
        (5)点数が負の数ならば終了する
        (6)人数nを1つ増やす
        (7)全員の点数を空白で区切って表示する。例:83 52 64
        (8)平均点を出力する
        (9)分散を出力する
        (10)標準偏差を出力する
        (11)最小値を出力する
        (12)最大値を出力する
        (13)(4)へ戻る
        ※標準ライブラリのsqrt関数を使わずニュートン法によって平方根を
         求める自作の関数を使え。
        ※平均点、分散、標準偏差を求めるとき、キャスト演算子を用いてdouble型へ
         型変換せよ。
多いですがどうぞよろしくお願いします

306:デフォルトの名無しさん
10/06/28 21:38:30
>>210
やっと規制が解けた。
3000!の桁数=9131なので、#define文を変えればもう少しいけるはず。
URLリンク(codepad.org)

307:デフォルトの名無しさん
10/06/28 21:56:52
>>273もどなたかお願いいたしますm(_ _)m

308:デフォルトの名無しさん
10/06/28 22:29:23
>>304
#include <stdio.h>

int main(void)
{
    int n, i;
    double a_i[100], a;
    printf("n=");
    scanf("%d", &n);
    for (i = n; i >= 0; i--) {
printf("a%d=", i);
scanf("%lf", &a);
a_i[i] = a;
    }
    printf("f(x)=");
    for (i = n; i >= 0; i--)
if (a_i[i])
    printf(a_i[i] > 0 ? " +%lgx^%d" : " %lgx^%d", a_i[i], i);
    printf("\n");

    for (i = 0; i < n; i++)
a_i[i] = a_i[i + 1] * (i + 1);
    a_i[n] = 0;

    printf("f'(x)=");
    for (i = n; i >= 0; i--)
if (a_i[i])
    printf(a_i[i] > 0 ? " +%lgx^%d" : " %lgx^%d", a_i[i], i);
    printf("\n");

    return 0;
}

309:デフォルトの名無しさん
10/06/28 22:44:17
[1] 授業単元:C++プログラミング
[2] 問題文(含コード&リンク):○×ゲームのプログラムにコンピュータとの対戦をつける。
コンピュータと対戦するかしないかは選べれるようにする事。
URLリンク(codepad.org)
[3] 環境
 [3.1] OS:WinodwsVista
 [3.2] コンパイラ名とバージョン:Visual C++ 2008 Express Edition
 [3.3] 言語:C++
[4] 期限:6/29(火)AM9時まで
[5] その他の制限:C++触り始めたばかりです。インライン関数は使わない方向でお願いします。

実行結果としてはこんな感じにしてほしいです。
1Pと2Pとの交互に対戦しますか?
1Pとコンピュータとの対戦にしますか?
プレイヤ同士の対戦なら1を、コンピュータとの対戦なら2を入力してください:
こんな感じで選らばせて対戦できるようにしてほしいです。

※1Pのマスは○でコンピュータのマスは×でお願いします。

大変だと思いますがどうかお願いします。

310:デフォルトの名無しさん
10/06/28 22:46:03
礼も言わないヤツか

311:デフォルトの名無しさん
10/06/28 22:57:23
>>310
あの時は本当にありがとうございました。

本当に申し訳ありません。

312:デフォルトの名無しさん
10/06/28 23:57:38
>>258
おい!同じ大学だw

>>259
助かりました ありがとうございます。

313:303
10/06/29 00:11:24
>>308 ありがとうございます。
   どなたか>>305に書いてある[2]の方もよろしくお願いします

314:デフォルトの名無しさん
10/06/29 00:15:38
>>273
URLリンク(codepad.org)

とりあえずここまで。
昇級については仕様を推測できなかった。
他の機能については適当に推測した。
リファクタリングし甲斐があると思うから,がんがれ。


315:デフォルトの名無しさん
10/06/29 01:09:05
>>312
char型ならまとめ方一緒だったの?
俺的には全然違ったw

316:デフォルトの名無しさん
10/06/29 02:14:34
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月1日

よろしくお願い致します。

317:デフォルトの名無しさん
10/06/29 04:05:10
[1] 授業単元:プログラミング言語
[2] # リストに格納したデータを,データファイルとは
別のファイル(出力先ファイルとよぶ)に書き出す.
データファイルと出力先ファイルのファイル名は
コマンドライン引数として指定する
下記テンプレートを使用すること
URLリンク(codepad.org)
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月2日
お願います

318:デフォルトの名無しさん
10/06/29 04:13:02
言い忘れてました
>>310以外の方にお願いします

319:デフォルトの名無しさん
10/06/29 04:59:18
windows+gccな人って具体的にどういう環境なんだろ。

320:デフォルトの名無しさん
10/06/29 05:05:35
CygwinかMinGWだろ

321:デフォルトの名無しさん
10/06/29 05:22:04
そういう予想じゃなくてさ。
出題者がちゃんと理解してるのかどうかを知りたいという意味合いも含んでた。
実はteratermでredhatにつないでました、とかありえない話じゃないと思うのよ。

322:デフォルトの名無しさん
10/06/29 09:22:02
>>316
#include <stdio.h>
#define NN 3
#define loop(i,NN) for (i = 0; i < NN; i++)

int
main(void)
{
    int i, j, seq[3], n;
    char s[NN][100];

    loop(i, NN) {
        printf("入力文字列[%d]=", i);
        scanf("%s", s[i]);
    }
    printf("繋ぎ合わせる順番を入力してください\n");
    loop(i, NN) {
        scanf("%d", &n);
        seq[i] = n;
    }
    printf("結果 -> ");
    loop(i, NN) {
        loop(j, NN) {
            if (seq[j] == i + 1)
                printf("%s", s[j]);
        }
    }

    return 0;
}

323:デフォルトの名無しさん
10/06/29 10:06:01
>>316の2番目
#include <stdio.h>
#include <string.h>
#define NN 100
#define loop(i,NN) for (i = 0; i < NN; i++)

int
main(void)
{
    int i = 0, linemax = 0, cnt = 0;
    char s[NN][100], *p, str[] = "abc";

    while (fgets(s[i++], 100, stdin) != NULL)
        linemax++;
    loop(i, linemax) {
        for (p = s[i]; *p; p++) {
            if (!strncmp(p, str, 3))
                cnt++;
        }
    }
    printf("#%s is %d\n", str, cnt);

    return 0;
}

324:デフォルトの名無しさん
10/06/29 11:49:06
>>322-323さん

助かりました。ありがとうございました。

325:デフォルトの名無しさん
10/06/29 12:48:44
画像上のある点からy=ax^2の2次曲線を赤線で描画しなさい(画像 320×240)


(x,y)=(160,120)
a=1/3のとき
a=1/2のとき
a=1のとき
a=2のとき

描画範囲
yの範囲は40
xの範囲は60

326:224 ◆C/HmxiIl0o
10/06/29 14:19:04
>>283
すみません。折角作っていただいたのですが、データが>>242の通り、
x=1.0~4.0,y=1/(1*25*x*x)でそれぞれ31個づつあります。
何度もお願いするのも申し訳ないと思い自分で拡張を試みたのですが、
Interpolationの部分が出来ませんでした。

startが最大で31まで増えるため、そのまま入れてもオーバーフローしてしまい、
かといって、iやjを消してdata[0][start]のような記述をするとnanになってしまいます。

何度も申し訳ないのですが、forの部分だけで構いませんので、作っていただけないでしょうか?

327:デフォルトの名無しさん
10/06/29 14:30:53
>>325
こっちにも投げたか

328:278
10/06/29 15:09:56
>>289 ありがとうございます。

329:デフォルトの名無しさん
10/06/29 15:11:29
>>305
URLリンク(codepad.org)

330:デフォルトの名無しさん
10/06/29 15:17:38
>>324>>328
はい

331:デフォルトの名無しさん
10/06/29 17:26:05
[1] 授業単元:一般情報処理
[2] 問題文(含コード&リンク):次のような動作をするプログラムを作成せよ。
               配列内のデータの最小値を返す。int min() 配列内のデータの最大値を返す。int max()
配列内のデータの平均値を返す。double mean() 配列内のデータの標準偏差を返す。double stdev()
ただしmain関数は次のものを使うこと。
               int main(void){
int a[15]={81,36,45,67,73,98,62,56,77,61,65,70,25,51,18};
printf("min=%d\n",min(15,a));
printf("max=%d\n",max(15,a));
printf("average=%lf\n",mean(15,a));
printf("standard deviation=%lf\n",stdev(15,a));
return 0; }
さらに、配列a[]の各要素の偏差値を表示するプログラムを作成せよ
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名:gcc
 [3.3] 言語:C
[4] 期限:[2010年06月30日18:30まで]
[5] 文章中の示された関数・main関数を使ってください
よろしくお願いしますm(_ _)m

332:デフォルトの名無しさん
10/06/29 18:18:32
>>226です。
>>227を作って頂いたのですが、main関数の部分も含め、プログラム全体を作って頂きたいです。

333:デフォルトの名無しさん
10/06/29 18:34:36
>>331
URLリンク(codepad.org)

334:デフォルトの名無しさん
10/06/29 18:53:33
[1] 授業単元:画像処理
[2] 問題文(含コード&リンク):16×16サイズの白黒ビットマップ画像を読み込んで、
                 上下反転させた画像をビットマップで保存するプログラムを作成。
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: [無期限]
[5] その他の制限: ビットマップのファイル構造は少し勉強しました。
           画像のデータを取り込むところと処理を行う部分がよくわかりません。
           RGB値、malloc、Loadbmp等わかりやすく載ってるHPや本があれば教えてください。
           よろしくお願いします。

試しに書いてみた上下反転プログラム → URLリンク(codepad.org)
反転させたい画像を作ったプログラム → URLリンク(codepad.org)

335:デフォルトの名無しさん
10/06/29 21:00:18
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):ファイルに保存された会員情報を指定された項目をキーとしてソートするプログラムを作成する.
出力形式は,入力データと同じ,つまり1行に1人分のデータを格納し,各項目間はカンマで区切るものとする.
また,ソート済みのデータはファイルではなく標準出力に出力するものとする.
整数型のデータについては数値として,文字列型のデータについては大文字/小文字を区別せずにソートをすること.
ソートアルゴリズムはこれまでの演習で使用したもの,していないものに関わらず,何を用いてもよい.

また,会員数は最大で20,000人と仮定してもよい.

会員情報の入ったファイルのファイル名,キーとなる項目,正順か逆順かの指定はプログラム実行時の引数として与える.第一引数が会員情報の入ったファイル名,第二引数が項目番号(表1参照),第三引数がソート方法(0なら昇順,1なら降順)とする.

表1: データ型 項目名 項目番号 型
会員ID 1 整数(int)
姓 2 文字列(最大で50文字)
名 3 文字列(最大で50文字)
年齢 4 整数(int)
州 5 文字列(最大で50文字)
郡 6 文字列(最大で50文字)


[3] 環境
 [3.1] OS: UNIX
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: 2010年6月30日20:00まで
[5] その他の制限: 特になし


よろしくお願いします。

336:デフォルトの名無しさん
10/06/29 21:25:33
>>291
>>292
ありがとうございました。
返事送れて申し訳ありません。
書き込んでから20分とはおどろきました

337:デフォルトの名無しさん
10/06/29 21:44:13
>>302
ありがとうございます!

338:デフォルトの名無しさん
10/06/29 21:46:47
>>317
URLリンク(kansai2channeler.hp.infoseek.co.jp)

339:デフォルトの名無しさん
10/06/29 22:55:19
>>335
URLリンク(kansai2channeler.hp.infoseek.co.jp)

340:デフォルトの名無しさん
10/06/29 23:39:54
[1] 授業単元: プログラミング開発基礎
[2] 問題文 複数ありますのでこちらで
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:(Windows 
[3.2] VC 6.0
[3.3] 言語:C
[4] 期限:なし
[5] 制限:なし
問題数が多くて恐縮なのですがなにとぞよろしくお願いします

341:デフォルトの名無しさん
10/06/29 23:56:51
>>339
ありがとうございます!

342:デフォルトの名無しさん
10/06/30 00:18:49
>>340
URLリンク(kansai2channeler.hp.infoseek.co.jp)

343:デフォルトの名無しさん
10/06/30 00:29:31
>>326
テンプレ嫁

344:デフォルトの名無しさん
10/06/30 01:09:50
>>335
ピキーーーン・・・麻呂のク(ry

345:デフォルトの名無しさん
10/06/30 02:44:25
>>342ありがとうございますこれでどうどうと学校にいけます

346:331
10/06/30 08:20:03
>>333
ありがとうございます。
ただ、コンパイルしてみたところ

/tmp/ccSDhYV6.o: In function `stdev':
test.c:(.text+0x18a): undefined reference to `sqrt'
collect2: ld returned 1 exit status

このようにエラーがでてしまうのですがどうすればコンパイルできるでしょうか?

347:デフォルトの名無しさん
10/06/30 09:03:08
-lm

348:デフォルトの名無しさん
10/06/30 10:48:45
>>346
次回からは、undefined reference to `sqrt'  でGoogle検索するとかして、自分で調べてくれ。
対策は、コンパイル時に -lm オプションを付ける。
例:gcc -lm test.c

349:デフォルトの名無しさん
10/06/30 11:11:24
>>346
もう一度言うぞ。
対策は、コンパイル時に -lm オプションを付ける。
わかったな。

350:デフォルトの名無しさん
10/06/30 12:19:22
こういうときどういう反応したらいいのだろうか
とりあえず、笑えばいいのかな

351:デフォルトの名無しさん
10/06/30 14:36:15
>>350
最近、IDなしのスレに粘着してるなりすましのかまってちゃんが居るから、本人とは限らない。
「俺が348だ、349は偽物だ」と言っても確認出来ないからね。
という訳で、不快に思ったらスルーが一番。

352:デフォルトの名無しさん
10/06/30 16:17:43
そうすることにするよ

353:335
10/06/30 16:32:15
何度もすみません。
せっかく解いていただいたのですが、「昇順か降順でしかソートできない」として、もう一度お願い致します。


354:デフォルトの名無しさん
10/06/30 18:16:33
>>325
>>1
環境によってはとけるかもしれません。(最近apiを勉強しているところでして)
テンプレートを書くときには条件をもっと詳しく書いてください。
・描画範囲の意味がよくわかりません。±40, ±60 ということですか?
・y = ax^2 を平行移動したものを描画すればいいのでしょうか?
・(x, y) = (160, 120) というのは頂点なんですか?
以上よろしくお願いいたします。

355:デフォルトの名無しさん
10/06/30 18:33:45
>>354
mixiに似たような質問あったけど(既に削除済み)
背景が真黒のbmpに白で線を書き込みたいようだよ。

356:346
10/06/30 18:48:06
本当にすみませんでした;
回答してくださった方、ありがとうございます
無事にコンパイルできました


357:デフォルトの名無しさん
10/06/30 19:55:42
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:Visua lstadio
 [3.3] 言語:C
[4] 期限:2010年7月1日

よろしくお願いします

358:デフォルトの名無しさん
10/06/30 20:27:38
>>357
URLリンク(kansai2channeler.hp.infoseek.co.jp)

359:デフォルトの名無しさん
10/06/30 20:56:55
>>358
すいません、こちらの環境(Microsoft Visual Studio 2008)ではエラーが2つ出て動きませんでした。

360:デフォルトの名無しさん
10/06/30 21:12:49
>>353
もともと昇順か降順かしかないんじゃ?
コードもascとdescしかないように見えるし。
どこが気に入らないのか具体的に

361:デフォルトの名無しさん
10/06/30 21:13:19
>358, 359
確保したら開放ぐらいきちんと書けとも思ったがまぁいいや
C言語としてコンパイルすればエラーはでない
VS2008のclは使ったことないので、どんなスイッチ指定すればいいか知らないが、原因はC++ではvoid *から他のポインタへの暗黙の型変換がされないから
C++のソースコードとしてコンパイルしたければ、malloc()の戻り値を適当にキャストすれば良い

362:デフォルトの名無しさん
10/06/30 21:13:32
>>359
URLリンク(kansai2channeler.hp.infoseek.co.jp)

これでどうですか?
VisualStudio使ったことないもので、すいません。

363:デフォルトの名無しさん
10/06/30 21:13:53
>>359
エラーの内容はなんとなく予想できるけど、コンパイルの仕方が悪い。
具体的には/Tcスイッチをつけるといいと思う

364:デフォルトの名無しさん
10/06/30 21:21:01
>>358
>>361
URLリンク(kansai2channeler.hp.infoseek.co.jp)

365:デフォルトの名無しさん
10/06/30 21:36:58
>>364
49行目、と思わんでもないけど別にいいや、としたいところだけど
学生はしっかりやっておいた方がいいのかもな、とも。。。

366:デフォルトの名無しさん
10/06/30 22:05:33
[1] 授業単元:Cプログラミング演習
[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 Vista
 [3.2] コンパイラ名とバージョン:Visual Studio 2008
 [3.3] 言語:C
[4] 期限:2010年7月2日まで
[5] その他の制限:無し

よろしくお願いします

367:デフォルトの名無しさん
10/06/30 22:42:19
>>366
>>357といっしょ

368: ◆QZaw55cn4c
10/06/30 23:23:11
>>344
fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?

369:デフォルトの名無しさん
10/07/01 01:48:52
>>338
ありがとうございます

370:デフォルトの名無しさん
10/07/01 06:24:44
>>368
麻呂じゃないが、勘違いしたのはお前だろ?しつこいぞw
麻呂の偽者との区別もつかず、いつまでも相手が勘違いしたと思い込んでろ。
自分が勘違いしてた癖にw 資料をきちっと読めよ、青二才。
あと、お前の言っている事は本当に意味不明。

371:デフォルトの名無しさん
10/07/01 06:25:39
>>368
そ・れ・か・ら、getchar() と EOF について理解できましたか?
どうですか?成長しましたか?

372:デフォルトの名無しさん
10/07/01 06:28:28
>>368
URLリンク(www.bohyoh.com)
> int getchar(void);
getchar() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?

373:デフォルトの名無しさん
10/07/01 06:32:27
>>368
EOF がマクロで定義されているであることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?

374:デフォルトの名無しさん
10/07/01 06:39:34
>>368
あぁ、あなた、結局ここで質問された課題に答えられず麻呂に負けたヘタレですか?w
いつまでも根に持つ陰険。お前の人生はクソだなw
一生こんなスレでネット弁慶をやってろ。お前が見ず知らずの人間に偉そうな態度で
上から目線で優越感を感じられるのは、せいぜいこのスレだけなんだろ?実に寂しい人生だ。

【話題】2ちゃんねる・ネット弁慶には困ったものだ 自らが叩きやすそうな対象を見つけたとたん、ムキになっ
スレリンク(newsplus板)
↑まさにお前のことだなw それも自分の勘違いだと気づかずに、揚げ足取りをしたつもりのバカ

375:デフォルトの名無しさん
10/07/01 06:41:27
>>368
戻り値がどうしたって?リストの課題で麻呂のクソースは付き物。
しかし、今回は提示される事はなかった。それが何を意味しているか分かるか?
麻呂はもう居ないってことだ。俺は何となく麻呂のクソースが出るか扇動してみたが
出なかったしw

376:デフォルトの名無しさん
10/07/01 06:42:01
>>368
お前のおつむは成長していないようだなw 精神レベルもw

377:デフォルトの名無しさん
10/07/01 06:45:23
>>368
そろそろお前が痛いって気づけよ

378:デフォルトの名無しさん
10/07/01 06:46:19
>>368
悔しかったらお前オリジナルのリストのソースを書いて公表しろよ
他人のパクリしか出来ないコピーキャット

379:デフォルトの名無しさん
10/07/01 06:48:06
>>368
ん~~、みっともない。このスレに何しに来てんの?分かりきった答えの問題を
解き続けるだけがお前の人生?このスレから離れて自分の人生を見つめ直したら?
どうせいつかは死ぬ限り有る時間を生きている人生だぞ?
こんな場所で揉めるのに使った時間も、過去のものとなるがそれが未来に役に立つ
有意義な時間になるとは思えないね。

380:デフォルトの名無しさん
10/07/01 06:50:01
>>368
戻り値が重要ではないとは言わないが、いきなりそんなことを書くお前は何者だ?
麻呂がいつそんなことを言ったか、ログを参照してくれ。それが麻呂だという証拠も付けてな。
こんなIDも出ない、本人がトリップを使ってない騙りが可能な場所で、見えない敵と
戦い続ける恥ずかしい戦士めw

381:デフォルトの名無しさん
10/07/01 06:56:00
>>368
> そろそろ理解していただきたいのですが。
相手を茶化すにしても痛すぎ。そんな態度だから周りから干されて孤立したんだろ。
言動が陰険過ぎ。いつまでも理解していないみたいな勘違いとか、粘着していることも含めて
人間として終わってる。

382:デフォルトの名無しさん
10/07/01 06:59:49
368は人気者?

383:デフォルトの名無しさん
10/07/01 07:02:14
>>382
この間隔で書き込まれているのを見ていると、
一人で騒いでいるだけのようにしか見えない

384:デフォルトの名無しさん
10/07/01 07:25:34
あいかわらずですね。

385:デフォルトの名無しさん
10/07/01 07:37:16
見えない敵と戦っているんだろう
プログラマなら魔法で戦えよ

386:デフォルトの名無しさん
10/07/01 07:47:46
>>383
一度に多数の人間が同時に書き込んだ、というのを演出したいらしい。

387:デフォルトの名無しさん
10/07/01 12:11:13
vectorをリファレンス引数で扱う意味を教えてください

388:デフォルトの名無しさん
10/07/01 12:53:33
>>387
コピーするコストがもったいないから
コピーだと中身に変更を加えても呼び出し元に影響を与えられないから

389:デフォルトの名無しさん
10/07/01 12:59:28
>>388
つまり、コピーだとその後代入などの手間がかかるため
リファレンス引数で扱い、その手間を省くということですね
ありがとうございます。

390:デフォルトの名無しさん
10/07/01 14:36:20
[1] 授業単元: プログラミング言語
[2] 問題文(含コード&リンク): URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Windows
 [3.2] コンパイラ名とバージョン:Vc
 [3.3] 言語: C++
[4] 期限:2010年07月10日まで
[5] その他の制限:なし

391:デフォルトの名無しさん
10/07/01 14:50:54
>>383
その感覚じゃ連続投稿に引っかかることくらい、ここの住人なら知っているだろう。
バイバイさるさんにも引っかかる可能性はある。

392:デフォルトの名無しさん
10/07/01 18:39:51
>>391
抜け道はいくらでもある。

393:デフォルトの名無しさん
10/07/01 21:27:49
>>390
void main (笑)

394:デフォルトの名無しさん
10/07/01 21:29:53
>>389
コンストラクタ・デストラクタのコストを避けるのが主目的。

395:デフォルトの名無しさん
10/07/01 21:32:19
>>379
なに、ほんの手遊びですよ。ちょろちょろっと書いてみるのもまた楽しいものです。

396:デフォルトの名無しさん
10/07/01 21:35:24
>>378
>>250
オリジナルの多桁演算ライブラリです。いつのまにか乗算・除算もできてしまいました。
効率は悪いのですが、それでもわりに重宝しています。

397:デフォルトの名無しさん
10/07/01 21:44:08
トリップ付けずに代弁するとか、大人しくトイレで大便しといれw

398:デフォルトの名無しさん
10/07/01 21:53:17
>>396
横レスで失礼。除算をどうやったのか興味があります。

399:デフォルトの名無しさん
10/07/01 21:59:57
>>398
2進法での除算そのものです。ちょっとググってみたところでは URLリンク(homepage2.nifty.com) など。
多桁数を1bit ずつシフトさせながら引き算できるときは引き算をする、という感じです、言葉にすれば。
>>250 も、折をみて、剰余を出力させるように改良しなくては。

400:デフォルトの名無しさん
10/07/01 22:25:54
>>399
なるほど。繰り返しで処理出来るからハードウェア化も可能、というのが理解出来ました。
有難う御座います。

401:デフォルトの名無しさん
10/07/01 22:39:01
>>400
手近な環境でマシン語を習得し、割り算を実装することができれば、そのマシン語は卒業したといってもいいと思います。
x86 がいいでしょうが、casl でもできます。

402:デフォルトの名無しさん
10/07/01 22:54:25
>>401
CASLには虎馬が...ww

403:デフォルトの名無しさん
10/07/01 23:05:13
>>390の前半
// ◎ソースコード
#include <stdio.h>
#define N 10
#define ID   "/0000/"
#define NAME "/やまだ/"

static int fib(int n)
{
    int r;
    if (n <= 2)
r = 1;
    else
r = fib(n - 1) + fib(n - 2);
    return r;
}

//-----------------------------------------------------
int main(void)
{
    int i;
    printf("%s %s\n\n", ID, NAME);
    for (i = 1; i <= N; i++) {
printf("F%2d = %7d\n", i, fib(i));
    }
    return 0;
}


404:デフォルトの名無しさん
10/07/01 23:09:06
>>403
ついでに改造版。
#include <stdio.h>
#define N 40
#define ID   "/0000/"
#define NAME "/やまだ/"
#define fib(n) fib2(n,1,1)
static int fib2(int n, int a, int b)
{
    return (n <= 2) ? b : fib2(n - 1, b, a + b);
}

//-----------------------------------------------------
int main(void)
{
    int i;
    printf("%s %s\n\n", ID, NAME);
    for (i = 1; i <= N; i++) {
printf("F%2d = %7d\n", i, fib(i));
    }
    return 0;
}


405:デフォルトの名無しさん
10/07/01 23:15:15
摂氏から華氏,及び華氏から摂氏に換算する関数を作成して、
main関数でキーボードから温度とその値が摂氏であるか華氏であるかを
入力し,摂氏ならば華氏に,華氏ならば摂氏に換算した値を小数点以下1桁までで出力するプログラムを作成しなさい。
なお出力は main関数で行うこと。

406:デフォルトの名無しさん
10/07/01 23:29:03
#include <stdio.h>
float power(float x,float y)
{
float ans;
char i;

ans=0;

if((char)y='C'){
ans=9/5 * x + 32;
y='摂氏';
i='華氏';
}else{
ans=5/9 * (x - 32) ;
y='華氏';
i='摂氏';
}
return ans;
}


407:デフォルトの名無しさん
10/07/01 23:29:54
int main(void)
{
float a;
char b,i;

a=0;

printf("温度を入力してください: ");
scanf("%f", &a);

printf("%d度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ",(int)a);
scanf("%s", &b);
printf("\n");

printf("%c %8.3f = %c %8.3f\n",b, a, i, CelsiusFahrenheit(a, b));
return 0;
}

ここまでできたんですが、出力がうまくいきません。
誰か教えてください。

408:デフォルトの名無しさん
10/07/02 00:20:43
>>405
#include <stdio.h>

float CelsiusFahrenheit(float a, char *b)
{    return (*b == 'C') ? (a - 32) * 5 / 9 : a * 9 / 5 + 32;}

int main(void){
    float a = 0;
    char b[2];

    printf("温度を入力してください: ");
    scanf("%f", &a);
    printf("%g度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ", a);
    scanf("%s", b);
    b[1] = (*b == 'C') ? 'F' : 'C';
    printf("%5.1f °%c = %5.1f °%c\n",
            a, b[0], CelsiusFahrenheit(a, b), b[1]);

    return 0;
}

409:デフォルトの名無しさん
10/07/02 02:19:37
[1] 授業単元:プログラミングC
[2] 問題文(含コード&リンク):
極座標(r,θ)の値を入力すると、直交座標(x,y)に変換するプログラムを作成せよ。
但し,θの値はdegree(度)で入力すること。また、πの値は逆三角関数(arctan(x))を使って計算をすること。
[3] 環境
 [3.1] OS:WinodwsVista
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:7/5(月)迄
[5] その他の制限:特になし

よろしくお願いします

410:デフォルトの名無しさん
10/07/02 02:42:39
[1] 授業単元:アルゴリズム論
[2] 問題文(含コード&リンク):分離連作法と外部ハッシュ法の性能比較
[3] 環境
 [3.1] OS:windows XP
 [3.2] gcc
 [3.3] 言語:C++
[4] 期限:2010年7月10日00:00
[5] その他の制限: 特になし

411: ◆QZaw55cn4c
10/07/02 05:55:41
>>409
URLリンク(codepad.org)

412:デフォルトの名無しさん
10/07/02 07:22:59
>>403
ありがとうございます
よろしければ演習2のほうもお願いします・・・

413:デフォルトの名無しさん
10/07/02 12:17:45
>>411
ありがとうございます!

414:デフォルトの名無しさん
10/07/02 12:56:28
[1] 授業単元:C言語
[2] 問題文(含コード&リンク):switch 文を使用して
1. データファイルの新規作成
2. データファイルの追加作成
3. データファイルの読み込みと表示
4. 終了
をメニュー形式で処理するプログラムを作成せよ。
・ ファイル名はキーボードから入力する。
・ 1~4の処理はユーザ関数として定義すること。
void data_write(void)
void data_append(void)
void data_read(void)
void the_end(void)
・1~4以外の数値が入力されたら再入力させること。

[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:cc
 [3.3] 言語:C言語
[4] 期限:7月5日

415:デフォルトの名無しさん
10/07/02 17:27:31
もう麻呂のク(ryで十分じゃんw

416:デフォルトの名無しさん
10/07/02 18:26:04
>>415
コードを出したり引っ込めたりしなければね。

417:デフォルトの名無しさん
10/07/02 19:01:48
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):
正の整数を引数とし、その階乗(n!)を計算して戻り値とする関数
factを作成して動作を確認せよ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月5日

よろしくお願いします。

418:デフォルトの名無しさん
10/07/02 19:04:56
>>417
>>211, >>250, >>306 あたりを参考にしてはいかが?

419:デフォルトの名無しさん
10/07/02 19:43:49
>>417
URLリンク(codepad.org)

420:デフォルトの名無しさん
10/07/02 20:35:07
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):
実数値(xとする)と正の実数値(yとする)を引数としてx^yを戻り値とする
関数mypowを作成し、プログラムリストと実行結果を示せ。
ただし、xとyについてはmain関数でキーボードから入力するようにし、
出力結果としては、mypow関数の計算結果と数学関数pow関数の結果を
両方表示するようにせよ。また、mypow関数のプロトタイプ宣言も行うこと。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月5日

よろしくお願いします。


421:デフォルトの名無しさん
10/07/02 20:35:15
[1] 授業単元: プログラム言語
[2] 問題文(含コード&リンク):
10 人の成績を入力し,その順位を成績と共に表示したい。以下の考え方に基づいた
プログラムを作成せよ。
1 ?
2次元配列s[10][2] を用意する。
2 ?
i=0~9 のfor 文を用いてs[i][0] に成績を入力する。
3 ?
s[0][0] とs[j][0],j=0~9 を比較し,s[0][0] より大きい数値の個数n を数え
 る。その個数+1 が成績順位になるので,s[0][1] にn+1 を代入する。
4 ?
同様の操作をs[i][0],i=0~9 に対して行なえば,その成績順位がs[i][1] とし
 て求められるので,あとは成績と共に表示すればよい。

[3] 環境
 [3.1] OS: WindowsXP
 [3.2] コンパイラ名とバージョン:VC 6.0
 [3.3] 言語: C++
[4] 期限: 2010年7月6日まで
[5] その他の制限: main関数
よろしくお願いします

422:デフォルトの名無しさん
10/07/02 20:39:26
>>419
ありがとうございます!

423:デフォルトの名無しさん
10/07/02 21:27:52
>>408
遅れてすいません。ありがとうございます!

424:デフォルトの名無しさん
10/07/02 21:44:46
>>416
しつけぇw

425:デフォルトの名無しさん
10/07/02 22:02:53
>>423ですが、何度もすいません。

>>408

80度が「摂氏」なら "C" を「華氏」なら "F" を入力してください: F

日本基準 80.0 度 = 欧米基準 176.0 度

と出力できるようにはできませんか?

426: ◆QZaw55cn4c
10/07/02 22:47:29
>>420
URLリンク(codepad.org)
もっとまじめにmypow()を定義しなければならないのでしたら、その旨ご返事ください。考え直します。

427: ◆QZaw55cn4c
10/07/02 23:06:15
>>421
URLリンク(codepad.org)
VC6 でコンパイルできなかったらごめんなさい。

428:デフォルトの名無しさん
10/07/02 23:47:19
>>424
質問でも宿題でもないのにあげている、という点で同一人間っぽいですね。
いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。

429: ◆QZaw55cn4c
10/07/03 00:49:16
>>390
URLリンク(codepad.org)

430:デフォルトの名無しさん
10/07/03 00:56:52
>>425
計算違いがありましたので修正しました。

#include <stdio.h>
#define c1(c) (c=='C')?"日本基準":"欧米基準"

float CelsiusFahrenheit(float a, char *b)
{    return (*b == 'F') ? (a - 32) * 5 / 9 : a * 9 / 5 + 32;}

int main(void)
{
    float a = 0;
    char b[1];

    printf("温度を入力してください: ");
    scanf("%f", &a);

    printf("%g度が「摂氏」なら 'C' を「華氏」なら'F' を入力してください: ", a);
    scanf("%s", b);
    printf("%s %5.1f 度 = %s %5.1f 度\n",
   c1(*b), a, c1('C' + 'F' - *b), CelsiusFahrenheit(a, b));

    return 0;
}

431:デフォルトの名無しさん
10/07/03 06:36:17
>>428
し・つ・こ・い。このスレに何しに来てんの?基地外。自分のレスを読み返せ。
浮いてるぞ

432:デフォルトの名無しさん
10/07/03 06:43:38
>>428
> いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。
自己紹介しているし、このバカw
お前の揚げ足取り、反論はどれも論点がズレている。もう少し自分の方が
勘違いをしてコミュ力がないと気づけよ、お子ちゃま。
で、fgetc()の戻り値なんて今更持ち出す池沼乙w

433:デフォルトの名無しさん
10/07/03 06:45:57
>>234
よろしければお願いします

434:バカ晒しage
10/07/03 06:48:26
ageているからという理由で勘違いしているなら
ピエロのお前を晒し続けてやるよw
お前がこのスレに無関係な話を延々と見えない敵に噛み付いて
し始めているからきめぇつってんだよ。スレタイ読めや、文盲かてめぇは?

435:いつまでもおつむは成長しないお子ちゃま
10/07/03 06:49:18
368 名前: ◆QZaw55cn4c 投稿日:2010/06/30(水) 23:23:11
>>344
fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?

436:見えない敵に噛み付く自分こそ自意識過剰のスレチバカ
10/07/03 06:50:06
428 名前:デフォルトの名無しさん 投稿日:2010/07/02(金) 23:47:19
>>424
質問でも宿題でもないのにあげている、という点で同一人間っぽいですね。
いわゆる自意識過剰ってやつですか。もっと大人になりましょうね。

437:デフォルトの名無しさん
10/07/03 06:53:32
>>368 = >>428
EOF がマクロで定義されていることを、そろそろ理解していただきたいのですが。
どうですか?精神レベルとプログラミングの技能は成長しましたか?

URLリンク(www.bohyoh.com)
> int getchar(void);
getchar() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?


438:433=234
10/07/03 07:10:46
ちなみに期限のほうですが、来週の月曜日にまで延長して貰えました

439:デフォルトの名無しさん
10/07/03 07:18:56
このスレがどんなスレか、そろそろ理解していただきたいのですが?
スレタイも>>1も読めないアホ

440:デフォルトの名無しさん
10/07/03 12:50:16
内容:
[1] 授業単元:プログラミング
[2] 問題文(含コード&リンク):
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:7/6まで
[5] その他の制限:特になし
2問ありますがよろしくお願いします

441:デフォルトの名無しさん
10/07/03 13:27:17
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):
UNIXコマンドのgrep(指定したファイルを読み込み、指定した文字列とマッチする行を出力するコマンド)と同じ動作をするプログラムを実装しなさい。
ただし、オプションなどの副次的な機能はつけなくてもよい。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月5日まで
[5] その他の制限:とくにありません。よろしくお願いします。

442: ◆QZaw55cn4c
10/07/03 15:41:24
>>441
URLリンク(codepad.org)

443:334
10/07/03 17:20:02
URLリンク(codepad.org)

コンパイルが上手く行ったので実行したらゴミができた
タイミングよく救急車のサイレンがきこえてきた 死にたいw

(gdb) run
Starting program: /cygdrive/c/works/1/rev/rev
[New thread 2376.0x258]
[New thread 2376.0xbf0]
6 [main] rev 2376 exception::handle: Exception: STATUS_ACCESS_VIOLATION
3713 [main] rev 2376 open_stackdumpfile: Dumping stack trace to rev.exe.stack
dump

Program received signal SIGSEGV, Segmentation fault.
0x611203f8 in _fread_r () from /usr/bin/cygwin1.dll

444:デフォルトの名無しさん
10/07/03 17:26:03
>>443
画像開く前から画像の幅と高さがわかるとかどんなエスパーだよバカ

445:デフォルトの名無しさん
10/07/03 17:29:08
ワロタ

446:デフォルトの名無しさん
10/07/03 19:06:49
>>426
ありがとうございます。

447:デフォルトの名無しさん
10/07/03 19:44:18
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):
例を修正し、double型の配列変数に格納されている値の
平均値を求める関数aveを作成せよ。また、aveもdouble型とする。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月5日


448:デフォルトの名無しさん
10/07/03 19:46:04
>>447の例は以下の通りです。よろしくお願いします。

#include<stdio.h>
#define N 10
int sum(int num[])
{
int n, s=0;

for (n=0;n<N;n++)
s+=num[n];

return 0;
}

int main()
{
int aa[N], bb;
/* 配列変数aaに値を代入 */

bb = sum(aa);
printf(“sum=%d\n”,bb);

return 0;
}


449:デフォルトの名無しさん
10/07/03 20:06:46
>>447
#include<stdio.h>
#define N 10
double sum(double num[])
{
int n;
double s=0.0;
for (n=0;n<N;n++)
s+=num[n];
return s;
}

int main()
{
int i;
double aa[N], bb;
/* 配列変数aaに値を代入 値は適当*/
for (i=0;i<N;i++)
aa[i]=i*2.5;
bb = sum(aa);
printf("sum=%f\n", bb);
return 0;
}


450: ◆GmgU93SCyE
10/07/03 20:08:55
>>447
#include <stdio.h>
#define N 10

double ave( const double arr[] )
{
int i;
double total = 0;
for ( i=0; i<N; ++i )
total += arr[i];

return total/N;
}

int main()
{
const double arr[N] = { 1.23, 9.87, 5.94, 0.157, 7.2, 1.23, 9.87, 5.94, 0.157, 7.2 };
printf( "average = %f", ave(arr) );
return 0;
}


451:デフォルトの名無しさん
10/07/03 20:47:22
>>408
ありがとうございます!

452:デフォルトの名無しさん
10/07/03 20:52:37

[1] c言語活用:
[2] 例を改造して、ガウス関数に関する折れ線グラフにしなさい。
URLリンク(codepad.org)
[3] 環境
 [3.1] OS : Linux
 [3.2] コンバイラ名 : gcc
 [3.3] 言語 : C
[4] 期限: 7月 5日まで

例をガウス関数で定義するところまでは自力でできましたが、
グラフが点集合でしか表せません。
現在のX座標の点と隣のX座標の点を直線で結ぶために2組の座標の組
(x1, y1, disp_x1, disp_y1),
(x2, y2, disp_x2, disp_y2) を用意するとうまくいくそうですが
どうしてもわかりませんでした。
御助力お願いします。

453:デフォルトの名無しさん
10/07/03 21:42:14
>>452
handy.h とはなんでしょうか?
あと、X Window ?

454:デフォルトの名無しさん
10/07/03 22:01:38
>>390
誰かコレの演習2お願いしますっ

455: ◆QZaw55cn4c
10/07/03 22:35:14
>>390
>>454
URLリンク(kansai2channeler.hp.infoseek.co.jp)

>>431
宿題しにきていますが、なにか?

>>432
べつに当たり前のことをいってるだけですけどね。でも、当時話題になったが fgetc() ではなくて getchar() マクロや EOF だっただなんて、よくご存知ですね。やっぱり当事者だったんですね。つれた、つれた。

>>434
そういいながらも sage で投稿できないところなんか、末期的としかいわざるを得ないでしょうね。一度 sage で投稿してごらんなさい?

まあ一匹の自意識障害者をあぶりだすことができたようで、満足しています。

456: ◆QZaw55cn4c
10/07/04 00:21:30
>>390
>>454
訂正します。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

457:デフォルトの名無しさん
10/07/04 00:31:44
[1] 授業単元:プログラム演習
[2] 問題文(含コード&リンク):
以下のプログラムに、下に示す二つの関数を実装し、組み込みなさい。
ファイル中に保存するデータはアスキー形式でも、バイナリ形式でもどちらでも構わないものとする。
URLリンク(kansai2channeler.hp.infoseek.co.jp)
・構造体Employee型のデータが順に保存されているファイルからデータを読み込む関数。
・作成したデータをファイルに書き出す関数。
例えば、構造体Employeeを下に示すものと同じ定義にしたとする。
この構造体に従ったASCII形式のデータベースファイルを読み込み、社員の追加や、給与の変更をした後、同様なデータベースファイルとして保存できるようにしなさい(もちろん、バイナリ形式のファイルにしても構わない)。
[構造体Employeeの例]
typedef struct {
char name[16];
int age;
int salary;
} Employee;

[データベースファイルの例]
TANAKA 32 620
SUZUKI 25 500
CHIBA 35 650
NAKAMURA 50 1000
IIDA 45 800

[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月5日まで
[5] その他の制限:特にありません。よろしくお願いします。



458:457
10/07/04 00:43:11
>>459
ありがとうございます。

459:デフォルトの名無しさん
10/07/04 00:50:36
どういたしまして

460:デフォルトの名無しさん
10/07/04 01:02:03
>>456
ありがとうございます、助かりました

461:デフォルトの名無しさん
10/07/04 01:03:27
1] 授業単元: プログラミング実験
[2] 問題文(含コード&リンク):URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
 [3.1] OS: Windows
 [3.2] コンパイラ名とバージョン:
 [3.3] 言語: C言語
[4] 期限: ([2010年07月05日22:00まで]
[5] その他の制限: よろしくお願いします!

462:デフォルトの名無しさん
10/07/04 01:03:42
>>455
精神障害者だろ、お前?いつまでも昔の(自分の勘違いのせいで起こった論争)を引き摺るとか。
気持ち悪い。このスレ、お前のオナニースレじゃないんだが?周りを見ろよ。
日頃、現実世界でまともに相手にされていないのがバレバレだぞ。

463:デフォルトの名無しさん
10/07/04 01:05:26
>>1
> 気に入らない質問やその他の発言はスルーの方向で。
最初の1行も読めないとか、日本人かも疑わしいわ。
ageられているのはお前みたいなキモイ奴を晒しageされていると気づけよ。
このスレにsageルールはないけど?

464:デフォルトの名無しさん
10/07/04 01:15:35
ID希望

465:精神障害者アスペ君の恥ずかしいレス
10/07/04 01:15:35
368 名前: ◆QZaw55cn4c 投稿日:2010/06/30(水) 23:23:11
>>344
fgetc() の戻り値は int 型であることを、そろそろ理解していただきたいのですが。
どうですか?成長しましたか?

466:デフォルトの名無しさん
10/07/04 01:23:04
どなたか教えてください。ずっと考えてたけど、答えがわかりませんorz。

<標準関数>文字列と削除文字列を入力し、文字列中から削除文字列を削除しなさい。
※配列の使用は2つだけ。
例) 文字列入力→ABCDEFAABCDABC
   削除文字列→ABC
   結果文字列→DEFAD

どなたか教えてください、お願いします。

467:デフォルトの名無しさん
10/07/04 01:35:50
IDが表示されない、だから相手が特定できないから自分にレスした奴を
虱潰しに煽る事で炙り出そうって魂胆だろ。一生見えない敵と戦うぞ、こいつw

468:デフォルトの名無しさん
10/07/04 02:00:45
>>467
今来産業の俺にもう少し分かりやすく

469:デフォルトの名無しさん
10/07/04 02:05:50
>>466
#include <stdio.h>
#include <string.h>

int main(void)
{
char source[] = "ABCDEFAABCDABC";
char target[] = "ABC";

size_t l = strlen(target);
char *p;

puts(source);
puts(target);

while (p = strstr(source, target)) {
while (p[0] = p[l]) {
p++;
}
}

puts(source);

return 0;
}


470:デフォルトの名無しさん
10/07/04 02:06:11
麻呂のクソースを超えるクソースは出てこない、間違いない

471:デフォルトの名無しさん
10/07/04 02:21:25
>>469
※配列の使用は2つだけ。
って言われてるけど

472:デフォルトの名無しさん
10/07/04 02:35:20
>>471
はあ?確保してる配列は2つだけだろうが
脳みそヒヨコかよ

473:デフォルトの名無しさん
10/07/04 11:33:13
>>449
「ave」という文字がないのですがこれでいいんですかね?

474:デフォルトの名無しさん
10/07/04 14:29:58
>>453

handy.h はHandyGraphic という
グラフィックスライブラリを使うことを意味しています。
また学校のパソコンなのでわかりませんがおそらく
X Windowかと思われます。いいかげんですみません。

明日提出なのでよろしければ、どなたかよろしくお願いします。

475:デフォルトの名無しさん
10/07/04 14:41:34
[1] 授業単元:プログラミング
[2]問題文:
ファイルseiseki.txt から氏名と点数を読み込んで、成績順に並べ替え、結果を画
面に表示するプログラムを作成せよ。
・氏名は2次元配列、点数は1次元配列に格納する。
・ データの並べ替えには単純挿入法、単純選択法またはバブルソートを使用する。
・ 文字列 x[]と文字列y[]の入れ替えは、文字列操作関数strcpy を用いて行う。
strcpy(z,x); strcpy(x,y); strcpy(y,z);
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限: ([2010年07月06日0:00まで]

この問題が解ける方はいらっしゃいますでしょうか。

476: ◆QZaw55cn4c
10/07/04 15:11:12
>>475
URLリンク(codepad.org)

>>463
>>1 を読めないのはおまえさんも同じ。私?いちおう宿題といてますけどね。
なによりこれだけの過剰反応を示していること自体が、つれた、つれた、と判断されてもしかたのないことでは?
さらしあげ?専用ブラウザを使っている私にはなんのことだか。

>>467
それはおまえさんのことですがな。

477:デフォルトの名無しさん
10/07/04 15:21:19
>>469
よみにくいから段下げをつけてくれ

478:デフォルトの名無しさん
10/07/04 15:24:06
>>473
>>450

479:デフォルトの名無しさん
10/07/04 15:36:07
>>477
ついてるよ
メモ帳にコピペしてみ

480:デフォルトの名無しさん
10/07/04 15:41:04
>>457もお願いします。

481:デフォルトの名無しさん
10/07/04 16:04:42
[1] 授業単元:方程式の解
[2] 問題文(含コード&リンク):方程式exp(-x^2/2)=0.5の解を求める
[3] 環境
 [3.1] OS:Windows Vista
 [3.2] コンパイラ名とバージョン:Cygwin
 [3.3] 言語:C
[4] 期限:7/9
[5] その他の制限:
double f(double x);
int main(void){
double x,min_f,solution;
min_f=1e100;
for(x=0;x<=3;x+=dx){
printf("%e,%e\n",f,min_f);
if(fabs(f(x))<min_f){
solution=x;
min_f=fabs(f(x));
}}
printf("f(%e)=%e\n",solution,min_f);
return 0; }
double f(double x){
double y;
y=exp(-x*x/2)-0.5;
return y; }
と組んで実行できたんですが、なぜmin_fを最初に10^100とするのでしょうか?
なんか私の感覚的には10^-100な気がするのですが・・・
この部分の解説お願いします。

482:デフォルトの名無しさん
10/07/04 16:20:47
>>479
確かにソースをみるとついてますな。

483:デフォルトの名無しさん
10/07/04 16:44:30
>>481
範囲をdx刻みで分割して、|f(x)|が最小となるxを求める。
min_fは暫定の最小。もしあるxで|f(x)|<min_fなら、min_fを更新する。
dxに対してmin_fを小さくしすぎると、|f(x)|<min_fなxがない可能性がある。

484:デフォルトの名無しさん
10/07/04 20:06:11
>>476
うわっ、お前マジキモイ・・・そのままトリップを付けたまま書き込めよ。
必死に自分の不満、苛立ちを露にする長文を書くしバカ丸出しw

485:デフォルトの名無しさん
10/07/04 20:06:54
>>476
> それはおまえさんのことですがな。
いや、お前のことだよ。第一、お前はトリップを付けているが
お前にレスした奴が特定の一人とは限らないだろ?

486:デフォルトの名無しさん
10/07/04 20:07:19
>>476
見えない敵と戦う必死な戦士、かっちょわりぃ~w

487:デフォルトの名無しさん
10/07/04 20:08:06
>>476
>>1
>あなたが解けないC言語/C++言語の宿題を片付けもらうスレッドです。気に入らない質問やその他の発言はスルーの方向で。
読めませんか?相手をいちいち自分の勘違いで挑発するお前が一番幼稚

488:デフォルトの名無しさん
10/07/04 20:08:28
>>476 日本語でおk

489:デフォルトの名無しさん
10/07/04 20:09:12
>>476
自分はさっぱり分かりません、みたいなしらばっくれた書き込みをして
自分がした 勘違い を認めないとか、頭おかしいぞw
自覚が無いなら責任が問われる社会では通用しません。

490:デフォルトの名無しさん
10/07/04 20:09:55
>>476
最後の1行がみっともないです ><;
早くこのスレから出て行くか、大人になって下さい ><;
ねぇ、まだ社会に出て働いた事の無いお子ちゃまw

491:デフォルトの名無しさん
10/07/04 20:10:37
>>476
やっぱりお前が>>1の注意書きを読めてないじゃんw

492:デフォルトの名無しさん
10/07/04 20:11:40
>>476
そろそろ、自分の苛立ちを見えない敵にぶつけないで良いよ。
今後無駄なレスをしても、スルーされるだけだからw
で、お前は俺を麻呂と思っているんだろ?麻呂があれから
騙りもあり、しばらく来ていなかったことも知らないとは・・・
そうやって見えない敵に噛み付いてなさいw

493:デフォルトの名無しさん
10/07/04 20:14:39
>>476 の書き込み全てが恥ずかしい。このスレに何しに来てんですか?
他人にお前こそと言う前に、議論するスレは他にありますので、そちらでやって下さい。
トリップ付けてまでバカ晒すなよ、ガキw

494:デフォルトの名無しさん
10/07/04 20:16:42
>>493
お前はコテハンかトリップつけろクズ

495:デフォルトの名無しさん
10/07/04 20:28:46
>>469
解答ありがとうございます。もしよろしかったら、使用する標準関数は、strncmp(),strcpy(),strlen()で書いてもらえないでしょうか?

496:デフォルトの名無しさん
10/07/04 20:47:34
少しも勉強しないんだな。それでいいのか若者

497:デフォルトの名無しさん
10/07/04 20:56:45
>>476
ありがとうございます。助かりました。

498:デフォルトの名無しさん
10/07/04 21:23:46
>>495
URLリンク(codepad.org)

499:481
10/07/04 21:37:31
>>483
どうもありがとうございます。納得できました。
ifの条件文に引っかからなくなる直前のxがsolutionとなる、という認識で大丈夫ですか?

500:デフォルトの名無しさん
10/07/04 23:15:12
>>478
ありがとうございます。

501:デフォルトの名無しさん
10/07/04 23:29:02
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):
次式の値を返す関数を作成せよ。
f(x)=e^{-x} cos(2πx)
その関数を用いて0≦x≦3の間で0.1刻みで計算し、結果をリダイレクトで
ファイルに記録せよ。その結果をgnuplotでグラフにして示せ。
[3] 環境
 [3.1] OS:Linux
 [3.2] コンパイラ名とバージョン:gcc
 [3.3] 言語:C
[4] 期限:2010年7月6日

よろしくお願いします。

502:デフォルトの名無しさん
10/07/05 00:35:56
だれか>>440お願いします。

503:デフォルトの名無しさん
10/07/05 04:14:21
>>440
【1】 (1) return ; (2) shift_down(heap, s, 2*s, n);
【2】 (2) swap(&heap[1], &heap[i]); (2) shift_down(heap, 1, 2, i-1);

酷いコードだ。
教育だからこそ、スマートなコードにしてくれることを切に願う。

504:デフォルトの名無しさん
10/07/05 05:16:09
[1]授業単元:プログラミング演習
[2]問題文;離散探索木(26進)と外部ハッシュ法の比較(探索関数)
 キー:   文字列
 使用ファイル: wordE100KR.dat
 上記ファイルを読み込み、通常の配列に格納する。
 この配列から要素を読み込み、分離連鎖法および離散探索木(26進)を生成する。
 格納された要素と同一の要素集合すなわち、配列に格納された用語集合に対して、1万語毎に探索を行い、照合回数、および探索時間を測定する。
 結果として、照合回数について20個のデータ(2×10)、同様に探索時間について20個のデータ(2×10)が得られる。
 これらのデータをExcelに格納し、表、グラフを作成し、分析せよ。
[3]環境
[3.1]OS;windowsXP
[3.2]コンパイラ名とバージョン:gcc
[3.3] 言語:C/C++どちらでも可
[4]期限;7月8日

使用ファイルはURLリンク(rg550.hp.infoseek.co.jp)にあります。
丸投げで申し訳ありません。よろしくお願いします。

505:デフォルトの名無しさん
10/07/05 06:49:51
すみません、>>457もお願いします。

506:デフォルトの名無しさん
10/07/05 12:32:23
[1] 授業単元: C言語プログラミング
[2] 問題文メモリや実行時間の許容範囲内の、最大完全数、最大友愛数、および最大婚約数を算出プログラムを作成
[3] 環境
[3.1] OS: Windows
[3.2] コンパイラ名とバージョン:Microsoft Visualstadio 2003
[3.3] C言語・C++
[4] 期限: ([2010年7月6日12:00まで

よろしくお願いします。



507:デフォルトの名無しさん
10/07/05 16:52:56
>>461おねがいします

508:デフォルトの名無しさん
10/07/05 17:01:57
>>507
zipはめんどくさいので放置。
できれば1レス、最低でもWEBだけで確認できる様に書きなおせ。

509:デフォルトの名無しさん
10/07/05 17:03:46
>>506
> 許容範囲内
とは誰が許容する範囲内なんだ。
具体的に書きなおせ。

510:デフォルトの名無しさん
10/07/05 17:50:36
最大友愛数、最大婚約数…

511: ◆QZaw55cn4c
10/07/05 18:29:52
>>501
URLリンク(codepad.org)

512:デフォルトの名無しさん
10/07/05 20:24:06
>>507
問題文の

確率指定 p

って何?>

513:デフォルトの名無しさん
10/07/05 20:28:32
あれだけISOの標準スタイルについて述べられていたのに未だに
int main() 笑 の奴がいるとかw

514: ◆QZaw55cn4c
10/07/05 20:28:45
>>457
>>505
URLリンク(codepad.org)

515: ◆QZaw55cn4c
10/07/05 20:34:19
>>513
スレリンク(tech板:101番) で述べられ済み。

ISO/IEC 9899TC2
6.7.5.3 Function declarators (including prototypes)
14
An identifier list declares only the identifiers of the parameters of the function. An empty
list in a function declarator that is part of a definition of that function specifies that the
function has no parameters.
とあり、関数の定義のときには、空のリストは no parameters である。
すなわち引数が void の場合と等価であり、int main() は int main(void) と同じ。

516:デフォルトの名無しさん
10/07/05 20:36:40
>>513
void main()でも別に構わんぞ
コンパイル通ればいいんだよ

517:デフォルトの名無しさん
10/07/05 20:45:25
>>516
これには異論があり。
個人的には、int main() でコンパイルできる環境で、main() が引数をかえさない、という main() 側の都合で void main() と宣言するのには疑問がある。

518:デフォルトの名無しさん
10/07/05 20:51:48
ま~たこの話題かw
ちょっと前にもどっかのスレで泥沼化してただろう?
だれか過去ログはっておやり。

519:デフォルトの名無しさん
10/07/05 20:53:34
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク): 四則演算と平方根を求める事が出来る電卓プログラムを作成せよ.
[3] 環境
 [3.1] OS: Windows xp
 [3.2] コンパイラ名とバージョン:visual C++ 2008
 [3.3] 言語: C++
[4] 期限: 2010年7月7日22:00頃まで
[5] その他の制限: 数学関数等は利用不可,関数ライブラリは標準入出力ライブラリ stdio.h のみを利用可

URLリンク(kansai2channeler.hp.infoseek.co.jp)

math.h等の利用が出来ないため平方根はニュートン法により求めるプログラムを使用したいと思っています.
URLに記載した二つのプログラムを組み合わせて上記の条件を満たすような電卓プログラムを作りたいのですが,
私なりに見よう見まねで組み合わせて見たのですが,知識が足りず平方根を求める動作が働きません.
根本的に間違っている可能性もありますが,どなたか修正点を教えて頂けると幸いです.
よろしくお願いいたします.




520:デフォルトの名無しさん
10/07/05 20:55:25
あのな、isoだかなんだか知らんが、そんなもんただの標準だろ。
守らなきゃいけないルールじゃない。
単にコンパイラやソースが標準に沿っていますということを表明できるだけの意味しかないんだよ。
この世にはmainが存在しないプログラムをCで書くケースだって腐るほどあるし、
エントリ関数がWinMain()になっている世界で最も普及したコンパイラだってあるんだぞ。

521:デフォルトの名無しさん
10/07/05 20:58:04
>>518
このスレの先々代(135)、3月~4月にかけて宿題が欠乏し宿題解き人が暇になったために泥沼化した。
結論としては、規格の上では void main() も int main() も合法だったかと。

522:デフォルトの名無しさん
10/07/05 21:01:57
>>521
情報トンクス! ていうかこのスレだったかw

523:デフォルトの名無しさん
10/07/05 21:30:58
[1] 授業単元: Visual Studio 入門
[2] 問題文 3問ほどあるのでリンクを
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Windowsvista 
[3.2] Microsoft Visual Studio 2008
[3.3] 言語:c言語
[4] 期限:なし
[5] 制限:なし
問題が多いのですがひとつお助けください

524:デフォルトの名無しさん
10/07/05 22:14:53
>>523
gccでの確認になりますが。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

525:デフォルトの名無しさん
10/07/05 22:23:17
x(1)、 x(2)、・・・とaは2000次元ベクトルとします。

N
Σ || x(n)-a || / N   || ・|| はノルム。

を高速に計算する方法わかりますか。

526: ◆QZaw55cn4c
10/07/05 22:30:05
>>523
URLリンク(codepad.org)
URLリンク(codepad.org)
URLリンク(codepad.org)

527:デフォルトの名無しさん
10/07/05 22:32:14
X=(x, y) Y=(z, w) A=(a ,b) とすると、

||X-A|| + ||Y-A|| = SQRT( (x-a)^2 + (y-b)^2 ) + SQRT( (z-a)^2 + (w-b)^2 )

を高速で計算したいという訳なんです。

2000次元だと、かけ算とSQRTが相当あって時間掛かりますが。
短縮する方法ありますか。

528:527
10/07/05 22:35:42
面倒なので、

||X-A||  = |x-a| + |y-b| と定義してしまうか。

すると、 |x-a| + |y-b| + |z-a| + |w-b| を求めるだけで簡単。

529: ◆QZaw55cn4c
10/07/05 23:23:14
>>519
URLリンク(codepad.org)
キー入力の具合はこれでいいですか?

530:デフォルトの名無しさん
10/07/05 23:24:23
◆QZaw55cn4c はもりもりがんばってるなぁ。
定期的に叩かれるみたいだけどがんばれ。

531:デフォルトの名無しさん
10/07/05 23:29:13
やってることは怠け者の成績を上げてやることだけどなw

532:デフォルトの名無しさん
10/07/05 23:31:38
>>530
叩いてもらえる、というのは、コードをみてくださっている、というありがたい反応ですから、ウェルカムです。
ちょっと前の、あいかわらず頭の変な奴にかかわってしまったのは失敗ですが、スルーすることにしました。
でも今日はおやすみなさいです。

533:デフォルトの名無しさん
10/07/05 23:51:43
>>532
じゃあたまにのぞいて気になるとこあったらレスすることにするよ。
っても地力ぼちぼちありそうに見えるんで、重箱の隅ぐらいしか突っ込めないかも。

534:デフォルトの名無しさん
10/07/05 23:53:45
[1] 授業単元: Visual Studio 入門
[2] 問題 半乱順列の関数作成
[3] 環境 指定なし
[3.1] OS:Windowsvista 
[3.3] 言語:c言語
[4] 期限:なし
[5] 制限:なし
半乱順列の関数を作ってください!お願いします!!

535:デフォルトの名無しさん
10/07/05 23:54:08
[1] 授業単元:C言語入門
[2] 問題文(含コード&リンク):data.txtに書かれている氏名と成績を読み込み、氏名を2次元配列、成績を1次元配列に格納せよ。
[3] 環境
 [3.1] OS:Ubuntu 10.4
 [3.2] コンパイラ名とバージョン: gcc 3.4
 [3.3] 言語: C
[4] 期限:7/7まで
[5] その他の制限:
data.txtの中身は
aoyama 36
oomura 42
sugiyama 50
morita 14

となっております。

536:デフォルトの名無しさん
10/07/06 00:06:46
>>535
>>476 は読み込んだあとソートしていますが、そのソート部分を削ればご所望のコードになるかと。

537:535
10/07/06 00:18:01
>>536
似た問題があったのですね。ありがとうございました。

538:デフォルトの名無しさん
10/07/06 16:11:53
>>529
お答え頂きありがとうございます。
動作は申し分無いのですがこのプログラムだとstdio.h以外にmath.h等の関数ライブラリが見られます。
すみませんがstdio .h のみで動作することを前提でお願いしたいと思います。
また、授業では本当に基礎的な内容のみしか扱っておらず、ネットや本を見て勉強している段階ですので、なるべく基本的な分かりやすい形でプログラムを組んでいただけたら幸いです。

539:デフォルトの名無しさん
10/07/06 16:15:25
このとき、穏やかな表情の>>529の脳裏に、
慇懃無礼、という言葉が頭をよぎったという。

540:デフォルトの名無しさん
10/07/06 16:17:37
>>538
せっかく答えてくれた人に喧嘩売るのはやめようね

541:デフォルトの名無しさん
10/07/06 16:48:46
>>538
ソースよく読めよ

542:デフォルトの名無しさん
10/07/06 16:53:32
はいはい、もう答えなくて結構です

543:デフォルトの名無しさん
10/07/06 17:44:44
int main() 笑 なんて使う奴はスルーしてヨシ!

544:デフォルトの名無しさん
10/07/06 18:04:56
538です。

せっかく解答をして下さったにも関わらず、不快感を与える表現をしてしまいすみませんでした。
if 0とend ifの意味を理解していませんでした。
こちらの理解不足で本当に失礼しました。



545:デフォルトの名無しさん
10/07/06 18:17:15
◆QZaw55cn4c は古い人間でしょ?コードの書き方でバレバレ

546:デフォルトの名無しさん
10/07/06 18:26:10
>>545
どの辺が古いの?

547:デフォルトの名無しさん
10/07/06 18:54:59
>>546
無理しないで良いよ、爺ちゃん。

548:デフォルトの名無しさん
10/07/06 19:01:50
[1] 授業単元:プログラミング演習
[2] 問題文(含コード&リンク):

#include <stdio.h>typedef struct { char *fname, *mname, *lname; int byear, dyear;
} writer_t;

writer_t writers[] = { {"Edward", "Elmer", "Smith", 1890, 1965},
{"Robert", "Anson", "Heinlein", 1907, 1988},
{"Arthur", "Charles", "Clarke", 1917, 2008},
{"Isaac", " ", "Asimov", 1920, 1992},
{"Raymond", "Douglas", "Bradbury", 1920, 0}};
int main(void){ int i; char s[10];
for (i = 0 ; i < sizeof(writers)/sizeof(writer_t) ; i++){
printf("%c. ", writers[i].fname);
if (writers[i].mname[0] != "\0") {
printf("%c. %-10s", writers[i].mname[0], writers[i].lname); }
else { printf("%-13s", writers[i].lname); }
printf("%4s - ", writers[i].byear);
if (dyear > 0){ printf("%4s", writers[i].dyear); } printf("\n"); } return 0;}
上記のエラープログラムを正しく直す。
[3] 環境
 [3.1] OS: UNIX
 [3.2] コンパイラ名とバージョン: gcc
 [3.3] 言語: C
[4] 期限: ([2010年7月28日20:00まで
[5] その他の制限: なるべく簡潔に(新しい変数を定義したり)お願いします。見づらいですが改行が多いと怒られるので・・

549:デフォルトの名無しさん
10/07/06 19:09:55
お・に・い・ちゃ・ん、じゃなくて、お・じ・い・ちゃ・ん ♥

550: ◆QZaw55cn4c
10/07/06 19:11:24
>>538
#if 0
から
#endif
までの間を削除してください。
わかりやすさについては、これが限界です。

551:デフォルトの名無しさん
10/07/06 19:12:43
>>543
スレリンク(tech板:101番) で述べられ済み。

ISO/IEC 9899TC2
6.7.5.3 Function declarators (including prototypes)
14
An identifier list declares only the identifiers of the parameters of the function. An empty
list in a function declarator that is part of a definition of that function specifies that the
function has no parameters.
とあり、関数の定義のときには、空のリストは no parameters である。
すなわち引数が void の場合と等価であり、int main() は int main(void) と同じ。

552:デフォルトの名無しさん
10/07/06 19:15:17
>>545
確かに古いといわれたらそうかもしれません。
func(a, b)
int a;
char *b;
{
...
return 0;
}
と書いていたころもありました。
setq とか car とか cdr とかを乱発していたこともあります。

553:デフォルトの名無しさん
10/07/06 19:17:21
>>494
お前がコテハンかトリップつけろ塵

554: ◆QZaw55cn4c
10/07/06 19:18:17
>>544
いえいえ、全然。

555:デフォルトの名無しさん
10/07/06 19:22:15
>>553-554
コテハン付けたり、外したり大変だなw

556:デフォルトの名無しさん
10/07/06 19:24:57
>>555
専用ブラウザを使っていますから、簡単ですよ。

557:デフォルトの名無しさん
10/07/06 19:31:06
>>547
>setq とか car とか cdr とかを乱発していたこともあります。
横レスだけど、そのネタはww
[H|T] -> とか言い出さないようにw>>552

まあ、コード書けない煽りは無視で行きましょう。

558: ◆GmgU93SCyE
10/07/06 19:34:15
>>548
URLリンク(codepad.org)

559:デフォルトの名無しさん
10/07/06 19:35:47
>>552
その頃は
return (0);
と書いてたりしないか?

560:デフォルトの名無しさん
10/07/06 19:37:06
>>557
処理系をCで書く、という解説本を集めているんです。でも、いまんところ2冊しかみつかっていません。
やっぱり、そんな本は売れないんですかね。おもしろいんですけれどね。

561:デフォルトの名無しさん
10/07/06 19:38:44
>>559
しまった!

562:デフォルトの名無しさん
10/07/06 19:39:30
>>560
訳されてない本が沢山あるよ

563:デフォルトの名無しさん
10/07/06 19:51:18
>>560,562
Cに限らず、技術資料とかサンプルは英語の方が多いよね。
Google codeもよく使ったなあ。

564:デフォルトの名無しさん
10/07/06 19:51:18
お爺ちゃんお口くちゃ~い、クソースなんて書くなよw

565:デフォルトの名無しさん
10/07/06 19:53:06
>>562
洋書まではあさる実力がない‥‥‥。でもながめてみたいもの。
著者名でよければ教えてください。

566:デフォルトの名無しさん
10/07/06 20:06:48
>>558
ありがとうございました~

567:523
10/07/06 20:42:03
>>526
>>524
回答ありがとうございます。
 まさか一日かからずに終わらせてくれるとは思いませんでした。


568:デフォルトの名無しさん
10/07/06 21:09:00
C言語と関係無いじゃん。
OSやコンパイラを作るって事だろ。

569:デフォルトの名無しさん
10/07/06 22:11:38
コインの種類(例えば、1円、5円、8円、10円、15円)に対して、金額を入力すると
その金額を払うのに最も枚数が少なくて済むコインの出し方を出力してくれる
プログラム。
例えば、23円と入力すると、「10円1枚・8円1枚・5円1枚の計3枚」と出力できるプログラムです。
ただし、「10円2枚・1円3枚の計5枚」は「最小」ではないため、上の出力を優先します。
入力された金額が負の場合は、「Error」を出力するようにします。
そこで、下のようなプログラムを書いたのですが、うまく起動しません。
このプログラムを、上の出力例のように出力してくれるように書きなおしてくれませんか??
下のプログラムでは合計枚数を出力する部分しか書いてません。
ちなみに、再帰を使ってプログラミングお願いします。

570:デフォルトの名無しさん
10/07/06 22:14:36
569質問者のプログラム(続き)
#include<stdio.h>
int coinfunc(int *C, int k, int M){

/* *C・・・コインの種類の配列(小さい順にソートされているとする)
M・・・支払う金額/
k・・・コインの種類の数 */

if(M == 0){ return(0); }
else if(M < 0){ return(Error); }
else{
int min = 100000;
int i;
for(i = 0; i <= k - 1; i++){
int tmp = coinfunc(C, k, M - C[i]);
if(tmp < min){ min = tmp; }
}
return(min + 1);
}
}
int main(){
int C[5] = {1,5,8,10,15};
int k = 5;
int M;
printf("支払う金額M=");
scanf("%d",&M);
printf("%d\n",coinfunc(C, k, M));
}


571: ◆QZaw55cn4c
10/07/06 22:36:25
>>506
URLリンク(codepad.org)
許容範囲云々は考えていません。

572:デフォルトの名無しさん
10/07/06 22:38:55
明日までにある宿題あるんですけど頼めますかね?
すぐ貼ります

573:デフォルトの名無しさん
10/07/06 22:40:44
頼めます

574:デフォルトの名無しさん
10/07/06 22:42:55
>>572
ここまでは作った
#include<stdio.h>

int main(void)
{
return 0;
}

575:デフォルトの名無しさん
10/07/06 22:54:22
[1] 授業単元:プログラミング演習
[2] 問題文:このプログラムを拡張して、個人ごと平均点と科目ごとの平均点を小数点以下1桁まで
表示できるプログラムを作成せよ。

#include <stdio.h>
main()
{
int score[4][3]:
int total[4]:
int i , j ;
for (i = 0; i < 4; i++) {
total[i] = 0 ;
printf("No . %d\n" , i + 1);
for( j = 0 ; j < 3; j++) {
printf("score %d : " , j + 1) ;
scanf("%d", &score[i][j]);
total[i] += score[i][j];
}
}
printf("\n");
printf("No . | s1 s2 s3 | total\n");
printf("---+----------+------\n");
for ( i = 0; i < 4; i++) {
printf("%2d | " , i + 1) ;
for( j = 0; j < 3; j++) {
printf("%3d " , score[i][j]);
}
printf("| %4d\n" , total[i]) ;
}
}


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch