Stap 5:
Laat begin met enkele eenvoudige dynamische informatie, de tijd en de dag.
Ten eerste commentaar uit of verwijder de regel...
Respond(s);van de if-instructie in uw lus functie. Wil het uit gewoon fragment wordt voorafgegaan met "/ /", als dit...
//Respond(s);We willen niet echt om een papegaai, maar eerder een boom die een beetje slim lijkt.
De regels die vet aan uw lus functie zijn toevoegen.
VOID draw() {}
Als (voce. SpeechInterface.getRecognizerQueueSize() > 0) {//if voce herkent iets gezegd zijnde
String s = voce. SpeechInterface.popRecognizedString(); de tekenreeks die voce toewijzen aan de variabele s gehoord
println ("je zei:" + s); afdrukken wat hoorde het venster Foutopsporing.
respond(s);
als (s.equals ("boom hoe laat is het")) {}
getTime ();
}
Als (s.equals ("boom welke dag is het")) {}
whatDay();
}
}
}
Wat dit doet is kijk na of de tekenreeks in s gelijk aan onze vergelijkingsreeksen is, en als het is, dan een oproep wordt gedaan om een functie genaamd getTime () of whatDay().
Scroll naar beneden naar de onderkant van uw schets en voeg de volgende getTime () functie, die krijgt de tijd, toewijzen aan een tekenreeksvariabele en vervolgens naar de functie van onze respond() sturen.
/ / Functie voor het verkrijgen van de tijdVOID getTime () {}
int m = minute(); Waarden van 0 - 59
int h = uur(); Waarden van 0 - 23
Booleaanse dn = false;
Tekenreeks tijd;
String daynight = "Ay em"; A.M. wordt gelezen als een enkel woord ten aanzien van onze animatie-functie zodat we hier bedriegen.
if(h>12) {}
DN = true;
h = h - 12;
Daynight = "plassen em"; P.M. wordt gelezen als een enkel woord ten aanzien van onze animatie-functie zodat we hier bedriegen.
}
if(h==0) {}
h = 12;
}
if(m<10) {//if minuten minder dan tien, verwerken het natuurlijke geluid, wij niet zeggen 5 nul een pm
if(m==0) {}
tijd = "Het is nu" + h + daynight; als minuten op nul alleen zeggen 5 pm
}
else {}
tijd = "Het is nu" + h + "! Oh "+ m + daynight; anders laten we zeggen oh in plaats van nul
println(time);
}
}
else {//if minuten groter zijn dan tien zeg hen normaal
tijd = "het is nu" + h + "!" + m + daynight;
println(time);
}
Message = tijd;
respond(Message);
}
En laat nu voeg code te vragen welke dag het is zo goed.
Eerst zullen we een regel toevoegen aan de declaratiesectie van onze schets. Vergeet niet, dat is de code voor onze setup-functie, aan de bovenkant van de schets.
//gregorian agenda voor de bepaling van de dagGregorianCalendar gcal = new GregorianCalendar();
Voeg de volgende functie naar de onderkant van uw schets.
//get de dag van de weekongeldig whatDay() {}
int week = gcal.getActualMaximum(Calendar.DAY_OF_WEEK);
println ("dag van de week:" + week);
int eerst = gcal.getFirstDayOfWeek();
switch(First) {}
Case 1:
println("Sunday");
respond("Sunday");
breken;
Case 2:
println("Monday");
respond("Monday");
breken;
Case 3:
println("Tuesday");
respond("Tuesday");
breken;
Case 4:
println("Wednesday");
respond("Wednesday");
breken;
Case 5:
println("Thrusday");
respond("Thursday");
breken;
Case 6:
println("Friday");
respond("Friday");
breken;
Case 7:
println("Saturday");
respond("Saturday");
breken;
}
}
Sla uw bestand en probeer het uit te voeren. U moet zitten kundig voor uw boom te vragen voor de tijd en welke dag het is als u volgt u de juiste structuur en spreek duidelijk.
U wilt een van de vergelijkingsreeksen die wij in onze code, zeggen als "boom, hoe laat is het?".
Het is volledig aanvaardbaar te spreken uw interpunctie, het programma is onverschillig voor het.