2014-04-29 3 views
-1

이 내 지금까지 코딩입니다 - 강사 삼각형을 만들고 them.Here이 명확성의 실제 명령어로 지정하는 프로그램을 만들어달라고 :while 루프에는 무엇을 사용해야합니까?

* 사이의 정수 값을 사용하여 임의의 삼각형 측면의 세트를 생성하는 프로그램을 작성 3과 13. 사용자는 1에서 10 사이의 정수 값을 입력하여 생성하려는 삼각형 수를 지정합니다 (이 범위에서 정수를 입력한다고 가정 할 수 있습니다). 사용자가 요청한 각 삼각형

, 프로그램이 있어야합니다

  1. 은 3 개 개의 숫자 3과 13

  2. 디스플레이 사이 3 임의의 정수의 집합을 생성

  3. 결정 숫자가 유효한 삼각형의 변을 나타내는 경우. 예를 들어, 5, 5 및 13은 삼각형을 만들지 않습니다. --- 숫자가 유효한 삼각형을 나타내지 않으면 적절한 오류 메시지를 표시하십시오. --- 숫자가 유효한 경우 프로그램에서 a) 삼각형의 측면 분류 - 등변, 이등변 또는 스캘 레인 및 을 결정하고 표시해야합니다. b) 삼각형의 각도 분류 - 오른쪽, 또는 둔한 *

    // while 루프에서 무엇을 사용해야하는지 알아야합니다. 아직 코딩을 모두 작성하지는 않았지만 비어있는 while 루프 (userInput x 사과와 오렌지를 계산하는 데 사용하려고합니다. 예 : 과일을 int로 사용했습니다)

    // 모든 코딩 작성 여기 :

    // Declaring maximum and minimum values for user input: 
    int maxValue = 13; 
    int minValue = 3; 
    
    userInteger = (int) (maxValue * Math.random()) + minValue; 
    userInteger2 = (int) (maxValue * Math.random()) + minValue; 
    userInteger3 = (int) (maxValue * Math.random()) + minValue; 
    
    String banana = (userInput.getText()); 
    { 
        while() 
         outcomeLabel.setText("Your numbers are: " + userInteger + ", " + userInteger2 + " and " + userInteger3 + "." + 
           "\n" + "The number of triangles requested is" + banana + "so the result is"); 
    } 
    
    int apple = (userInteger + userInteger2); 
    int orange = (userInteger3); 
    { 
        if (apple == orange) 
         outcomeLabel.setText("Your numbers are: " + userInteger + ", " + userInteger2 + " and " + userInteger3 + "." + 
           "\n" + "The number of triangles requested is" + banana + "\n" + "The numbers make a triangle."); 
        else 
         outcomeLabel.setText("Your numbers are: " + userInteger + ", " + userInteger2 + " and " + userInteger3 + "." + 
           "\n" + "The number of triangles requested is" + banana + "\n" + "The numbers do not make a triangle - try again."); 
    } 
    
    { 
        if(userInteger == userInteger2 && userInteger == userInteger3) 
         outcomeLabel.setText("Your numbers are: " + userInteger + ", " + userInteger2 + " and " + userInteger3 + "." + 
           "\n" + "The number of triangles requested is" + banana + "\n" + "The numbers make a triangle." + "\n" + "This triangle is an equilateral triangle."); 
    } 
    { 
        if (userInteger == userInteger2) { 
    
        } 
    
    } 
    

    } 코드의 모양에서

+3

어리석은 변수 이름 대신 의미있는 변수 이름을 사용해야합니다. 재미있을 수도 있지만 누군가가 코드를 읽으려고 할 때 정수가 과일에 의해 명명되는 이유를 모르면 시간을 낭비하게됩니다.또한, 몇 달 또는 몇 주 후에 코드를 읽으 러 돌아 가면 어쨌든 의미있는 이름을 사용하기를 바랍니다. :) – Matthew

+0

난수 생성이 올바르지 않습니다. 생성하는 정수는 3과 15 사이의 값으로 포함됩니다 ( – awksp

+0

).이 값은 부적절합니다. 더 쉽게 추적 할 수있게 도와줍니다. 입력하기 전에 변경하려고합니다. 과제. 하지만 조언을 주셔서 감사합니다 ... – user3561829

답변

0

, 당신의 while 루프가 while 루프를 무시 ... 올바른 위치가 잘못 될 수도, 코드는 한 세트를 생성 세 개의 숫자와 프린트가 그들이 trian을 만들 것인지 여부. 그래? 그렇다면 while 루프를이 단일 동작을 여러 번 수행 할 위치를 지정 하시겠습니까? 제공된 코드의 중간에 너무 많은 의미가 없습니다 ...

몇 가지 다른 것들 : 생성 된면이 삼각형을 만들 수 있는지 여부를 판단하는 코드는 믿을 수 없습니다. userInteger = userInteger2 = 5userInteger3 = 4 일 경우 어떻게됩니까? 그리고 사용자가 제공 한 숫자로 삼각형 수를 생성하려면 입력 된 String을 정수로 변환 할 수있는 방법이 필요합니다. http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String)

마지막으로, 당신은 아마 자바 튜토리얼을 체크 아웃 할 : http://docs.oracle.com/javase/tutorial/java/index.html

당신이 먼저 실행하면 예상대로 코드가 작동 것이라고 생각하지 않는 경우, Integer.parseInt() 방법을 체크 아웃. 클래스의 일반 중괄호 안에있는 코드 블록을 초기화 블록이라고하며 클래스가 인스턴스화 될 때마다 객체 생성시 실행됩니다. 당신이 원했던 것은 모든 것을 메소드에 넣는 것입니다. 그러면 원하는만큼 명령에 따라 코드를 실행할 수 있습니다.

+0

답변 해 주셔서 감사합니다. 예, 세 개의 숫자를 생성하고 삼각형을 만들지 여부를 인쇄합니다. 나는 그것이 둔한, scalene 또는 급성 아직 프로그램 체크를 만들지 않았다 그러나 나는 그것을 역시 할 것이다. 링크를 가져 주셔서 감사합니다, 나는 확실히 그 것들을 사용합니다. 난 당신이 그 초기화 블록에 대해 맞아, 그 변경해야 할 것 같아요 – user3561829

+0

이 시점에서 당신은 아마 메서드에 while 루프를 쓰는 대신에 모든 것을 고집하고 그 대신에 메서드를 반복하는 것이 낫습니다. – awksp

+0

그리고 삼각형 식별을 위해 각면이 가장 길어 지도록 모든면 조합을 테스트해야하거나,면을 정렬하고 더 짧은면을 더 긴면과 비교할 필요가 있다고 생각했습니다. – awksp

관련 문제