Delphi 逆ポーランド記法 四則計算機 本体ソースコード
2022-08-12



�禺画像]

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Memo2: TMemo;
    Button1: TButton;
    Button2: TButton;
    Edit1: TEdit;
    Memo3: TMemo;
    edMoto: TEdit;
    btnMotoHen: TButton;
    btnPora: TButton;
    edPora: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure btnMotoHenClick(Sender: TObject);
    procedure btnPoraClick(Sender: TObject);
  private
    { Private 宣言 }
  public
    { Public 宣言 }
  end;

var
  Form1: TForm1;

implementation

uses
  ReversePolish;

{$R *.dfm}

procedure TForm1.btnMotoHenClick(Sender: TObject);
var
  i,j,iBan,naga:integer;
  sdmy,sdmyS:string;
begin
  memo1.Lines.Clear;
  naga := Length(edMoto.Text);
  sdmyS := '';
  j := 0;
  for iBan := 1 to naga do begin
    sdmy := Copy(edMoto.Text,iBan,1);
    //showmessage('naga='+intToStr(naga)+','+'iBan='+intToStr(iBan)+','+sdmy+'END');
    if sdmy = ' ' then begin
      memo1.Lines.Add(sdmyS);
      sdmyS := '';
      j := 0;
    end;
    if sdmy <> ' ' then begin
      inc(j);
      insert(sdmy,sdmyS,j);
      //showmessage('naga='+intToStr(naga)+','+'iBan='+intToStr(iBan)+','+sdmy+',j='+intToStr(j)+','+sdmyS);
    end;
  end;
  memo1.Lines.Add(sdmyS);

end;

procedure TForm1.btnPoraClick(Sender: TObject);
var
  sdmy,sdmyS:string;
  i,j,gyou:integer;
begin
  edPora.Text := '';

続きを読む


��コメント(全0件)


�セ記事を書く
�� powered by ASAHIネット