File tree Expand file tree Collapse file tree 1 file changed +35
-0
lines changed
Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Original file line number Diff line number Diff line change 1+ // Issue 4970
2+ import 'dart:math' ;
3+ void main (List <String > args){
4+ const String error_message= "Usage: please input a non-negative integer" ;
5+ if (args.isEmpty){
6+ print (error_message);
7+ return ;
8+ }
9+ try {
10+ int num_needed = int .parse (args[0 ]);
11+ if (num_needed.isNegative){
12+ print (error_message);
13+ return ;
14+ }
15+
16+ // If the number is even number other than 2 OR if number is either 0 or 1, Print Composite
17+ if ( (num_needed == 0 )|| (num_needed == 1 ) || (num_needed % 2 == 0 && num_needed != 2 ) ){
18+ print ("Composite" );
19+ return ;
20+ }
21+ bool is_prime = true ;
22+ int max_divisor = sqrt (num_needed).toInt ();
23+ for (int i_index = 3 ; i_index <= max_divisor; i_index += 2 ){
24+ if (num_needed % i_index == 0 ){
25+ is_prime = false ;
26+ break ;
27+ }
28+ }
29+
30+ print (is_prime ? "Prime" : "Composite" );
31+ }
32+ catch (e){
33+ print (error_message);
34+ }
35+ }
You can’t perform that action at this time.
0 commit comments