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 als Hausaufgabe... bitte helfen :(

 
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
daeumeline



Anmeldungsdatum: 22.02.2005
Beiträge: 5

BeitragVerfasst am: 22.02.2005, 20:00    Titel: Programm als Hausaufgabe... bitte helfen :( Antworten mit Zitat

Hallöchen,

ist hier zufällig jemand unter euch, der mir helfen könnte mit QBasic? *liebfrag*

Haben das in der Schule begonnen heute und so kleine Sachen erstellt wie eine Addition oder einen Rechner der ausrechnet wie viel Rabatt man bekommt, je nach dem für wie viel Euro man einkauft... das klaoote auch alles gut...
aber jetzt sollen wir als Hausaufgabe ein Programm erstellen, dass uns alle Quadratzahlen anzeigt von einem bestimmten Anfangswert a bis zu dem Höchstwert z... ich weiß aber leider gar nicht mehr wie das geht unglücklich Nur teilweise...

Kann mir irgendwer helfen???

Lieben Gruß
Linchen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 22.02.2005, 20:20    Titel: Antworten mit Zitat

Hallo.

Normalerweise machen wir hier keine Hausaufgaben, aber hier ein Ansatz: zwinkern
Code:
INPUT "Anfangszahl: ", a%
INPUT "Letzte Zahl: ", b%
FOR i% = a% TO b%
 Ergebnis&=i%*i% 'oder i%^2
 PRINT "Die Quadratzahl aus "; LTRIM$(STR$(i%)); " ist "; LTRIM$(STR$(Ergebnis&)); "."
NEXT i%
SLEEP:END


Der Code ist noch ausbaufähig, aber für's Erste reicht's sicher. 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
Progger_X
Mr. Lagg


Anmeldungsdatum: 24.11.2004
Beiträge: 784
Wohnort: Leipzig

BeitragVerfasst am: 22.02.2005, 20:23    Titel: Na ja Antworten mit Zitat

Schon mal netiquette gelesen? Eigentlich machen wir keine Hausaufgaben!

Aber gut...ich mach dir nicht deine Hausaufgabe, sondern ich sag dir den groben Ablauf, ich denke so issses ok:

Quadratzahlen machst du logischerweise mit x*x oder so. Dann alle quadratenzahlen von a bis z. Dann muss der Computer erst wissen wie groß a und z sind, die gibt ja der Benutzer ein. Benutzereingaben machst du so:

Code:

Input "Text", Variable


Text ist ein beliebiger Text, der genauer sagen sollte, was die Variable macht, damit der Nutzer das versteht. Die Variablen sollten die namen a und z tragen, du als programmierer musst dir merken, das die den Anfangs und den Endwert markieren.

Dann hast du die Zahlen.

Wenn du unter und ober grenze hast, brauchst du nur noch eine Schleife schreiben. Das machst du so:

Code:

For a=x to a=y
 (was die schleife tut)
Next


Dann müssen logischerweise x und y die unteren und oberen grenzwerte sein, x der untere, y der oberere. Die Schleife sollte alle quadratzahlen ausgeben. Zahlen ausgeben machst du mit:

Code:

Print x


Hier wird x ausgegeben. Es sollte jedoch nicht x ausgegeben, sondern die Zählvariable(im beispiel a) zum Quadrat. Am Ende des Programms machst du dann noch

Code:

Sleep


Dieser Befehl wartet, bis der Benutzer eine Taste drückt.

Code:

Cls


Der löscht den Bildschirm, eigentlich unnötig, aber für den Programmierer hilfreich, wenn etwas nicht klappt und du das programm neu starten musst.

Ich hoffe das hilft dir das zu verstehen, nicht nur irgendetwas abzutippen.

Und natürlich das es Fehlerfrei ist....
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 22.02.2005, 20:33    Titel: Antworten mit Zitat

Zitat Progger_X

For a=x to a=y
(was die schleife tut)
Next

Sorry, das geht anders.

Code:

FOR i = a TO z
 REM Was die Schlefe machen soll, in dem Falle i^2
NEXT


jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
daeumeline



Anmeldungsdatum: 22.02.2005
Beiträge: 5

BeitragVerfasst am: 22.02.2005, 20:46    Titel: Antworten mit Zitat

Danke euch, super lieb.

Sorry, habe mir die Nettiquette noch nicht durchgelesen... bin neu hier traurig Tschuldigung.

Danke für eure Tipps, werde mich gleich mal dran setzen... danke euch lächeln Bei Fragen oder Unklarheiten werde ich mich melden grinsen Hoffe das ist okay

Lieben Gruß
Linchen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
daeumeline



Anmeldungsdatum: 22.02.2005
Beiträge: 5

BeitragVerfasst am: 22.02.2005, 21:10    Titel: Antworten mit Zitat

Soooo habe mal rumgebastelt und es geht so weit bis ich die Zahlen eingebe... aber der Schluss mag nicht so wie ich traurig

HIer mal meine Zeilen:

CLS
1 PRINT "Berechnung der Quadratzahlen"
For i= a to z
next
5 INPUT "Anfangszahl"; a
10 INPUT "Letzte Zahl"; z
15 PRINT "Ergebnis"; ergebnis= i*i
20 PRINT "Die Quadratzaheln lauten:" = ergebnis
END


Laufen tut es, aber als Ergebnis bekomme ich immer 0. Wo liegt mein Fehler? lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 22.02.2005, 21:52    Titel: Antworten mit Zitat

Hallo!
Sind noch ein paar Fehlerchen drin..... zwinkern zwinkern

1. Die Zeilennummern kannst du dir sparen, du benutzt doch QBasic, oder?

2. Die Eingabe von a/z muss VOR der FOR-NEXT-Schleife kommen.

4. Die Berechnung (Zeile 15) muss zwischen FOR-NEXT.

5. In Zeile 20 muss es
PRINT "Quadratzahlen: "; ergebnis
heißen

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
daeumeline



Anmeldungsdatum: 22.02.2005
Beiträge: 5

BeitragVerfasst am: 22.02.2005, 22:10    Titel: Antworten mit Zitat

Danke dir, aber es kommt immer noch 0 raus traurig

Weißt du woran das liegen kann?

Ich hab das jetzt stehen:

Ergebnis 0
Ergebnis 0
Ergebnis 0
Ergebnis 0

Die Quadratzahlen lauten 0





PS: Die zahlen sollen wir machen, sagte us unser Lehrer.. .und die Reienfolge hatte er auch so wie ich, das tut aber nichts zur Sache lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 22.02.2005, 22:28    Titel: Antworten mit Zitat

jaja, sicher!

wenn ich deinen code so ansehe, verwendest du 3 variablen: a, z und i.

die INPUTs müssen vor dem FOR/NEXT stehen.
Denn hier wird erst einmal der bereich festgelegt.


Ich glaube, du hast noch nicht ganz verstanden, was for/next überhaupt macht, oder zwinkern

Also: Sobald FOR auftaucht, merkt sich qb das. außerdem wird einer variablen (in deinem Fall dem i) ein wert zugewiesen. Diese wert steht bei dir in a.
jetzt macht qb erst mal ganz normal im code weiter.
sobald aber NEXT kommt, springt es im code wieder zum FOR zurück. Außerdem wird zu i eins dazugezählt.
Das ganze wird so lange wiederholt, bis i den wert von z hat.

So, ich hoffe, das hat dir jetzt geholfen *G*


Viel spaß!
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 22.02.2005, 22:35    Titel: Antworten mit Zitat

Nicht böse sein, aber ich glaube, dass wenn wir jetzt noch mehr weiterlabern, ist das keine Hausaufgabe mehr, sondern eine
QB-Forums-Gemeinschaftsarbeit.....

Tip: Lade dir mal einen QB-Grundkurs von www.qbasic.de runter.

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
daeumeline



Anmeldungsdatum: 22.02.2005
Beiträge: 5

BeitragVerfasst am: 23.02.2005, 22:31    Titel: Antworten mit Zitat

Sooooo, hab es hinbekommen.... meine Zeilen waren alle richtig, nur in der falschen Rehenfolge....

dDanke allen Helfern
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Devilkevin
aka Kerstin


Anmeldungsdatum: 11.11.2004
Beiträge: 2532
Wohnort: nähe Mannheim

BeitragVerfasst am: 24.02.2005, 16:40    Titel: Antworten mit Zitat

Es bleibt zu erwähnen:

Die Zeilennummer is relativ unötig zwinkern
Du kannst auch leere Zeilen schreiben, in dem du ganz einfach

Code:
PRINT


tippst. Aber wen du nicht tausend mal PRINT schreiben willst benutze den befehl Locate xx

Code:
LOCATE 12 (<-- Zeilennummer)

_________________
www.piratenpartei.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
jb



Anmeldungsdatum: 14.01.2005
Beiträge: 2010

BeitragVerfasst am: 24.02.2005, 16:41    Titel: Antworten mit Zitat

@daeumeline:

Sehr schön.
Hat doch gut geklappt.
Poste doch mal deinen Code.

@Devilkevin:

Das mit den Zeilennummern hatte ich aber schon gesagt...
[Pseudo-Moderator-Modus]
Bitte keine Doppelpostings zwinkern
[/Pseudo-Moderator-Modus]

Schwamm drüber.

jb
Nach oben
Benutzer-Profile anzeigen Private Nachricht 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