Ejemplos de scripts en VBScript

Ejemplo 1: Juego de dados

option explicit

randomize

dim dado1, dado2, dado3

dim victorias, partidas, seguir

do

dado1=fix(rnd()*6)+1

dado2=fix(rnd()*6)+1

dado3=fix(rnd()*6)+1

partidas=partidas+1

wscript.echo «ha salido: » & dado1 & » – » & dado2 & » – » & dado3

if dado1=dado2 or dado1=dado3 or dado2=dado3 then

                wscript.echo «hay dos iguales, has ganado»

                victorias=victorias+1

else

                wscript.echo «has perdido»

end if

seguir=msgbox(«llevas «&partidas&» quieres seguir jungando»,vbyesno)

loop while seguir=vbyes

wscript.echo «porcentaje de victorias: » & (victorias/partidas)*100 & «%»

Ejemplo 2: Invertir palabras en una frase

option explicit

dim frase, palabra, array, reves, nueva, indice

frase=inputbox(«dime una frase»)

array=split(frase,» «)

reves=false

nueva=»»

‘for indice=0  to ubound(array)

for each palabra in array

                if reves=false then

nueva=nueva & palabra & » «

                               reves=true

                else

                               nueva=nueva & strreverse(palabra) & » «

                               reves=false

end if

next

wscript.echo frase & vbcrlf & nueva

Ejemplo 3: Manipulación de archivos y carpetas

option explicit

dim carpeta, fichero, consola, sistema, salida

set sistema=wscript.createobject(«scripting.filesystemobject»)

set consola=wscript.createobject(«wscript.shell»)

if sistema.folderexists(«c:\users\ivan\documents») then

                set carpeta=sistema.getfolder(«c:\users\ivan\documents»)

                wscript.echo carpeta.path

                for each fichero in carpeta.files

salida=salida & fichero.name & » – » & fichero.type & vbcrlf

next

                wscript.echo salida

                for each fichero in carpeta.files

                               if right(fichero.name,3)=»vbs» and fichero.size<1024 then

                                               consola.run «notepad » & fichero.path

                               end if

                next

else

wscript.echo «c:\users\ivan\documents no existe»

end if

Ejemplo 4: Determinar si un año es bisiesto

option explicit

dim anio, bisiesto1, bisiesto2, bisiesto3

anio=cint(inputbox(«dime en que anio estamos»))

bisiesto1=anio mod 4

bisiesto2=anio mod 100

bisiesto3=anio mod 400

if bisiesto1=0 and bisiesto2<>0 or bisiesto3=0 then

                wscript.echo «el anio: » & anio & » es bisiesto»

else

                wscript.echo «el anio: » & anio & » no es bisiesto»

end if

Ejemplo 5: Calcular días hasta el cumpleaños

option explicit

dim cumple, hoy, dias

cumple=#10/07/2019#

hoy=date()

dias=cumple-hoy

wscript.echo «te quedan » & dias & » para tu cumple»

Ejemplo 6: Juego de apuestas (Grande/Pequeña)

option explicit

randomize

dim dado, suma, contador, tirada

dim apuesta

apuesta=inputbox(«apuesta o :»,»juego»,»grande»)

suma=0

tirada=»tirada»

for contador=1 to 3

                dado=fix(rnd()*6)+1

                suma=suma+dado

                tirada=tirada & » – » & dado

next

wscript.echo tirada & vbcrlf & «suma: » & suma

if apuesta=»grande» and suma>=11 then

                wscript.echo «has acertado»

end if

Ejemplo 7: Contar caracteres sin espacios

option explicit

dim frase, posicion, letra

frase=inputbox(«dime una frase»)

‘rtrim(frase)

wscript.echo «la frase tiene: » & len(replace(frase,» «,»»)) & » caracteres»

Ejemplo 8: Contar caracteres sin espacios (versión 2)

option explicit

dim frase, letra, caracteres, indice

frase=inputbox(«dime una frase»)

for indice=1 to len(frase)

                letra=mid(frase,indice,1)

                if letra<>» » then

caracteres=caracteres+1

                end if

next

wscript.echo «la frase sin espacios tiene longitud: » & caracteres

Ejemplo 9: Contar caracteres sin espacios (versión 3)

option explicit

dim frase, letra, caracteres, indice

frase=inputbox(«dime una frase»)

for indice=1 to len(frase)

                letra=mid(frase,indice,1)

                if letra<>» » then

caracteres=caracteres+1

                end if

next

wscript.echo «la frase sin espacios tiene longitud: » & caracteres

Ejemplo 10: Contar vocales en una frase

option explicit

dim frase, cont, pos

cont=0

frase=inputbox(«dime una frase»)

for pos=1 to len(frase)

                if mid(frase,pos,1)=»a» or mid(frase,pos,1)=»e» or mid(frase,pos,1)=»i» or mid(frase,pos,1)=»o» or mid(frase,pos,1)=»u» then

                               cont=cont+1

                end if      

next

wscript.echo «la frase tiene: » & cont & » vocales»     

Ejemplo 11: Contar vocales en una frase (versión 2)

option explicit

dim frase, letra, vocales, indice

vocales=0

frase=inputbox(«dime una frase»)

for indice=1 to len(frase)

                letra=mid(frase,indice,1)

                if instr(«aAeEiIoOuU»,letra)>0 then

vocales=vocales+1

                end if      

next

wscript.echo «la frase tiene: » & vocales & » vocales»

Ejemplo 12: Contar números positivos y negativos

option explicit

dim num, cont1, cont2, cont3

for cont1=1 to 10

num=cint(inputbox(«escribe un numero»))

if num >= 0  then

                               wscript.echo «es positivo»

                               cont2=cont2+1

                else

                               wscript.echo «es negativo»

                               cont3=cont3+1

                end if

next

                wscript.echo «hay » & cont2 & «positivos y » & cont3 & » negativos»

Ejemplo 13: Calcular la nota media

option explicit

dim num, suma, cont

while cont < 6

num=cint(inputbox(«dime las notas»))

suma=suma+num

                cont=cont+1

wend

suma=suma/6

                wscript.echo suma

if suma >= 5 then

                wscript.echo «estas apobado»

else

                wscript.echo «estas suspenso»

end if

Ejemplo 14: Determinar aprobado/suspenso en varias asignaturas

option explicit

dim asig, nota, cont, num

asig=cint(inputbox(«cuantas asignaturas tienes»))

for cont=1 to asig

                nota=cint(inputbox(«dime la nota»))

if nota >= 5 then

                               wscript.echo «aprobado»

                else

                               wscript.echo «suspenso»

                end if

next

Ejemplo 15: Simulación de consola de comandos

option explicit

dim sistema, comando, carpeta, directorio, salida, fichero

set sistema=wscript.createobject(«scripting.filesystemobject»)

set carpeta=sistema.getfolder(«c:\»)

do

                comando=inputbox(«comando:»)

                if comando=»pwd» then

                               wscript.echo carpeta.path

                end if

                if left(comando,2)=»cd» then

                               directorio=right(comando,len(comando)-3)

                               set carpeta=sistema.getfolder(directorio)

                end if

                if comando=»dir» then

                               salida=»»

                               for each fichero in carpeta.files

salida=salida & fichero.name & vbcrlf

                               next

end if

loop while comando<>»exit»

Ejemplo 16: Abrir una página web

option explicit

dim consola, pagina

set consola=wscript.createobject(«wscript.shell»)

pagina=inputbox(«dime una pagina web o fpt»)

consola.run «iexplore » & pagina

Ejemplo 17: Seleccionar un subdirectorio aleatorio y preguntar si se elimina

option explicit

dim respuesta, sistema, subdirectorio, carpeta

set sistema=wscript.createobject(«scripting.filesystemobject»)

dim contador

contador=0

for each subdirectorio in sistema.getfolder(«C:\windows»).subfolders

contador=contador+1

next

dim aleatorio

contador=0

aleatorio=fix(rnd()*contador)

for each subdirectorio in sistema.getfolder(«C:\windows»).subfolders

                if contador = aleatorio then

                               carpeta=subdirectorio.path

                               exit for

                end if

                contador=contador+1

next

respuesta=msgbox(«borrar? » & carpeta & » ?» ,vbexclamation+vbyesnocancel,»alerta de windows»)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.