Vai al contenuto

Numeri casuali: 40

  • Senza categoria

2012-02: Community suggested

Create a program that generates 40 random numbers between 01 and 99 (inclusive).
Display them in four rows of ten columns.
They must be in ascending order, and include no duplicates.
Any number under 10 must include a leading zero to preserve the symmetry.

Scrivi un programma che genera 40 numeri casuali tra 1 e 99 compresi.
Li visualizza su 4 righe e 10 colonne.
Devono essere in ordine crescente e senza duplicati.
Un numero minore di 10 deve essere preceduto da uno 0 per mantenere l’allineamento.

Soluzione

casuali40

For i=1 To 99                             ' ---- genera tutti i numeri da 1 a 99
   numero[i]=i
EndFor

eliminati=0                               ' ---- elimina 59 numeri a caso
While(eliminati < 59)
   pos=Math.GetRandomNumber(99)  
   If(numero[pos] <> 0) Then
      numero[pos]=0
      eliminati=eliminati+1
   EndIf
EndWhile

visualizzati=0                            ' ---- visualizza i 40 numeri rimasti
For i=1 To 99
   If(numero[i] <> 0) Then        
      If(numero[i] < 10) Then              ' ---- zero iniziale?
         TextWindow.Write("0")
      EndIf
      TextWindow.Write(numero[i] + " ")    
      visualizzati=visualizzati+1         ' ---- andare a capo?
      If(Math.Remainder(visualizzati,10) = 0) Then
         TextWindow.WriteLine("")
      EndIf
   EndIf    
Endfor
TextWindow.WriteLine("")

Note

Le richieste sono molto restrittive e il procedimento risolutivo è piuttosto inusuale

  1. genera tutti i numeri da 1 a 99, ordinatamente...
  2. elimina 59 numeri in modo casuale
  3. visualizza i 40 numeri rimasti
  4. va a capo ogni 10 numeri visualizzati

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.