- Liittynyt
- 19.12.2007
- Viestejä
- 3 537
Nyt kun tuli raiskattua tuota toista threadia näillä ohjelmointiaiheisilla kysymyksillä niin perustetaan tälle oma threadi. Eli tänne kaikki Java-ohjelmointiin liittyvät pulmat ja vastaukset.
Follow along with the video below to see how to install our site as a web app on your home screen.
Huomio: This feature may not be available in some browsers.
Mulla on aika paljon valmiita ohjelmia ainakin TKK:n peruskurssille eli jos sulla on noita ohjelmien nimiä, joita joudut ohjelmoimaan niin heitä tänne. Katson jos löytyy hyviä vastaavia ohjelmia.Nyt kun tuli raiskattua tuota toista threadia näillä ohjelmointiaiheisilla kysymyksillä niin perustetaan tälle oma threadi. Eli tänne kaikki Java-ohjelmointiin liittyvät pulmat ja vastaukset.
Sellainenkin ongelma tuossa on, että nuo paiva, kuukausi ja vuosi ovat String-tyyppiä, eli merkkijonoja, joten niillä ei voi suorittaa laskutoimituksia. Muutat ne Int-tyyppisiksi vaikka näin:Rivin paiva = input.next(); tilalle laitat paiva = Integer.parseInt(input.next());.
Miten tällä voit saada oikean iän?Voi luoja tässä tämä ohjelmahirvitys nyt sitten on. Vieläkin se näyttää omalle silmälle(kkin) oudolta. Ja iässä näyttää muuten oikein, mutta päivien kohdalla vieläkin pyöreä nolla.
// Laskee henkilön iän päivän tarkkuudella:
syntymaPaiva = paiva + 30 * (kuukausi - 1) + 360 * vuosi;
erotus = (nykyinenPaiva - syntymaPaiva) / 360;
muunnos = erotus / 12;
muunnos2 = erotus / 30;
System.out.println("Ikäsi on " + erotus + " vuotta " + " " + muunnos
+ " kuukautta " + " " + muunnos2 + " päivää. ");
Ja nimi pitäisi tulostaa siten, että etu- ja sukunimen ensinmäiset kirjaimet ovat isoja. Huolimatta siitä kirjoittaako käyttäjä nimet isolla.
Millä tai millaisilla metodeilla onnistun?
Eli ohjelma kysyy "anna nimesi"
Ja nimi pitäisi tulostaa siten, että etu- ja sukunimen ensinmäiset kirjaimet ovat isoja. Huolimatta siitä kirjoittaako käyttäjä nimet isolla.
String etu="eTuNIMi";
etu=etu.substring(0,1).toUpperCase()+etu.substring(1,etu.length()).toLowerCase();
Katso noista aiemmista koodeista tuon scannerin käyttö jotta saat nimet kysyttyä
Äkkiseltään ei löytynyt mitään (tunnustan, ei jaksanut etsiä...) millä voisi merkkijonon ekan merkin muuttaa isoksi, mutta kokeile seuraavaa:
Koodi:String etu="eTuNIMi"; etu=etu.substring(0,1).toUpperCase()+etu.substring(1,etu.length()).toLowerCase();
(+tuohon sitten virheentarkastukset liian lyhyen tai puuttuvan nimen varalle...)
Ja kun opettaja kysyy että "mitvitt.... " niin toivottavasti osaat sitten selittää mitä tuossa tehdään...
if (vastaus.equals("A")){
vastaus = 25*lkm
^
Toimi hienosti. Kiitos.
Seuraava tyhmä kysymys.
Minulla on String arvo joka pitäisi kertoa toisella arvolla. Mutta Stringiä ei voi kertoa? Joten miten muutan Stringillä olevan arvon esim. Doubleksi (tai mihin vaan minkä voi kertoa).
Arvon on oltava String, koska minun pitää käyttää equals toimintoa.
Olen syvästi pahoillani, kun en osaa selittää tarpeeksi hyvin. Mutta en voi laittaa tehtävää tänne. Se on arvioitava tehtävä ja haluaisin tehdä sen itse. Vaikka apuja otan mielelläni.
Eli kertominen ei toimi, koska vastaus on String.