Factoring et heltall er et matematisk begrep som bryter et heltall (any hele tall ) ned til sine primtall multipler . Factoring kan oppnås i Java ved å bruke de vanlige klassene er gitt i Java Development Kit ( JDK ) . Her vil du lage en klasse som vil lese i alle heltall og skrive ut prime faktorisering . Instruksjoner
en
Opprett en ny Java-klassen med tittelen " FactoringIntegers " med en main metode .
2
Import for skanner og ArrayList klasser .
3
Opprett en statisk metode innen den viktigste metoden kalt " factor" som aksepterer en int argument .
public static void faktor ( int yourNumber ) { }
4
Lag en forekomst av " skanner" og din nye metoden " factor" i den viktigste metoden . Også lage en int instansvariabel å holde nummeret du skrev
Scanner innspill = new Scanner ( System.in ) ;
System.out.print ( "Skriv inn nummer for å være priset . : ");
int yourNumber = Integer.valueOf ( input.nextLine ( ));
faktor ( yourNumber ) ;
5
kode følgende variabler inn " faktor " kan brukes av factoring algoritmen
boolean flagg = true; .
int tempNumber ;
int n = 2;
ArrayList < ; heltall > faktorer = new ArrayList ();
ArrayList toBeFactored = new ArrayList ();
toBeFactored.add ( yourNumber ) ;
6
kode algoritmen direkte etter variablene i faktoren metoden. Algoritmen bygger på det faktum at en hvilken som helst heltall modulus et heltall som deler jevnt inn i den vil etterlate en rest på null. Det er, for vårt formål alle numre som deler inn et heltall jevnt er primfaktorene mindre divisor selv er også delelig med en annen viktig faktor.
Mens (flagg == true ) {
hvis ( toBeFactored.isEmpty ( ) ) {
flagg = false;
} else {
tempNumber = toBeFactored.remove ( 0 ) ;
if ( tempNumber > n ) {
if ( tempNumber % n == 0 ) {
toBeFactored.add (n ) ;
toBeFactored.add ( tempNumber /Side 7
Lag en " for " statement å skrive faktorene i de faktorene ArrayList
8
Sjekk din Java -fil Det skal se slik ut: . .
import java.util.ArrayList ;
import java.util.scanner ;
public class FactoringIntegers {
public static void main ( String args [ ] ) {
< p> Scanner innspill = new Scanner ( System.in ) ;
System.out.print ( "Tast nummer være tatt : ");
int yourNumber = Integer.valueOf ( input. bytte ut denne ( ));
faktor ( yourNumber ) ;
}
public static void faktor ( int yourNumber ) {
boolean flagg = true;
int tempNumber ;
int n = 2;
ArrayList faktorer = new ArrayList ();
ArrayList toBeFactored = new ArrayList ();
toBeFactored.add ( yourNumber ) ;
mens (flagg == true ) {
if ( toBeFactored.isEmpty ( ) ) {
< p > flagg = false;
} else {
tempNumber = toBeFactored.remove ( 0 ) ;
if ( tempNumber > n ) {
hvis ( tempNumber % n == 0 ) {
toBeFactored.add (n ) ;
toBeFactored.add ( tempNumber /+ "= ");
For ( int i = 0 ; i < factors.size (); i + + ) {
if ( i == factors.size ( ) - 1 ) {
System.out.print ( factors.get ( i) ) ;
} else {
System.out.print ( factors.get ( i) + " * ");
}
}
}
}