Raspberry BASIC

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - John Spikowski

Pages: 1 ... 12 13 [14] 15 16
196
Programming Challenges / Re: One Mil Dash
« on: November 25, 2019, 08:53:46 PM »
Java

Code: Java
  1. class onemil
  2.   {
  3.   public static void main(String args[])
  4.   {
  5.   int accum = 0;
  6.   int milvar = 1000000;
  7.   for (int i = 1; i <= 1000000; i++) {
  8.     ++accum;
  9.     --milvar;
  10.     if(accum == milvar){  
  11.       System.out.println("Middle");  
  12.     }  
  13.   }
  14.   System.out.println("Plus:  " + accum);
  15.   System.out.println("Minus: " + milvar);
  16.   }
  17.   }
  18.  


pi@RPi4B:~/java-dev/examples $ javac 1mil.java
pi@RPi4B:~/java-dev/examples $ ls -l onemil.class
-rw-r--r-- 1 pi pi 1001 Nov 25 22:48 onemil.class
pi@RPi4B:~/java-dev/examples $ /usr/bin/time java onemil
Middle
Plus:  1000000
Minus: 0
0.41user 0.03system 0:00.42elapsed 104%CPU (0avgtext+0avgdata       maxresident)k
0inputs+64outputs (0major+2234minor)pagefaults 0swaps
pi@RPi4B:~/java-dev/examples $


197
Programming Challenges / Re: One Mil Dash
« on: November 25, 2019, 08:12:03 PM »
Bash

It seems Bash doesn't like spaces with assignments using declare.

Code: Bash
  1. # bash - 1mil.sh
  2.  
  3. declare -i accum=0
  4. declare -i milvar=1000000
  5.  
  6. for i in {1..1000000}
  7. do
  8.   ((++accum))
  9.   ((--milvar))
  10.   if (( $accum == $milvar ));
  11.     then
  12.       echo "Middle"
  13.   fi
  14. done
  15.  
  16. echo "Plus:  " $accum
  17. echo "Minus: " $milvar
  18.  


pi@RPi4B:~/bash-dev/examples $ /usr/bin/time bash 1mil.sh
Middle
Plus:   1000000
Minus:  0
22.69user 0.48system 0:23.20elapsed 99%CPU (0avgtext+0avgdata 197804maxresident)k
8inputs+0outputs (0major+49929minor)pagefaults 0swaps
pi@RPi4B:~/bash-dev/examples $


198
Programming Challenges / Re: One Mil Dash
« on: November 25, 2019, 04:51:17 AM »
Python 3

Code: Python
  1. # Python 3 - 1mil.py
  2.  
  3. accum = 0
  4. milvar = 1000000
  5.  
  6. for x in range(1000000):
  7.   accum += 1
  8.   milvar -= 1
  9.   if accum == milvar:
  10.     print("Middle")
  11.  
  12. print("Plus:  {}".format(accum))
  13. print("Minus: {}".format(milvar))
  14.  


pi@RPi4B:~/python-dev/examples $ /usr/bin/time python3 1mil.py
Middle
Plus:  1000000
Minus: 0
0.73user 0.05system 0:00.78elapsed 98%CPU (0avgtext+0avgdata 7208maxresident)k
0inputs+0outputs (0major+728minor)pagefaults 0swaps
pi@RPi4B:~/python-dev/examples $


199
Programming Challenges / Re: One Mil Dash
« on: November 25, 2019, 03:44:24 AM »
Perl

Code: Perl
  1. # Perl - 1mil.pl
  2.  
  3. my $accum = 0;
  4. my $milvar = 1000000;
  5.  
  6. for (my $i=1; $i <= 1000000; $i++) {
  7.   $accum++;
  8.   $milvar--;
  9.   if($accum == $milvar){
  10.     printf("Middle\n");
  11.   }
  12. }
  13. printf("Plus:  %d\n", $accum);
  14. printf("Minus: %d\n", $milvar);
  15.  


pi@RPi4B:~/perl-dev/examples $ /usr/bin/time perl 1mil.pl
Middle
Plus:  1000000
Minus: 0
0.33user 0.01system 0:00.34elapsed 99%CPU (0avgtext+0avgdata 3976maxresident)k
24inputs+0outputs (1major+186minor)pagefaults 0swaps
pi@RPi4B:~/perl-dev/examples $


200
Programming Challenges / Re: One Mil Dash
« on: November 25, 2019, 12:37:07 AM »
C

Code: C
  1. // C - 1mil.c
  2.  
  3. #include <stdio.h>
  4.  
  5. int main (int argc, char** argv)
  6. {
  7. int accum = 0;
  8. int milvar = 1000000;
  9. int x;
  10.  
  11. for(x = 1; x <=  1000000; ++x)
  12.   {
  13.     ++ accum;
  14.     -- milvar;
  15.     if(accum == milvar) printf("Middle\n");
  16.   }
  17.   printf("Plus:  %d\n", accum);
  18.   printf("Minus: %d\n", milvar);
  19.   return 0;
  20. }
  21.  


pi@RPi4B:~/c-dev/examples $ gcc 1mil.c -o 1mil
pi@RPi4B:~/c-dev/examples $ ls -l 1mil
-rwxr-xr-x 1 pi pi 8016 Nov 25 21:24 1mil
pi@RPi4B:~/c-dev/examples $ /usr/bin/time ./1mil
Middle
Plus:  1000000
Minus: 0
0.02user 0.00system 0:00.02elapsed 100%CPU (0avgtext+0avgdata 1208maxresident)k
0inputs+0outputs (0major+73minor)pagefaults 0swaps
pi@RPi4B:~/c-dev/examples $


201
Programming Challenges / Re: One Mil Dash
« on: November 24, 2019, 11:40:30 PM »
FreeBasic

Code: FreeBasic
  1. ' FreeBasic - 1mil.bas
  2.  
  3. DIM accum AS Integer = 0
  4. DIM milvar AS Integer = 1000000
  5. DIM x AS Integer
  6.  
  7. FOR x = 1 TO 1000000
  8.   accum += 1
  9.   milvar -= 1
  10.   IF accum = milvar THEN PRINT "Middle"
  11. NEXT
  12. PRINT "Plus:  ",accum
  13. PRINT "Minus: ",milvar
  14.  


pi@RPi4B:~/freebasic-dev/examples $ fbc 1mil.bas
pi@RPi4B:~/freebasic-dev/examples $ ls -l 1mil
-rwxr-xr-x 1 pi pi 30092 Nov 25 21:13 1mil
pi@RPi4B:~/freebasic-dev/examples $ /usr/bin/time ./1mil
Middle
Plus:          1000000
Minus:         0
0.00user 0.01system 0:00.06elapsed 34%CPU (0avgtext+0avgdata 2072maxresident)k
0inputs+0outputs (0major+125minor)pagefaults 0swaps
pi@RPi4B:~/freebasic-dev/examples $


202
Programming Challenges / Re: One Mil Dash
« on: November 24, 2019, 11:15:02 PM »
BaCon

Code: Text
  1. ' BaCon - 1mil.bac
  2.  
  3. accum = 0
  4. milvar = 1000000
  5.  
  6. FOR x = 1 TO 1000000
  7.   accum = accum + 1
  8.   milvar = milvar -1
  9.   IF accum = milvar THEN PRINT "Middle"
  10. NEXT
  11. PRINT "Plus:  ",accum
  12. PRINT "Minus: ",milvar
  13.  


pi@RPi4B:~/bacon-dev/examples $ bacon 1mil.bac
Converting '1mil.bac'... done, 13 lines were processed in 0.035 seconds.
Compiling '1mil.bac'... cc  -c 1mil.bac.c
cc -o 1mil 1mil.bac.o -lbacon -L. -lm 
Done, program '1mil' ready.
pi@RPi4B:~/bacon-dev/examples $ ls -l 1mil
-rwxr-xr-x 1 pi pi 49968 Nov 25 21:03 1mil
pi@RPi4B:~/bacon-dev/examples $ /usr/bin/time ./1mil
Middle
Plus:  1000000
Minus: 0
0.03user 0.00system 0:00.03elapsed 96%CPU (0avgtext+0avgdata 1536maxresident)k
0inputs+0outputs (0major+84minor)pagefaults 0swaps
pi@RPi4B:~/bacon-dev/examples $


203
General Discussion / gcc optimization on the RPi
« on: November 24, 2019, 10:46:16 PM »
Quote from: ejolson@RPi
The PC results are interesting because the native optimization setting in gcc results in an executable that runs an astonishing 20 percent slower.

That is motivation enough for me to reconfigure ScriptBasic's build scripts to use these settings rather than the default O3.

204
Programming Challenges / One Mil Dash
« on: November 24, 2019, 09:22:52 PM »
ScriptBasic

Code: Script BASIC
  1. ' ScriptBasic - 1mil.sb
  2.  
  3. accum = 0
  4. milvar = 1000000
  5.  
  6. FOR x = 1 TO 1000000
  7.   accum += 1
  8.   milvar -= 1
  9.   IF accum = milvar THEN PRINT "Middle\n"
  10. NEXT
  11. PRINT "Plus:  ",accum,"\n"
  12. PRINT "Minus: ",milvar,"\n"
  13.  


pi@RPi4B:~/sbrt/examples $ /usr/bin/time scriba 1mil.sb
Middle
Plus:  1000000
Minus: 0
2.18user 0.00system 0:02.21elapsed 99%CPU (0avgtext+0avgdata 1972maxresident)k
520inputs+0outputs (1major+108minor)pagefaults 0swaps
pi@RPi4B:~/sbrt/examples $

205
Programming Challenges / Re: Just REM
« on: November 24, 2019, 07:49:02 PM »
Here is a results table of the Do Nothing challenge.


206
General Discussion / RPi 4 Update
« on: November 24, 2019, 06:12:52 PM »
I updated my RPi 4 OS and now the default file browse opens and closes immediately. I ended up removing it and installing Nautilus. I replaced the default text editor with gedit.

207
Programming Challenges / Re: Just REM
« on: November 24, 2019, 06:04:25 AM »
PHP

Code: PHP
  1. <?php
  2. //
  3. ?>
  4.  


pi@RPi4B:~/php-dev/examples $ /usr/bin/time php updown.php
0.07user 0.03system 0:00.11elapsed 94%CPU (0avgtext+0avgdata 12792maxresident)k
0inputs+0outputs (0major+853minor)pagefaults 0swaps
pi@RPi4B:~/php-dev/examples $


208
General Discussion / Raspberry Pi Forum
« on: November 23, 2019, 11:21:21 PM »
I have been banned at the RPi forum for standing up to the moderators that think they're gods and only their opinion matters. My take is the RPi forum is focused as a support channel rather than a learning / tutorial forum.

It would be great is the guys from the challenge circle were to join the forum and continue with discussions without the moderators jumping in at every opportunity.

Even if BASIC isn't your language of choice, you are welcome to join and share your knowledge with others. In the end it's all a stream of bits.

If you have any questions, need help registering then contact me support @ raspberrybasic.org.

209
Programming Challenges / Re: Just REM
« on: November 23, 2019, 02:27:51 AM »
Java

Code: Java
  1. class updown
  2.   {
  3.   public static void main(String args[])
  4.   {
  5.   }
  6.   }
  7.  


pi@RPi4B:~/java-dev/examples $ javac updown.java
pi@RPi4B:~/java-dev/examples $ /usr/bin/time java updown
0.18user 0.10system 0:00.26elapsed 107%CPU (0avgtext+0avgdata 19080maxresident)k
0inputs+88outputs (0major+1871minor)pagefaults 0swaps
pi@RPi4B:~/java-dev/examples $


210
Programming Challenges / Re: Just REM
« on: November 23, 2019, 01:08:33 AM »
C

Code: C
  1. int main (int argc, char** argv)
  2. {
  3. }
  4.  


pi@RPi4B:~/c-dev/examples $ gcc updown.c -o updown
pi@RPi4B:~/c-dev/examples $ ls -l
total 12
-rwxr-xr-x 1 pi pi 7912 Nov 22 17:05 updown
-rw-r--r-- 1 pi pi   37 Nov 22 17:05 updown.c
pi@RPi4B:~/c-dev/examples $ /usr/bin/time ./updown
0.00user 0.00system 0:00.00elapsed 75%CPU (0avgtext+0avgdata 824maxresident)k
0inputs+0outputs (0major+66minor)pagefaults 0swaps
pi@RPi4B:~/c-dev/examples $


Pages: 1 ... 12 13 [14] 15 16