Not eXactly C

linguaggio di programmazione

Not eXactly C (NXC) è un linguaggio di programmazione simile al linguaggio C, utilizzato per la programmazione di robot Lego Mindstorms NXT.

Not eXactly C
linguaggio di programmazione
Data di origine2006
Influenzato daC
Implementazione di riferimento
Sito webbricxcc.sourceforge.net/nbc/

Sviluppato da John Hansen, questo programma possiede numerose migliorie rispetto al software in dotazione con il robot LEGO MINDSTORMS e permette, digitando semplici codici, di eseguire operazioni o funzioni molto complesse.

Questo programma viene soprattutto utilizzato nelle competizioni della RoboCup Junior proprio per la miriade di azioni che il robot può compiere.

Il compilatore NXC è disponibile sotto licenza Mozilla Public License.[1]

Un esempio di codice è il seguente:

/*Questo è un commento che si
svolge su più righe*/
//questo è un commento che si svolge su una sola riga
#define tempo_Fwd 2000  //questa è una costante
int ripetere=4;                //queste sono variabili
string quale_parte="destra";
task main() //crea un nuovo task. Ogni programma deve avere almeno il task main
{
     OnFwd(OUT_BC,75); //chiede ai motori collegati alle porte B e C di muoversi in avanti con potenza 75
     Wait(5000); //attende 5000 millisecondi
     Off(OUT_BC); //chiede ai motori collegati alle porte B e C di spegnersi
     if (quale_parte=="destra")//se la stringa quale_parte è uguale a "destra"
     {
      ripetere=2;              // imposta la variabile ripetere a 2
     }
     else                      //altrimenti
     {
      ripetere=4;              //imposta la variabile ripetere a 4
     }
     repeat(ripetere)          //ripete per tante volte quanto indica ripetere le seguenti azioni
     {
      OnFwd(OUT_BC,75);        //chiede ai motori collegati alle porte B e C di muoversi in avanti con potenza 75
      Wait(tempo_Fwd);         //attende tempo_Fwd millisecondi
      Off(OUT_BC);             //spegne i motori B e C
     }
}

Un IDE per programmare in NXC è, per esempio, Bricx Command Center[2].

Note modifica

Voci correlate modifica

Collegamenti esterni modifica

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica