Buchempfehlung
Visual Basic 6 Kochbuch
Visual Basic 6 Kochbuch
Viele praktische Tipps zum Programmieren mit Visual Basic 6, die sich oft auch auf FB übertragen lassen. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

fb:porticula NoPaste

Info
Info / Hilfe
Liste
Übersicht / Liste
Neu
Datei hochladen
Suche
Quellcode suchen
Download
Dateidownload

Mondlandung portiert von Locomotive Basic 1.0

Uploader:Redakteurytwinky
Datum/Zeit:13.01.2008 13:30:36

' „ä”öüáߎę֚Üñ±ø°¸©2008 by ytwinky, MD
'getestet mit FB0.18.3b und FBEdit 1.0.5.8
Type Real As Single
Const Titel="  h[m]   v[m/s]  Rest[L]", fmth = " ####.#  ", fmtv="+####.#  ", fmtr="###.# "
Const Okay=2, Gefahr=4, Normal=7, Bewertung=14, Esc=!"\27"
Dim As Real h, v, r, s
Dim As String mc, Hinweis
Dim As Integer x, y, i=-1
Do
    Cls
    Print !"Mondlandung\nLanden Sie Ihre Kapsel auf dem Mond..\n" &_
      !"Geben Sie dazu als Schub einen Betrag ein, der nicht gr”áer als der Rest ist..\n" &_
      !"h=H”he, v=Geschwindigkeit, mit Ctrl-C(Strg-C) kann immer abgebrochen werden"
    h=4000
    v=-200
    r=370
    While (h>2) And (r>0)
        i=IIf(i>19, 0, i+1)
        If i=0 Then Print Titel
        Color Okay
      Print Using fmth; h;
        Color IIf(v<0, Okay, Gefahr)
        Print Using fmtv; v;
        Color Okay
        Print Using fmtr; r;
      y=Pos(0)
      x=CsrLin
      s=-1
      While s<0
        Locate x, y
        Print String(79-y, " ") 'Beim Schneider CPC464 hat das so geklappt ^^
        Color Normal
        Locate x, y
        Input;" Schub: ", s
        Locate x, y+7
        Print String(79-y, " ") 'Beim Schneider CPC464 hat das so geklappt ^^
        Locate x, y+7
        Color Okay
        Print Using fmtr; s;
        Print " L"
      Wend
      If s>r Then s=r
      r -= s
      v -= 8-s
      h += 2.5*v
    Wend
    Color Bewertung
    Print !"Spielende\n" &Titel
    Color IIf(h<0, Gefahr, Bewertung)
    Print Using fmth; h;
    Color IIf(v<0, Bewertung, Gefahr)
    Print Using fmtv; v;
    Color Bewertung
    Print Using fmtr; r
    mc=*IIF((Abs(v)<5) And (r>0), @"Landung!", @"* Bruch *")
    If v>0 Then mc="Houston, wir haben ein Problem.."
    Print mc
    Color Normal
    Print "Noch einmal?(J/N):";
    Do
        mc=lcase(Inkey)
        Sleep 1
    Loop Until InStr("jn" &Esc, mc)
    i=-1
Loop Until mc<>"j"