Output Question in QBASIC
(It Carry 2 Marks for SEE)
Write down the output of the given program.
Show with dry run in table.
DECLARE FUNCTION SQD(N)
CLS
S = 0
FOR L = 1 TO 3
READ NUM
S = S + SQD(NUM)
NEXT L
PRINT "Sum"; S
DATA 2,4,6
END
FUNCTION SQD (N)
SQD = N ^ 2
END FUNCTION
Loop 1 to 3 |
Variable num |
Expression SQD |
Variable s |
1 to 3 ? Yes |
2 |
4 |
S=0+4=4 |
2 to 3 ? Yes |
4 |
16 |
S=4+16=20 |
3 to 3 ? Yes |
6 |
36 |
S=20+36=56 |
Sum 56
2)
SEE 2075
DECLARE SUB series()
CALL series
END
SUB series
X = 1
FOR K = 1 TO 4
PRINT X;
X = X + K
NEXT K
END SUB
Dry Run:
Variable x |
Loop |
Output |
1 |
K= 1 to 4 ? Yes |
1 |
X=x+1=2 |
K=2 to 4? Yes |
2 |
X=2+2=4 |
K=3 to 4 ? Yes |
4 |
X=4+3=7 |
K= 4 to 4? Yes |
7 |
X=7+4=11 |
K= 5 to 4? No |
Exit from loop |
Final Output:
1 2 4 7
3)
SEE 2074
DECLARE SUB Display (T$)
CLS
T$ = "COMPUTER"
CALL Display (T$)
END
SUB Display (T$)
FOR C = 1 to LEN (T$) STEP 2
D$ = MID$(T$, C, 1)
PRINT D$;
NEXT C
END SUB
Dry Run
Variable t$ |
Loop C= 1 to LEN(t$) |
Variable d$ |
Output |
COMPUTER |
C= 1 to 8 ? Yes |
C |
C |
COMPUTER |
C=3 to 8 ? Yes |
M |
M |
COMPUTER |
C= 5 to 8 ? Yes |
U |
U |
COMPUTER |
C= 7 to 8 ? Yes |
E |
E |
COMPUTER |
C=9 to 8? No |
Exit from loop |
CMUE
4)
SLC 2068
DECLARE SUB series( )
CALL aerie
END
SUB series
A=2
B=2
FOR ctr= 1 to 2
PRINT a;b;
A=a+b
B=a+b
NEXT ctr
END SUB
Dry Run:
Variable a |
Variable b |
Loop |
Output |
2 |
2 |
Ctr= 1 to 2 ? Yes |
2 2 |
2+2=4 |
4+2=6 |
Ctr=2 to 2 ? Yes |
4 6 |
4+6=10 |
10+6=16 |
Ctr=3 to 2? No |
Exit from loop |
2 2 4 6
5)
SLC 2067
DECLARE SUB result (n$)
n$ = "SCIENCE"
CALL result(n$)
END
SUB result (n$)
b = LEN(n$)
count = 1
WHILE count <= b
x$ = x$ + MID$(n$, count, 1)
count = count + 2
WEND
PRINT x$
END SUB
Dry Run:
Variable n$ |
Variable b |
Variable count |
Loop Is count <=b? |
Variable x$ |
SCIENCE |
7 |
1 |
Is 1<=7? Yes |
S |
SCIENCE |
7 |
3 |
Is 3<=7? Yes |
S+I=SI |
SCIENCE |
7 |
5 |
Is 5<=7? Yes |
SI+N=SIN |
SCIENCE |
7 |
7 |
Is 7<=7? Yes |
SIN+E=SINE |
SCIENCE |
7 |
9 |
Is 9<=7? Yes |
Exit from loop |
SINE
6)
SLC 2063
DECLARE FUNCTION find( )
CLS
PRINT FIND
END
FUNCTION FIND
FOR n= 1 to 9 STEP 2
LET s=s+n
NEXT n
FIND=s
END FUNCTION
Variable s |
Loop N= 1 to 9 step 2 |
0+1=1 |
1 to 9 ?Yes |
1+3=4 |
3 to 9 ? yes |
4+5=9 |
5 to 9 ? Yes |
9+7=16 |
7 to 9 ? Yes |
16+9=25 |
9 to 9 ? Yes |
25+9=35 |
11 to 9 ? No, Exit from loop |
DECLARE FUNCTION RESULT (N)
N = 4
PRINT RESULT (N)
END
FUNCTION RESULT (N)
FOR I = 1 TO N
T = I + 2
D = D + T
NEXT I
RESULT = D
END FUNCTION
Dry
Run
Variable n |
Loop I= 1 to n |
Variable t |
Variable d |
4 |
I= 1 to 4 Yes |
T=1+2=3 |
D=0+3=3 |
4 |
I= 2 to 4 Yes |
T=2+2=4 |
D=3+4=7 |
4 |
I= 3 to 4 Yes |
T=3+2=5 |
D=7+5=12 |
4 |
I= 4 to 4 Yes |
T=4+2=6 |
D=12+6=18 |
4 |
I=4 to 5 No |
Exit from loop |
18
8)
DECLARE SUB PATTERN()
CALL PATTERN
END
SUB PATTERN
A=2
FOR I = 1 TO 5
PRINT A;
A=A+2
NEXT I
END SUB
Dry Run:
A |
FOR I= 1 to 5 |
Print A; |
A=A+2 |
2 |
1 |
2 |
A=2+2=4 |
4 |
2 |
4 |
A=4+2=6 |
6 |
3 |
6 |
A=6+2=8 |
8 |
4 |
8 |
A=8+2=10 |
10 |
5 |
10 |
A=10+2=12 |
Final
Output is
2
4 6 8 10
9)
DECLARE SUB RESULT()
CALL RESULT
END
SUB RESULT()
N=5
C=1
WHILE C<=5
PRINT n
N N=N*10+5
C=C+1
WEND
END SUB
Dry Run
N |
C |
C<=5? |
PRINT
N |
N=N*10+5 |
C=C+1 |
5 |
1 |
1<=5?
YES |
5 |
N=5*10+5 |
C=1+1=2 |
55 |
2 |
2<=5?
YES |
55 |
N=55*10+5 |
C=2+1=3 |
555 |
3 |
3<=5?
YES |
555 |
N=555*10+5 |
C=3+1=4 |
5555 |
4 |
4<=5?
YES |
5555 |
N=5555*10+5=55555 |
C=4+1=5 |
55555 |
5 |
5<=5?
YES |
55555 |
N=55555*10+5 |
C=5+1=6 |
Final Output is:
5
55
555
5555
55555
10)
DECLARE SUB show (a)
CLS
n = 87
CALL show(n)
END
SUB show (a)
DO
b = a MOD 6 + 3
IF b MOD 4 = 0 THEN GOTO aa
PRINT b;
aa:
a = a - 10
LOOP WHILE a >= 50
END SUB
Dry Run Table |
|||||
Variable
n |
Variable
a |
B= A
MOD 6+3 |
Condition Is B
MOD 4=0 |
Result |
Loop Is a>=50? |
87 |
87 |
B=87 MOD 6+3 B=3+3=6 |
Is 6 MOD 4=0? False |
6 |
Is 77>=50? Yes |
87 |
77 |
B=77 MOD 6+3 B=5+3=8 |
Is 8 MOD 4=0? True |
- |
Is 67>=50? Yes |
87 |
67 |
B=67 MOD 6+3 B= 1+3=4 |
Is 4 MOD 4=0? True |
- |
Is 57>=50? Yes |
87 |
57 |
B=57 MOD 6+3 B=3+3=6 |
Is 6 MOD 4=0? True |
6 |
Is 47>=50? No Exit from loop |
Final
output:
6 6
11) SEE 2074(Upgrade)
DECLARE SUB REMINDER (R)
CLS
FOR I = 1 TO 4
READ X
CALL REMINDER (X)
NEXT I
DATA 56, 28, 8, 48
END
SUB REMINDER (R)
R1 = R MOD 4
R2 = R MOD 3
IF R1 = 0 AND R2<> 0
THEN
PRINT R
END IF
END SUB
Loop I= 1 to 4 |
Variable x |
Variable r1 |
Variable r2 |
Condition |
Output |
1 to 4 ? Yes |
56 |
0 |
2 |
Is r1=0 and r2<>0?
Yes |
56 |
2 to 4 ? Yes |
28 |
0 |
1 |
Is r1=0 and r2<>0?
Yes |
28 |
3 to 4 ? Yes |
8 |
0 |
2 |
Is r1=0 and r2<>0?
Yes |
8 |
4 to 4 ? Yes |
48 |
0 |
0 |
Is r1=0 and r2<>0? No |
|
5 to 4? No Exit from loop |
|
|
|
|
|
56
28
8
Try following program yourself. Hints is given.
12) SLC 2070
DECLARE FUNCTION area(l,b)
LET l=10
LET b=5
PRINT “The area=”;area(l,b)
END
FUNCTION area(l,b)
A=l*b
Area=a
END FUNCTION
Output:
The area=50
13) SLC 2066
DECLARE SUB series ()
CALL series
END
SUB series
x = 1
y = 1
FOR z = 1 TO 4
PRINT x;
y = y + 1
x = x * 10 + y
NEXT z
END SUB
Output:
1 12 123 1234
14) SLC supplementary 2066
DECLARE SUB result ( )
CALL result
END
SUB result
FOR i=1 TO 9 STEP 2
sum=sum+i^2
NEXT i
PRINT sum
END SUB
Output:
15) DECLARE SUB test ()
CLS
CALL test
END
SUB test
CLS
c = 1
FOR x = 1 TO 8 STEP 2
PRINT c;
SWAP b, c
c = b + 1
NEXT x
END SUB
OUTPUT
16) SLC 2064
DECLARE FUNCTION area (a, b)
CLS
LET a = 30
LET b = 40
LET d = area(a, b)
PRINT d
END
FUNCTION area (a, b)
PRINT a, b
area = a * b
END FUNCTION
Output:
1200
17)
DECLARE FUNCTION op$ (t$)
CLS
PRINT op$("TECHNOLOGY")
END
FUNCTION op$ (t$)
b = LEN(t$)
FOR i = 1 TO b
IF i MOD 2 = 1 THEN
m$ = m$ + MID$(t$, i, 1)
END IF
NEXT i
op$ = m$
END FUNCTION
Output:
TCNLG
18)
DECLARE FUNCTION test (a)
CLS
a = 20
PRINT test(a)
END
FUNCTION test (a)
FOR x = 1 TO a
IF x MOD 2 <> 0 THEN
s = s + x
END IF
NEXT x
test = s
END FUNCTION
Output:
DECLARE SUB
show (s)
CALL show(534)
END
SUB show (n)
a = n MOD 10
b = n \ 10
c = b MOD 10
d = INT(n /
100)
PRINT "Ans=";
a + c + d
END SUB
Output:
20) SEE 2073 Supp.
DECLARE SUB check(n)
CLS
n=1436
CALL check(n)
END
SUB check(n)
DO WHILE n <> 0
r= n MOD 10
s=s*10+r
n=n\10
LOOP
PRINT " NOW N BECOMES";s
END SUB
Output:
NOW N BECOMES 6341
21) SLC 2065
DECLARE FUNCTION interest(p,t,r)
CLS
LET p=30
LET t=40
LET r=6
LET d=interest(p,t,r)
PRINT "The simple interest will be";d
END
FUNCTION interest (p,t,r)
Answer=(p*t*r)/100
interest=Answer
END FUNCTION
The simple interest
will be 72
22) SLC supplementary 2065
DECLARE SUB result (a$)
CLS
a$ = "education"
CALL result(a$)
END
SUB result (a$)
FOR c = 1 TO LEN(a$) STEP 2
x$ = MID$(a$, c, 1)
PRINT x$
NEXT c
END SUB
Output:
e
u
a
i
n
23)
DECLARE SUB output ( )
CLS
CALL output
END
SUB output
x=1
FOR i= 1 to 4
PRINT x
x=(x*10)+i
NEXT i
END SUB
Output:
1
1
1
1
1 2
1
1 2 3
14)
DECLARE SUB result ()
CALL result
END
SUB result
v = 5
c = 1
WHILE c <= 5
PRINT v, v ^ c
c = c + 1
WEND
END SUB
Output:
5 5
5 25
5 125
5 625
5 3125
15) SEE Grade Promotion Exam 2078
DECLARE SUB result(c$)
c$="COMPUTER"
CALL result(c$)
END
SUB result(c$)
FOR c=1 TO LEN(c$) STEP 2
m$=MID$(c$,c,1)
n$=n$+m$
NEXT c
PRINT n$
END SUB
Dry Run:
Variable C$ |
Check Loop |
Variable m$ |
Variable n$ |
Output |
COMPUTER |
1 to 8? Yes |
C |
C |
|
COMPUTER |
3 to 8? Yes |
M |
C+M=CM |
|
COMPUTER |
5 to 8? Yes |
U |
CM+U=CMU |
|
COMPUTER |
7 to 8? Yes |
E |
CMU+E |
|
COMPUTER |
9 to 8? No Exit from loop |
|
|
CMUE |
Final Output:
CMUE
No comments:
Post a Comment