Category Archives: RURPLE NG

Rurple NG: esempi 2

Osserva le mosse del robot

  1. si sposta in avanti
  2. incontra un sasso
  3. lo raccoglie
  4. si sposta in avanti
  5. lo rilascia
  6. si sposta in avanti

Rurple NG: sintassi

5x5

Nel pannello di sinistra si scrive il codice (programma) per impartire un certo comportamento.

La sintassi del linguaggio sfrutta i punti di forza di RUR-PLE ma con delle modifiche per semplificare l’utilizzo

  1. I programmi più semplici sono costituiti soltanto da 2 istruzioni
    1. move(), avanza di un passo
    2. turn_left(), si gira verso sinistra.
  2. In caso di errore la linea di codice responsabile sarà illuminata.
    • L’errore e il numero di riga vengono scritti anche nel pannello sotto lo scenario.
  3. A differenza di RUR-PLE
    • Il robot si ferma quando il programma finisce, non è necessario il comando turn_off()
    • Non sono supportati robot multipli.
  4. Una prima riga di codice viene eseguita automaticamente
    from __future__ import division, print_function, unicode_literals
    Quindi…

    1. il comando print() si scrive con le parentesi come tutti gli altri comandi
    2. 3/2 -> 1.5
    3. 3//2 -> 1

Sono disponibili i comandi seguenti

  1. move()
  2. turn_left()
  3. front_is_clear()
    • left_is_clear()
    • right_is_clear()
  4. facing_north()
  5. pick_stone()
    • put_stone()
    • on_stone()
    • got_stone()
  6. roll_dice()
  7. input_string()
    • input_int()
  8. print()

In realtà si può utilizzare tutta la potenza del linguaggio di programmazione Python 2009.

Rurple NG: IDE

5x5Rurple NG è un IDE rivolto a chi vuole imparare le basi della programmazione.

Sfrutta i punti di forza di RUR-PLE ma con delle modifiche per semplificare l’utilizzo.

Osserva

  1. Nel pannello a destra è presente un labirinto (più o meno complicato) con all’interno un robot (!).
  2. Il robot si muove secondo i comandi impartiti dalle 2 frecce della tastiera
    1. Su, avanza di un passo
    2. Sinistra, si gira verso sinistra.
  3. Se tenta di superare la parete provocherà un errore.
  4. Lo scenario si modifica con il clic del mouse
    • sulla griglia, aggiunge / rimuove una parete
    • al centro della cella, imposta il numero di sassi.
  5. A differenza di RUR-PLE gli oggetti si chiamano stone piuttosto che beeper.

La barra degli strumenti contiene

  • btn_reset_world Reset world – Ctrl-R
  • btn_run Run program – F8
  • btn_pause Pause program
  • btn_stop Stop program – Ctrl-F2
  • btn_step Step program – F5
  • Speed, cursore orizzontale che imposta la velocità, anche in esecuzione

La barra dei menu contiene

  1. File
    • New
    • Open…
    • Open sample…
    • Save
    • Save as…
    • Exit
  2. Run
    • Run
    • Pause
    • Stop
    • Step
  3. World
    • Reset
    • New…
    • Open…
    • Open sample…
    • Save
    • Save as…
    • Set stones…
  4. Help
    • About…

Rurple NG: esempi 1

svolta Con turn_left() svolta a sinistra rispetto alla direzione attuale
Ripete 4 volte un passo in avanti e gira a sinistra
passo_1

passo_2

Il robot si trova nella 2° cella in basso e deve spostarsi nella 1° cella, mantenendo lo stesso orientamento

Il robot gira intorno a un ostacolo

quadrato_a Il robot percorre un quadrato ma in senso antiorario, quindi deve svoltare in modo strano…

quadrato2 Con due movimenti per volta disegna un quadrato di lato doppio.

Lo scenario prevede un corridoio contorto.

Il corridoio da percorrere ha lunghezza decrescente.

Conviene usare una funzione con parametro.