Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2017
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 2.15 KB | None | 0 0
  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7.   Dialogs, StdCtrls;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     Edit1: TEdit;
  12.     Label1: TLabel;
  13.     Button1: TButton;
  14.     Edit2: TEdit;
  15.     Edit3: TEdit;
  16.     Label2: TLabel;
  17.     Edit4: TEdit;
  18.     Label4: TLabel;
  19.     Edit5: TEdit;
  20.     Label5: TLabel;
  21.     Edit6: TEdit;
  22.     Button2: TButton;
  23.     Edit7: TEdit;
  24.     Button3: TButton;
  25.     procedure Button1Click(Sender: TObject);
  26.     procedure Button2Click(Sender: TObject);
  27.     procedure Button3Click(Sender: TObject);
  28.   private
  29.     { Private-Deklarationen }
  30.   public
  31.     { Public-Deklarationen }
  32.   end;
  33.  
  34. var
  35.   Form1: TForm1;
  36.   x, y, gz, gn, abfragez, abfragen: integer;
  37.  
  38. implementation
  39.  
  40. {$R *.dfm}
  41.  
  42. procedure TForm1.Button1Click(Sender: TObject);
  43. begin
  44. close;
  45. end;
  46.  
  47. procedure TForm1.Button2Click(Sender: TObject);
  48. var z1, n1, z2, n2, ez, en, r, ggT, a: integer;
  49. begin
  50. //zufallszahlen werden generiert und zufälliger rechenoperator
  51. z1:=0;
  52. n1:=0;
  53. z2:=0;
  54. n2:=0;
  55. a:=0;
  56. //speiher nullsetzen vorher
  57. a:=random(4)+1;
  58. z1:=random(10)+1;
  59. n1:=random(10)+1;
  60. z2:=random(10)+1;
  61. n2:=random(10)+1;
  62.  
  63. if a=1 then
  64.  begin
  65.  en:=n1*n2; //Nenner (unten)
  66.  ez:=n1*z2+n2*z1; //Zähler (oben)
  67.  Edit7.Text:='+';   //Rechnen mit + und Ausgabe von Zeichen +
  68.  end
  69. else
  70. if a=2 then
  71.  begin
  72.  en:=n1*n2; //Nenner (unten)
  73.  ez:=n2*z1-n1*z2; //Zähler (oben)
  74.  Edit7.Text:='-';
  75.  end
  76. else
  77. if a=3 then
  78.  begin
  79.  en:=n1*n2; //Nenner (unten)
  80.  ez:=z1*z2; //Zähler (oben)
  81.  Edit7.Text:='*';
  82.  end;
  83. if a=4 then
  84.  begin
  85.  en:=n1*z2;
  86.  ez:=z1*n2;
  87.  Edit7.Text:='/';
  88.  end;
  89.  
  90. //vorübergehende ausgabe der zufallszahlen
  91. Edit1.Text:=IntToStr(z1);
  92. Edit2.Text:=IntToStr(n1);
  93. Edit3.Text:=IntToStr(z2);
  94. Edit4.Text:=IntToStr(n2);
  95.  
  96. //Kürzen
  97. BEGIN
  98. x:=ez;
  99. y:=en;
  100. REPEAT
  101. r:=x MOD y;
  102. x:=y;
  103. y:=r;
  104. UNTIL r=0;
  105. ggT:=x;
  106. gz:= ez DIV ggT;
  107. gn:= en DIV ggT;
  108. END;
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115. end;
  116.  
  117. procedure TForm1.Button3Click(Sender: TObject);
  118. begin
  119. abfragez:=StrToInt(Edit5.Text);
  120. abfragen:=StrToInt(Edit6.Text);
  121.  
  122. if (abfragez=gz) and (abfragen=gn)
  123.  then showMessage ('Richtig!')
  124. else showMessage ('Falsch!')
  125.  
  126.  
  127. end;
  128.  
  129. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement