Προς το περιεχόμενο

VB gas pump console app


Προτεινόμενες αναρτήσεις

Δημοσ.

So, ερωτησεις

 

1) γιατι δεν ξανακαλει το ονομα του?

2) κανει τον υπολογισμο και δεν τον εμφανιζει ή δεν τον κανει καθολου γιαυτο δεν τον εμφανιζει?

 

 

 

 

fxW2zcQ.png

Option Explicit On
Option Strict On

Module ConsoleApplication3

    ''' <summary>
    ''' This is where the program begins when started
    ''' </summary>
    ''' <remarks></remarks>
    Sub Main()
        Dim pump As GasPump ' Declare a referens variable
        pump = New GasPump()
        pump.Start()

        'This make the Console window wait on the screen ("Read nothing")
        Console.ReadKey()

    End Sub

End Module

Option Explicit On
Option Strict On
Class GasPump


    Private customerName As String

    'declare variable type
    Private quantity As Double

    'declare variable true or false
    Private premiumQuality As Boolean

    Private gasType As String

    'declare total amount payed
    Private totalToPay As Double

    Const regularPrice As Double = 15.05 ' lund 2013-09-01
    Const primePrice As Double = 15.75


    Property InputString As String




    Public Sub Start()
        '1. ReadInput
        ReadInput()
        '2. calculate
        CalcTotalToPay()
        '3. Show results
        PrintReceipt()
    End Sub
    Private Sub ReadInput()
        '1. Read Customer name
        ReadCustomerName()
        '2. Read Quantity
        ReadQuantity()
        '3. Read Quality
        ReadQuality()
    End Sub


    Private Sub ReadCustomerName()
        Console.Write("Please let me know your full name:")

        Dim customerName As String = Console.ReadLine()
        WriteThankYou()



    End Sub


    Private Sub ReadQuantity()
        Console.WriteLine("")
        Console.Write("How many units whould you like  (only whole numbers please)?")

        Dim quantity As String = Console.ReadLine()


        Console.WriteLine("")
        Console.WriteLine("")


    End Sub

    Private Sub ReadQuality()
        Console.Write("Premium quality? (y/n): ")

        Dim response As Char = Console.ReadLine().Chars(0)
        If ((response = "y") Or (response = "Y")) Then
            premiumQuality = True
            Console.WriteLine("")
            Console.WriteLine("your choice: Prime price!")
            Console.WriteLine("")
        Else
            premiumQuality = False

            Console.WriteLine("")
            Console.WriteLine("your choice: Regular price")
            Console.WriteLine("")
        End If





    End Sub
    Private Sub WriteThankYou()

        Console.WriteLine("Thank you, " + customerName)

    End Sub


    Private Sub CalcTotalToPay()



        If premiumQuality = True Then
            totalToPay = quantity * primePrice
        Else
            totalToPay = quantity * regularPrice

        End If






    End Sub

    Private Sub PrintReceipt()


        Console.WriteLine("")
        Console.WriteLine("")
      
        Console.WriteLine("++++++++++++++++++++WELCOME TO APU's GAS STATION+++++++++++++")
        Console.WriteLine("")
        If premiumQuality = True Then

            Console.WriteLine("Quality                  Premium, premiumQuality")
        Else
            Console.WriteLine("Quality                  Regular, regularQuality")
        End If

        Console.WriteLine("Quantity                       " & quantity.ToString())
        Console.WriteLine("")
        Console.WriteLine("")
        If premiumQuality = True Then

            Console.WriteLine("Price per unit           15.05, regularQuality")
        Else
            Console.WriteLine("Price per unit           15.75, premiumQuality")
        End If

        Console.WriteLine("Sum to pay                  " & totalToPay)
        Console.WriteLine("")
        Console.WriteLine("")
        Console.WriteLine("Welcome Back!", customerName)
        Console.WriteLine("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++")




    End Sub
End Class

thanks

Δημοσ.

Δεν σωζεις το quantity πουθενα.

  1. Dim quantity As String = Console.ReadLine()

To δημιουργεις μεσα στην συναρτηση  Private Sub ReadQuantity()

και οταν τελειωνει η εκτελεση της χανετε, γιατι ουτε το επιστρεφεις ουτε το σωζεις κατα την διαρκεια της συναρτησης πουθενα.

To ιδιο και με την μεταβλητη quality στην procedure ReadQuality().

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...