due lm35 comandano un servomotore

le funzioni nel linguaggio c++ (che è quello usato in arduinese :slight_smile: ) come anche in C standard

prevedono:
assegnazioneDelTipoDiParametroDiRitornoDellaFunzione nomeDellaFunzione(TipoParametro nomeParametro) {
corpoDellaFunzione
...
...
}

praticamente per esempio nella funzione setup trovi:

void setup() {
...
...
}

dove void significa che non restituisce nessun valore al termine
setup è il nome della funzione
() le parentesi non contengono nulla perchè non richiede parametri
{ graffa aperta = inizio funzione
} graffa chiusa = fine funzione

ci sono ovviamente altri comandi che prevedono apertura e chiusura delle graffe
come ad esempio
if () {
} else {
}

for(){
}

swich (){
}

ma nel tuo caso non stai usando nessuno di questi e quindi

void setup() {

  myservo.attach(9);  // attaches servo al pin 9
  {
    Serial.begin (9600);
    lcd.begin(16, 2);

anche se praticamente viene ignorata dal compilatore in effetti è un errore
è meglio se le elimini anche perchè anche qui fanno confusione
ricordati comunque di levarle a coppie perchè se ne dimentichi una ti si incasina tutto :wink:

lcd.begin(parametri)

questa riga inizializza, attiva, fa funzionare (diciamo così) il tuo lcd, è come quando giri la chiave per accendere il motore, non è che lo fai ad ogni cambio marcia :smiley: quando è partito, è partito!
idem per Serial.begin() e per tutti gli altri begin() che potrai trovare

sul fatto che puoi trovare dei programmi scritti in un modo o in un altro, è normale e abbastanza personale, ogniuno scrive come vuole :slight_smile:

ovvio che se io trovo un programma dove c'è scritto

if (digitalRead(4)) {
   int x=analogRead(A0);
   if (x< 100) {
       digitalWrite(5,HIGH);
   }
}

ti sfido a capire cosa fa (non le singole istruzioni, ma la logica)
mentre se scrivo

if (PulsanteAvvioPremuto) {
   int luminosita = AnalogRead(pinFotodiodo);
   if (luminosita < 100) {
      digitalWrite(luceDelleScale,HIGH);
   }
}

è molto più comprensibile no?
ovviamente in testa al programma avrai messo o i define:

#define PulsanteAvvioPremuto 4
#define pinFotodiodo A0
#define luceDelleScale 5

oppure

const byte PulsanteAvvioPremuto=4;  
const byte pinFotodiodo=A0;
const byte luceDelleScale=5;

ma non entrambi anche se qui almeno il nome è lo stesso :wink: