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:

Probleme bei Variablenformat

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



Anmeldungsdatum: 20.01.2005
Beiträge: 99
Wohnort: Leipzig

BeitragVerfasst am: 27.02.2006, 15:09    Titel: Probleme bei Variablenformat Antworten mit Zitat

Hi.

Ich habe ein paar Probleme bei der Darstellung von Variablen. Ich möchte eine Zahl mit 2 Kommastellen anzeigen, zum Beispiel 0.02. Bei einer Singlevariable erscheint dabei 0 (also dasselbe wie INT(0.02)) und bei einer Variable Doppelter Länge, also bei mir NR#, 2.e-002.

Da ich die Zahl aber in einen String umwandeln muss, um sie in ein String-Datenfeld einzuweisen und sie erst später dann wieder in eine numerische Variable zurückwandle, nützt mir ein solches Format nichts.

Denn Mid$(Val(NR$),1,4) wäre dann nicht mehr 0.02 sondern 2.

Auf welchen Weg ist dieses Problem nun zu lösen? Ein paar Versuche mit Print Using ergaben keinen nennenswerten Unterschied und mehr numerische gebrochen-rationale Variabeltypen sind mir nicht bekannt.


Vielen Dank im Voraus. zwinkern
_________________
Ein richtiger Programmierer muss so richtig faul sein und sich den ganzen Tag mit der Frage beschäftigen, wie man mal wieder etwas einfacher machen kann.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 27.02.2006, 18:28    Titel: Antworten mit Zitat

Meine anfängliche Begeisterung für Format[$]
http://forum.qbasic.at/viewtopic.php?t=1830
hält sich jetzt doch sehr in Grenzen. Denn Format$ arbeitet nich fehlerfrei.. traurig
(v1ctor weiß das aber schon --> FreeBASIC.net\forum)
http://www.freebasic.net/forum/viewtopic.php?t=3089
Aber für solche Fälle sollte es eigentlich noch reichen.
(Ich glaube, der Fehler bezieht sich auf Double's mit Exponenten-Darstellung)
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..

Zuletzt bearbeitet von ytwinky am 27.02.2006, 21:17, insgesamt einmal bearbeitet
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: 27.02.2006, 20:17    Titel: Antworten mit Zitat

in print using war nur n bug drin, der is inzwischen draußen, wart einfach auf den nächsten release.
_________________
"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
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 27.02.2006, 21:16    Titel: Antworten mit Zitat

Danke MisterD, aber der Unterschied zwischen Print Using".." und Format[$] besteht darin, daß ich die Ergebnisse von Format$ einer Variablen zuweisen kann oder am Bildschirm ausgeben, während ich bei Print Using keine Wahl habe..
..und v1ctor zu fragen, ob nicht bei Print Using .. -->s meine sig zwinkern
Ich habe das Problem bei meinem Programm so gelöst, daß ich mit
Code:
Int(Log(Abs(variable))/Log(10))
mir den Exponenten hole..
Ist sowieso nicht so wichtig, wie das angezeigt wird, sondern nur, daß es ein kleiner Wert(hoffentlich zwinkern ) ist.
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
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: 28.02.2006, 03:30    Titel: Antworten mit Zitat

Log(10) ist doch 1 oder? Der exponent ist einfach nur int(log(abs(n)))
_________________
"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
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 28.02.2006, 22:21    Titel: Antworten mit Zitat

Schau in die Hilfe!
http://freebasic.de/Referenz.php?zeig=tuts&col1=a0d5d0&ref=yes&show=LOG
Log(10) ist alles Andere, nur nicht 1 grinsen
Das, was FB LOG() nennt, heißt im mathematischen Sprachgebrauch LN
Um vom Logarithmus naturalis in den 10er Logarithmus umzurechnen, wird
die Formel Log10(x)=Log(x)/Log(10) benötigt. cool
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
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: 28.02.2006, 23:16    Titel: Antworten mit Zitat

achso, dachte das wäre vllt auch log.. wenns denn ln is dann brauch man das natürlich happy
_________________
"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 FreeBASIC. 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