12.169 cursos gratis
8.789.353 alumnos
Facebook Twitter YouTube
Busca cursos gratis:

Algoritmos en QBASIC. Manual

Autor: Abraham Sopla Maslucán
Curso:
8/10 (3 opiniones) |12730 alumnos|Fecha publicación: 26/10/2009
Envía un mensaje al autor

Capítulo 17:

 39 ejercicios resueltos (3/4)

20. Dado un texto, escribir un programa que imprima la cantidad de cada una de las vocales incluidas en el texto.

DIM Tama AS INTEGER

DIM Texto AS STRING

CLS

INPUT "ESCRIBA UN TEXTO: ", Texto$

Texto$ = UCASE$(Texto)

Tama = LEN(Texto$)

FOR i = 1 TO Tama

    IF MID$(Texto$, i, 1) = "A" THEN

               va = va + 1

    END IF

NEXT

FOR i = 1 TO Tama

    IF MID$(Texto$, i, 1) = "E" THEN

               ve = ve + 1

    END IF

NEXT

FOR i = 1 TO Tama

    IF MID$(Texto$, i, 1) = "I" THEN

               vi = vi + 1

    END IF

NEXT

FOR i = 1 TO Tama

    IF MID$(Texto$, i, 1) = "O" THEN

                vo = vo + 1

    END IF

NEXT

FOR i = 1 TO Tama

    IF MID$(Texto$, i, 1) = "U" THEN

               vu = vu + 1

    END IF

NEXT

PRINT "Vocales a: ", va

PRINT "Vocales e: ", ve

PRINT "Vocales i: ", vi

PRINT "Vocales o: ", vo

PRINT "Vocales u: ", vu

21. Hacer un programa que permita calcular todos los números primos entre dos números ingresados por el teclado.

DIM i, N1, N2, j AS INTEGER

INPUT "NÚMERO INFERIOR: ", N1

INPUT "NÚMERO SUPERIOR: ", N2

FOR i = N1 TO N2

    j = 2

    DO WHILE i MOD j <> o

        j = j + 1

            IF i = j THEN

                PRINT " ", i

            END IF

    LOOP

NEXT

22. Escriba un programa que determine cuantas vocales, consonantes y espacios en blanco existen en un texto.

DIM i AS INTEGER

DIM Textito, Captura AS STRING

INPUT "INGRESE EL TEXTO: ", Textito$

Textito$ = UCASE$(Textito$)

FOR i = 1 TO LEN(Textito$)

        Captura$ = MID$(Textito$, i, 1)

        SELECT CASE Captura

                CASE IS = "A": vocal = vocal + 1

                CASE IS = "E": vocal = vocal + 1

                CASE IS = "I": vocal = vocal + 1

                CASE IS = "O": vocal = vocal + 1

                CASE IS = "U": vocal = vocal + 1

        END SELECT

        IF MID$(Textito$, i, 1) = " " THEN

                blanco = blanco + 1

        END IF

NEXT

PRINT "Vocales: "; vocal

PRINT "Espacios en blanco: ", blanco

PRINT "Consonantes: ", LEN(Textito$) - (vocal + blanco)

23. Hacer un programa que pase un número natural menor de 9 a un número de otra base.

DIM p, A, B, j AS LONG

DIM Vec1(9) AS INTEGER

INPUT "NUMERO MAYOR DE 2 Y MENOR DE 10:  ", A

INPUT "NUMERO BASE:  ", B

i = 0

IF ((A >= 2) AND (A <= 10)) THEN

    DO WHILE (A > 0)

            i = i + 1

            Vec1(i) = A MOD B

            A = A \ B

    LOOP

    j = i

END IF

FOR p = j TO 1 STEP -1

        PRINT STR$(Vec1(p))

NEXT

24. Escribir un programa que imprima los números del 1 al 10, cada uno de ellos con su respectiva factorial.

FOR i = o TO 10

    IF i = 0 OR i = 1 THEN

            f = 1

    ELSE

        f = f * i

    END IF

PRINT "Factorial" + STR$(i) + "==>" + STR$(f)

NEXT

25. Escriba un programa que permita ingresar un número n entero positivo mayor o igual que 10 y menor o igual que 50; luego imprima los múltiplos menores que 1000 así como sus divisores respectivos.

DIM Vec1(1000), Vec2(1000) AS DOUBLE

CLS

INPUT "INGRESE UN NUMERO MAYOR A 10 Y MENOR A 50: ", Numero

IF Numero >= 10 AND Numero <= 50 THEN

j = 1

a = 1

    DO

            a = Numero * j

            PRINT a

            j = j + 1

    LOOP WHILE a < 1000

    FOR i = 1 TO Numero 'para hallar los divisores

        IF Numero MOD i = 0 THEN

            PRINT "Divisores: ", i

        END IF

    NEXT

END IF

26. Escribir un programa que ordene ascendentemente 10 números ingresados por el teclado.

DIM Vec1(10) AS DOUBLE

CLS

TAM = 10

FOR I = 1 TO 10

        INPUT "Ingrese Número: ", Num

        Vec1(I) = Num

NEXT

FOR I = 1 TO TAM - 1

    FOR j = 1 TO TAM - 1

               IF Vec1(j) > Vec1(j + 1) THEN

                    temp = Vec1(j)

                    Vec1(j) = Vec1(j + 1)

                    Vec1(j + 1) = temp

               END IF

    NEXT

NEXT

FOR I = 1 TO 10

        PRINT "Número: ", I, Vec1(I)

NEXT

27. Escribir un programa que ordene descendentemente 10  números ingresados por el teclado.

DIM Vec2(10) AS DOUBLE

CLS

Tam = 10

FOR i = 1 TO 10

        INPUT "Ingrese un N£mero: ", Num

        Vec2(i) = Num

NEXT

FOR i = 1 TO Tam - 1

    FOR j = 1 TO Tam - 1

               IF Vec2(j) < Vec2(j + 1) THEN

                    temp = Vec2(j)

                    Vec2(j) = Vec2(j + 1)

                    Vec2(j + 1) = temp

               END IF

    NEXT

NEXT

PRINT "==ORDENACIÓN DESCENDENTE=="

FOR i = 1 TO 10

        PRINT "Numero", Vec2(i)

NEXT

28. Escribir un programa que permita pasar un número natural cualquiera a binario.

DIM Num, Cuo, Res AS INTEGER

DIM NN AS STRING

CLS

INPUT "INGRESE UN NUMERO NATURAL: ", Num

DO

    Res = Num MOD 2

    Cuo = Num \ 2

    Num = Cuo

    NN$ = NN$ + STR$(Res)

LOOP WHILE Num > 0

FOR i = LEN(NN$) TO 1 STEP -1

        a$ = a$ + MID$(NN$, i, 1)

NEXT

PRINT "Numero", a$

29. Escribir un programa que permita pasar un número binario cualquiera a un número natural.

DIM NB AS STRING

CLS

INPUT "DAME UN NÚMERO BINARIO; ", NB$

T = LEN(NB$)

NUMERO = 0

FOR i = 1 TO T

        NUMERO = NUMERO + VAL(MID$(NB$, i, 1)) * 2 ^ (T - i)

NEXT

PRINT NUMERO

Capítulo siguiente - 39 ejercicios resueltos (4/4)

Nuestras novedades en tu e-mail

Escribe tu e-mail:



MailxMail tratará tus datos para realizar acciones promocionales (vía email y/o teléfono).
En la política de privacidad conocerás tu derechos y gestionarás la baja.

Cursos similares a Algoritmos en QBASIC. Manual



  • Vídeo
  • Alumnos
  • Valoración
  • Cursos
1. Algoritmos y lenguaje C
Este curso pretende dar a conocer las explicaciones más simples del trabajo de los... [13/01/06]
36.357  
2. Manual de programación
El objetivo de este curso consiste en ofrecer conocimientos básicos de... [31/01/08]
4.300  
3. Manual HTML
HTML es un lenguaje muy sencillo que permite describir hipertexto, es decir, texto... [25/11/04]
74.947  

¿Qué es mailxmail.com?|ISSN: 1699-4914|Ayuda
Publicidad|Condiciones legales de mailxmail