Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
ITSchüler
Anmeldungsdatum: 17.07.2018 Beiträge: 1
|
Verfasst am: 17.07.2018, 07:28 Titel: Beiwerte anzeigen |
|
|
Hey Leute. Habe ein Problem. Soll für die Schule was mit QBasic programmieren.
1. Auftrag: addieren von 3 Zahlen (geschafft)
2. Auftrag: "Erweitern Sie voriges Programm so, dass das Ergebnis automatisch in Kilo- Mega oder Giga Ohm ausgegeben wird, je nachdem, welcher Beiwert sind macht."
Bedenkt: Kilo=1.000 Mega=100.000 Giga=1.000.000.000
Also wie bekomme ich es hin, dass hinter dem Ergebnis meiner Addition ein Beiwert steht? Und wie bekomme ich das Programm dazu, mir passend zum Ergebnis Kilo anzuzeigen? Also bei 1000 Ohm = 1 kOhm??
Hilfe!!! |
|
Nach oben |
|
 |
grindstone
Anmeldungsdatum: 03.10.2010 Beiträge: 1274 Wohnort: Ruhrpott
|
Verfasst am: 17.07.2018, 11:49 Titel: |
|
|
Hallo ITSchüler und willkommen im Forum!
So etwas macht man mit einer mehrfachen Fallunterscheidung:
Code: | Dim As Integer zahl
Dim As Integer giga = 1000000000
Dim As Integer mega = 1000000
Dim As Integer kilo = 1000
'...
'hier wird die zahl berechnet
'...
If zahl >= giga Then
Print zahl/giga; " GOhm"
ElseIf zahl >= mega Then
Print zahl/mega; " MOhm"
ElseIf zahl >= kilo Then
Print zahl/kilo; " kOhm"
Else
Print zahl; " Ohm"
EndIf |
Das ist jetzt freeBasic - Code, aber er müsste eigentlich 1:1 auch mit QBasic laufen.
Beachte auch (zum Thema guter Programmierstil) die Verwendung der Variablen (eigentlich benutzt man hierfür Konstanten, aber ich weiss jetzt so aus dem Kopf nicht, ob QBasic das kann) "giga", "mega" und "kilo", statt die Werte jedesmal direkt einzutippen. Das macht das Programm lesbarer und vermindert die Gefahr von Tippfehlern.
Gruß
grindstone _________________ For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen! |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4686 Wohnort: ~/
|
Verfasst am: 17.07.2018, 17:23 Titel: |
|
|
Zitat: | Das ist jetzt freeBasic - Code, aber er müsste eigentlich 1:1 auch mit QBasic laufen. |
Nicht ganz - Variablenbelegung in der DIM-Zeile sind in QBasic nicht möglich. Einfach in zwei Zeilen aufsplitten.
QBasic kann auch mit Konstanten (müsste mich sonst sehr irren). _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
grindstone
Anmeldungsdatum: 03.10.2010 Beiträge: 1274 Wohnort: Ruhrpott
|
Verfasst am: 19.07.2018, 08:21 Titel: |
|
|
Stimmt. Ich habe mein QB mal ausgegraben, hier jetzt "richtiger" (und getesteter) QB - Quellcode: Code: | DIM zahl AS LONG
CONST giga = 1000000000
CONST mega = 1000000
CONST kilo = 1000
'...
'hier wird die zahl berechnet
'...
IF zahl >= giga THEN
PRINT zahl / giga; " GOhm"
ELSEIF zahl >= mega THEN
PRINT zahl / mega; " MOhm"
ELSEIF zahl >= kilo THEN
PRINT zahl / kilo; " kOhm"
ELSE
PRINT zahl; " Ohm"
END IF
|
Gruß
grindstone
P.S.
@ITSchüler: Kleine Zusatzaufgabe ("nur für Spass", wie man hier bei uns sagt , und natürlich total freiwillig): In dem Beispiel werden die Vergleiche von "größer" nach "kleiner" durchgeführt (also erst giga, dann mega usw.). Ändere das Programm so, daß die Abfrage in umgekehrter Reihenfolge durchgeführt wird. _________________ For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen! |
|
Nach oben |
|
 |
|