Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Programm !!

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Zerni



Anmeldungsdatum: 14.12.2004
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: 14.12.2004, 16:29    Titel: Programm !! Antworten mit Zitat

Hi .. Ich habe in der Schule in Programmbeispiel aufbekommen und das ist irgendwie nicht einfach (für mich). Hoffe dass ihr mir da helfen könnt hier die Angabe:

Mitarbeiterverwaltung - Speicherung in Textdateien
Der Mitarbeiter besteht aus folgenden Datenfeldern:
Abteilung 20 Stellen
Vorname 10 Stellen
Zuname 15 Stellen
Durchwahl Zahl

Er ist als benutzerdefinierter Datentyp mit 6 Ausprägungen anzulegen.

Die Menüs Menue
Weiter
Speichern
Ausgabe
Stand
sind als Unterprogramme zu realisieren. Der Befehl GOTO darf NICHT verwendet werden. Es werden nur jene Mitarbeiter gespeichert, deren Durchwahl > 0 ist. Die Überschrift "Ausgabe aller Mitarbeiter" befindet sich in Position 15, "Aktueller Mitarbeiterstand" in Position (20) - beide jeweils in 1 Zeile

Die Speicherung erfolgt in einer Textdatei (Personal.txt)

Bitte um Hilfe traurig
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
helium



Anmeldungsdatum: 10.09.2004
Beiträge: 397
Wohnort: Leverkusen

BeitragVerfasst am: 14.12.2004, 16:50    Titel: Antworten mit Zitat

Erstmal: Ganz toler Titel für eine Frage: "Programm!!" Daraus wird keiner schlau. Genau dazu sind Titel aber da.


Zweitens: Dieses Forum ist nicht da, um deine Hasuaufgaben zu machen. Das ist deine Aufgabe.


Wenn du ein konkretes Problem hast, kannst du das natürlich fragen. Aus deiner Fragestellung geht aber nichts konkretes hervor. Was hast du nicht verstanden?
_________________
Bevor Sie aufhören sich körperlich zu betätigen sollten Sie ihren Doktor befragen. Körperliche Inaktivität ist abnormal und gefährlich für Ihre Gesundheit.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Zerni



Anmeldungsdatum: 14.12.2004
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: 14.12.2004, 17:23    Titel: Antworten mit Zitat

Ich weiß, dass es meine Aufgabe ist aber wenn ich mich auskennen würde,würde ich nicht fragen oder ? Also .. Mein Problem sind die Unterprogramme .. Konkret bei dem Unterprogramm "Menue" und "Speichern" ..

Bei dem Programm muss man eine Mitarbeiterliste erstellen.. also wenn man Eingabe bestätigt dass man Mitarbeiter eintragen kann und sie bei der Ausgabe erscheinen. Mit Speichern <S> .. speichert man es auf einer Textdatei (Personal.txt)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 14.12.2004, 18:57    Titel: Antworten mit Zitat

schau mal in die Downlooadsektion von QBasic.de oder bei Codesharinx2 vorbei. da gibts massig Programme wo du dir vielleicht bisschen was abschaun kannst.... aber ned einfach alles kopieren... zwinkern
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
derdicke



Anmeldungsdatum: 27.11.2004
Beiträge: 8

BeitragVerfasst am: 14.12.2004, 21:05    Titel: Antworten mit Zitat

Hm, wenn ich einfache Menüs machen will löse ich das mit einer IF-Abfrage! Also etwa so:

10 PRINT "1) Schreibe hallo"
20 PRINT "2) Beende Programm"
30 INPUT "Gebe Auswahl ein und bestätige mit <enter>: ", auswa$
40 IF auswa$ = "1" THEN 80
50 IF auswa$ = "2" THEN END
60 PRINT "Bitte wähle zwischen den Auswahlmöglichkeiten aus"
70 GOTO 10
80 PRINT "HALLO"
90 SLEEP

Sollte eigentlich funktionieren!
Du musst aber die Masken behalten, sonst gehts nicht!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 14.12.2004, 21:21    Titel: Zeilennummern Antworten mit Zitat

Hallo.

Zeilennummern sind ein unangenehmes Relikt aus GWBASIC Zeiten. Die sollte man auf jeden Fall weglassen, wenn man einigermaßen strukturiert programmieren will.
Man kann das so machen und das funktioniert auch, aber die meisten Programmierer finden das unschön. zwinkern
Außerdem sollte man anstelle von vielen IFs lieber ein SELECT CASE verwenden.

Code:
PRINT "1) Schreibe hallo"
PRINT "2) Schreibe LOL"
PRINT "3) Beenden"

Taste$ = INPUT$(1)

SELECT CASE Taste$
  CASE "1": PRINT "hallo"
  CASE "2": PRINT "LOL"
  CASE "3": END
  CASE ELSE
    PRINT "Falsche Eingabe!"
    CLEAR: RUN
END SELECT


Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Zerni



Anmeldungsdatum: 14.12.2004
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: 14.12.2004, 22:11    Titel: Antworten mit Zitat

Danke hat mir weitergeholfen .. Das Programm ist ja eigentlich fast nur im Unterprogramm aufgebaut und so schaut ca. mein Hauptprogramm aus:
Code:
TYPE Mitarbeiter
  Abteilung AS STRING * 20
  Vorname AS STRING * 10
  Zuname AS STRING * 5
  Durchwahl AS INTEGER
END TYPE

DIM List1(6) AS Mitarbeiter

CALL Menu(List1())


Ist das ok ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 14.12.2004, 22:13    Titel: Ja! Antworten mit Zitat

Hallo.

Ja, das ist OK so. Du kannst das Array aber auch einfach SHARED dimmen. zwinkern

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Stephan



Anmeldungsdatum: 05.10.2004
Beiträge: 358
Wohnort: Hessen - 20km Nördlich von Frankfurt am Main

BeitragVerfasst am: 14.12.2004, 22:17    Titel: Antworten mit Zitat

@Sebastian , Zeilennummern gabs schon lange lange vor GWBasic (C16 / C64.....)

Select Anweisungen sind zwar ne schöne sache, aber oftmals (besonders bei langen codes,
sind IF Abfragen doch übersichtlicher.)


*Edit* Klammer lachen
_________________
'Wir schätzen die Zeit erst, wenn uns nicht mehr viel davon geblieben ist.'
Leo Tolstoi


Zuletzt bearbeitet von Stephan am 15.12.2004, 23:30, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 14.12.2004, 22:18    Titel: OK Antworten mit Zitat

Hallo.

OK, es gab sie schon vorher, aber ich kenne sie halt besonders von GWBASIC.

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
helium



Anmeldungsdatum: 10.09.2004
Beiträge: 397
Wohnort: Leverkusen

BeitragVerfasst am: 15.12.2004, 12:14    Titel: Antworten mit Zitat

Zitat:
Ja, das ist OK so. Du kannst das Array aber auch einfach SHARED dimmen.

Ne ne ne! Das führt dann zu ganz schlimmen Problemen beim Wiederverwenden. Globale Variablen immer mit vorsicht einsetzen.

Viele Sprachen erlauben aus gutem Grund gar nicht erst das Definieren globaler Variablen.

Zitat:
Select Anweisungen sind zwar ne schöne sache, aber oftmals (besonders bei langen codes, sind IF Abfragen doch übersichtlicher.


) <- fehlt zwinkern

Naja, also gerade bei sehr vielen Verzweigungen ist Select doch übersichtlicher, es sei denn du machst so ein Blödsinn und packst unmengen an Code in die einzelnen Cases.

/edit: Rechtschreibfehler
_________________
Bevor Sie aufhören sich körperlich zu betätigen sollten Sie ihren Doktor befragen. Körperliche Inaktivität ist abnormal und gefährlich für Ihre Gesundheit.


Zuletzt bearbeitet von helium am 15.12.2004, 20:50, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stephan



Anmeldungsdatum: 05.10.2004
Beiträge: 358
Wohnort: Hessen - 20km Nördlich von Frankfurt am Main

BeitragVerfasst am: 15.12.2004, 17:03    Titel: Antworten mit Zitat

helium hat Folgendes geschrieben:

Naja, also gerade bei sehr vielen Verzweigungen ist Select doch übersihtlicher,....


übersihtlicher <-- heisst das nicht normal Übersichtlicher Zunge rausstrecken

Zum Select / Case thema, es kommt immer darauf an, wie man
IF oder Select einsetzt.

Es gibt genügend beispiele,wo es mit IF einfach übersichtlicher ist.
_________________
'Wir schätzen die Zeit erst, wenn uns nicht mehr viel davon geblieben ist.'
Leo Tolstoi
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Zerni



Anmeldungsdatum: 14.12.2004
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: 15.12.2004, 19:23    Titel: Antworten mit Zitat

Man kann ja mal ein "c" vergessen zwinkern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 15.12.2004, 19:30    Titel: ... Antworten mit Zitat

Hallo.

Das hat der Stephan bloß geschrieben, weil es sonst helium ist, der auf sowas herumreitet... grinsen

Viele Grüße!
Sebastian
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz