File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -189,7 +189,7 @@ private List<object> PopStack()
189189
190190 public void PopDiscardStack ( )
191191 {
192- if ( substacks . Count > 0 )
192+ if ( substacks . Count > 0 )
193193 {
194194 List < object > o = substacks [ substacks . Count - 1 ] ;
195195 substacks . RemoveAt ( substacks . Count - 1 ) ;
Original file line number Diff line number Diff line change 1- using EsotericIDE . Runic . Math ;
21using System ;
3- using System . Text ;
2+ using EsotericIDE . Runic . Math ;
43
54namespace EsotericIDE . Runic . Runes
65{
76 public class RuneConcatenate : IExecutableRune
87 {
98 public bool Execute ( Pointer pointer , IRunicContext context )
109 {
11- if ( context . GetModifier ( pointer . position . x , pointer . position . y ) == '͍' )
10+ if ( context . GetModifier ( pointer . position . x , pointer . position . y ) == '͍' )
1211 {
1312 string result = "" ;
1413 object o = pointer . Pop ( ) ;
15- while ( o is char && pointer . GetStackSize ( ) > 0 )
14+ while ( o is char && pointer . GetStackSize ( ) > 0 )
1615 {
17- result += ( char ) o ;
16+ result += ( char ) o ;
1817 o = pointer . Pop ( ) ;
1918 }
20- if ( o is char ) result += ( char ) o ;
19+ if ( o is char ) result += ( char ) o ;
2120 else pointer . Push ( o ) ;
2221 result = result . Reverse ( ) ;
2322 pointer . Push ( result ) ;
Original file line number Diff line number Diff line change @@ -64,74 +64,75 @@ public bool Execute(Pointer pointer, IRunicContext context)
6464 case '+' :
6565 char [ ] digits = x . ToString ( ) . ToCharArray ( ) ;
6666 int sum = 0 ;
67- foreach ( char d in digits )
67+ foreach ( char d in digits )
6868 {
69- sum += ( d - 48 ) ;
69+ sum += ( d - 48 ) ;
7070 }
7171 pointer . Push ( sum ) ;
7272 break ;
7373 case '*' :
7474 digits = x . ToString ( ) . ToCharArray ( ) ;
7575 sum = 1 ;
76- foreach ( char d in digits )
76+ foreach ( char d in digits )
7777 {
7878 sum *= ( d - 48 ) ;
7979 }
8080 pointer . Push ( sum ) ;
8181 break ;
8282 case '!' :
83- int number = ( int ) x ;
84- if ( number == 0 )
83+ int number = ( int ) x ;
84+ if ( number == 0 )
8585 {
8686 pointer . Push ( 1 ) ;
8787 break ;
8888 }
8989 double fact = number ;
90- for ( int i = number - 1 ; i >= 1 ; i -- )
90+ for ( int i = number - 1 ; i >= 1 ; i -- )
9191 {
9292 fact *= i ;
9393 }
9494 pointer . Push ( fact ) ;
9595 break ;
9696 case '‼' :
97- number = ( int ) x ;
98- if ( number == 0 )
97+ number = ( int ) x ;
98+ if ( number == 0 )
9999 {
100100 pointer . Push ( 1 ) ;
101101 break ;
102102 }
103103 fact = number ;
104- for ( int i = number - 2 ; i >= 1 ; i -= 2 )
104+ for ( int i = number - 2 ; i >= 1 ; i -= 2 )
105105 {
106106 fact *= i ;
107107 }
108108 pointer . Push ( fact ) ;
109109 break ;
110110 case 'P' :
111- pointer . Push ( IsPrime ( ( int ) x ) ? 1 : 0 ) ;
111+ pointer . Push ( IsPrime ( ( int ) x ) ? 1 : 0 ) ;
112112 break ;
113113 }
114114 }
115115 return true ;
116116 }
117117
118- private bool IsPrime ( int number ) {
119- if ( number < 2 )
118+ private bool IsPrime ( int number )
119+ {
120+ if ( number < 2 )
120121 return false ;
121- if ( number == 2 )
122+ if ( number == 2 )
122123 return true ;
123- if ( number % 2 == 0 )
124+ if ( number % 2 == 0 )
124125 return false ;
125- if ( number % 3 == 0 )
126+ if ( number % 3 == 0 )
126127 return false ;
127128 double sq = System . Math . Sqrt ( number ) ;
128- for ( int i = 5 ; i <= sq ; i += 6 )
129+ for ( int i = 5 ; i <= sq ; i += 6 )
129130 {
130- if ( number % i == 0 )
131+ if ( number % i == 0 )
132+ return false ;
133+ if ( number % ( i + 2 ) == 0 )
131134 return false ;
132- if ( number % ( i + 2 ) == 0 )
133- return false ;
134- }
135+ }
135136 return true ;
136137 }
137138 public IExecutableRune Register ( )
You can’t perform that action at this time.
0 commit comments