Leerlingen.com Forum

Leerlingen.com Forum (https://forum.leerlingen.com/vbb/index.php)
-   Computers & Internet (https://forum.leerlingen.com/vbb/forumdisplay.php?f=23)
-   -   nog een Visual Basic vraagje (https://forum.leerlingen.com/vbb/showthread.php?t=47757)

Stevie 24 June 2004 15:26

nog een Visual Basic vraagje
 
ik moet een programma ontwerpen die de inhoud berekend van een kubus of een bol. eerst moet je het getal r invoeren (straal vd bol of lengte van een ribbe vd kubus) en dan moet je selecteren of je de inhoud van een bol of een kubus wilt. die moet als je dat hebt gedaan in één keer in het vakje ernaast verschijnen. ook moet je een apart vak hebben voor de foutmelding.

ik heb nu dit. ik ben echt een n00b wat betreft VB, dus lach me niet uit. :+

Code:

Private Sub lstFiguur_Click()

'declaraties
Dim r As Double
Dim pi As Double
Dim I As Double
Dim strR As String
Dim strVorm As String
Dim strI As String
Dim strMededeling As String

'inlezen van r
strR = txtR.Text

'controle
If IsNumeric(strR) Then r = Val(strR)

'berekening
pi = 3.1415927
    If lstVorm.Text = "bol" Then I = (4 / 3) * pi * r ^ 3
    If lstVorm.Text = "kubus" Then I = r ^ 3
txtI.Text = Str(I)
Else
    txtMededeling.Text = "Verkeerde invoer."
    Exit Sub
   
End If

End Sub

ik weet niet eens of VB wel op die manier kan rekenen :? fuck wat ben ik hier slecht in :z

MarvinV 24 June 2004 15:30

ten eerste start je al twee keer een if en sluit je maar 1 keer af met end if.. dat zal ie al niet pikken denk ik..

verder weet ik ook niet of hij het woordje pi wel kent

Bazzemans 24 June 2004 15:31

Citaat:

Oorspronkelijk geplaatst door MarvinV


verder weet ik ook niet of hij het woordje pi wel kent

Hij heeft pi toch gedefinieerd als Double?

Nightwolf 24 June 2004 15:34

nee moet je t hele getal voor invullen (wat was t, 50 decimalen? :+)

Bazzemans 24 June 2004 15:36

Citaat:

Oorspronkelijk geplaatst door Nightwolf
nee moet je t hele getal voor invullen (wat was t, 50 decimalen? :+)
Hehe.. flauw..

Nightwolf 24 June 2004 15:41

ik merk t nu trouwens op maar wat is Dim? wat doet t? :?

oh ik zie trouwens deze regel al: "pi = 3.1415927"

maar volgens mij stel je die dan fout in of ligt dat aan mij?

Bazzemans 24 June 2004 15:47

Code:

'declaraties
Dim pi As Double


Kijk nog eens goed.. Er staat duidelijk boven dat hier de verschillende variabelen gedefineerd worden ;). Daar is Dim dan ook voor..

Stevie 24 June 2004 17:11

waarom zegt ie:

Compileerfout:

Else zonder If

:? slaat nergens op, erboven staat toch if :S

Sedes 24 June 2004 17:31

en werkt dat ding in vb :?

en idd mag niet meerdere keren if achter elkaar, moet dan ElseIf zijn ;)

Basisregeltje:
Citaat:

If voorwaarde Then
Instructies wanneer de voorwaarde True is
ElseIf voorwaarde Then
Instructies wanneer voorgaande voorwaarden false zijn en deze voorwaarde true is.

Else
Instructies wanneer alle voorgaande voorwaarden false zijn en die worden doorlopen in alle andere gevallen dan voorgaande voorwaarden
End if
En wrom dim ... as double? integer neemt minder ruimte in ;)

not-known 24 June 2004 18:28

Citaat:

Oorspronkelijk geplaatst door Sedes
en werkt dat ding in vb :?

en idd mag niet meerdere keren if achter elkaar, moet dan ElseIf zijn ;)

Basisregeltje:

En wrom dim ... as double? integer neemt minder ruimte in ;)

Niet als je komma getallen wil he ;) Met int's heb je dan loss of precision.

Citaat:

Oorspronkelijk geplaatst door Nightwolf
ik merk t nu trouwens op maar wat is Dim? wat doet t? :?

oh ik zie trouwens deze regel al: "pi = 3.1415927"

maar volgens mij stel je die dan fout in of ligt dat aan mij?

Dim is je declaratie :+ Stond voor dimension alsk et goed heb. Heb ik et vast wel ;)

Citaat:

Oorspronkelijk geplaatst door Nightwolf
nee moet je t hele getal voor invullen (wat was t, 50 decimalen? :+)
50? Ga es goed je Pi uit de kop leren :+ Dat zijn er veeeeeeeeeeeeeeeeeeel te weinig :p

Stevie 24 June 2004 18:29

Code:

Private Sub lstFiguur_Click()
'berekent de inhoud van de geselecteerde figuur

    'declaraties
    Dim r As Double
    Dim I As Double
    Dim pi As Double
    Dim strR As String

    'berekening
    txtBoodschap.Text = "Vul waarde voor r in en selecteer een figuur"
    strR = txtR.Text
    If IsNumeric(strR) Then
        r = Val(strR)
        pi = 3.1415927
        If lstFiguur.Text = "bol" Then I = (4 / 3) * pi * r ^ 3
        If lstFiguur.Text = "kubus" Then I = r ^ 3
        txtInhoud.Text = Str(I)
    Else
        txtBoodschap.Text = "Verkeerde invoer."
        Exit Sub
    End If
End Sub

zo zou hij t moeten doen. hoop ik.

Plankje 24 June 2004 19:56

Citaat:

Oorspronkelijk geplaatst door MarvinV
ten eerste start je al twee keer een if en sluit je maar 1 keer af met end if.. dat zal ie al niet pikken denk ik..

verder weet ik ook niet of hij het woordje pi wel kent

als je geen nieuwe regel start hoef je if niet af te sluiten... iig zo werkt t ook met c++ (dacht ik... is al lang geleden :d)

Nightwolf 24 June 2004 20:12

Citaat:

Oorspronkelijk geplaatst door not-known
50? Ga es goed je Pi uit de kop leren :+ Dat zijn er veeeeeeeeeeeeeeeeeeel te weinig :p
:o hoeveel getallen zijn t dan tegenwoordig? :+

Stevie 24 June 2004 20:17

Citaat:

Oorspronkelijk geplaatst door Nightwolf
:o hoeveel getallen zijn t dan tegenwoordig? :+
oneindig..

not-known 24 June 2004 20:51

Citaat:

Oorspronkelijk geplaatst door Nightwolf
:o hoeveel getallen zijn t dan tegenwoordig? :+
Daar zijn ze nog lang niet uit. Iig kan je er stapels papier mee vullen :p


Alle tijden zijn GMT +1. De tijd is nu 04:54.

Forum software: vBulletin 3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.