LogicalInSpace

ITについて

Visual Studioの進歩

2008-03-29 20:13:58 | その他の言語
Visual Studioは、2002年にVC#を発売してから、Frameworkになり、開発ががらりと変わりました。

Visual Studio 2002:Framework 1.0
Visual Studio 2003:Framework 1.1
Visual Studio 2005:Framework 2.0
Visual Studio 2008:Framework 3.0、3.5

それぞれ、FrameworkのVB.NET、VC#.NET、VC++.NET、ASP.NETの開発が可能です。
また、VC++(MFC)の開発が可能です。

速度を重視するならば、VC++(MFC)が良いと思います。
開発を短期にするならば、VB.NET、VC#.NETが良いと思います。

VB.NET、VC#.NET、VC++.NETは、使用するコマンドが同じなので、どれを採用しても変わりありません。 ただし、VB.NETは、グローバル変数が可能です。

新しいPCについて

2008-03-24 21:54:50 | その他
新しいPC「Ultimate、Core 2 Quad Q6700(2.66GHz)」は、マルチコアのCPUでも、「タスクマネージャー」の「パフォーマンス」より1つのCPUしか起動していませんでした。

ただし、将棋ソフトの激指7はマルチコア対応だったので、4つのCPUがフル稼働していました。
シングルコアより処理時間がやはり速いですね!

でも、4つのCPUですけど、1つのCPUだけでも私のPCではとても速かったです。

ところで、マルチコアのプログラミングはどうするコーディングするのでしょうか?
ご存じの方は、教えてください。

mixiよりExcelのフォルダ検索

2008-03-24 21:45:47 | VB.NET, VBA
Dir関数ならば、ここあたりを参考にしてください。

Office TANAKA
Dir関数によるファイル名、フォルダ名(ディレクトリ名)の取得

Googleより「Excel VBA Dir フォルダ」で検索するといろいろと出てきますよ!

参考にしてください。

===================================================================

例のプログラムです。

Sub Search()

Dim FileName As String
Dim i As Integer

i = 1
FileName = Dir("C:*.xlsx", 16)
Do While FileName <> ""
  FileName = Dir()
  Cells(i, 1) = FileName

  i = i + 1
Loop

End Sub

Excel 2000、2003、2007の「*.xls」、「*.xlsx」のどれでも動きました。

PCのインストール

2008-03-18 05:52:21 | Weblog
新しいPCを買いました。
また、Microsoft Visual Studio 2008 Professional Edition アップグレードを買いました。

<新しいPCのスペック>
Desktop
OS: Windows Vista Ultimate
CPU: Core 2 Quad Q6700(2.66GHz) コア4つ
メモリ: 4GB
HDD: 320GB
グラフィックボード: GeForce 8800 GT 512MB

両方とも予約注文制なので、1週間ぐらいで届くと思います。


残ったPCをどうしようか?
考えていました。
初めは売ろうと思ったのですけど、何かの時に残しておいても良いかなぁとおもいました。
Windows 2000をインストールして、何か起こった場合のために残そうと考えました。
Windows 2000 SP4をインストールしていて気がついたこと。
・RealPlayer 11がダウンロード可能でしたが、Windows XP 以降でないとインストール出来ないので、あきらめました。
・Adobe Readerが8.0までバージョンアップしていました。

ほこり

2008-03-16 06:47:30 | Weblog
ノートPCのファンの入口にほこりがありました。

将棋ソフトをコンピューター同士対戦させると、非常に時間がかかりました。
将棋ソフトのメーカーに問い合わせましたけど、原因は分かりませんでした。
パソコンをシャットダウンしても、ファンが回り続けるので、おかしいと思い、ファンの部分を開けて見ました。
大きいほこりがありましたので、取り除いてみました。

そして、将棋ソフトをコンピューター同士対戦すると、スムーズに対局が出来ました。
パソコンのメーカーに確認をして見ました。
ファンの入り口にほこりがあると、通常はCPUを冷却する機能があるそうです。
ほこりのため冷却する時間がかかるため、CPUの処理速度が遅くなったそうです。

お騒がせな、大きなほこりでした。

簡単なSum

2008-03-10 11:21:34 | Weblog
1+2+3+4+5+6+7+8+9+10 = 55 をプログラムで計算して見ましょう。
数列をご存じの方は、1+2+...+(n-1)+n = n(n+1)/2 であることをご存じだと思います。
1+2+3+4+5+6+7+8+9+10 = 10*11/5 = 55 ですね!

===== VB.NET (For文) =====
Module Module1

  Sub Main()

    Dim i As Integer
    Dim Sum As Integer

    Sum = 0
    For i = 1 To 10
     Sum += i
    Next

    Console.WriteLine(Sum)

  End Sub

End Module

===== VB.NET (while文) =====
Module Module1

  Sub Main()

    Dim i As Integer
    Dim Sum As Integer

    i = 1
    Sum = 0
    Do While i <= 10
      Sum += i
      i += 1
    Loop

    Console.WriteLine(Sum)

  End Sub

End Module

===== VC#.NET (for文) =====
using System;
using System.Collections.Generic;
using System.Text;

namespace Sum
{
  class Program
  {
    static void Main(string[] args)
    {
      int i;
      int Sum;

      Sum = 0;
      for (i = 1; i <= 10; i++)
      {
        Sum += i;
      }

      Console.WriteLine(Sum);
    }
  }
}

===== VC#.NET (while文) =====
using System;
using System.Collections.Generic;
using System.Text;

namespace Sum_02
{
  class Program
  {
    static void Main(string[] args)
    {
      int i;
      int Sum;

      i = 1;
      Sum = 0;
      while (i <= 10)
      {
        Sum += i;
        i++;
      }

      Console.WriteLine(Sum);
    }
  }
}


<解説>
Integer,int は 4byte です。
Sum = 0 は初期化です。
初期化をしないと何が入っているか分かりません。
Sum += i は Sum = Sum + i と同じ意味です。
Console.WriteLine(Sum) は System.Console.WriteLine(Sum)と同じ意味です。