Shell 11-12-2021, 12:25
Buenas!.

Después de ver un ejemplo con Python, busqué algún método para rellanar un array con palabras repetidas.
Encontré el método "Fill", pero este método necesita que el array tenga dimensiones.

No puedes hacer algo como:

Código:
Dim dulces as new String[]

dulces.fill("galletas",comienza desde aquí, rellena n veces el array con la palabra "galletas")
'O también
dulces.fill("galletas", rellena n veces el array con la palabra "galletas")

Y estuve probando distintas maneras de hacerlo. A ver si ustedes conocen una forma mejor que las de abajo.
Hice un test a ver cual era la más rápida.

Código:
Public Sub Main()
 
  Randomize
 
  TestBenchMark("LlenarArray")
  TestBenchMark("LlenarArray2")
  TestBenchMark("LlenarArray3")
 
End

Public Sub TestBenchMark(nombrefuncion As String)
 
  Dim i, t As Float
  Dim afinal As String[]
  Dim ob As Object
  Dim palabras As String[] = ["galletas", "merenges"]
  Dim palabra As String
  Dim veces As Integer
 
  ob = Me
 
  t = Timer
  afinal = New String[]  
  For i = 1 To 10 ^ 6     
    palabra = palabras[Rand(0, palabras.Max)]
    veces = Rand(1, 10)
    If nombrefuncion <> "LlenarArray2" Then
      afinal = Object.Call(ob, nombrefuncion, [afinal, palabra, veces])    
    Else
      afinal.Insert(Object.Call(ob, nombrefuncion, [palabra, veces]))
    Endif
  Next
 
  Print "Tiempo para 10^6 repeticiones, método: " & nombrefuncion & " = " & "\t"; Format(Timer - t, "0.######") & "s"
    
End


Public Function LlenarArray(apalabras As String[], palabra As String, veces As Integer) As String[]

  Dim cadenaconrepeticiones As String

  cadenaconrepeticiones = String(veces, palabra & " ")
  apalabras.Insert(Split(cadenaconrepeticiones, " ", "'", True))

  Return apalabras

End

Public Function LlenarArray2(palabra As String, veces As Integer) As String[]
 
  Dim apalabras As New String[]

  apalabras.Resize(veces)
  apalabras.Fill(palabra)
  Return apalabras

End

Public Function LlenarArray3(apalabras As String[], palabra As String, veces As Integer) As String[]

  If apalabras.Count = 0 Then
    apalabras.Resize(veces)
    apalabras.Fill(palabra)
  Else
    apalabras.Resize(apalabras.Count + veces)
    apalabras.Fill(palabra, apalabras.Count - veces, veces)
  Endif
 
  Return apalabras

End

La respuesta fue:
 
Cita:Tiempo para 10^6 repeticiones, método: LlenarArray =    1,245407s
Tiempo para 10^6 repeticiones, método: LlenarArray2 =   0,960382s
Tiempo para 10^6 repeticiones, método: LlenarArray3 =   0,80571s


Os adjunto el ejemplo:

Saludos
Archivos adjuntos
.gz
LlenadoDeArray-0.0.1.tar.gz (Tamaño: 12.34 KB Descargas: 2)
Shell 10-12-2021, 15:32
Buenas!.

Imaginar una oficina que se ha quedado anticuado un pc y que solo se usa para casos de extrema necesidad.
Pueden pasar años y no se enciende. ¿ Es posible virtualizar ese pc y luego usarlo en una máquina virtual ?.

Cómo convertir una máquina física en máquina virtual compatible con Virtualbox

Aunque no lo he leído del todo el articulo, me surge la primera duda.
La máquina física tendrá una serie de drivers que están instalados en el disco fisico y estos no tienen que ser compatibles con una máquina virtual.
Eso probablemente puede dar problemas.

En Windows existía el arranque seguro en el que podías desinstalar drivers, pero esto dependerá si lo haces antes o después de la virtualización.

¿ Alguien ha hecho este tipo de conversión y le ha ido bien ?.

A ver si encuentro un vídeo. Creo que este es más interesante que otros.



Algo más largo. No es que sea algo difícil, es clonar un disco, en principio.



Saludos
Shell 09-12-2021, 21:00
Buenas!.

No, no estaba de broma.  Tongue
Son recursos para trabajos administrativos. Lo enlazo aquí para que no se pierda en el foro de offtopic.
Seguro que algo os puede interesar.

Funcionarios eficientes

Estaba buscando temas de Calc de LibreOffice.

Saludos
Páginas (564):    1 345 346 347 348 349 564   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 292
Último miembro: DarkWolf
Temas del foro: 1,742
Mensajes del foro: 9,031
Últimos temas
Ordenar en un TableView
Foro: General
Último mensaje por: guizans, 05-11-2025, 23:26
Respuestas: 5 - Vistas: 139
Odio a gb.Report
Foro: General
Último mensaje por: guizans, 02-11-2025, 13:36
Respuestas: 9 - Vistas: 1,578
Reportes de Gambas
Foro: Aplicaciones/Fragmentos de Código
Último mensaje por: Alberto59, 27-10-2025, 16:34
Respuestas: 2 - Vistas: 1,342
Ordenando las carpetas
Foro: Programación en otros lenguajes
Último mensaje por: tercoide, 22-10-2025, 15:57
Respuestas: 0 - Vistas: 118
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.