Close
Duke shfaqur rezultatin -9 deri 0 prej 9
  1. #1
    i/e regjistruar
    Anėtarėsuar
    18-06-2007
    Postime
    16

    Me duhet ndihme

    Kam per ta bere nje aplikacion ne java

    Write an application that computes a worker's weekly net pay. The inputs are
    the worker's name, hours worked for the week, and hourly payrate. The output
    is the worker's name and pay. The pay is computed as follows:
    - gross pay is hours worked multiplied by payrate. A bonus of 50% is paid
    for each hour over 40 that was worked.
    - a payroll tax of 22% is deducted from the gross pay.


    Nuk di si ta paraqes kete bonusin pasi nuk guxojm ta shfrytexojm komanden if
    mund te perdorim %(moduo)
    Ju lutem pak ndihme

  2. #2
    i/e regjistruar
    Anėtarėsuar
    16-04-2004
    Postime
    674
    Shumezo oret me payrate dhe shtoja moduo te shumezuar me gjysmen e payrate

  3. #3
    i/e regjistruar
    Anėtarėsuar
    18-06-2007
    Postime
    16
    Faleminderit shume Uke nese se kam bere gabim kete qe ma keni propozuar
    pagesa*oret + (pagesa%oret)*(pagesa/2)
    ateher kur provoj per 45 ore dhe 2 pagesa pa e zbritur 22% duhej te me dilte 95 euro gje qe me del 92
    Sidoqoft flm por nese ke mundesi te me ndihmosh provo edhe kur kalon 80 ore a llogarit mire aplikacioni
    Flm shume

  4. #4
    i/e regjistruar
    Anėtarėsuar
    16-04-2004
    Postime
    674

    Gabim e ke shkruar formulen

    Nese
    Oret - Oret te cilat eshte punuar gjat javes
    Vlera - Cmimi i nje ore pune
    dhe Rroga shuma qe duhet paguar per tere javen atehere:

    Rroga = (Oret*Vlera) + (Oret%40)*(Vlera/2)

    Perdorimi i moduo ka si pasoje se kjo formule eshte e vlefshme vetem ne brezin prej 0 oresh deri 80 ore (duke mos perfshire 80-shin). Te bashkangjitur e ke nje ilustrim ne VB.NET 2008
    Skedarėt e Bashkėngjitur Skedarėt e Bashkėngjitur

  5. #5
    Analog Brain Maska e josif
    Anėtarėsuar
    26-02-2004
    Vendndodhja
    madagaskar
    Postime
    245
    Kjo formule eshte e gabuar. Ka gabim ne te gjitha rastet kur Oret < 40 dhe kur Oret > 80.

    Arsyeja eshte pasi p.sh.: 30%40 jep 30 por nuk eshte e vertete qe ka patur 30 ore shtese.

    Nje formulim i sakte do te ishte:

    ( (Oret>40 ? (40*Paga) : (Oret*Paga)) + (Oret>40 ? 1 : 0 )*( Oret-40 ) * Paga * 0.5 ) * 0.78

    Citim Postuar mė parė nga Uke Topalli Lexo Postimin
    Nese
    Oret - Oret te cilat eshte punuar gjat javes
    Vlera - Cmimi i nje ore pune
    dhe Rroga shuma qe duhet paguar per tere javen atehere:

    Rroga = (Oret*Vlera) + (Oret%40)*(Vlera/2)

    Perdorimi i moduo ka si pasoje se kjo formule eshte e vlefshme vetem ne brezin prej 0 oresh deri 80 ore (duke mos perfshire 80-shin). Te bashkangjitur e ke nje ilustrim ne VB.NET 2008
    Ndryshuar pėr herė tė fundit nga josif : 15-01-2010 mė 10:59
    He walks among us, but He is not one of us ...

  6. #6
    i/e regjistruar
    Anėtarėsuar
    16-04-2004
    Postime
    674
    Citim Postuar mė parė nga josif Lexo Postimin
    Kjo formule eshte e gabuar. Ka gabim ne te gjitha rastet kur Oret < 40 dhe kur Oret > 80.

    Arsyeja eshte pasi p.sh.: 30%40 jep 30 por nuk eshte e vertete qe ka patur 30 ore shtese.

    Nje formulim i sakte do te ishte:

    ( (Oret>40 ? (40*Paga) : (Oret*Paga)) + (Oret>40 ? 1 : 0 )*( Oret-40 ) * Paga * 0.5 ) * 0.78
    Kjo eshte e vertete por sipas postimit te pare "If" nuk eshte e lejuar te perdorohet.

  7. #7
    i/e regjistruar
    Anėtarėsuar
    17-11-2006
    Postime
    81
    diteTeper = dite - 40;
    diteTeper &= (diteTeper >> 31) - 1;
    Shperblimi = 0.78 * rroga * (dite + diteTeper / 2.0);

  8. #8
    i/e regjistruar
    Anėtarėsuar
    16-04-2004
    Postime
    674
    Per te llogaritur ne menyre te sakt, pa perdorimin e "If" ose "Select" ja ku eshte kodi i cili nuk ka kufizime. Pra vlene edhe per brezin nen 40 ore, edhe per cfaredo shumefishi te 40
    Kodi:
     Dim hourlyRate As Double = 0
            Dim weeklyHours As Double = 0
            Dim weekCounter As Integer = 0
            Dim moduoSwitch As Integer = 0
            Dim totalWage, regularWage, excepWage, overtimeWage As Double
    
    
            Try
    
                hourlyRate = CDbl(txtRate.Text)
                weeklyHours = CDbl(txtHours.Text)
                'Sherben per numrimin e shumefishave te 40 
                weekCounter = Truncate(weeklyHours / 40)
                'Sherben per te llogaritur se a duhet perdorur moduo dhe gjithnje do te jet 0 ose 1 
                moduoSwitch = weekCounter / (weeklyHours / 40)
                'Rroga e rregullt
                regularWage = weeklyHours * hourlyRate
                'Rroga per overtime
                overtimeWage = moduoSwitch * (weeklyHours Mod 40) * (hourlyRate / 2)
                'Rroga per 80,120 ...
                excepWage = moduoSwitch * (40 * (weekCounter - 1) * (hourlyRate / 2))
                totalWage = regularWage + overtimeWage + excepWage
                txtWage.Text = totalWage
    
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
    E bashkangjita vb.net 2008 projektin e reviduar. Besoj se per ta kopjuar funksionin truncate ne java duhet perdorur BIGDECIMAL dhe Round_Down

  9. #9
    i/e regjistruar
    Anėtarėsuar
    17-11-2006
    Postime
    81
    1. unsigned long oreShtese = (unsigned long)(ore - 40);
    2. oreShtese &= (oreShtese >> 31) - 1;
    3. Shperblimi = 0.78 * PagesaPerOre * (ore + oreShtese * 0.5);

    Implementimi qe une paraqita, nuk vlen vetem per rastet kur "if"-i eshte i "frikshem", por eshte ne fakt nje forme optimizimi.
    Nese rreshti i dyte do ishte:

    2. if (oreShtese < 0) oreShtese = 0;

    i gjithe fragmenti ka kuptim, apo jo?

    Rreshti i dyte ben te njejten gje, por ekzekutohet shume me shpejte.
    Megjithate, nese operatoret & dhe >> nuk mund te perdoren, atehere rreshtin e dyte mund ta shkruash edhe

    2. oreShtese *= 1 - (oreShtese / 0x80000000); // ekzekutohet pak me ngadale se varianti origjinal

    dhe nese nuk mund te perdoresh as numrat hekzadecimal, apo operatorin *=, mund ta shkruash edhe

    2. oreShtese = oreShtese * (1 - (oreShtese / 2147483648));

    Kodi vlen nga 0 ore, deri ne numrin maksimal te oreve qe ka 1 jave (apo muaj, vit, ... apo e gjithe jeta e punetorit), dhe ekzekutohet me shpejte se implementimi me "if", dhe shume shume me shpejte se varianti i Ulkes mesiper.

    Nese ky eshte nje ushtrim shkolle, qe toleron c'do gje, perfshire perdorimin e "exception-handling" si pjese te "formules", vetem e vetem qe te perdoret "%", atehere varianti i Ulkes mund te ishte nje menyre zgjidhje.

Regullat e Postimit

  • Ju nuk mund tė hapni tema tė reja.
  • Ju nuk mund tė postoni nė tema.
  • Ju nuk mund tė bashkėngjitni skedarė.
  • Ju nuk mund tė ndryshoni postimet tuaja.
  •