Alv:n laskenta

Olen harjoitellut ihan pikkusen javaa. Aloin värkkäämään ilokseni ja hyödykseni tuollaista palkkalaskuria. Sen pitäisi tulostaa tehtyjen työpäivien lukumäärä, tehdyt työtunnit niiltä päiviltä, työtunnit yhteensä, tuntipalkka, Alv (22%) ja sit palkka alv yhteensä.

En tajuu miten saan sen Alv:n tulostumaan oikein. Nythän se ei pelaa lainkaan. Jos alv olisi 0 niin tuo laskee silti sitä.

import java.util.Scanner;
public class Tunnit
{
public static void main(String[] args)
{
int lukumäärä = 0;
double summa = 0;
double palkka = 0;
double alv = 0;


Scanner lukija = new Scanner(System.in);


System.out.print("Työpäivien lukumäärä: ");
lukumäärä = lukija.nextInt();

double[] tunnit = new double[lukumäärä];
System.out.print("Tuntipalkka: ");
palkka = lukija.nextDouble();
System.out.print("Alv %: ");
alv = lukija.nextDouble();
alv=palkka*22/100;


for(int i = 1; i
41374
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat

Eka tyhmä kysymys: miksi lasket arvonlisäveroa palkasta? Ei kai alveja palkasta kukaan joudu maksamaan (korjatkaa, jos oon väärässä..)

Sitten, koodissasi oli seuraavat rivit:

alv = lukija.nextDouble();
alv=palkka*22/100;

eli nyt et käytä ollenkaan käyttäjän syöttämää alv-prosenttia vaan lasket suoraan alviksi 22% palkasta. Pitäisi olla jotenkin näin:

alv = lukija.nextDouble();
double alvOsuus = palkka * alv / 100.0;

Nyt muuttujassa alvOsuus on laskettuna annetun alv-prosentin mukainen osuus tuntipalkasta.

Äänestä
  • Tää nyt on opettelua ja hakemista. En oikein osaa vielä miettiä kaikkea loogisesti. Jotenkin vasta koko Java alkaa hahmottumaan pikkuhiljaa. Se Alv-homma. Kun ostan konsultaatiotunteja jostakin niin kaikki eivät ole alvillisia, osa taas on. Esim. sos.-ja terv.huollon palveluissa kaikki ei laskuta alvilla. Osa pitää eritellä sitten et näkyy se verollinenkin osa. Näistä korjauksista ja vinkeistä sitten oppii paljon. Kiitos.

    Äänestä

System.out.print("Alv %: ");
alv = lukija.nextDouble();
alv=palkka*22/100;

yritätkö laskea tuossa paljonko alv on palkasta?

alv=palkka*alv/100;

Äänestä

alv=palkka*22/100;

Ettei tässä nyt kääntäjä ensin laske 22/100 valmiiksi kokonaisluvuilla, pyöristä sitä nollaksi ja kerro palkkaa sitten sillä? Koita laittaa (palkka*22.0)/100.0 jolloin se on varmasti liukuluku.

Ohjelman logiikasta joku taisikin jo mainita. Ensin kysyt alv-prosentin, mutta kuitenkin käytät arvona 22%:a. Tarkoitat varmaan
double alvpalkasta;
..
alvpalkasta = (palkka*alv)/100.0;

Äänestä

Kommentoi aloitusta


oppia ikä kaikki kirjoitti:

Olen harjoitellut ihan pikkusen javaa. Aloin värkkäämään ilokseni ja hyödykseni tuollaista palkkalaskuria. Sen pitäisi tulostaa tehtyjen työpäivien lukumäärä, tehdyt työtunnit niiltä päiviltä, työtunnit yhteensä, tuntipalkka, Alv (22%) ja sit palkka alv yhteensä.

En tajuu miten saan sen Alv:n tulostumaan oikein. Nythän se ei pelaa lainkaan. Jos alv olisi 0 niin tuo laskee silti sitä.

import java.util.Scanner;
public class Tunnit
{
public static void main(String[] args)
{
int lukumäärä = 0;
double summa = 0;
double palkka = 0;
double alv = 0;


Scanner lukija = new Scanner(System.in);


System.out.print("Työpäivien lukumäärä: ");
lukumäärä = lukija.nextInt();

double[] tunnit = new double[lukumäärä];
System.out.print("Tuntipalkka: ");
palkka = lukija.nextDouble();
System.out.print("Alv %: ");
alv = lukija.nextDouble();
alv=palkka*22/100;


for(int i = 1; i

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu