VB-Hilfe

Dieses Thema VB-Hilfe im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Rega, 21. Apr. 2004.

Thema: VB-Hilfe Hat es jemand der mir helfen kann bei Struktogrammen...vorallem bei dieser Aufgabe: Es soll ein Programm (vb) zur...

  1. Hat es jemand der mir helfen kann bei Struktogrammen...vorallem bei dieser Aufgabe:

    Es soll ein Programm (vb) zur Berechnung der Reihe

    f(n) = 1/2+2/3+3/4+4/5+.....+n/n+1

    z.B f(4)= 1/2+2+3+3/4+4/5 =2.716667 entwickelt werden.

    Die Programmiersprache kennt keine Operation, um die Funktion direkt zu berechnen, wohl aber die Grundoperation Addition, Subtraktion, Multiplikation....

    Als Lösung sollte man ein geeignetes detailliertes (Nassi/Shneidermann) Struktogramm erstellen....
     
  2. Hab zwar keine ahnung, was ein (Nassi/Shneidermann) Struktogramm ist, aber ich würde das als rekursive Prozedur proggen:
    Code:
    Private Function f(iterat) As Double
    
      cur = iterat / (iterat + 1)
    
      pre = 0
    
      If Not iterat = 1 Then pre = f(iterat - 1)
    
      f = cur + pre
    
    End Function
    
    oder als for-Schlaufe:
    Code:
    Private Function f(iterat) As Double
    
    cur = 0
    For i = 1 To iterat
        cur = cur + i / (i + 1)
    Next
    
      f = cur
    
    End Function
    
    Aufruf:
    Code:
    a = f(x)
     
  3. ja habe ich nur komm ich mit dem struktogramm nicht wirklich weiter...(bin eben ein bisschen schwer von begriff) jedenfalls im vb!
     
  4. Hi

    @Rega
    Bitte keine Doppelpostings. Beide Themen wurden zusammengeführt.

    Gruß, Michael
     
  5. Grüß Gott,

    ich versuchs mal; so könnte Nassi-Shneidermann aussehen:

    !--------------------------------------------------!
    ! n=0, m=1, x=Wertigkeit der Reihe !
    !--------------------------------------------------!
    ! while n>0 and m>n and x<>n !
    ! !------------------------------------------!
    ! ! x=n? !
    ! !------------------------------------------!
    ! ! nein ! ja !
    ! !------------------------------------------!
    ! ! f(n)=f(n)+n/m ! f(x)=f(n)+n/m !
    ! ! n=n+1 ! !
    ! ! m=m+1 ! !
    !--------------------------------------------------!
    ! AuSgabe Wert f(x) !
    ---------------------------------------------------!

    na, in meinen Darstellungsmöglichkeiten bin ich doch hier sehr
    begrenzt(3 Minuten überlegen, 10 Minuten um das grafisch einigermaßen darzustellen).


    Aber ich hoff' doch, es stimmt oder? :)
     
  6. Die While Schleife wird nur ausgeführt, wenn auch x<>n ist. Was bringt dann in der While Schleife die Abfrage x=n? Der ja-Fall dürfte nie ausgeführt werden.

    Eddie
     
  7. Grüße Gott,

    prima, er kommt schon gar nicht mehr bis zum x=n?
    Muß wohl heißen: ... and x>=n
    Einverstanden ;)?
     
  8. Nö. x und n können nie gleich sein ;)

    Eddie