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:

Wieso wird die variable auf 0 gesetzt?

 
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
Gast






BeitragVerfasst am: 30.10.2004, 16:51    Titel: Wieso wird die variable auf 0 gesetzt? Antworten mit Zitat

Hi @ all
Ich brauche mal eure hilfe
Erstmal der teil des Programms:
(Tage sind dimensioniert)

ELSE IF Rest28 = 1 THEN FOR I = 1 TO 1
Tage(I) = Tage(I) + 1 AND Rest28 = Rest28 - 1
PRINT Rest28
PRINT Tage(I)
SLEEP
NEXT I

Jetzt meine Frage: Wieso wird der Wert von Tage(I) auf 0 gesetzt mit dem Kopf durch die Mauer wollen

Danke fuer eure Hilfe

mfg Patrick
Nach oben
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 30.10.2004, 17:06    Titel: Prog Antworten mit Zitat

Zeig mal das komplette Programm.
_________________

Der Markt regelt das! | 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
Stefan



Anmeldungsdatum: 17.09.2004
Beiträge: 22

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

Dan sehen wir uns doch mal die Berechnung an:
Tage(I) = Tage(I) + 1 AND Rest28 = Rest28 - 1

Rechts vom AND steht:
Rest28 = Rest28 - 1

Bei diesem Verfleich kommt natülich immer false (=0) heraus.
Bei einer And-Operation, bei der einer der beiden Werte 0 ist, ist natürlich auch das Ergebnis Null.
Also wird Tage(I) immer der wert 0 zugewiesen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Gast






BeitragVerfasst am: 30.10.2004, 19:03    Titel: so hier mal das komplette programm Antworten mit Zitat

REM Kosmisches_Schaltjahr
CLS
INPUT "Bitte geben sie die Dauer einer vollst„ndigen Umrundung eines Planeten um seine Sonne in Tagen ein(Bsp.:218.56) :", X


Monate28 = FIX(X / 2cool
PRINT Monate28
Monate29 = FIX(X / 29)
PRINT Monate29
Monate30 = FIX(X / 30)
PRINT Monate30
Monate31 = FIX(X / 31)
PRINT Monate31
Monate32 = FIX(X / 32)
PRINT Monate32


SLEEP
Rest28 = X - Monate28 * 28
PRINT Rest28
Rest29 = X - Monate29 * 29
PRINT Rest29
Rest30 = X - Monate30 * 30
PRINT Rest30
Rest31 = X - Monate31 * 31
PRINT Rest31
Rest32 = X - Monate32 * 32
PRINT Rest32


IF Rest28 < Rest29 AND Rest28 < Rest30 AND Rest28 < Rest31 AND Rest28 < Rest32 THEN Hilfsvariable = 1
IF Rest29 < Rest28 AND Rest29 < Rest30 AND Rest29 < Rest31 AND Rest29 < Rest32 THEN Hilfsvariable = 2
IF Rest30 < Rest28 AND Rest30 < Rest29 AND Rest30 < Rest31 AND Rest30 < Rest32 THEN Hilfsvariable = 3
IF Rest31 < Rest28 AND Rest31 < Rest29 AND Rest31 < Rest30 AND Rest31 < Rest32 THEN Hilfsvariable = 4
IF Rest32 < Rest28 AND Rest32 < Rest29 AND Rest32 < Rest30 AND Rest32 < Rest31 THEN Hilfsvariable = 5

PRINT Hilfsvariable

IF Hilfsvariable = 1 THEN GOTO 28
IF Hilfsvariable = 2 THEN GOTO 29
IF Hilfsvariable = 3 THEN GOTO 30
IF Hilfsvariable = 4 THEN GOTO 31
IF Hilfsvariable = 5 THEN GOTO 32



28
DIM Tage(40)
DIM NTage(40)

FOR I = 1 TO Monate28
Tage(I) = 28
NEXT I
I = Y
IF Rest28 > 1 THEN
FOR Y = 1 TO 25
Tage(Y) = NTage(Y) + 1 AND Rest28 = Rest28 - 1
IF Rest28 = 1 THEN Tage(Y) = NTage(Y) + 1 AND Rest28 = Rest28 - 1
NEXT Y
ELSE IF Rest28 = 1 THEN FOR I = 1 TO 1
Tage(I) = Tage(I) + 1 AND Rest28 = Rest28 - 1
PRINT Rest28
PRINT Tage(I)
SLEEP
NEXT I

ELSE GOTO 282
END IF


282
REM Monatsausgabe
PRINT "Monate : ", Monate28
FOR I = 1 TO Monate28
PRINT "Monatsl„nge des "; I; "ten Monats : "; Tage(I); "Tage"
NEXT I



29

30

31

32





im unteren bereich ist das, was ich vorher schon gepostet habe, ändert das doch mal bitte um, so dass das funktioniert.

danke Patrick
Nach oben
MisterD



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

BeitragVerfasst am: 30.10.2004, 20:14    Titel: Antworten mit Zitat

Code:
Tage(I) = Tage(I) + 1 AND Rest28 = Rest28 - 1


GEHT NICHT!!!

Code:
Tage(I) = Tage(I) + 1 : Rest28 = Rest28 - 1

oder
Code:
Tage(I) = Tage(I) + 1
Rest28 = Rest28 - 1


AND ist ein Operator, so ähnlich wie + und -... Damit kann man nicht 2 Anweisungen trennen!


Sag mal, ist das Programm für diesen einen Programmierwettbewerb?
_________________
"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
Gast






BeitragVerfasst am: 30.10.2004, 22:54    Titel: Antworten mit Zitat

genau dafuer happy
wollte das eigentlich mit pascal schreiben, war mir aber zu kompliziert fang ich jetzt vielleicht noch mit an. War ja ein kleiner dummer Fehler happy
und ich war schon am nachdenken wieso geht das denn net, hab jetzt gerade aber noch gemerkt, dass da noch ein paar fehler in der berechnung der Monate mit drin sind. Hab ich aber schon bei mir behoben, jetzt nur noch die Schaltjahre happy

Nochmal danke fuer die Hilfe happy





An den Boardadmin : Bitte das programm rausnehmen, da es sonst kopiert werden koennte und es zur zeit ein halbfertiges programm fuer einen bekannten Informatik wettbewerb ist.


Danke
Nach oben
marzec



Anmeldungsdatum: 13.10.2004
Beiträge: 267

BeitragVerfasst am: 31.10.2004, 07:36    Titel: Antworten mit Zitat

seltsame menschen gibts....
_________________
Yagl - yet another gameprogramming library
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2507
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 31.10.2004, 09:40    Titel: Antworten mit Zitat

Anonymous hat Folgendes geschrieben:
Hab ich aber schon bei mir behoben, jetzt nur noch die Schaltjahre

Vielleicht dürfte

http://www.dreael.ch/Deutsch/Download/DatumBerechnung.html

aus meiner Sammlung für Dich von Interesse sein.

Anonymous hat Folgendes geschrieben:
An den Boardadmin : Bitte das programm rausnehmen, da es sonst kopiert werden koennte und es zur zeit ein halbfertiges programm fuer einen bekannten Informatik wettbewerb ist.

Am besten registrier Dich hier im Board, dann steht Dir "Edit" zur Verfügung, was man als "Gast" nicht hat.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MisterD



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

BeitragVerfasst am: 31.10.2004, 14:30    Titel: Antworten mit Zitat

hier ists jetzt doppelt zu spät.

1. selbst wenn er sich registriert kann ersn nicht mehr editieren
2. Wenn einer den Code haben will hat er ihn vermutlich schon, also bringt löschen auch nicht wirklich mehr was.

Ich mach bei dem Wettbewerb übrigens nicht mit. Mir gefallen die Aufgaben da nicht. Einfach nur sein Programm mit Beispielen durlafen zu lassen ist Mist oder dann noch die Durchflusswahrscheinlichkeit mit der Wahrscheinlichkeit, dass das Würfelkästchen leer ist zu vergleichen und Auswertungen hat meiner meinung nach nicht wirklich viel mit Programmieren zu tun. Die geforderten Programme sind eigntlich simpel und fordern nur eine Ausgabe nach definierten reglen, keine wirkliche Logik oder so. Deshalb gefällt mir der ganze Wettbewerb nicht.
_________________
"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
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 31.10.2004, 14:43    Titel: Alsooo.. Antworten mit Zitat

Hallo.

@Gast: Aufgabe 2, gell? grinsen
Aber keine Sorge. Ich mache gar nicht mit. zwinkern
(Schließe mich MisterD's Begründung an.)

Viele Grüße!
Sebastian
_________________

Der Markt regelt das! | 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: 01.11.2004, 12:55    Titel: Antworten mit Zitat

Gut, dann werde ich demnächst mal einen kleinen Wettbewerb starten. Habe allerdings keine Preise zu verteilen.
_________________
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
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 01.11.2004, 13:05    Titel: WB Antworten mit Zitat

Hallo.

Naja, bei dem Wettbewerb gibt es auch kaum Preise. 10 von 1000 Leuten oder so in der Art erhalten eine Linux-CD... peinlich
Ich bin mal gespannt auf heliums Idee. Ich fänd einen programmiersprachen-unabhängigen WB gut.

QB Wettbewerbe haben wir nun schon 2 und beim qbasic.de-Wettbewerb gibt es bald auch eine Insider-Aufgabe zusätzlich zu den normalen Aufgaben, - aber mehr wird noch nicht verraten. zwinkern

Viele Grüße!
Sebastian
_________________

Der Markt regelt das! | 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
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 01.11.2004, 13:16    Titel: Antworten mit Zitat

MisterD hat Folgendes geschrieben:
Sag mal, ist das Programm für diesen einen Programmierwettbewerb?


Von welchem Wettbewerb ist denn hier die Rede ? Keine Angst - ich habe nicht vor, etwas von "Gasts" Code zu verwenden lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 01.11.2004, 14:46    Titel: WB Antworten mit Zitat

Hallo.

Bundesweiter Informatikwettbewerb,
ausgeschrieben vom Bundesministerium für Bildung und Forschung
Mit Unterstützung von SAP, DATEV und dem Fraunhofer Institut,
unter Schirmherrschaft des Bundespräsidenten!

cool cool cool

Viele Grüße!
Sebastian
_________________

Der Markt regelt das! | 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
MisterD



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

BeitragVerfasst am: 01.11.2004, 16:05    Titel: Antworten mit Zitat

Tja, und dann so Mistaufgaben xD echt blöd.
_________________
"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
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