ラベル 出力 の投稿を表示しています。 すべての投稿を表示
ラベル 出力 の投稿を表示しています。 すべての投稿を表示

2008/02/07

【Java】 BigDecimal

【大整数】
*多数桁処理のために「大十進数(BigDecimal)」のクラスを使う.

使用パッケージ宣言:
import java.math.BigDecimal;


定義(BigDecimal):
「大十進数」はオブジェクトとして定義する必要があるので以下のように定義する.
BigDecimal b = new BigDecimal(
String);
Stringには文字列を入れる.
*また,BigDecimalの配列は他の配列の宣言と同じである.
BigDecimal [] b = new BigDecimal[30];
*これでBigDecimal型の配列,b[30]を宣言したことになる.

演算(BigDecimal):
オブジェクトとして定義した「大十進数」はオブジェクトの演算メソッドを用いて演算を行う.主な演算メソッドを次にあげる.

返り値型種類記述
BigDecimal加法:a + ba.add(b);
BigDecimal減法:a - ba.subtract(b);
BigDecimal乗法:a * ba.multiply(b);
BigDecimal除法:a / ba.divide(b);
BigDecimal剰余:a % ba.remainder(b);
BigDecimalべき乗:a ^ ba.pow(int b);
BigDecimal絶対値:|a|a.abs();
BigDecimal符号反転:a = - aa.negate();
BigDecimal最小値:min aa.min();
BigDecimal最大値:max aa.max();
BigDecimal合同:a ≡ c (mod b)c = a.mod(b);
BigDecimalべき乗の合同:a ^ m ≡ c (mod b)c = a.modPow(m, b);
BigDecimal逆元(mod b):a ^ -1 (mod b)a.modInverse(b);
BigDecimal最大公約数(gcd(a, b)):gcd(a, b)a.gcd(b);
boolean等号:a == ba.equals(b);
int大小比較:a <>a.compareTo(b);

*表中のa, b, cは特に断りがない限り,BigDecimal型.
*「equals」はboolean型のメソッド.オブジェクトの同一性をチェック
*「compareTo」はint型のメソッドで,「a < a =" b」の場合0,「a"> b」の場合1となる.


出力(BigDecimal):
*大十進数はオブジェクト型のデータなので,出力の際はデータ変換で文字列型にしてから出力する.
System.out.println("BigDecimal b = "+b.toString());


*大十進数の文字列化にはDecimalFormatクラスが向いている.DecimalFormatクラスを使用することで,小数点の桁数,カンマをつけることができる.


例:
使用パッケージ宣言:
import java.text.DecimalFormat;

フォーマットの用意:
String format = "0.00000000000000000000";
DecimalFormat dF = new DecimalFormat( format );

BigDecimalを宣言:
BigDecimal b1 = new BigDecimal( "4.1" );
BigDecimal b2 = new BigDecimal( "8.2" );

加法を実行:
BigDecimal b = b1.add( b2 );

結果の表示:
System.out.println( dF.format( b ) );
// 12.30000000000000000000


このように小数点以下の桁数を指定することができる.

2007/11/22

【Java】 BigInteger 追記01

【大整数】
*多数桁処理のために「大整数(BigInteger)」のクラスを使う.

使用パッケージ宣言:
import java.math.BigInteger;


定義(BigInteger):
「大整数」はオブジェクトとして定義する必要があるので以下のように定義する.


BigInteger b = new BigInteger(String);


Stringには文字列を入れる.
*また,BigIntegerの配列は他の配列の宣言と同じである.

BigInteger [] b = new BigInteger[30];

*これでBigInteger型の配列,b[30]を宣言したことになる.


演算(BigInteger):
オブジェクトとして定義した「大整数」はオブジェクトの演算メソッドを用いて演算を行う.主な演算メソッドを次にあげる.

返り値型種類記述
BigInteger加法:a + ba.add(b);
BigInteger減法:a - ba.subtract(b);
BigInteger乗法:a * ba.multiply(b);
BigInteger除法:a / ba.divide(b);
BigInteger剰余:a % ba.remainder(b);
BigIntegerべき乗:a ^ ba.pow(int b);
BigInteger絶対値:aa.abs();
BigInteger符号反転:a = - aa.negate();
BigInteger最小値:min aa.min();
BigInteger最大値:max aa.max();
BigInteger合同:a ≡ c (mod b)c = a.mod(b);
BigIntegerべき乗の合同:a ^ m ≡ c (mod b)c = a.modPow(m, b);
BigInteger逆元(mod b):a ^ -1 (mod b)a.modInverse(b);
BigInteger最大公約数(gcd(a, b)):gcd(a, b)a.gcd(b);
boolean等号:a == ba.equals(b);
int大小比較:a <>a.compareTo(b);


*表中のa, b, cは特に断りがない限り,BigInteger型.
*「equals」はboolean型のメソッド.オブジェクトの同一性をチェック
*「compareTo」はint型のメソッドで,「a < a =" b」の場合0,「a"> b」の場合1となる.


出力(BigInteger):
*大整数はオブジェクト型のデータなので,出力の際はデータ変換で文字列型にしてから出力する.
System.out.println("BigInteger b = "+b.toString());

2007/11/16

【Java】 BigInteger

【大整数】
*多数桁処理のために「大整数(BigInteger)」のクラスを使う.


使用パッケージ宣言:
import java.math.BigInteger;


定義(BigInteger):
「大整数」はオブジェクトとして定義する必要があるので以下のように定義する.

BigInteger b = new BigInteger(String);

Stringには文字列型データを入れる.
*また,BigIntegerの配列は他の配列の宣言と同じである.

BigInteger [] b = new BigInteger[30];

*これでBigInteger型の配列,b[30]を宣言したことになる.



演算(BigInteger):
オブジェクトとして定義した「大整数」はオブジェクトの演算メソッドを用いて演算を行う.主な演算メソッドを次にあげる.

返り値種類記述
BigInteger加法:a + ba.add(b);
BigInteger減法:a - ba.subtract(b);
BigInteger乗法:a * ba.multiply(b);
BigInteger除法:a / ba.divide(b);
BigInteger剰余:a % ba.remainder(b);
BigIntegerべき乗:a ^ ba.pow(int b);
BigInteger絶対値:aa.abs();
BigInteger符号反転:a = - aa.negate();
BigInteger最小値:min aa.min();
BigInteger最大値:max aa.max();
BigInteger合同:a ≡ c (mod b)c = a.mod(b);
BigIntegerべき乗の合同:a ^ m ≡ c (mod b)c = a.modPow(m, b);
BigInteger逆元(mod b):a ^ -1 (mod b)a.modInverse(b);
BigInteger最大公約数(gcd(a, b)):gcd(a, b)a.gcd(b);


*表中のa, b, cは特に断りがない限り,BigInteger型.


出力(BigInteger):
*大整数はオブジェクト型のデータなので,出力の際はデータ変換で文字列型にしてから出力する.

System.out.println("BigInteger b = "+b.toString());

2007/11/09

【Java】 データ変換

【型変換】
*Javaでは入出力の際に型を変換する必要がある.

string型「s」 → int型「i」に変換:
int i = Integer.valueOf(s).intValue();
int i = Integer.parseInt(s);

string型「s」 → long型(倍長整数型)「l」に変換:
long l = Long.valueOf(s).intValue();
long l = Long.parseInt(s);

string型「s」 → float型(単精度実数型)「f」に変換:
float f = Float.valueOf(s).floatValue();
float f = Float.parseFloat(s);

string型「s」 → double型(倍精度実数型)「d」に変換:
double d = Double.valueOf(s).doubleValue();
double d = Double.parseDouble(s);


*出力の際
println(****)の****には
println(boolean b) boolean 値を出力
println(char c) 文字を出力
println(double d) 倍精度浮動小数点数を出力
println(float f) 浮動小数点数を出力
println(int i) 整数を出力
println(long l) long 整数を出力
println(String s)文字列を出力
println()行区切り文字列を書き込むことによって、現在の行を終了する


ほとんどが出力できるが,
データ型(オブジェクト)は文字列に変換する必要がある.

Object(データ型) → string型(文字列型)「s」に変換:
s = Objet.toString();

2007/11/05

【C言語】 標準出力

たくさんあります.
全部はまとめていません.
あくまでメモです.

【標準出力】

<puts>
例)
puts("おはようございます");
==>出力:おはようございます

strcpy(str,"おはようございます");//こいつはまた後ほど紹介
puts(str);
==>出力:おはようございます

*どちらも「おはようございます」を出力.
*出力の最後は必ず改行する.


<printf>
例)
printf("おはようございます");
==>出力:おはようございます*改行はしない.

*改行するためには\nを入れる.
printf("おはようございます\n");
==>出力:おはようございます
*改行しました

strcpy(str,"おはようございます");
printf("%s\n",str);
==>出力:おはようございます
*改行しました.

2007/10/25

【Java】 出力

【標準出力】
// 標準入出力宣言
import java.io.*;

System.out.println(x+"***"+y.toString());
System.out.print(x+"***"+y.toString());
---------------------------------------------

printlnは(""内)を表示し,改行するメソッド.
一方printは改行を含まない.
(内)には引数を書く.

変数xの値はそのまま.
文字列の出力は文字を""で囲む.
オブジェクト型のデータyは,表示する際に「toString」で文字型に変換が必要.

引数内の「+」は「文字列の連結演算子」.



【ファイル出力】
// 標準入出力宣言
import java.io.*;


String s = "Java";
PrintWriter q = new PrintWriter( new FileOutputStream("****.txt"), true);
q.println(s);
--------------------------------------------

「****.txt」という「ファイル」に文字列データ「s」の内容を出力する.
「FileOutoutStream」の第2引数「true」は出力結果を既存ファイルの最後に追加することを示している.ファイルを上書きしたい場合は「false」とする.