A 回答 (3件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> z-normalizationするためにデータの二乗の合計を足しているのですが、途中でマイナスになってしまいます。
> int型は使ってないのですが
残念ですが、実際のコードを見ない限り、
・計算方法自体の間違い
・『二乗の合計を求めている』つもり、『intは使っていない』つもり、といった、あなたの思い違い
等を排除することはできません。
プログラムを修正するコツは、「自分は正しい」という思い込みを捨てることです。
printするとかデバッガでステップ実行するとかして確認してみましょう。
例えば
d += x*x ;
みたいになっていたら、
x の値、 x*x の値、足す前のdの値、足した後の d の値、といった変化を確認しましょう。
念の為に確認ですが、 4.2e-12 とかいう感じになってる、というのは無いですね?
No.1
- 回答日時:
具体的に、どんなコードなのでしょう?
int等の整数型は、足し続けると負の値になることがあります。
これは、「符号の無い整数」を「特定の条件を満すものは負とみなす」という運用をしているからです。
https://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7 …
対して、doubleにはそのようなことは起りません。
無限大、という特別な値になります。
Javaでは、計算は順番に行なわれます。
例え、最終結果がdoubleであったとしても、途中の計算はその途中の型で行なわれます。
double d ;
int i = ???? ;
int j = ????? :
d = i + j ;
等とした場合, i + j は (int + int なので) int型で計算され、上記のような「符号が変わる」ことが起る可能性があります。
その後に d に代入しても、その「符号が変わってしまった」値が代入されるだけです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- Java プログラミングのプの字も知りませんが、プログラミングを勉強したいです。とりあえず、学ぶものを決めない 3 2022/11/04 13:10
- HTML・CSS HTMLの・要素・属性・属性値 はプログラム言語の「変数」みたいに変更できますか? 5 2022/10/04 05:27
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- Visual Basic(VBA) VBAプログラミング 2 2022/11/27 12:07
- Visual Basic(VBA) VBAプログラミング 2 2022/11/27 12:13
- その他(プログラミング・Web制作) プログラミングって本来数学的な計算をする為のものではないのですか? 学校で配られたFortran90 11 2022/08/25 22:14
- Ruby プログラミング講師はまだ需要ありますでしょうか? 1 2022/11/07 19:43
- C言語・C++・C# C言語 1から20までの逆数の和を求めたいのですが、このようにプログラミングしたら値が負になってしま 3 2023/05/22 18:31
- Java Javaプログラミングの質問になります。 ボタンを押下した時に画面遷移して 画面から戻ってきた時のi 1 2023/06/26 07:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
matchesを否定文として使う方法...
-
結合した文字列をファイル名に...
-
JSPでの計算結果表示
-
VB6,論理演算子Orの使い方がわ...
-
java nビット目を読み取る
-
素朴な疑問
-
DateTimePickerに値を入れたい...
-
C言語の変数(LSB)の合わせ込...
-
hiddenの値を消したくない!
-
実行シェルからCOBOLへパラメー...
-
ResultSetの内部構造(Java)
-
byte配列→float型の値を読みlon...
-
指定した日付が何日前なのかを...
-
Javaの判定処理について
-
プログラミング java javaでプ...
-
StringBufferクラスについて
-
暗号化文字列を英数字のみにしたい
-
String型の値が大文字か小文字...
-
wsprintf関数の使い方について
-
初回のスピンボタンの挙動
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ダブルクォーテーションを含む...
-
wsprintf関数の使い方について
-
ArrayListの要素数の上限
-
BCD形式で時刻を!
-
javaのCSVデータ読込についてです
-
DateTimePickerに値を入れたい...
-
C言語の変数(LSB)の合わせ込...
-
JSPでHashMap・配列の変数の値...
-
matchesを否定文として使う方法...
-
JSPでの計算結果表示
-
hiddenの値を消したくない!
-
結合した文字列をファイル名に...
-
excel vba 時間計算と条件分岐...
-
実行シェルからCOBOLへパラメー...
-
long型に値を代入したい。
-
【Excel VBA】繰り返し処理がで...
-
Stringクラスの変数の格納アド...
-
PSQLExceptionが発生する
-
ResultSetの内部構造(Java)
-
String str = "a\\\\b\\\\c";
おすすめ情報
遅くなり申し訳ありません。
z-normalizationするためにデータの二乗の合計を足しているのですが、途中でマイナスになってしまいます。
int型は使ってないのですが
確かに自分の思い込みの可能性は否定できません。
数値に関してはちょっと確認してみます。
データはdouble型にしてますが、実際には正数で .0 の値になってます
数値は
3.2768E7のような値でした