CONSOLEアプリケーションで終了時に一瞬で窓を閉じさせない方法
56 ConsoleCloseWait 動作確認 Delphi2007 更新日 2008/01/30(水)

DelphiはCUIのコンソールアプリケーションも簡単に記述できます。

新規作成でコンソールアプリケーションを選んでもいいですし
dprファイルだけを編集して実行してもよいでしょう。

コンソールアプリケーションを実行すると
コンソールウィンドウというかDOS窓の黒い画面が
処理が終わったとたんに消えてしまいます。

コマンドプロンプトからそのプログラムを起動すれば
そういうことは起きませんが、
DelphiIDEからの実行などでWindowが閉じてしまうのは不便なので
DOS窓を閉じないようにプログラムしておきましょう。

ソースの最後に
    Readln;
を挿入しておくと、入力待ちがあるので
Windowが閉じません。

以下、サンプルプログラムです

Project1.dprファイルと名前を付けて保存実行してください。
────────────────────
program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  Math;
var 
  YourInt, ComInt, RangeA, RangeB: Integer;
  Buffer: Integer;
  i: Integer;
begin
  Writeln('数当てゲームです');
  Write('数字の範囲の最低値を入力してください');
  Readln(RangeA);
  Write('数字の範囲の最高値を入力してください');
  Readln(RangeB);
  Buffer := Min(RangeA, RangeB);
  RangeB := Max(RangeA, RangeB);
  RangeA := Buffer;
  Writeln(IntToStr(RangeA)+'から'+IntToStr(RangeB)+'の範囲で'+
        'ある数値を選びました 見つけてください');
  Write('数字を入力してください');
  Readln(YourInt);
  ComInt:= RandomRange(RangeB+1, RangeA);
  while YourInt <> ComInt do
  begin
      while (YourInt < RangeA) or (RangeB < YourInt) do
      begin
          Writeln('範囲を超えてます。');
          Write('もう一度入力してください');
          Readln(YourInt);
      end;
      if YourInt > ComInt then
      begin
          Writeln('選んだ数は'+IntToStr(YourInt)+'より小さいです。');
          Write('もう一度入力してください');
          Readln(YourInt);
      end
      else
      begin
          Writeln('選んだ数は'+IntToStr(YourInt)+'より大きいです。');
          Write('もう一度入力してください');
          Readln(YourInt);
      end;
  end;
  Writeln('正解です');
  Readln;
end.
────────────────────