spin on the RITZ -60ページ目

脱落者続出の季節

今日からゴールデンウィークはじまったのに、世の中じゃ今日からゴールデンウィーク後半なんですね~

結局今年のゴールデンウィークもそれらしい予定がないとです。



新入生がまぶしくてまぶしくてもう。

お兄さん見てらんないよホント。


あの中からどれほどが脱落するんでしょうかねww

朝のバスが混むので、早いこと脱落してくれるとありがたいんですがwww




GWで大学生らしい遊びを覚えると、結構な数の人間がドロップアウトします。

国立とはいえ、高い学費払ってるのにねぇ・・・



大学に入るのが目的の学生ってやっぱり多いのかなぁ~

『募集人数が多かったから受けた』とか言ってる人いたけど、なんだろうね。


「○○大の法学部は無理なので、経済学部を受けることにします!」


とかさ、別に個人の問題なんだからいいいけどさ。

つい4ヶ月くらい前まではよく見ましたよ、こういうの。あれ?ホウガクとケイザイガクって一緒だったっけ?





とりあえず髪がうざったいので数ヶ月ぶりに頭を丸めた。

長さ9mm。広い大学内でも2~3人しかいません。

だってさー、金ないしー、ファッションとかわっかんねーしー、いくら頑張ったところで※ただしイケメンに限るだしー


外見が怖いと評判なんですよw

掃き出し

別に掃除するってわけじゃあないよ



ガウスの消去法のプログラム。

ピボット選択をとれば、単純消去法にチェンジ出来る!(する必要はないけど)



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

#define N 3

void print_vector(double b[], int n);
void print_matrix(double a[], int n);
int gauss(double a[], double b[], double x[], int n);

int main(void)
{
    double a[N*N] = {
        2, 3, -1,
        1, 1, 1,
        3, -1, -2
    };
    double b[N] = {-2, 7, 0};
    double x[N];
    int i;

    printf("A = \n");
    print_matrix(a, N);
    printf("b = \n");
    print_vector(b, N);
    if (gauss(a, b, x, N))
        for (i = 0;i < N;i++)
            printf("x%d = %6.2f\n", i+1, x[i]);
    else
        printf("計算できませんでした.\n");

    return 0;
}

void print_vector(double b[], int n)
{
    int i;
    for (i = 0;i < n;i++)
        printf("%6.2f ", b[i]);
    printf("\n");
}

void print_matrix(double a[], int n)
{
    int i;
    for (i = 0;i < n;i++)
        print_vector(&a[i*n], n);
}

int gauss(double a[], double b[], double x[], int n)
{
    int i, j, k, idx;
    double pivot, tmp;
    double eps = 0.00001;

    for (i = 0;i < n;i++) {
        //ピボットの選択

        pivot = a[i*n+i];
        idx = i;
        for (j = i+1;j < n;j++) {
            if (pivot < a[j*n+i]) {
                pivot = a[j*n+i];
                idx = j;
            }
        }
        //ピボットが0しかなかったら計算できないのでリターン

        if (fabs(pivot) < eps)
            return 0;
        //行の交換

        if (idx != i) {
            tmp = b[i];
            b[i] = b[idx];
            b[idx] = tmp;
            for (j = i;j < n;j++) {
                tmp = a[idx*n+j];
                a[idx*n+j] = a[i*n+j];
                a[i*n+j] = tmp;
            }
        }
        //前進消去

        b[i] /= a[i*n+i];
        for (j = n-1;j >= i;j--)
            a[i*n+j] /= a[i*n+i];
        for (j = i+1;j < n;j++) {
            b[j] -= b[i] *  a[j*n+i] / a[i*n+i];
            for (k = n-1;k >= i;k--)
                a[j*n+k] -= a[i*n+k] *  a[j*n+i] / a[i*n+i];
        }
    }

    //後退代入

    for (i = n-1;i >= 0;i--) {
        x[i] = b[i];
        for (j = n-1;j > i;j--)
            x[i] -= x[j] * a[i*n+j];
    }
    return 1;
}



なんか微妙にインデントがずれてるんだが・・・・・



今度はガウス・ザイデルとSORをやると思う

うぃんそっく

とりあえずメモ

ws32.libはリンクすること

ソケット生成の前にWSAStartup関数を呼ぶ。winsockのバージョンについてはまた調べる。とりあえず適当に入れてみた(MAKEWORD(2,0)でもMAKEWORD(1,1)でも動いた)

ソケット生成はsocket関数ではなく、WSASocket関数を呼ぶ。下のリンク参照
http://d.hatena.ne.jp/winebarrel/20080315/p2

コネクションまではとりあえずUNIXと同じかも。

recvとsendは微妙に使いにくいので、fdopenを使う。windowsの場合は_open_osfhandle(sock, O_RDWR|O_BINARY)で新しいデスクリプタをもらってから、fdopen(fd, "rb+");すれば大丈夫そう。とりあえずBCCでは動いた。UNIXの方は機会があったら確認する。
http://msdn.microsoft.com/ja-jp/library/bdts1c9x(VS.80).aspx

さっき作ったFILE*を用いてfprintfでsendの代わりをする。
fprintf(fp, "GET %s HTTP/1.1\r\n", PATH);
fprintf(fp, "Host: %s:80\r\n", HOST);
fprintf(fp, "\r\n");
とりあえず、HTTPでデータ取ることにする。三行目のキャリッジなんとかと改行は超重要!これがないとサーバが返事をしてくれない。ただのしかばねのようになる。

リクエスト送ったらfgetsで取り込む。recvよりも使いやすい。改行で終わるし。

closesocket関数とWSACleanup関数は呼ぶこと。取得したFILE*のfcloseもしておく必要があるかもね。

windowsの場合はUNIXと互換性があるように見えて結構違ってるので、常に注意すること!

とりあえずリンク
http://research.nii.ac.jp/~ichiro/syspro98/connect.html


いっぺんソケットつないだら、つなぎっぱのほうがいいんだろうか。あとで調べよう。っつーか眠いのでねる。

google&yahoo

グーグル派? ヤフー派? ブログネタ:グーグル派? ヤフー派? 参加中
本文はここから


どっちも使うよ派です。


とりあえず両方とも検索かけます。

ライフガード

子供の頃から変わらず好きなもの ブログネタ:子供の頃から変わらず好きなもの 参加中
本文はここから


知る人ぞ知る清涼飲料水。


ライフガード!



子供のころから好きです。
少し前にあったキャンペーンでは、3回連続で当選しましたw


しゃべるライフガーちゃんキーホルダー3つもあるよ!

ライフガード 500ml*24本
¥3,351
ケンコーコム