저는 Java를 처음 사용하기 때문에 GCD를 최대 5 개까지 계산할 수있는 작은 응용 프로그램을 만들어야합니다. 5 개의 숫자가 입력되기 전에 입력이 아무것도없는 경우 응용 프로그램에서 이미 주어진 숫자로 계산합니다.그렇지 않으면 조건이 무시됩니까?
불행히도 내 코드는 내 else if
성명을 무시하는 것으로 보입니다. int 배열
이것은 내가 고민하고있는 부분이며, 이미 시도했지만 동일한 결과를 포함하고 있지 않습니다. !input..
을 쓰고 있습니까? 코드를 올바르게 실행하면 0을 추가하려고하면 else가 실행되지 않습니다. 그러나 응용 프로그램이 if 문의 첫 번째 부분을 실행하게하려면 ""을 입력하면 오류가 발생한 배열에 ""을 추가하려고 시도하면 else로 이동합니다. 나는 그 무언가가 작거나 실종되었다고 확신하지만, 알아낼 수는 없다.
}else if(Integer.parseInt(input) != 0 || !input.equals(""));{
ggdGetallen[count] = Integer.parseInt(input);
count++;
txtGetal.selectAll();
}
전체 코드를 사용자의 다른 경우에서
private void txtGetalActionPerformed(java.awt.event.ActionEvent evt) {
String input = txtGetal.getText();
//Berekenen van het kleinste getal in het array
if(count > 4 || input.equals("")){
int kleinsteGetal = ggdGetallen[0];
for (int getal : ggdGetallen){
if (getal < kleinsteGetal && getal != 0){
kleinsteGetal = getal;
}
}
boolean isDividableBy;
boolean ggdFound = false;
while(!ggdFound){
for (int getal : ggdGetallen) {
if (getal != 0){
isDividableBy = (getal % kleinsteGetal == 0);
ggdFound = true;
if(!isDividableBy){
kleinsteGetal--;
ggdFound = false;
break;
}
}
}
}
lblResultaat.setText(String.format("De grootste gemene deler is %d", kleinsteGetal));
}else if(Integer.parseInt(input) != 0 || !input.equals(""));{
ggdGetallen[count] = Integer.parseInt(input);
count++;
txtGetal.selectAll();
}
}
이 역시 올바르지 않습니다. Integer.parseInt (input)! = 0 || ! input.equals (""); 사용자 입력이 비어 있으면 input.equals ("")가 true가되지만 그 전에는 int로 변환 할 수없는 오류가 발생한다고 생각합니다. –
좋은 지적! 감사합니다 – Vahx