2007/10/25

【Java】 Javaについて

「Java」は,インターネット用に開発された
「オブジェクト指向型プログラミング」言語である.

【コンパイル,実行のためのパス設定】

  1. 「コントロールパネル」―「システム」―「詳細設定」―「環境変数」
  2. 「ユーザー環境変数」の欄のPathの末尾に,
    ;c:\Program Files\Java・・・\bin
    を「編集」で追加
  3. 「システム環境変数」の欄のPathの末尾に,
    ;c:\Program Files\Java\・・・\bin
    を「編集」で追加

【Javaについて】
Javaは「オブジェクト指向型のプログラミング言語」なので,
ユーザーは必要なデータを「オブジェクト」として定義することができる.
だから,「オブジェクト」型のデータを定義して使うことができる.
また,オブジェクトは抽象化されて「クラス」と解釈される.

「オブジェクト」に関する計算は,「メソッド」で行われる.
よって,「メソッド」は「オブジェクト」を操作するための関数と解釈できる.

Javaにはいろいろな「クラス」が用意されていて,
それぞれの「クラス」は,「パッケージ」に含まれている.

この「パッケージ」を使用するために宣言するのが,importで行われる.

連載開始!

おひさしぶりです.
この度プログラムを組むにあったってメモ代わりに
順次ブログに載せていくことにしました.

内容は
  • Java
  • C言語
  • FORTRAN
  • HTML
  • TeX
  • などなど・・・

です.

それぞれにラベル付けて見やすくするつもりです.

2007/07/20

ニュートン法

今日は原始的なプログラム。
ニュートン法で解を求めてみます。

そのうちこのブログでC言語の書き方をまとめたものなんか
出して行きたいですね。


//-------------------------------------------------------------------------C
// 2007/04/20 Akitoshi Takayasu
// ニュートン法の計算 f(x)=x^3-3x^2+x+3
// ** 安定性に欠ける **
//-------------------------------------------------------------------------C

#include

//double x[51];
//double y[51],z[51];
FILE *fp;
double x,y;
int i,N;

void main() {
fp=fopen("Newton02.txt","w");
printf("N (:Number of Iteration) ? \n");
scanf("%d", &N );

//x[0]=1;
//y[0]=1;
//z[0]=1;
x=1;

for(i=1; i


うまく載らないな。。
なぜ??

2007/07/19

Infomation Mathmatics Ⅰ

情報数学Ⅰのレポート意味もなくアップします。
もしかしたら困っている人がたどり着くかもだしね。

情報数学Ⅰ前期レポート
1E04J×××× ××××

・回答レベル: 応用

・プログラムリスト、解説:
//-------------------------------------------------------------------C
// 情報数学Ⅰ前期レポート(応用)
// Akitoshi Takayasu 2007/07/09
// File name = IMI.c
//-------------------------------------------------------------------C
// 各種ヘッダファイルを宣言
#include
#include
#include

// グローバル変数宣言
char line[20];
double x, y, pi, eps;
int i, j, count;

//===================================================================C
void main(){
//===================================================================C
// モンテカルロ法による円周率の計算
//-------------------------------------------------------------------C
// pi : πの近似値
// eps : 相対誤差
// count : ランダムに与えられた点のうち扇型に入る点の個数
// i : 反復回数,点の総数
// pi = 4.0*(count/i)
//-------------------------------------------------------------------C

// 初期設定
count = 0;
i = 1;
j = 100;
line[0] = 'y';

// 擬似乱数のシードを指定
srand((unsigned int)time(NULL));

// Main Loop-----------------------------------------------------------C
while((line[0] != 'n')&&(line[0] != 'N')){

// x,yにそれぞれ0以上1未満の実数を代入し、扇型内に含まれるか判定
// そしてπの近似値を計算している

x = (double)rand()/(RAND_MAX + 1.0);
y = (double)rand()/(RAND_MAX + 1.0);

if((x*x) + (y*y) < pi =" 4.0*((double)count/i);" i ="=" eps =" fabs(M_PI" pi="%f" i="=" count =" 0;" i =" 0;" j =" 100;">

・プログラムの実行結果:

(繰り返し回数: 100回) pi=2.800000 (相対誤差:0.108732)
(繰り返し回数: 1000回) pi=3.148000 (相対誤差:0.002040)
(繰り返し回数: 10000回) pi=3.140000 (相対誤差:0.000507)
(繰り返し回数: 100000回) pi=3.144520 (相対誤差:0.000932)
(繰り返し回数: 1000000回) pi=3.144516 (相対誤差:0.000931)
(繰り返し回数:10000000回) pi=3.142208 (相対誤差:0.000196)
もう一度やりますか?(y/n)
y
(繰り返し回数: 100回) pi=2.960000 (相対誤差:0.057803)
(繰り返し回数: 1000回) pi=3.156000 (相対誤差:0.004586)
(繰り返し回数: 10000回) pi=3.117200 (相対誤差:0.007764)
(繰り返し回数: 100000回) pi=3.139640 (相対誤差:0.000622)
(繰り返し回数: 1000000回) pi=3.141672 (相対誤差:0.000025)
(繰り返し回数:10000000回) pi=3.141430 (相対誤差:0.000052)
もう一度やりますか?(y/n)
h
(繰り返し回数: 100回) pi=3.120000 (相対誤差:0.006873)
(繰り返し回数: 1000回) pi=3.220000 (相対誤差:0.024958)
(繰り返し回数: 10000回) pi=3.147200 (相対誤差:0.001785)
(繰り返し回数: 100000回) pi=3.136440 (相対誤差:0.001640)
(繰り返し回数: 1000000回) pi=3.139044 (相対誤差:0.000811)
(繰り返し回数:10000000回) pi=3.141416 (相対誤差:0.000056)
もう一度やりますか?(y/n)
N