tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
2756
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DarkSean DarkSean ist offline Mitglied Gold
    Registriert seit
    Aug 2005
    Ort
    da wo der Hanf blüht
    Beiträge
    125
    Hallo,
    Für die Schule muss ich ein Programm schreiben, das das kleinste gemeinsame Vielfache von zwei Zahlen berechnet. Kann mir da einer helfen? WIe geht das?
    Sean
     

  2. #2
    Avatar von mage
    mage mage ist offline Mitglied Platin
    Registriert seit
    May 2002
    Ort
    Berliner Speckgürtel
    Beiträge
    707
    Du musst einer der Algorithmen implementieren.
    Wiki: kgV
     
    Allen ist das Denken erlaubt, vielen bleibt es erspart. (Kurt Goetz)

  3. #3
    DarkSean DarkSean ist offline Mitglied Gold
    Registriert seit
    Aug 2005
    Ort
    da wo der Hanf blüht
    Beiträge
    125
    Na ja, hab's jetzt so gelöst:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    Dim f1 As Integer
    Dim f2 As Integer
    Private Sub Command1_Click()
        If IsNumeric(Text1.Text) And IsNumeric(Text2.Text) Then
            If Text1.Text = 0 Or Text2.Text = 0 Then
                MsgBox ("Das kgV kann nur mit ganzen Zahlen ungleich 0 gebildet werden")
                Exit Sub
            Else
                f1 = CInt(Text1.Text)
                f2 = CInt(Text2.Text)
            End If
        Else
            MsgBox ("Es müssen ganze Zahlen für beide Zahlen eingesetzt werden")
            Exit Sub
        End If
    kgv = f1 * f2
        While kgv Mod f1 <> 0 Or kgv Mod f2 <> 0
            If kgv = 0 Then
                kgv = f1 * f2
            Else
                kgv = kgv - 1
            End If
        Wend
    Text3.Text = kgv
    End Sub
     

  4. #4
    Avatar von mage
    mage mage ist offline Mitglied Platin
    Registriert seit
    May 2002
    Ort
    Berliner Speckgürtel
    Beiträge
    707
    Sieht doch schon ganz gut aus. Du sollest es nur ein wenig lesbar schreiben
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    
     
    Private Sub Command1_Click()
        Dim f1 As Integer
        Dim f2 As Integer
     
     If Not IsNumeric(Text1.Text) Or Not IsNumeric(Text2.Text) Then
            MsgBox ("Es müssen ganze Zahlen für beide Zahlen eingesetzt werden")
            Exit Sub
      End If
     
      f1 = CInt(Text1.Text)
      f2 = CInt(Text2.Text)
     
      If f1 = 0 Or f2 = 0 Then
          MsgBox ("Das kgV kann nur mit ganzen Zahlen ungleich 0 gebildet werden")
          Exit Sub
       End if
     
        kgv = f1 * f2
        
        While kgv Mod f1 <> 0 Or kgv Mod f2 <> 0
            If kgv = 0 Then
                kgv = f1 * f2
            Else
                kgv = kgv - 1
            End If
        Wend
     
        Text3.Text = CStr(kgv)
     
    End Sub

    Sauberer wär es generell, wenn du dafür eine Funktion schreiben würdest.

    Text3.Text = CStr( fKGV(CInt(Text1.Text),CInt(Text2.Text))
     
    Allen ist das Denken erlaubt, vielen bleibt es erspart. (Kurt Goetz)