必要に迫られてExcel VBAで2進数表示をしたかったのですが、VBAのDEC2BINでは桁数が10桁までしか対応しておらず、そのうえなぜか値は-512~511と桁数とはなんら関連のない範囲だけ。諦めて自作しました。
Function Dec2BinEx(x As Double, column As Integer) As String Dim ret As String Dim hosu As Boolean Dim y As Integer Dim kuriage As Integer If column < 1 Then Dec2BinEx = "" Exit Function End If ret = "" If x < 0 Then x = (-x) hosu = True kuriage = 1 Else hosu = False kuriage = 0 End If Do If hosu = False Then ret = Format(x - Int(x / 2) * 2) & ret Else y = (1 - (x - Int(x / 2) * 2)) + kuriage kuriage = y / 2 ret = Format(y Mod 2) & ret End If x = Int(x / 2) column = column - 1 Loop While x >= 0 And column > 0 While column > 0 If hosuu = False Then ret = "0" & ret Else ret = "1" & ret End If column = column - 1 Wend Dec2BinEx = ret End Function
先日、修理に出したVaioですがお盆前に帰ってきていましたが、更新が遅れておりました。直前にサポートセンターから電話あり、「なんか茶色いシミがあります。水没は保証外です。」とのこと・・・。どうも子どもがこぼしていたらしいが、その直後は使えていたので忘れていたようだ。「なにもしてないのに、動かなくなった」という言葉がいかにあてにならないかを目の当たりにしました。修理代は買い直すほどではないが結構しました。とほほ。
HTML上で数式が表示できるMathJaxをいれてみた。
$begin{align} f(x) & = (a+b)^2 \ & = a^2+2ab+b^2 \ end{align}$
という感じです。結構きれいですね。Latexで論文を書いたときのことを思いだします。WordPress用プラグインとかもあるようですが、基本はヘッダに
<script type=”text/javascript” src=”http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML”></script>
と追記するだけで、HTML中のLatexの書式を変換してくれます。
常時いれてたら重いかなぁ。詳しくは本家サイト:MathJax.orgや紹介サイト:MathJaxの使い方をご覧ください。
嫁さんのノートPC”Vaio”が立ち上がらず。買ってまだ1年3ヶ月。使用中バッテリ低下の表示が出たので、(なぜか)手動で再立ち上げをしたらしいのだが、それきり立ち上がらなくなったとのこと。ACアダプタをつなげてアダプタ側のLEDは点灯しているのだが、PC側の電源/充電ランプが消えており、ウンともスンともいわない。ソニーのQ&Aにのっとって、放電処理してみても動作は変わらず。やむを得ず修理に出すことに決定。保証書を探してもみつからず、いろいろ記録をほじくり返したところ、注文したソニーストアの履歴から3年保証をかけていたことが判明したので、多分無償で治るはず。修理依頼はネット上からかけました。引取予定日の入力もさせられたので、多分ヤマトかどこかが引取にくるようです。
・・・というのが今日半日の出来事でした。大半は家に帰ったきた後の作業ですが、メール越しに放電処理とかやってもらうのは結構手間でした。
いろいろ迷ったあげく、グラフィックボードを更新した。GTX650→GTX760。更新した甲斐あってゲームはそこそこ動きがよくなった。
ウォッチドグッグスをyoutubeで見ました。GTAのようなやつで、ハッカーもどきの演出がちょっと気恥ずかしいが、見てるとなんかやりたくなってくる。でもそろそろ今のグラボではしんどいと思い、市場価格を調べると、PS4ハード買うほうが安い(泣)。やっぱりハードではソニーは儲かってないんだろうな。
VaioじゃないPCからnasneを見るためのソフト PC TV with nasne™ がソニーストアから7月上旬にダウンロード発売開始とのこと。DLNA/DTCP-IPの汎用プレーヤーとは違いそうだが、CHAN-TORU経由でない番組予約ができそうだ。
c#のSystem.Data.Sqliteで検索結果から1つのスカラー値を獲得する時、ExecuteScalar()を使うが、テーブルの値はintでキャストできるない。count()とかmax()とかはぜんぶlong(=System.Int64)でキャストする。
// テーブルの値もintで受けることができない <--- 修正 cmd.CommandText = “SELECT data FROM table”; long x = (long)cmd.ExecuteScalar(); // <--- 修正 // 関数の戻り値は long で受けないと castエラー cmd.CommandText = “SELECT MAX(data) FROM table”; long x = (long)cmd.ExecuteScalar(); cmd.CommandText = “SELECT last_insert_rowid() FROM table”; long y = (long)cmd.ExecuteScalar();
2014.6.25 修正。なぜかintで受けれないことが判明。前回は受けれたはずなのに。すいません。
c#のSystem.Data.Sqliteで検索結果から1つのスカラー値を獲得する時、ExecuteScalar()を使うが、その帰り値Object型をintでキャストするとエラーが出ます。stringからパースしてもだめ。結局longで正解。
SQLiteConnection conn = new SQLiteConnection(...); SQLiteCommand sqCommand conn.CreateCommand(); cmd.CommandText = "SELECT count(name) FROM result;"; // 指定されたキャストは有効ではありません。 int count = (int)cmd.ExecuteScalar(); // OK↓ long count = (long)cmd.ExecuteScalar();
c#にてSystem.Runtime.Serialization.Formatters.Soapによるserialized /deserialized処理はHashtable型には使えるがDictionary型(ジェネリック)には使えない。単に備忘録。