2016-12-06 2 views
-5
import java.util.Scanner; 
public class exam2015q2 
{ 
    public static void main (String args[]) 
    { 
     Scanner scan = new Scanner(System.in); 
     System.out.println("Eneter a number"); 
     int num = scan.nextInt(); 
     int num1 = num-1; 
     int count = 0; 

     if(num % 2 == 0) 
     { 

      count++; 

      System.out.println(+num+ " Is an even number"); 
     } 
     else 
     { 
      System.out.println(num+" Is an odd number"); 
     } 

     boolean isPrime = true; 

     do { 

      if(num % num1 == 0) 
      { 
       isPrime = false; 
       break; 
      } 
      num1--; 
     } 
     while(num1 >= 2); 
     if(isPrime == true) 
     { 
      System.out.println(num +" is a prime number as it is only divisible by 1 and " +num); 
     } 
     else 
     { 
      System.out.println(num +" is NOT a prime number.It is divisible by " +count); 

     } 
    } 
} 

in diesem ausgeben Ich muss ausgeben, wenn es keine Primzahl ist, dann müssen wir ausgeben, welche Zahl es teilbar ist, aber ich Das kann ich nicht ausdrucken. Ich brauche Hilfe zu diesem Thema kann mir jemand Vorschläge, wie die Zahl für teilbar auszukommenWenn eine Zahl keine Primzahl ist, dann müssen wir die WHT-Nummer durch

+3

[Warum kann "Kann mir jemand helfen?" Keine Frage?] (Http://meta.stackoverflow.com/q/284236/18157) und [Offener Brief an Schüler mit Hausaufgabenproblemen] (http: (http://meta.softoftwareengineering.stackexchange.com/q/6166/989) –

+0

cool bro das ist keine Frage Howrk btw es ist eine Prüfungsfrage – brazil

+3

Verwenden Sie nie Code mit (isPrime == wahr). Der Grund, warum Sie Booleans verwenden, besteht darin, Vergleiche zu vermeiden, da der Vergleich bereits durchgeführt wurde. – Grayson

Antwort

1
public static void main (String args[]) 
    { 
     Scanner scan = new Scanner(System.in); 
     System.out.println("Eneter a number"); 
     int divisibleBy; 
     int num = scan.nextInt(); 
     int num1 = num-1; 
     int count=0; 

     if(num%2==0) 
     { 
      count++; 
      System.out.println(+num+ " Is an even number"); 
     } 
     else 
     { 
      System.out.println(num+" Is an odd number"); 
     } 
     boolean isPrime = true; 
     do{ 
      if(num%num1==0) 
      { 
       divisibleBy = num1; 
       isPrime = false; 
       break; 
      } 
      num1--; 
     } 
     while(num1>=2); 
     if(isPrime == true) 
     { 
       System.out.println(num +" is a prime number as it is only divisible by 1 and " +num); 
     } 
     else 
     { 
      System.out.println(num +" is NOT a prime number.It is divisible by " +divisibleBy); 



} 
} 
0

Sie Ihre Aussage ändern die Variable zeigt die Zahl von count-num1 teilbar ist, da Sie in Ihrer do Schleife bestimmen Das num kann bereits durch num1 geteilt werden.

else{ 
    System.out.println(num +" is NOT a prime number.It is divisible by " +num1); 
} 

Sie können in Ihrem Programm von count ganz loszuwerden, wie es dargestellt ist.

Verwandte Themen