Avatar billede the_saint Nybegynder
21. marts 2006 - 11:47 Der er 7 kommentarer og
1 løsning

Generere langt tal.

Hej :D

Jeg har en lidt speciel programmeringsopgave.
Jeg skal have lavet en liste, indeholderne alle tal fra:
0 til 9.999.999.999.999.999.999 ...

Er det en helt umulig opgave? .. Eller er der nogen som er friske? :o)
Avatar billede keysersoze Ekspert
21. marts 2006 - 11:58 #1
Randomize()
intUpperBound = 9999999999999999999999
intLowerBound = 0
intRangeSize = intUpperBound - intLowerBound + 1
sngRandomValue = intRangeSize * Rnd()
sngRandomValue = sngRandomValue + intLowerBound
response.write sngRandomValue
Avatar billede the_saint Nybegynder
21. marts 2006 - 11:59 #2
keyseroze, det er ikke et tilfældigt tal jeg skal bruge, jeg skal bruge en textfil med alle tallene :)
Avatar billede keysersoze Ekspert
21. marts 2006 - 12:24 #3
ah - på den måde :)

Set FSO = Server.CreateObject("Scripting.FileSystemObject")
FSO.CreateTextFile("c:\mappe\nyfil.txt")
Set File = FSO.OpenTextFile("c:\mappe\nyfil.txt", 2)
for t = 0 To 999999999999999999999999
  File.WriteLine(t & VbCrLf)
next
Set FSO = Nothing

.. sådan ca
Avatar billede the_saint Nybegynder
21. marts 2006 - 12:25 #4
Hvad er det skrevet i? :)
Avatar billede jakoba Nybegynder
21. marts 2006 - 12:35 #5
Tallet
  999 999 999 999 999 999 999 999
er større end hvad der kan indeholdes i en normal long integer (64 bit) så du bliver nødt til at gøre noget særligt.

Men det er ikke det eneste problem du har. en tekstfil med så mange tal it ville fylde noget i retning af  26 * 10^24  dvs noget i retning af 260 yobibytes. så store harddiske tror jeg endnu ikke der er nogen der har lavet.
se: http://en.wikipedia.org/wiki/Yobibyte

Teoretisk kan det gøres, men i praksis har du ikke en chance for at lave en fil der der så stor.

mvh JakobA
Avatar billede jakoba Nybegynder
21. marts 2006 - 12:43 #6
Ups. dit oprindelige tal var kun
  9.999.999.999.999.999.999
dvs 10^19 så det varer nok kun en 30-40 år før der er harddiske store nok til at lagre den fil :-))
Avatar billede keysersoze Ekspert
21. marts 2006 - 12:44 #7
det er ASP.
Avatar billede the_saint Nybegynder
21. marts 2006 - 13:37 #8
Jakoba, okay, tror bare jeg dropper ideen så :P

Det har også været min konklusion at det ville tage al for lang tid, for ud over at jeg skal bruge alle tallene, så skal alle de tal køres igennem hver eneste sekund de sidste 2 år :P

Så det er lidt lige meget :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester