掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板2

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.28967

乱数の問題なのですが・・・
投稿者---酢(2006/11/21 17:34:24)


学校の授業で出てきた問題なんですが、教科書を参考にしてもよく分かりません・・・。
1. 乱数で255〜1024までの数字を引いてくる。
2. 1.で引いてきた数字分メモリを確保する。
3. 2.で確保したメモリに1.で引いてきた回数分乱数を引いてきて、その値を保存していく。
4. 3.で保存した値を小さい順に並べる。
5. 4.で整列した値をすべて表示する。
という問題です。
どなたかご指示をお願いします。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:乱数の問題なのですが・・・ 28968 2006/11/21 17:42:57
<子記事> Re:乱数の問題なのですが・・・ 28988 あろ阿呆のー生 2006/11/22 14:54:53


No.28968

Re:乱数の問題なのですが・・・
投稿者---酸(2006/11/21 17:42:57)


わかる箇所があれば、そのソースを提示してください。


この投稿にコメントする

削除パスワード

No.28970

Re:乱数の問題なのですが・・・
投稿者---酢(2006/11/21 18:41:52)


>わかる箇所があれば、そのソースを提示してください。

すいません・・・恥ずかしながら何をやればいいか根本からわからないもので・・・まともなソースもないんです・・・。


この投稿にコメントする

削除パスワード

No.28972

Re:乱数の問題なのですが・・・
投稿者---円零(2006/11/21 19:54:35)


>1. 乱数で255〜1024までの数字を引いてくる。
rand関数を調べてください。
なお、乱数を「引く」とは普通言いませんね。「生成する」とかでしょう。

>2. 1.で引いてきた数字分メモリを確保する。
malloc関数とsizeof演算子を調べてください。

>3. 2.で確保したメモリに1.で引いてきた回数分乱数を引いてきて、その値を保存していく。
これは単に代入するだけですね。

>4. 3.で保存した値を小さい順に並べる。
いわゆる「ソート」ですね。「ソート」「アルゴリズム」で調べれば何かわかるでしょう。
自力で考えてもできないことはない。

>5. 4.で整列した値をすべて表示する。
お好きなように。


この投稿にコメントする

削除パスワード

No.28988

Re:乱数の問題なのですが・・・
投稿者---あろ阿呆のー生(2006/11/22 14:54:53)


#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int cmp(const void *a, const void *b);

int main(void)
{
    int m, n, *p, *q;
    
    srand((unsigned int) time(NULL));
    m = n = rand() % 770 + 255;
    p = q = (int *) malloc(sizeof(int) * n);
    if (p == NULL)
        puts("out of memory"), exit(1);
    printf("個数=%d\n", n);
    while (n--)
        *q++ = rand();
    qsort(q = p, m, sizeof(int), cmp);
    while (m--)
        printf("%8d", *p++);
    free(q);
    return 0;
}

int cmp(const void *a, const void *b)
{
    return (*((int *) a) < *((int *) b)) ? -1 :
           (*((int *) a) > *((int *) b)) ?  1 : 0;
}





この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧