QBASIC SOLUTIONS
Set-1
1.
Write a program to ask principal amount, time and rate
and calculate simple interest using Sub procedure. (I=PTR/100)
=>
DECLARE SUB CALC(P,T,R)
REM TO CALCULATE SIMPLE INTEREST
CLS
INPUT ”Enter principal, time and rate”; P,T,R
CALL CALC(P,T,R)
END
SUB CALC(P,T,R)
I=(P*T*R)/100
PRINT “The simple interest=”;I
END SUB
=>
DECLARE SUB CALC(P,T,R)
REM TO CALCULATE SIMPLE INTEREST
CLS
INPUT ”Enter principal, time and rate”; P,T,R
CALL CALC(P,T,R)
END
SUB CALC(P,T,R)
I=(P*T*R)/100
PRINT “The simple interest=”;I
END SUB
2.
Write a program to ask any two
numbers and find out their sum, product and difference using SUB procedure.
=>
DECLARE SUB SUM(A,B)
DECLARE SUB PRODUCT(A,B)
DECLARE SUB DIFFERENCE(A,B)
REM TO FIND SUM, PRODUCT AND DIFFERENCE OF TWO GIVEN NUMBERS
CLS
INPUT “Enter any two number”; A,B
CALL SUM(A,B)
CALL PRODUCT(A,B)
CALL DIFFERENCE(A,B)
END
SUB SUM(A,B)
REM SUM
S=A+B
PRINT “The sum of”;A;”and”;B;”is”;S
END SUB
SUB PRODUCT(A,B)
REM PRODUCT
P=A*B
PRINT “The product of”;A;”and”;B;”is”;P
END SUB
SUB DIFFERENCE(A,B)
REM DIFFERENCE
D=A-B
PRINT “The difference of”;A;”and”;B;”is”;D
END SUB
=>
DECLARE SUB SUM(A,B)
DECLARE SUB PRODUCT(A,B)
DECLARE SUB DIFFERENCE(A,B)
REM TO FIND SUM, PRODUCT AND DIFFERENCE OF TWO GIVEN NUMBERS
CLS
INPUT “Enter any two number”; A,B
CALL SUM(A,B)
CALL PRODUCT(A,B)
CALL DIFFERENCE(A,B)
END
SUB SUM(A,B)
REM SUM
S=A+B
PRINT “The sum of”;A;”and”;B;”is”;S
END SUB
SUB PRODUCT(A,B)
REM PRODUCT
P=A*B
PRINT “The product of”;A;”and”;B;”is”;P
END SUB
SUB DIFFERENCE(A,B)
REM DIFFERENCE
D=A-B
PRINT “The difference of”;A;”and”;B;”is”;D
END SUB
3.
Write a program to ask any two numbers
and find out the greater number using SUB procedure.
=>
DECLARE SUB GREAT(A,B)
REM TO FIND OUT GREATER NUMBER AMONG TWO GIVEN NUMEBRS
CLS
INPUT “Enter any two numbers”;A,B
CALL GREAT(A,B)
END
SUB GREAT(A,B)
IF A>B THEN
PRINT A;”is greater”
ELSE
PRINT B;”is greater”
END IF
END SUB
=>
DECLARE SUB GREAT(A,B)
REM TO FIND OUT GREATER NUMBER AMONG TWO GIVEN NUMEBRS
CLS
INPUT “Enter any two numbers”;A,B
CALL GREAT(A,B)
END
SUB GREAT(A,B)
IF A>B THEN
PRINT A;”is greater”
ELSE
PRINT B;”is greater”
END IF
END SUB
4.
Write a program to ask a number
and find the sum of digits using SUB procedure. If number is 123 then sum is 6.
=>
DECLARE SUB SUM(N)
REM TO FIND THE SUM OF GIVEN DIGITS
CLS
INPUT ”Enter a number”;N
CALL SUM(N)
END
SUB SUM(N)
S=0
WHILE N<>0
R=N MOD 10
S=S+R
N=N\10
WEND
PRINT “The sum of digits of given number is”;S
END SUB
=>
DECLARE SUB SUM(N)
REM TO FIND THE SUM OF GIVEN DIGITS
CLS
INPUT ”Enter a number”;N
CALL SUM(N)
END
SUB SUM(N)
S=0
WHILE N<>0
R=N MOD 10
S=S+R
N=N\10
WEND
PRINT “The sum of digits of given number is”;S
END SUB
5.
Write a program to find the sum
of first ten natural numbers using SUB procedure.
=>
DECLARE SUB SUM()
REM TO FIND THE SUM F FIRST TEN NATUAL NUMEBRS
CLS
CALL SUM
END
=>
DECLARE SUB SUM()
REM TO FIND THE SUM F FIRST TEN NATUAL NUMEBRS
CLS
CALL SUM
END
SUB SUM
N=10
S=N*(N+1)/2
PRINT “THE SUM OF FIRST TEN NATURAL NUMBERS=”;S
END SUB
6.
Write a program to ask a number
and display its square value using SUB procedure.
=>
DECLARE SUB SSQR(N)
REM TO DISPLAY SQUARE VALUE OF GIVEN NUMBER
CLS
INPUT “Enter any number”;N
CALL SSQR(N)
END
SUB SSQR(N)
SQ=N^2
PRINT “The square of given number is”;SQ
END SUB
=>
DECLARE SUB SSQR(N)
REM TO DISPLAY SQUARE VALUE OF GIVEN NUMBER
CLS
INPUT “Enter any number”;N
CALL SSQR(N)
END
SUB SSQR(N)
SQ=N^2
PRINT “The square of given number is”;SQ
END SUB
7.
Write a program to ask a number
and display its multiplication table using SUB procedure.
=>
DECLARE SUB TABLE(N)
REM TO DISPLAY THE MULTIPLICATION TABLE OF GIVEN NUMBER
CLS
INPUT “Enter any number”;N
CALL TABLE(N)
END
SUB TABLE(N)
FOR I = 1 TO 10
PRINT N;”*”;I;”=”;N*I
NEXT I
END SUB
=>
DECLARE SUB TABLE(N)
REM TO DISPLAY THE MULTIPLICATION TABLE OF GIVEN NUMBER
CLS
INPUT “Enter any number”;N
CALL TABLE(N)
END
SUB TABLE(N)
FOR I = 1 TO 10
PRINT N;”*”;I;”=”;N*I
NEXT I
END SUB
8.
Write a program to ask your name
and print 10 times using SUB procedure.
=>
DECLARE SUB NAME(N$)
REM TO DISPLAY YOUR NAME TEN TIMES
CLS
INPUT “Enter your name”;N$
CALL NAME(N$)
END
SUB NAME(N$)
FOR I = 1 TO 10
PRINT N$
NEXT I
END SUB
=>
DECLARE SUB NAME(N$)
REM TO DISPLAY YOUR NAME TEN TIMES
CLS
INPUT “Enter your name”;N$
CALL NAME(N$)
END
SUB NAME(N$)
FOR I = 1 TO 10
PRINT N$
NEXT I
END SUB
9.
Write a program to display series
of only odd numbers from 1 to 100 using SUB procedure.
=>
DECLARE SUB SERIES()
REM SERIES OF ODD NUMBERS FROM 1 TO 100
CLS
CALL SERIES
END
SUB SERIES
FOR I = 1 TO 100 STEP 2
PRINT I
NEXT I
END SUB
=>
DECLARE SUB SERIES()
REM SERIES OF ODD NUMBERS FROM 1 TO 100
CLS
CALL SERIES
END
SUB SERIES
FOR I = 1 TO 100 STEP 2
PRINT I
NEXT I
END SUB
10.
Write a program to display those
numbers which are divisible by 2 and 3 between 1 and 100 using SUB procedure.
=>
DECLARE SUB SERIES
REM TO DISPLAY NUMBERS DIVISIBLE BY 2 & 3 FROM 1 TO 100
CLS
CALL SERIES
END
SUB SERIES
PRINT “The numbers divisible by 2 and 3 from 1 to 100 :”
FOR I = 1 TO 100
IF I MOD 2 = 0 AND I MOD 3 = 0 THEN PRINT I
NEXT I
END SUB
=>
DECLARE SUB SERIES
REM TO DISPLAY NUMBERS DIVISIBLE BY 2 & 3 FROM 1 TO 100
CLS
CALL SERIES
END
SUB SERIES
PRINT “The numbers divisible by 2 and 3 from 1 to 100 :”
FOR I = 1 TO 100
IF I MOD 2 = 0 AND I MOD 3 = 0 THEN PRINT I
NEXT I
END SUB
SET-11
1.
Write a SUB program to ask 10
numbers and store in a single dimension array and display the list of input
numbers.
=>
DECLARE SUB NUM(N())
REM TO DISPLAY 10 INPUT NUMBERS STORED IN A SINGL;E DIMENSION ARRAY
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”; N(I)
NEXT I
CALL NUM(N())
END
SUB NUM(N())
CLS
PRINT “The input numbers are:”
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
=>
DECLARE SUB NUM(N())
REM TO DISPLAY 10 INPUT NUMBERS STORED IN A SINGL;E DIMENSION ARRAY
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”; N(I)
NEXT I
CALL NUM(N())
END
SUB NUM(N())
CLS
PRINT “The input numbers are:”
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
2.
Write a SUB program to ask ten
numbers and store in single dimension array and find out total prime and
composite numbers.
=>
DECLARE SUB COUNT(N())
REM TO FIND THE TOTAL PRIME AND COMPOSITE NUMBERS ENTERED
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL COUNT(N())
END
SUB COUNT(N())
PC=0
CC=0
FOR I = 1 TO 10
C=0
FOR K=1 TO N(I)
IF N(I) MOD K = 0 THEN
C=C+1
END IF
NEXT K
IF C=2 THEN
PC=PC+1
ELSE
CC=CC+1
END IF
NEXT I
PRINT “Total number of prime numbers:”;PC
PRINT “Total number of composite numbers:”;CC
END SUB
=>
DECLARE SUB COUNT(N())
REM TO FIND THE TOTAL PRIME AND COMPOSITE NUMBERS ENTERED
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL COUNT(N())
END
SUB COUNT(N())
PC=0
CC=0
FOR I = 1 TO 10
C=0
FOR K=1 TO N(I)
IF N(I) MOD K = 0 THEN
C=C+1
END IF
NEXT K
IF C=2 THEN
PC=PC+1
ELSE
CC=CC+1
END IF
NEXT I
PRINT “Total number of prime numbers:”;PC
PRINT “Total number of composite numbers:”;CC
END SUB
3.
Write a SUB program to ask name
of any five items, quantity and their rate in the single dimension array and
display list of items, rate and total amount of each item in tabular form.
=>
DECLARE SUB TABLE(N$(), Q(), R())
REM TO DIIPLAY LIST OF ITEMS, RATE AND TOTAL AMOUNT
CLS
DIM N$(5)
DIM Q(5)
DIM R(5)
FOR I = 1 TO 5
INPUT “ENTER NAME OF ITEM”;N$(I)
INPUT “ENTER QUANTITY”;Q(I)
INPUT “ENTER RATE”;R(I)
PRINT
NEXT I
CALL TABLE(N$(), Q(), R())
END
SUB TABLE(N$(), Q(), R())
CLS
PRINT “NAME OF ITEM”, “RATE”, “TOTAL AMOUNT”
FOR I = 1 TO 5
T=R(I)*Q(I)
PRINT N$(I), R(I), T
NEXT I
END SUB
=>
DECLARE SUB TABLE(N$(), Q(), R())
REM TO DIIPLAY LIST OF ITEMS, RATE AND TOTAL AMOUNT
CLS
DIM N$(5)
DIM Q(5)
DIM R(5)
FOR I = 1 TO 5
INPUT “ENTER NAME OF ITEM”;N$(I)
INPUT “ENTER QUANTITY”;Q(I)
INPUT “ENTER RATE”;R(I)
NEXT I
CALL TABLE(N$(), Q(), R())
END
SUB TABLE(N$(), Q(), R())
CLS
PRINT “NAME OF ITEM”, “RATE”, “TOTAL AMOUNT”
FOR I = 1 TO 5
T=R(I)*Q(I)
PRINT N$(I), R(I), T
NEXT I
END SUB
4. Write a SUB program to ask 10 numbers and store in a single dimension
array and find out roll number is present in array or not.
=>
DECLARE
SUB CHECK(N(),R)
REM TO CHECK WHETHER ROLL NUMBER IS PRESENT IN ARRAY OR NOT
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter any number”;N(I)
NEXT I
CLS
INPUT “Enter your roll number”;R
CALL CHECK(N(),R)
END
SUB CHECK (N (), R)
FLAG = 0
FOR I = 1 TO 10
IF R=N(I) THEN FLAG = 1
NEXT I
IF FLAG = 1 THEN
PRINT "Your roll number is present
in array"
ELSE
PRINT "Your roll number is not present in array"
END IF
END SUB
5.
Write a SUB program to ask ten
numbers and store in single dimension array and display in ascending order.
=>
DECLARE SUB ORDER(N())
REM TO DISPLAY INPUT NUMBERS IN ASCENDING ORDER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL ORDER(N())
END
SUB ORDER(N())
CLS
PRINT “The numbers in ascending order:”
FOR I = 1 TO 10
FOR K = 1 TO 10-I
IF N(K)>N(K+1) THEN SWAP N(K),N(K+1)
NEXT K
NEXT I
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
=>
DECLARE SUB ORDER(N())
REM TO DISPLAY INPUT NUMBERS IN ASCENDING ORDER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL ORDER(N())
END
SUB ORDER(N())
CLS
PRINT “The numbers in ascending order:”
FOR I = 1 TO 10
FOR K = 1 TO 10-I
IF N(K)>N(K+1) THEN SWAP N(K),N(K+1)
NEXT K
NEXT I
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
6.
Write a SUB program to as 10
students name and store in single dimension array and search your name is in
the list or not.
=>
DECLARE SUB CHECK(N$(),NM$)
REM TO CHECK WHETHER NAME IS PRESENT IN ARRAY OR NOT
CLS
DIM N$(10)
FOR I = 1 TO 10
INPUT “Enter any name”;N$(I)
NEXT I
CLS
INPUT “Enter your name”;NM$
CALL CHECK(N$(),NM$)
END
SUB CHECK (N$(), NM$)
FLAG = 0
FOR I = 1 TO 10
IF UCASE$(NM$) = UCASE$(N$(I)) THEN FLAG = 1
NEXT I
IF FLAG = 1 THEN
PRINT "Your name is present in array"
ELSE
PRINT "Your name is not present in array"
END IF
END SUB
=>
DECLARE SUB CHECK(N$(),NM$)
REM TO CHECK WHETHER NAME IS PRESENT IN ARRAY OR NOT
CLS
DIM N$(10)
FOR I = 1 TO 10
INPUT “Enter any name”;N$(I)
NEXT I
CLS
INPUT “Enter your name”;NM$
CALL CHECK(N$(),NM$)
END
SUB CHECK (N$(), NM$)
FLAG = 0
FOR I = 1 TO 10
IF UCASE$(NM$) = UCASE$(N$(I)) THEN FLAG = 1
NEXT I
IF FLAG = 1 THEN
PRINT "Your name is present in array"
ELSE
PRINT "Your name is not present in array"
END IF
END SUB
7.
Write a SUB program to ask ten
numbers and store in single dimension array and display in descending order.
=>
DECLARE SUB ORDER(N())
REM TO DISPLAY INPUT NUMBERS IN DESCENDING ORDER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL ORDER(N())
END
SUB ORDER(N())
CLS
PRINT “The numbers in descending order:”
FOR I = 1 TO 10
FOR K = 1 TO 10-I
IF N(K)<N(K+1) THEN SWAP N(K),N(K+1)
NEXT K
NEXT I
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
=>
DECLARE SUB ORDER(N())
REM TO DISPLAY INPUT NUMBERS IN DESCENDING ORDER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter a number”;N(I)
NEXT I
CALL ORDER(N())
END
SUB ORDER(N())
CLS
PRINT “The numbers in descending order:”
FOR I = 1 TO 10
FOR K = 1 TO 10-I
IF N(K)<N(K+1) THEN SWAP N(K),N(K+1)
NEXT K
NEXT I
FOR I = 1 TO 10
PRINT N(I)
NEXT I
END SUB
8.
Write a SUB program to ask ten
numbers and store in single dimension array and find out sum, product and
difference of greatest and smallest number.
=>
DECLARE SUB SUM(G,S)
DECLARE SUB PRODUCT(G,S)
DECLARE SUB DIFFERENCE(G,S)
REM TO FIND SUM, PRODUCT AND DIFFERENCE OF GREATEST AND SMALLEST NUMBER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter any number”;N(I)
NEXT I
G=N(1)
S=N(1)
FOR I = 2 TO 10
IF N(I)>G THEN G=N(I)
IF N(I)<S THEN S=N(I)
NEXT I
CLS
CALL SUM(G,S)
CALL PRODUCT(G,S)
CALL DIFFERENCE(G,S)
END
SUB SUM(G,S)
REM SUM
SM=G+S
PRINT “The sum of greatest and smallest input numbers is:”;SM
END SUB
SUB PRODUCT(G,S)
REM PRODUCT
P=G*S
PRINT “The product of greatest and smallest input numbers is:”;P
END SUB
SUB DIFFERENCE(G,S)
REM DIFFERENCE
D= G-S
PRINT “The difference of greatest and smallest input numbers is:”;D
END SUB
=>
DECLARE SUB SUM(G,S)
DECLARE SUB PRODUCT(G,S)
DECLARE SUB DIFFERENCE(G,S)
REM TO FIND SUM, PRODUCT AND DIFFERENCE OF GREATEST AND SMALLEST NUMBER
CLS
DIM N(10)
FOR I = 1 TO 10
INPUT “Enter any number”;N(I)
NEXT I
G=N(1)
S=N(1)
FOR I = 2 TO 10
IF N(I)>G THEN G=N(I)
IF N(I)<S THEN S=N(I)
NEXT I
CLS
CALL SUM(G,S)
CALL PRODUCT(G,S)
CALL DIFFERENCE(G,S)
END
SUB SUM(G,S)
REM SUM
SM=G+S
PRINT “The sum of greatest and smallest input numbers is:”;SM
END SUB
SUB PRODUCT(G,S)
REM PRODUCT
P=G*S
PRINT “The product of greatest and smallest input numbers is:”;P
END SUB
SUB DIFFERENCE(G,S)
REM DIFFERENCE
D= G-S
PRINT “The difference of greatest and smallest input numbers is:”;D
END SUB
9.
Write a SUB program to ask name
of five students and their average marks and display in ascending order in the
basis of name.
=>
DECLARE SUB DISPLAY(N$(), AV())
REM TO DISPLAY NAME AND AVERAGE MARSK IN ASCENDING ORDER ON THE BASIS OF NAME
CLS
DIM N$(5)
DIM AV(5)
FOR I = 1 TO 5
INPUT “Enter your name”;N$(I)
INPUT “Enter your average marks”;AV(I)
PRINT
NEXT I
CALL DISPLAY(N$(),AV())
END
SUB DISPLAY(N$(),AV())
CLS
FOR I = 1 TO 5
FOR K = 1 TO 5-I
IF N$(K)>N$(K+1) THEN
SWAP N$(K), N$(K+1)
SWAP AV(K), AV (K+1)
END IF
NEXT K
NEXT I
PRINT “The names and average marks in ascending order”
PRINT “Name”, “Average Marks”
FOR I = 1 TO 5
PRINT N$(I),AV(I)
NEXT I
END SUB
=>
DECLARE SUB DISPLAY(N$(), AV())
REM TO DISPLAY NAME AND AVERAGE MARSK IN ASCENDING ORDER ON THE BASIS OF NAME
CLS
DIM N$(5)
DIM AV(5)
FOR I = 1 TO 5
INPUT “Enter your name”;N$(I)
INPUT “Enter your average marks”;AV(I)
NEXT I
CALL DISPLAY(N$(),AV())
END
SUB DISPLAY(N$(),AV())
CLS
FOR I = 1 TO 5
FOR K = 1 TO 5-I
IF N$(K)>N$(K+1) THEN
SWAP N$(K), N$(K+1)
SWAP AV(K), AV (K+1)
END IF
NEXT K
NEXT I
PRINT “The names and average marks in ascending order”
PRINT “Name”, “Average Marks”
FOR I = 1 TO 5
PRINT N$(I),AV(I)
NEXT I
END SUB
10.
Write a SUB program to ask a
number and display its prime factors.
=>
DECLARE SUB PF(N)
REM TO DISPLAY PRIME FACTORS OF GIVEN NUMBERS
CLS
INPUT “Enter any number”;N
CALL PF(N)
END
SUB PF(N)
PRINT “The prime factors of”;N; ”are:”
FOR I = 2 TO N
IF N MOD I = 0 THEN
C=0
FOR K = 1 TO N
IF I MOD K = 0 THEN C=C+1
NEXT K
IF C=2 THEN PRINT I
END IF
NEXT I
END SUB
=>
DECLARE SUB PF(N)
REM TO DISPLAY PRIME FACTORS OF GIVEN NUMBERS
CLS
INPUT “Enter any number”;N
CALL PF(N)
END
SUB PF(N)
PRINT “The prime factors of”;N; ”are:”
FOR I = 2 TO N
IF N MOD I = 0 THEN
C=0
FOR K = 1 TO N
IF I MOD K = 0 THEN C=C+1
NEXT K
IF C=2 THEN PRINT I
END IF
NEXT I
END SUB