Java fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
1.8 KiB

4 years ago
  1. Tee ohjelma Tuotteet, joka kysyy tuotteen tiedot (numero, nimi, hinta ja kuvaus). Nimestä poistetaan tyhjät merkit alusta sekä lopusta, ja nimi muunnetaan suurella kirjoitetuksi. Kuvauksesta poistetaan tyhjät merkit alusta ja lopusta.
  2. Jos kuvaus on tyhjä merkkijono, kuvausriviä ei tulosteta lainkaan.
  3. Huom! Kun luette käyttäjältä numeroita ja tekstiä vuoron perään nextInt-, nextDouble- ja nextLine-metodeilla, jää "tietovirtaan" rivinvaihtomerkkejä. Tätä ongelmaa käsitellään Stack Overflow -keskustelussa: https://stackoverflow.com/a/13102066
  4. ```
  5. Example output:
  6. Anna tuotenumero: 1234
  7. Anna tuotteen nimi: Porsche
  8. Anna tuotteen hinta: 423000,00
  9. Anna tuotteen kuvaus: Punainen
  10. Numero: 1234
  11. Nimi: PORSCHE
  12. Hinta: 423000,00
  13. Kuvaus: Punainen
  14. ```
  15. --------------------
  16. **Tuotteet.java**
  17. ```
  18. import java.util.Scanner;
  19. import java.text.DecimalFormat;
  20. public class Tuotteet {
  21. public static void main(String[] args) {
  22. Scanner syote = new Scanner(System.in);
  23. DecimalFormat r2 = new DecimalFormat(".00");
  24. int tuotenumero;
  25. String nimi, kuvaus;
  26. double hinta;
  27. System.out.print("Anna tuotenumero: ");
  28. tuotenumero = syote.nextInt();
  29. System.out.print("Anna tuotteen nimi: ");
  30. nimi = syote.next();
  31. System.out.print("Anna tuotteen hinta: ");
  32. hinta = syote.nextDouble();
  33. System.out.print("Anna tuotteen kuvaus: ");
  34. kuvaus = syote.next();
  35. // Remove leading & trailing spaces, convert to uppercase
  36. nimi = nimi.trim().toUpperCase();
  37. kuvaus = kuvaus.trim();
  38. System.out.printf(
  39. "Numero: %s\nNimi: %s\nHinta: %s\n",
  40. tuotenumero, nimi, r2.format(hinta)
  41. );
  42. if (!kuvaus.isEmpty()) {
  43. System.out.printf("Kuvaus: %s\n", kuvaus);
  44. }
  45. }
  46. }
  47. ```