🔒 Closed Need Help With Java Loops

Status
Not open for further replies.

Shinzenryu

Eternal Poster
So, yesterday natapos ko yung Zodiac sign project na ginagawa ko using If... else statements. Ngayon i decide to make another Zodiac Sign project but this time it's Chinese zodiacs. So i have already figured out kung paano yun gawin using string arrays and modulos like this:

import java.util.Scanner;

public class ChineseZodiacs {

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

String[] yearSign = {"monkey", "rooster", "dog", "pig", "rat", "ox", "tiger", "rabbit", "dragon", "snake", "horse", "sheep"};

System.out.print("Enter a year: ");

int year = input.nextInt();

System.out.println(zodiacs[year % 12]);
}

}

Pero gusto kong gawin itong Chinese Zodiacs without using modulus and gamitin ang Loops. And i tried googling for examples and i found one pero di ko maintindihan ito yung code:


public static void main(String[] args) {

int year;

Scanner sc=new Scanner(System.in);

System.out.println("Enter a year");
year=sc.nextInt();

String[] yearSign = {"monkey", "rooster", "dog", "pig", "rat", "ox", "tiger", "rabbit", "dragon", "snake", "horse", "sheep"};

int j = 0;
for ( int i = 1000; i <=year; i++) {
if (j == yearSign.length) {
j=0;
}
j++;
}
System.out.println("Your Chinese Zodiac is "+yearSign[j-1]);

Bakit po kailangan mag intialize ng another iteration na j? and bakit kailanga sya i initialize twice? what does the variable j do? Pwede pa ba tong ma simplify but still using String Arrays and loops? Thank you po.
 
placeholder 'yung j, 'yung if conditional mismo na 'yung ang expanded version ng modulus, ang pinagkaiba lang ng modulus example mo sa code na nahanap mo, always 0 na agad pag mas mababa sa 1000, array out of bounds exception dahil sa j-1
 
placeholder 'yung j, 'yung if conditional mismo na 'yung ang expanded version ng modulus, ang pinagkaiba lang ng modulus example mo sa code na nahanap mo, always 0 na agad pag mas mababa sa 1000, array out of bounds exception dahil sa j-1
kailangan po ba twice yung j na i-initialize sa code na ito?
 
i say ang pinaka init. lang sa nakikita ko eh int j = 0 hindi dahil kasama siya ng variable identifier (int) kundi ito kasi yung pinaka unang line na dadaanan sa runtime para lagyan ng value si j, eto pa isang halimbawa ng initialization :
Code:
int j;
j = 0;

just remember pag initialization, pinakaunang beses na malalagyan ng value ang variable :), doon kasi sa if statement na j=0, ibinalik lang natin yung original ni j na 0
 
i say ang pinaka init. lang sa nakikita ko eh int j = 0 hindi dahil kasama siya ng variable identifier (int) kundi ito kasi yung pinaka unang line na dadaanan sa runtime para lagyan ng value si j, eto pa isang halimbawa ng initialization :
Code:
int j;
j = 0;

just remember pag initialization, pinakaunang beses na malalagyan ng value ang variable :), doon kasi sa if statement na j=0, ibinalik lang natin yung original ni j na 0
last dumb question po 😁. bakit po kailangan na mag init ng j, bakit hindi nalang gamitin yung na declare na year?
 
good point, kasi ang itinatanong "year", lagpas na sa array mo na may 12 items, eh diba ang need lang natin hanggang 12, kaya may for loop or modulus , as a method, para makuha yung number na tatama sa 0-11, kaya kailangan natin ng temporary placeholder, sa lagay ng code, yun 'yung "j"
 
good point, kasi ang itinatanong "year", lagpas na sa array mo na may 12 items, eh diba ang need lang natin hanggang 12, kaya may for loop or modulus , as a method, para makuha yung number na tatama sa 0-11, kaya kailangan natin ng temporary placeholder, sa lagay ng code, yun 'yung "j"
thank you so much po sa pag explain!
 
anu po ibig sabihin ng walang boolean?
walang if statement Ganun po ba yun?
nag try akong gawin to gamit ang loop kaso
Mas humaba yung code at parang hindi kaya na walang if statement.
ps. solo learn lang po ako pasensya kung may mali.

nshot_20200406_115209_com.duy.compiler.javanide.md.webp nshot_20200406_115218_com.duy.compiler.javanide.md.webp
 
anu po ibig sabihin ng walang boolean?
walang if statement Ganun po ba yun?
nag try akong gawin to gamit ang loop kaso
Mas humaba yung code at parang hindi kaya na walang if statement.
ps. solo learn lang po ako pasensya kung may mali.

nshot_20200406_115209_com.duy.compiler.javanide.md.webp nshot_20200406_115218_com.duy.compiler.javanide.md.webp
sa line 20 ba tinutukoy mo?
 
anu po ibig sabihin ng walang boolean?
walang if statement Ganun po ba yun?
nag try akong gawin to gamit ang loop kaso
Mas humaba yung code at parang hindi kaya na walang if statement.
ps. solo learn lang po ako pasensya kung may mali.

nshot_20200406_115209_com.duy.compiler.javanide.md.webp nshot_20200406_115218_com.duy.compiler.javanide.md.webp
thanks dito!
 
Status
Not open for further replies.

About this Thread

  • 14
    Replies
  • 730
    Views
  • 3
    Participants
Last reply from:
fireclouu

Online now

Members online
1,035
Guests online
725
Total visitors
1,760

Forum statistics

Threads
2,276,975
Posts
28,973,480
Members
1,229,674
Latest member
Mjivo
Back
Top