• Nie Znaleziono Wyników

VB_4.5_Podprogram_Function_objetość_walca Dany jest promie

N/A
N/A
Protected

Academic year: 2021

Share "VB_4.5_Podprogram_Function_objetość_walca Dany jest promie"

Copied!
2
0
0

Pełen tekst

(1)

Copyright © 2014 Janusz Bonarowski 1

VB_4.5_Podprogram_Function_objetość_walca

Dany jest promień podstawy i wysokość walca. Obliczyć objętość walca. Obliczenia wykonać tworząc procedury Function PolePodstawy (obliczającą pole podstawy walca) i Objetosc (obliczającą objętość walca, korzystającą z funkcji PolePodstawy). Zabezpieczyć program przed błędnie wprowadzonymi danymi.

Rysunek 1. Propozycja formularza

Kod – wersja podstawowa, bez obsługi błędów

Private Function PoleKola(ByVal Promien As Single) As Single Return Math.PI * Promien ^ 2

End Function

Private Function ObjetoscWalca(ByVal Promien, ByVal Wysokosc) As Single Return PoleKola(Promien) * Wysokosc

End Function

Private Sub btnOblicz_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles btnOblicz.Click

Dim R, H, V As Single R = CSng(txtR.Text) H = CSng(txtH.Text)

V = ObjetoscWalca(R, H) '--- txtV.Text = V.ToString End Sub

Opis kodu

• W programie głównym konwertujemy zawartości TextBoxów na liczby i liczby te podstawiamy pod zmienne R i H.

• Zmienne te sa argumentami funkcji ObjetoscWalca.

• Funkcja ObjetoscWalca wywołuje funkcję PoleKola, która zwraca pole okręgu podstawy, a następnie mnoży to pole przez Wysokosc uzyskując objętość. Rezultat mnożenia zwracamy do programu głównego, podstawiając go pod zmienną V.

• Wartość zmiennej V wyświetlana jest w TextBox’sie txtV.

(2)

Copyright © 2014 Janusz Bonarowski 2

Pełny kod zadania

Private Function PoleKola(ByVal Promien As Single) As Single If Promien <= 0 Then

Err.Raise(9003, "Funkcja PoleKola", "Promień <=0") End If

Return Math.PI * Promien ^ 2 End Function

Private Function ObjetoscWalca(ByVal Promien, ByVal Wysokosc) As Single If Wysokosc <= 0 Then

Err.Raise(9004, "Funkcja ObjetoscWalca", "Wysokość <= 0") End If

Return PoleKola(Promien) * Wysokosc End Function

Private Sub btnOblicz_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles btnOblicz.Click Dim R, H, V As Single

Try

If IsNumeric(txtR.Text) = False Then

Err.Raise(9002, "Promień", "To nie jest liczba") End If

R = CSng(txtR.Text)

If IsNumeric(txtH.Text) = False Then

Err.Raise(9003, "Wysokość", "To nie jest liczba") End If

H = CSng(txtH.Text)

V = ObjetoscWalca(R, H) '--- txtV.Text = V.ToString

If txtV.Text = "+nieskończoność" Then Err.Raise(6)

End If

Catch ex As Exception txtV.Text = ""

If Err.Number < 1000 Then

MsgBox(ex.Message, MsgBoxStyle.Exclamation, _ "Błąd nr " & Err.Number)

Else

MsgBox(Err.Source & " - błąd danych" & vbCrLf & _ Err.Description, MsgBoxStyle.Critical, _ "Błąd nr " & Err.Number)

End If End Try End Sub

Cytaty

Powiązane dokumenty

Narysuj wektor natęŜenia pola elektrostatycznego w punkcie leŜącym na symetralnej odcinka łączącego ładunki +Q i –Q.. Oblicz

• Procedura Objetosc wywołuje procedurę PolePodstawy uzyskując, w efekcie jej wykonania Pole okręgu podstawy, a następnie mając Pole podstawy mnoŜy je przez Wysokosc

Na tej lekcji poznasz pojęcie „pierścień kołowy” oraz nauczysz się obliczać jego pole. 

Oblicz pole koła opisanego na trójkącie prostokątnym o przyprostokątnych długości 3cm i

Na podstawie informacji zawartych w tym filmiku proszę o zrobienie zadań:. Zad 7.78/193 (na podstawie przykładu 9) oraz zad 7.79/193 (na podstawie

W kole o promieniu 10 wyznaczony jest wycinek koła przez kąt środkowy o mierze 60°.Obliczymy pole tego wycinka.. Jakie mamy dane

Jeśli dokonamy całkowania wartości natężenia pola względem drogi wyznaczonej przez krzywą C(S) wyznaczającą powierzchnię S, to związek pomiędzy wartością prądów

ścian równoległych. Narysuj siatkę prostopadłościanu, którego podstawą jest kwadrat o boku 2 cm. Krawędź boczna jest 2 razy dłuższa niż krawędź podstawy.