Phil
Legacy Member
Hallo,
Ik ben onlangs begonnen met te leren programmeren en meer bepaald te leren programmeren in Java.
In mijn vrije tijd pruts ik nogal veel rond met Java en probeer ik van alle kleine nutteloze programmaatjes te schrijven.
Iets waar ik me vandaag met heb bezig gehouden is om een klein "scriptje" te schrijven waarmee ik kan zeggen welke dag en datum het is als ik de dag van het jaar invul. bvb vandaag, de 55ste dag van het jaar geeft me: "Today is Wednesday the 24th of February."
Compleet nutteloos natuurlijk, maar wel een leuke oefening denk ik zo.
Het is nog verrevan perfect, ge moet handmatig de volgorde van de 1ste week van het jaar ingeven en ik houd nog geen rekening met schrikkeljaren (al is dat, mits een verdubbeling van het aantal tekens, niet zo moeilijk).
Dit is het
Maar het lijkt met allemaal zo extreem lang met erg veel dubbele syntax.
Ik neem aan dat ge dat met een extra class/object makkelijk kunt versimpelen. Maar ik kan er niet echt opkomen hoe ik dat simpel kan doen.
Ik vermoed dat ik ten 1ste dit al makkelijk met een method kan simplifieren, juist?
Ik dacht dat dan bvb dit zou volstaan
Maar dat werkt langs geen kanten
For the record, ik ben echt nog maar net bezig. Een 4tal weken nu tegen een avondschool tempo, dus als ik hier echt compleet de bal missla, sorry
Ik ben onlangs begonnen met te leren programmeren en meer bepaald te leren programmeren in Java.
In mijn vrije tijd pruts ik nogal veel rond met Java en probeer ik van alle kleine nutteloze programmaatjes te schrijven.
Iets waar ik me vandaag met heb bezig gehouden is om een klein "scriptje" te schrijven waarmee ik kan zeggen welke dag en datum het is als ik de dag van het jaar invul. bvb vandaag, de 55ste dag van het jaar geeft me: "Today is Wednesday the 24th of February."
Compleet nutteloos natuurlijk, maar wel een leuke oefening denk ik zo.
Het is nog verrevan perfect, ge moet handmatig de volgorde van de 1ste week van het jaar ingeven en ik houd nog geen rekening met schrikkeljaren (al is dat, mits een verdubbeling van het aantal tekens, niet zo moeilijk).
Dit is het
PHP:
package random;
public class WeekdayBisBis {
public static void main(String[] args) {
int dayNum = 55;
if (dayNum > 0 && dayNum <= 365){
System.out.print("Today is");
switch (dayNum%7){
case 4:
System.out.print(" Monday");
break;
case 5:
System.out.print(" Tuesday");
break;
case 6:
System.out.print(" Wednesday");
break;
default:
System.out.print(" Thursday");
break;
case 1:
System.out.print(" Friday");
break;
case 2:
System.out.print(" Saturday");
break;
case 3:
System.out.print(" Sunday");
break;
}
int feb = 31;
int mar = 59;
int apr = 90;
int may = 120;
int jun = 151;
int jul = 181;
int aug = 212;
int sep = 243;
int oct = 273;
int nov = 304;
int dec = 334;
int date =0;
int x = 0;
if (dayNum <= feb){
date = dayNum;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of January");
} else if (dayNum <= mar){
date = dayNum - feb;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of February");
} else if (dayNum <= apr){
date = dayNum - mar;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of March");
} else if (dayNum <= may){
date = dayNum - apr;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of April");
} else if (dayNum <= jun){
date = dayNum - may;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of May");
} else if (dayNum <= jul){
date = dayNum - jun;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of June");
} else if (dayNum <= aug){
date = dayNum - jul;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of July");
} else if (dayNum <= sep){
date = dayNum - aug;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of August");
} else if (dayNum <= oct){
date = dayNum - sep;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of Septembre");
} else if (dayNum <= nov){
date = dayNum - oct;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of Octobre");
} else if (dayNum <= dec){
date = dayNum - nov;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of Novembre");
} else if (dayNum <= 365){
date = dayNum - dec;
x = date;
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
System.out.print("of Decembre");
} else {
System.out.print("Invalid date");
}
System.out.print(".");
}
}
}
Maar het lijkt met allemaal zo extreem lang met erg veel dubbele syntax.
Ik neem aan dat ge dat met een extra class/object makkelijk kunt versimpelen. Maar ik kan er niet echt opkomen hoe ik dat simpel kan doen.
Ik vermoed dat ik ten 1ste dit al makkelijk met een method kan simplifieren, juist?
PHP:
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
Ik dacht dat dan bvb dit zou volstaan
PHP:
public void printDate(){
System.out.print(" the ");
System.out.print(x);
if (x%10 == 1 && x != 11){
System.out.print("st ");
}
else if (x%10 == 2 && x != 12){
System.out.print("nd ");
}
else if (x%10 == 3 && x != 13 ){
System.out.print("rd ");
}
else {
System.out.print("th ");
}
}
Maar dat werkt langs geen kanten

For the record, ik ben echt nog maar net bezig. Een 4tal weken nu tegen een avondschool tempo, dus als ik hier echt compleet de bal missla, sorry


)