08-25-2023, 11:19 PM
(This post was last modified: 08-25-2023, 11:28 PM by Kernelpanic.)
It's amazing what one can all do in this case. That's fun! - And everything goes back to a For loop. 
Calling a Sub procedure and/or an EXE file.
PS: Damn, if one enter "n" it doesn't work. I'll take a look tomorrow.
The called EXE file:

Calling a Sub procedure and/or an EXE file.
PS: Damn, if one enter "n" it doesn't work. I'll take a look tomorrow.
Code: (Select All)
'Aus einer While-Schleife eine Sub-Prozedur aufrufen - 25. Aug. 2023 $Console:Only Option _Explicit Declare Sub Berechnen(eingabe As Integer) Dim As Integer i, eingabe, modBedingung Dim As String antwort Print Print "While-Schleife wird bis zur Eingabe durchlaufen, wobei" Print "bei Mod 7 = 0 jedesmal eine Ausgabe erfolgt." Print Input "Eingabe : ", eingabe Input "Modangabe: ", modBedingung Print: Print 'While-Schleife wird bis zur Eingabe durchlaufen, wobei 'bei Mod 7 = 0 jedesmal eine Ausgabe erfolgt 'Ergaenst um Aufruf eines externen Programms, wenn Bedingung erfuellt i = 1 While i < eingabe i = i + 1 If i Mod modBedingung = 0 Then Berechnen (i) ElseIf i Mod 23 = 0 Then Do Print Input "Weiter J/N: ", antwort Loop Until UCase$(antwort$) = "J" Run "D:\Lab\QuickBasic64\Finanz+Mathe\Geometrie\Rechtwinkliges-Dreieck-Hypo.exe" End If Wend End 'Hauptprogramm Sub Berechnen (eingabe As Integer) eingabe = eingabe * 3 Print Using "Ergebnis = ###"; eingabe End Sub
The called EXE file:
Code: (Select All)
'Berechnungen am rechtwinkligen Dreieck - 5. August 2023 'https://qb64phoenix.com/qb64wiki/index.php/HYPOT Option _Explicit Dim As Double ankathede, gegenkathede, hypotenuse Dim As Double hoehe_c, flaecheninhalt, umfang Locate 2, 3 Input "Laenge der Ankathede(cm) : ", ankathede Locate 3, 3 Input "Laenge der Gegenkathede(cm): ", gegenkathede hypotenuse = _Hypot(ankathede, gegenkathede) Locate 5, 3 Print Using "Die laenge der Hypotenuse im Dreiceck betraegt: ###.## cm"; hypotenuse 'Hoehe hc und Flaecheninhalt im rechtwinkligen Dreieck hoehe_c = ((ankathede * gegenkathede) / hypotenuse) flaecheninhalt = ((hypotenuse * hoehe_c) / 2) umfang = ankathede + gegenkathede + hypotenuse Locate 7, 3 Print Using "Der Umfang dieses Dreiecks betraegt : ###.## cm"; umfang Locate 8, 3 Print Using "Der Flaecheninhalt dieses Dreiecks betraegt : ###.## qcm"; flaecheninhalt End
![[Image: While-Prozeduren.jpg]](https://i.ibb.co/rpJHyF7/While-Prozeduren.jpg)