Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Whiz-zarD

User
  • Registriert

  • Letzter Besuch

Alle Beiträge von Whiz-zarD

  1. Damit behebt man das Problem aber nur bedingt. scanf() scant solange den stdin, bis ein newline gefunden wird. Bei "%c" würde man also jedes Zeichen einzeln zurückgeben. Deswegen erscheit auch der Text zwei Mal, weil im Gegensatz zu Unix Windows ein anderes Vorgehen für new line hat. Wenn man nämlich '1' + Enter eingibt, werden drei Zeichen übertragen: '1', carriage return und new line. Also gibt scanf() zurück '1' zurück und dann carriage return. In deinem Beispiel würde er zwar carriage return ignorieren aber das Problem bestünde weiterhin, wenn der Benutzer z.B. "12" eingibt. Dann wird die Schleife wieder zwei Mal ausgeführt und dementsprechend wird der Text auch zwei Mal ausgewiesen. Wenn man das Problem in den Griff bekommen möchte, muss man etwas weiter ausholen, denn mit einem scanf() alleine kommt man hier nicht weit. scanf() ist auch nicht unbedingt dafür gedacht, Benutzereingaben entgegenzunehmen, sondern ist fürs Parsing von stdin gedacht. Das Parsing setzt aber schon voraus, dass die Daten in einer Strukturierten Form vorliegen. Das ist aber bei Benutzereingaben nicht der Fall. Die sind sehr willkürlich. Man könnte jetzt auf die Idee kommen, einfach per scanf() einen string einzulesen anstatt ein einzelnes Zeichen: char s[1]; scanf("%s", s); printf("%s", s); Dies ist aber nicht vor Speicherüberläufen geschützt. Wenn man jetzt "123" eingibt, würde "123" auch rauskommen, obwohl der String nur ein Zeichen belegt und die anderen beiden außerhalb des Bereiches liegen und somit vollkommen ungeschützt. Der ideale Weg wäre mit fgets() die stdin in einem Puffer zu lesen und diesen dann zu parsen. fgets() ist nämlich sicher vor Speicherüberläufen. Er stoppt, wenn der Puffer gefüllt ist, new line oder end of file erreicht ist. Jenachdem, was zu erst eintritt. Hier mal eine Funktion, die sicherstellt, dass der Benutzer auch wirklich nur ein Zeichen eingegeben hat: int readChar(char *c) { char puffer[10]; char temp[10]; fgets(puffer, sizeof(puffer), stdin); sscanf(puffer, "%s", temp); int length = strlen(temp); if(length == 1) { *c = temp[0]; return 0; } if(length == 0) return -1; if(length > 1) return 1; } Der Rückgabewert ist ein für C typisches Pattern um Fehlermeldungen darzustellen, da es ja keine Exceptions gibt. Bei 0 ist alles in Ordnung. Bei -1 hat der Benutzer nur die Enter-Taste gedrückt und bei 1 wurden zu viele Zeichen eingeben. Und nein, das hat alles nichts mit irgendwelchen Eigenheiten von C zu tun, sondern C ist eine ist zwar eine Hochsprache aber in einem sehr niedrigen Level und das was man mit anderen Sprachen mit einer Zeile machen kann, muss man hier schon selber schreiben.
  2. Ist vielleicht schon zu viel aber man könnte daraus auch Konstante, mittels der #define Direktive machen.
  3. Wozu willst du das Zeichen '1' noch in eine 1 umwandeln? Ich sehe hier keinen Bedarf für.
  4. Ein char ist intern auch nur ein Zahlenwert, der exakt ein Byte groß ist. Komischer Zufall, wa? Historisch betrachtet ist ein Byte die Menge an Bits, die benötigt werden, um ein Zeichen darzustellen. Mit Hilfe der ASCII-Tabelle weiß die Grafikkarte nun, wie das Zeichen mit dem Wert 98 aussieht. Es ist nämlich ein b. Der Weg geht auch andersrum. Man kann ein Zeichen in Hochkommata setzen und der Compiler wandelt es zurück in eine Zahl. Du kannst dann also z.B. while (auswahl != 'b') { schreiben und der Compiler macht aus 'b' eine 98. Dasselbe gilt auch für deine if-Abfragen. Du kannst ja mal folgenden Code testen: printf("%d", 'b'); Du siehst, als Ergebnis kommt 98 raus.
  5. %i ist aber auch nicht richtig. Ist b eine Zahl? Was hindert dich, die Eingabe zu machen, diese Eingabe auszuwerten, deine Ausgabe zu machen und dann wieder von vorne anzufangen?
  6. Gibt ja noch mehr als nur Vergleichsoperatoren. Aber überlege mal, wie grafische Oberflächen funktionieren. Grafische Oberflächen laufen in einer Endlosschleife. Man könnte auch hier das gleiche Prinzip anwenden. Es wird immer wieder die Eingabe eingelesen, verarbeitet und etwas wird ausgegeben. Wie sieht also eine endlosschleife aus und wie müsstest du deinen Code umstrukturieren? Schaue auch mal dein scanf() an. Vorallem welches Format deine Eingabe haben muss und welche du erlauben möchtest.
  7. Wenn ich es richtig verstehe, dann haben Fahrzeug und Kunde ein Vertrag. Der Vertrag kann aber ohne Fahrzeug und Kunde existieren. Der Vertrag hat aber eine Rechnung und kann ohne diese Rechnung nicht existieren. Lösche ich also die Rechnung, ist auch der Vertrag weg. Für mich klingt es aber eher danach, als hätte man die Endpunkte der Rauten vertauscht. So wird eher ein Schuh drauß. Also: Vertrag hat Fahrzeug und Kunde und Fahrzeug und Kunde können ohne Vertrag existieren. Zusätzlich hat der Vertrag eine Rechnung aber die Rechnung kann ohne Vertrag nicht existieren. Lösche ich den Vertrag, ist die Rechnung weg.
  8. Eine Aggregation bezeichnet eine Beziehung, dass Kinder-Elemente ohne ihr Eltern-Element existieren können. Eine Komposition bezeichnet eine Beziehung, dass die Kinder-Elemente ohne ihr Eltern-Element nicht existieren können.
  9. Und genau deswegen habe ich mir damals die Schule ausgesucht. Ich wusste, dass sie einen guten Ruf hat und durch meine damalige Mechatroniker-Ausbildung musste ich feststellen, dass die Ausbildung ein Glücksspiel ist und durch Bekannte wusste ich auch, dass die Berufsschule für Fachinformatiker kein hohes Niveau bietet. Zumal auch diese ganze Bewerbungensarie wegfiel und es auch recht schnell gehen musste. Ich meiner Ausbildung musste ich noch minimum 16 Wochen Praktikum vorweisen. Da habe ich dann schon die ersten Kontakte mit Firmen knöpfen können. Ist bei dir sowas nicht erforderlich, @MLHN01?
  10. Ich brauche nur den Namen der Schule erwähnen, wo ich meinen Abschluss gemacht habe und schon werde ich den Fachinformatikern bevorzugt eingestellt. Die Schule hat hier einen sehr hohen Stellenwert. Und ich halte gerne dagegen, da das Niveau einer Fachinformatiker-Ausbildung doch manchmal zu Wünschen übrig lässt. Das, was in der Abschlussprüfung abgefragt wird, war bei mir eigentlich Thema des zweiten Semesters. Gut, es war auch eine private Schule, die auch schon als sehr hart Gilt. Von ca. 100 Kommilitonen haben nur 6 mit mir den Abschluss gemacht. Der Rest hat sich anders orientiert oder sich für eine Fachinformatiker-Ausbildung entschieden.
  11. *hust* Aber ja, mit diesem Abschluss kannst du dich ganz normal als Berufsanfänger bewerben. Ob du Teilzeitjobs findest (ich vermute mal während deiner Ausbildung), weiß ich nicht. Ich würde mal Firmen abklappern, die auch Plätze für Werksstudenten anbieten.
  12. Der Grund ist, dass die (Pseudo-)Kontrolle wegbricht. Viele Arbeitgeber sind der Meinung, man könne die Arbeitnehmer besser kontrollieren, wenn sie im Büro sind. Wenn sie aber im Home Office arbeiten verliert der Chef die Kontrolle und muss den Arbeitnehmern vertrauen, dass sie auch ihre Arbeit machen. Allerdings ist dies nur eine Befriedigung seines Egos, da die Kontrolle auch im Büro nicht funktioniert. Ich kenne es aus meinen Bekanntenkreis, als eine Bürofachangestellte vor Corona 3 Stunden täglich von zu Hause arbeiten möchte, weil sie es nicht besser mit ihrem Kind arrangieren kann. Der Chef war sehr misstrauisch und sie sollte eine Art Arbeitstagebuch schreiben, was sie dann zu Hause macht. Es wird also vornherein den Arbeitnehmern misstraut aber es wird immer wieder vergessen, dass der Großteil der Belegschaft ihre Arbeit auch von zu Hause macht, da es ja auch um den Job geht. Denn wenn sie nicht arbeiten, kann die Firma nicht funktionieren und funktioniert die Firma nicht, muss die Firma im schlimmsten Fall zu machen und sie verlieren ihren Job. @ Topic: Vor Corona: Home Office wurde genehmigt aber aufgrund von Erreichbarkeit haben eigentlich nur wenige dies wirklich in Anspruch genommen. Aktuell: Alle arbeiten im Home Office. Ausnahme ist das Sekretariat, da weiterhin Post an die Firmenadresse geschickt wird. Nach Corona: Viele Arbeitnehmer wollen weiterhin hauptsächlich von zu Hause arbeiten und die Geschäftsführung begrüßt dies, weil somit auch Büroflächen eingespart werden könnte, die vor Corona eh schon sehr knapp waren und wir uns auch nicht vergrößeren konnten, ohne dabei einen neuen Firmensitz suchen zu müssen.
  13. Das, was @Tobi_8 gepostet hat, ist die Chen Notation. Das ist ja gerade der Witz am ER-Modell: Es sollen die Beziehungen zwischen den Objekten dargestellt und benannt werden. Darum macht man den ganzen Kram ja erst überhaupt.
  14. Gar nicht. p ist der Rückgabewert von deiner random()-Funktion. Wie gesagt, schaue dir den Rückgabewerte von Funktionen an. Rand() hat ja auch ein Rückgabewert, den du dann weiter verarbeitest. https://www.c-howto.de/tutorial/funktionen/
  15. Schaue dir doch mal die Zeile p = (rand() % 6 + 1); Da hast du schon deine Frage selbst beantwortet. rand() ist ja auch nur eine Funktion und den Rückgabewert speicherst du in p.
  16. Whiz-zarD hat auf einen Beitrag in einem Thema geantwortet in IHK-Prüfung allgemein
    So funktioniert das nicht. Der Witz ist ja, dass man möchte, dass die Datenbank dies herausfinden soll und nicht du. Du gibst lediglich der Datenbank mit, welche Kriterien erfüllen sein müssen. Stell dir vor, anstatt nur den vier oder fünf Datensätzen hättest du jetzt 50.000+ Datensätze. Viel Spaß beim Suchen.
  17. Es gibt kein Bachelor-Diplom... 🙄
  18. Was immer vergessen wird: Ein Studium ist keine Berufsausbildung... Studium abgebrochen, FIAE-Ausbildung angefangen und Studium weitergemacht? Und jetzt im öD, obwohl du doch in einer größeren Firma arbeiten wolltest, wegen der besseren Aufstiegschancen und das ist erst ein Jahr her. Aha... Klingt eher wie Geschichten aus dem Paulanergarten.
  19. https://www.gesetze-im-internet.de/urhg/__60a.html Danach wird es schwierig. Viele Verlage haben aber auch ein Lizenzprogramm für Schulen.
  20. Es ist nicht nur das. PDF-Dateien sind auch nicht besonders gut für eBook-Reader geeignet. Wer also vorhat, PDF-Bücher mit so einem Reader lesen zu wollen, wird u.U. keine Freude daran haben.
  21. Vom Umfang her sind die schon sehr leicht. Leichter geht es kaum noch, weil wirklich nur die absoluten Basics abgefragt werden und das sogar noch auf einem sehr niedrigen Niveau. z.B. werden oft Listen fälschlicherweise als Arrays bezeichnet oder es wird der Array-Index als technische ID eines Datensatzes verwendet. Das einzige, was ich wirklich kritisiere ist die unverständliche Schreibweise von Aufgaben. Besonders die Programmieraufgaben. Für das Verstehen der Aufgabe geht die meiste Zeit drauf. Wenn man sie verstanden hat, ist die Lösung binnen weniger Minuten runtergeschrieben. Systemintegratoren sind auch für die Administration von relationalen Datenbanken zuständig. Da wird auch SQL benötigt. SQL hat auch erstmal nichts mit Softwareentwicklung zu tun. Es ist nur eine Datenabfragesprache und in den Abschlussprüfungen wird das schon sehr rudimentär behandelt.
  22. Wir (in diesem Forum) kennen die Situation nicht. Vielleicht ist auch privat was vorgefallen. Es gibt z.B. Menschen, die eine panische Prüfungsangst haben. Wir (die Firma, in der ich arbeite) hatten auch mal einen Werksstudenten, der während seiner Bachleor-Thesis sein Studium schmiss.
  23. Ja, anstatt Rosenpickerei zu betreiben und einen Tarifvertrag herauszupicken, der in der eigenen Branche eh nicht gilt, nur um damit ~90 € Brutto im Monat mehr vergütet zu bekommen und dadurch ggf. beim Arbeitgeber negativ aufzufallen und somit sich evtl. seine Übernahmechancen verspielt, sollte man eher ein ruhiges Gespräch mit dem Arbeitgeber suchen und mit ihm über veränderte Lebenssituationen sprechen. Ggf. findet man hier eine Einigung. Man kann sich auch Berufsausbildungsbeihilfe (BAB) bei der Arbeitsagentur beantragen, wenn die Ausbildungsvergütung nicht reichen sollte. Keine Ahnung, wie andere IHKs dies handhaben aber neben Fachinformatiker bilden wir noch Bürokauffrauen/-männer aus und wir haben die Auflage von der IHK bekommen, dass alle Azubis die gleiche Vergütung bekommen müssen. Damit die Fachinformatiker-Bewerber sich für uns entscheiden, mussten wir die Vergütung erhöhen. Das hatte auch zur Folge, dass wir die Vergütung für die Bürokauffrauen/-männer anpassen mussten. Da entstand eine zusätzliche finanzielle Belastung für das Unternehmen. Also einfach mal die Vergütung anzuheben muss nicht immer funktionieren.
  24. Und der einschlägige Tarifvertrag für dich ist was? Du arbeitest in einer eine Werbeagentur und nicht in einem Elektro- oder Metall-Betrieb. Der IGM-Tarifvertrag gilt hier nicht. Das ist ja der Witz an deinem Gerichtsurteil. Der ist hier nutzlos, da es sich bei dem Urteil um einen Industriemechaniker ging.
  25. Wieso fragst du nicht deine Arbeitskollegen? 🙄

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.