Guest User

Untitled

a guest
Jun 24th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.00 KB | None | 0 0
  1. unit UnitConversions;
  2.  
  3. interface
  4.  
  5. uses
  6. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7. Dialogs, StdCtrls;
  8.  
  9. type
  10. TFrmConversions = class(TForm)
  11. btnReset: TButton;
  12. btnBinaire: TButton;
  13. btnOctal: TButton;
  14. btnQuit: TButton;
  15. lblValeur: TLabel;
  16. edtValeur: TEdit;
  17. procedure btnQuitClick(Sender: TObject);
  18. procedure btnBinaireClick(Sender: TObject);
  19. procedure btnOctalClick(Sender: TObject);
  20. procedure btnResetClick(Sender: TObject);
  21.  
  22. private
  23. { Déclarations privées }
  24. public
  25. { Déclarations publiques }
  26. end;
  27.  
  28. var
  29. FrmConversions: TFrmConversions;
  30.  
  31. implementation
  32.  
  33. {$R *.dfm}
  34.  
  35. FUNCTION Exposant(base : Integer; exposant:Integer) :Integer;
  36. var temp : Integer;
  37. Begin
  38. temp:=base;
  39. if exposant=0 Then
  40. base:=1
  41. Else
  42. while exposant >1 DO
  43. Begin
  44. base:=base*temp;
  45. exposant:=exposant-1
  46. end;
  47. Result:=base;
  48. end;
  49.  
  50. procedure TFrmConversions.btnQuitClick(Sender: TObject);
  51. begin
  52. Application.Terminate;
  53. end;
  54.  
  55.  
  56. procedure TFrmConversions.btnBinaireClick(Sender: TObject);
  57. var
  58. long,binaire,i,iRC:Integer;
  59.  
  60. begin
  61.  
  62. VAL (edtValeur.Text,i,iRC);
  63. if iRC<>0 THEN Showmessage ('Veuillez entrer un nombre svp')
  64. Else
  65.  
  66. Begin
  67. binaire:=0;
  68. long :=length(edtValeur.Text)-1;
  69. i:=0;
  70. while long >=0 DO
  71. Begin
  72. i:=i+1;
  73. binaire:=binaire +(StrtoInt(edtValeur.Text[i]) * Exposant(2,long));
  74. long:=long-1;
  75. End;
  76. Showmessage(InttoStr(binaire));
  77. End;
  78. end;
  79.  
  80. procedure TFrmConversions.btnOctalClick(Sender: TObject);
  81. var
  82. long,binaire,i,iRC:Integer;
  83.  
  84. begin
  85.  
  86. VAL (edtValeur.Text,i,iRC);
  87. if iRC<>0 THEN Showmessage ('Veuillez entrer un nombre svp')
  88. Else
  89.  
  90. Begin
  91. binaire:=0;
  92. long :=length(edtValeur.Text)-1;
  93. i:=0;
  94. while long >=0 DO
  95. Begin
  96. i:=i+1;
  97. binaire:=binaire +(StrtoInt(edtValeur.Text[i]) * Exposant(8,long));
  98. long:=long-1;
  99. End;
  100. Showmessage(InttoStr(binaire));
  101. End;
  102. end;
  103.  
  104. procedure TFrmConversions.btnResetClick(Sender: TObject);
  105. begin
  106. edtValeur.Text:=' ';
  107. end;
  108.  
  109. end.
Add Comment
Please, Sign In to add comment