🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.vbasic
Article #92664

Re: [VB6] W jakim formacie są defaultowo dane w różnych kontrolkach?

#92664
From: Robert Kurzawa
Date: Sun, 06 Nov 2005 19:19
41 lines
2632 bytes
Użytkownik <c.stoll@NOSPAM.gazeta.pl> napisał w wiadomości
news:dkknlj$hud$1@inews.gazeta.pl...

[...]

> Oczywiście jeżeli w normie jest np. 70 na ocenę "5", a uzyskany wynik
wynosi
> 100, to wychodzi, że 70 jest większe od 100, co ogólnie nie jest prawdą ;)

Rzecz względna. Przy porównywaniu wartości typu String jest to prawda,
dla wartości numerycznych jest to fałsz.

> ale w tym przypadku tak, bo jak rozumiem cyfry w liczbach porównywane są
> pierwsza z pierwszą itd.

Porównywałeś wartości typu String i stąd Twoje rozterki.
Najogólniej: zarówno dane typu String jak i dane numeryczne poddają
się sortowaniu, przy czym zasady sortowania są dla obu typów różne.
Dane numeryczne są sortowane według rzeczywistej wielkości liczb.
Natomiast dane String są sortowane tak, że  są porównywane kolejne
znaki (począwszy od lewej), przy czym kryterium jest tutaj
położenie znaku w tablicy kodów ASCII - im znak ma większą
wartość kodu tym jest "większy".
Inaczej mówiąc dla Stringów są porównywane liczby będące
reprezentacją znaku w tablicy kodów ASCII.
Jeżeli ciągi są różnej długości, to porównywanie kończy się
na ostatnim znaku krótszego ciągu.
Stąd też takie "niby paradoksy":
  "7" >   "50"   (["7"] 55 > ["5"] 53)
"70" > "100"   (["7"] 55 > ["1"] 49)


> Pewnym rozwiązaniem problemu jest funkcja "Val" lub "Format" ale żeby bez
> zbytniego kombinowania je stosować, dobrze jest wiedzieć, jaki format
> danych "z natury" stosuje dana kontrolka!

W tym przypadku zastosuj funkcję Val i skorzystaj z rady
"bluszcza".

Robert
Technical Details
Message-ID: <dkll1v$qni$1@news.onet.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail
References: <dkknlj$hud$1@inews.gazeta.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!not-for-mail
From: "Robert Kurzawa" <joulesnemo@poczta._ANTYspam_onet.pl.invalid>
Newsgroups: pl.comp.lang.vbasic
Subject: Re: [VB6] W jakim formacie są defaultowo dane w
 różnych kontrolkach?
Date: Sun, 6 Nov 2005 20:19:05 +0100
Organization: Onet.pl
Lines: 44
Message-ID: <dkll1v$qni$1@news.onet.pl>
References: <dkknlj$hud$1@inews.gazeta.pl>
NNTP-Posting-Host: zj138.internetdsl.tpnet.pl
Mime-Version: 1.0
X-Trace: news.onet.pl 1131304831 27378 80.53.141.138 (6 Nov 2005 19:20:31 GMT)
X-Complaints-To: usenet@news.onet.pl
NNTP-Posting-Date: Sun, 6 Nov 2005 19:20:31 +0000 (UTC)
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200
X-Sender: hEcFbcdZSiEHpfpCa7Ce8N39RR2YXsG+AvhAeILI48A=
X-Newsreader: Microsoft Outlook Express 5.50.4522.1200
X-Priority: 3
X-MSMail-Priority: Normal
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit