2014-09-18 7 views
-4

Я знаю, что это базовые парни, но я новичок в этом. Я просто написал программу в java, но у нее несколько ошибок, и я не совсем уверен, как их исправить. Это то, что я получил до сих пор. Я не уверен, что я только что совершил небольшую ошибку или если это что-то важное, но я потерял.Совершенно новый для программирования! Ищете советы

import java.util.Scanner; 

public class hm3645 
{ 
    public static void main(String args[]) 
    { 
     Scanner sc = new Scanner(System.in); 
     System.out.print("Enter Eighter 1 or 2 : "); 
     int choice = sc.nextInt(); 

     if(choice == 1) 
     { 
      System.out.println("\nPlease enter two non-negative integers for base and height : "); 
      int base = sc.nextInt(); 

      int height = sc.nextInt(); 

      if(base > 0 && height > 0) 
      { 
       double area = calcTriangleArea(base,height); 
       System.out.println("\nArea of a triangle with base = "+base+", height = "+height+" is : "+area); 
      } 

      if(base < 0 || height < 0) 
      { 
       if(base < 0) 
       { 
        System.out.println(" Number entered for base "+base+" is negative. Program exits."); 
       } 
       if(height < 0) 
       { 
        System.out.println(" Number entered for height "+height+" is negative. Program exits."); 
       } 

      } 

     } 

     else if(choice == 2) 
     { 
      System.out.print("\nPlease enter non-negative integer for radius : "); 
      int radius = sc.nextInt(); 

      if(radius >= 0) 
      { 
       double area = calcCircleArea(radius); 
       System.out.println("\nArea of a circle with radius = "+radius+" is : "+area); 
      } 
      else 
      { 
       System.out.println(" Number entered for radius "+radius+" is negative. Program exits."); 
      } 

     } 

     else 
     { 
      System.out.println("\nPlease re run the program entering either 1 or 2. "); 
     } 

    } 

    public static double calcTriangleArea(int base, int height) 
    { 
     double area = (base * height)/2.0; 
     return area; 
    } 

    public static double calcCircleArea(int radius) 
    { 
     double area = 3.14 * radius * radius; 
     return area; 
    } 

} 
+4

Каковы ошибки? – BitNinja

+0

@BitNinja - странно, их не было. Так что это озадачивает ... ну, есть легко несколько логических ошибок, хотя – Coffee

+1

Эй, просто хотел поблагодарить вас за то, что вы пришли с хорошими намерениями и хорошими настроениями. :) Stack Overflow не совсем походит на обычный форум, где вы просто публикуете и просите совета, к сожалению. У вас должен быть конкретный вопрос (о котором никто не спрашивал раньше, технически). Но я не хотел, чтобы вы были обескуражены или что-то еще при получении вашего вопроса. У вас есть соответствующий дух программирования! Желаем удачи в ваших будущих начинаниях! – asteri

ответ

0

Хорошие новости - код компилируется.

Но вы не должны использовать 3.14 как PI. Используйте MATH.PI из библиотеки Math, вот хороший вопрос, на примере которого - how to use math.pi in java