1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | struct Stadt { int Platz; String Name; String KFZ_Kennzeichen; float Einwohner; String Vorwahl; int Hoehe; String Land; }; const int MAX = 4; /* \u00e4d = ä \u00df = ß \u00fc = ü \u00f6 = ö */ // Array definieren Stadt Namen[MAX] = { {1, “Berlin”, “B”, 3.64, “030”, 30, “Berlin”}, {2, “Hamburg”, “HH”, 1.84, “040”, 6, “Hamburg”}, {3, “M\u00fcnchen”, “M”, 1.47, “089”, 519, “Bayern”}, {4, “K\u00f6ln”, “K”, 1.04, “0221”, 53, “NRW”} }; void setup() { // Zufallsgenerator starten randomSeed(analogRead(A0)); Serial.begin(115200); // auf serielle Verbindung warten while (!Serial) {;} // Info Serial.println(“Liste der Gro\u00dfst\u00e4dte mit mehr als 1 Mio Einwohner”); Serial.println(“———————————————————————————-”); Serial.println(“1 = Berlin”); Serial.println(“2 = Hamburg”); Serial.println(“3 = M\u00fcnchen”); Serial.println(“4 = K\u00f6ln”); Serial.println(“5 = Zufall”); Serial.println(“———————————————————————————-”); Serial.println(“Platz\tStadt\t\tKFZ\tEinw. in Mio.\tH\u00f6he\tVorwahl\t\tBundesland”); } void loop() { // auf serielle Eingabe warten while (Serial.available() > 0) { // Eingabe im Seriellen Monitor lesen String Eingabe = Serial.readStringUntil(char(13)); // String Eingabe nach int umwandeln // die Funktion ZeigeDaten kann dann direkt aufgerufen werden int Auswahl = Eingabe.toInt(); // wenn Auswahl > 0 und < 5 // weil das Array mit 0 beginnt, 1 abziehen if (Auswahl > 0 && Auswahl < 5) ZeigeDaten(Auswahl - 1); // zufällige Auswahl if (Auswahl == 5) { int Minimum = 0; int Maximum = 4; int Zahl = random(Minimum, Maximum); ZeigeDaten(Zahl); } } } void ZeigeDaten(int i) { // bei der Einwohnerzahl . durch , ersetzen String Einwohner = String(Namen[i].Einwohner); Einwohner.replace(“.”, “,”); // Daten anzeigen, mit Tabulator (\t) formatieren Serial.print(String(Namen[i].Platz) + “\t”); Serial.print(Namen[i].Name + “\t\t”); Serial.print(Namen[i].KFZ_Kennzeichen + “\t\t”); Serial.print(Einwohner + “\t”); Serial.print(String(Namen[i].Hoehe) + “\t”); Serial.print(Namen[i].Vorwahl + “\t\t”); Serial.println(Namen[i].Land); } |
Letzte Aktualisierung: