2016-10-19 2 views
-2

저는 초심자이며 매개 변수로 정수를 사용하고 fencepost 루프를 사용하여 해당 숫자의 인자를 인쇄하는 메소드를 만들고 싶습니다. 단어는 "and"로 구분해야합니다.정수로 변환하는 응용 프로그램의 신속한 코드

예를 들어, 통화 printFactors (24)는 다음과 같은 출력 인쇄해야 1, 2, 3, 4, 6, 8, 12 및 사고 후 24

단계; 나는 신속한 언어의 외부에서 그것을하는 방법을 이해한다; 그러나 신속하게 도움이 필요합니다.

여기 제가 신속한 언어를 고려하기 전에 결론을 내 렸습니다.

public void printFactors(int n) { 
    for (int i=1; i <=n; i++) { 
     if (n % i == 0) { 
     if (i == 1) { 
      System.out.print(i); 
     } 
     else { 
      System.out.print(" and " + i); 
     } 
     } 
    } 
} 

도움말에 크게 감사드립니다. 또한 내가 어떻게 "솔루션"을 가지고 라벨에 출력 할 수 있을까요? var에 솔루션을 설정하겠습니까?

+3

Swift 코드는 어디에 있습니까? Java 코드를 Swift로 변환하는 것은 간단합니다. 이것은 무료 코드 번역 서비스가 아닙니다. 먼저 직접 시도하십시오. 질문을 당신이 시도한 것으로 업데이트하고 Swift 코드로 어떤 문제점을 가지고 있는지 설명하십시오. – rmaddy

+0

나는 단지 내가 초보자이며 정확히 그것에 익숙하지 않다고 말했다. 아니; 스택은 무료 코드 번역 서비스가 아닙니다. 그러나 그것은 학습 도구입니다. 모두가 다르게 배우고 해결책을보고 싶었습니다. 특히 무해한 무언가에. 순전히 주관적인 의견의 요지는 아닙니다. – leahyjwilliam

+2

위의 도움말 링크를 클릭하고 질문에 관한 섹션을 읽어야합니다. – rmaddy

답변

0
func printFactors(n: Int) { 
    var result: String = "" 
    for i in 1...n { 
    guard n % i == 0 else {continue} 
    result += i == 1 ? "1" : " and \(i)" 
    } 
    print(result) 
} 

printFactors(24) 
0

@rmaddy에 동의합니다. 무료 오버런은 무료 코드 변환이 아닙니다. 그러나, 나는 이미 유사한 코드 편리한 만 필요한 작은 변화가 일어난 :

func factor(number: Int) -> String { 
    var string = "" 
    for i in 1...number { 
     if number % i == 0 { 
      if i == 1 { 
       string += "\(i)" 
      } else { 
       string += "and \(i)" 
      } 
     } 
    } 
    return string 
} 

사용하려면

let output = factor(number: 24) 
print(output) // 1 and 2 and 3 and 4 and 6 and 8 and 12 and 24 

또는 레이블 :

let outputText = factor(number: 24) 
label.text = outputText 

는 희망이 도움이!