Although GwBasic is quite outdated, unfortunately it is still very much a part of the syllabus of Indian schools and colleges. And myself being Indian also has known the pain of typing programs in that black DOS screen.

Here are a few examples of GwBasic programs:

bullet 5 DIM X(5)
10 REM BUBBLE SORT METHOD
20 '
30 CLS
40 DIM A(10)
50 REM INPUT MODULE
60 FOR I=1 TO 10
70 INPUT "ENTER ANY NO.=";A(I)
80 NEXT I
90 '
100 REM BUBBLESORT ROUTINE STARTS
110 FLAG=0: NE=10
120 WHILE FLAG=0
130 FLAG=1: NE=NE-1
140 FOR I=1 TO NE
150 WHILE A(I)>A(I+1)
160 SWAP A(I),A(I+1)
170 FLAG=0
180 WEND
190 NEXT I
200 WEND
210 '
220 REM PRINTING MODULE
230 CLS
240 PRINT TAB(35) "SORTED LIST"
250 FOR I=1 TO 10
260 PRINT TAB(40) A(I)
270 NEXT I
280 END
 
bullet 10 REM PROGRAM TO CHANGE LOWER CASE - UPPER CASE LETTER
20 '
30 CLS
40 A$="a quick brown fox jumps on a lazy dog"
50 L=LEN(A$)
60 Y$=LEFT$(A$,1):P=1:GOSUB 1000
70 FOR I=1TOL
80 Y=INSTR (I,A$," ")
90 IF Y<>0 THEN Y$=MID$(A$,Y+1,1):P=Y+1:GOSUB 1000:Y=Y+1
100 NEXT I
110 PRINT "MODIFIER NAME=";A$
120 END
1000 '
1010 REM SUBROUTINE TO MODIFY LOWER CASE - UPPER CASE LETTER
1020 '
1030 MID$ (A$,P,1)=CHR$ (ASC(Y$)-32)
1040 RETURN
 

 

 

bullet 20 REM DAYS
30 INPUT "ENTER ANY DAY NUMBER=";DAYN
40 IF DAYN<1 OR DAYN>7 OR INT(DAYN)<>DAYN THEN PRINT"***INVALID DATA:TRY AGAIN***":GOTO 30
50 FOR I=1 TO DAYN
60 READ DAY$
70 NEXT I
80 DATA MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY
90 RESTORE
100 CLS
110 PRINT"DAY NUMBER=";DAYN
120 PRINT"DAY=";DAY$
130 INPUT"DO U WANNA KONTINU(Y/N?)";ANS$
140 Y$=LEFT$(ANS$,1)
150 IF Y$="Y" OR Y$="y" THEN 20
160 N$=LEFT$(ANS$,1)
170 IF N$="N" OR N$="n" THEN PRINT"GOOD BYE**SEEYA**"
180 END
 
bullet 2 REM DECIMAL TO BINARY
5 CLS
6 S=0
10 INPUT "ENTER BINARY NO.=";N$
20 '
30 L=LEN(N$)
40 FOR I= L TO 1 STEP -1
50 Y$=MID$(N$,I,1)
60 Y=VAL(Y$)
70 S=S+Y*2^(L-I)
80 NEXT I
90 PRINT"RESULT="S
 

 

bullet 10 REM PROGRAM TO FIND THE SQUARE ROOT USING NEWTON RAPHSON METHOD
20 '
30 CLS
40 INPUT "ENTER THE GUESS VALUE =";G#
50 DEF FNX(X#)=X#*X#
60 FOR I=1 TO N
70 XI=G#-FNX(G#)/(2*G#)
80 NEXT I
90 S#=G#-H#
 
bullet 5 REM SEARCH
bullet 10 DIM A(20)
20 FOR I=1 TO 20
30 INPUT "ENTER ANY NUMBER=";A(I)
40 NEXT I
50 FLAG=0:NE=20
60 WHILE FLAG=0
70 FLAG=1:NE=NE-1
80 FOR I=1 TO NE
90 WHILE A(I)>A(I+1)
100 SWAP A(I),A(I+1)
110 FLAG=0
120 WEND
130 NEXT I
140 WEND
150 INPUT " ENTER NUMBER TO SEARCH FOR =",N
160 FOR I = 1 TO 20
170 IF N=A(I) THEN PRINT "NO. FOUND AT POSITION ", I
175 PRINT "NO. NOT FOUND"
180 NEXT I
190 END
 
bullet 10 REM PROGRAM TO FIND INTEGRAL USING (1)TRAPEZOIDAL RULE (2)SIMPSONS 1/3rd RULE
20 '
30 CLS
40 DEF FNTRAP#(X#)=4/(1+X#*X#)
50 DEF FNSIMP#(X#)=4/(1+X#*X#)
60 INPUT "ENTER THE LOWER LIMIT=";LOW#
70 INPUT "ENTER THE UPPER LIMIT=";HIGH#
80 INPUT "ENTER THE NO OF INTERVALS IN TRAPEZOIDAL RULE=";NT
90 INPUT "ENTER THE NO OF INTERVALS IN SIMPSONS 1/3rd RULE=";NS
100 GOSUB 1000'TO APPLY TRAPEZOIDAL RULE
110 GOSUB 2000' TO APPLY SIMPSONS 1/3rd RULE
120 END
1000 '
1010 REM TRAPEZOIDAL RULE SUBROUTINE BEGINS
1020 '
1030 H#=(HIGH# -LOW#)/NT
1040 S#=.5*(FNTRAP#(HIGH#)+FNTRAP#(LOW#))
1050 FOR I=1 TO (NT-1)
1060 X#=LOW#+(I*H#)
1070 S#=S#+FNTRAP#(X#)
1080 NEXT I
1090 S#=S#*H#
1100 PRINT S#
1110 RETURN
2000 '
2010 REM SIMPSON'S 1/3 rd RULE BEGINS
2020 '
2030 H#=(HIGH#- LOW#)/NS
2040 S#=(FNSIMP(HIGH#)+FNSIMP(LOW#))
2050 FOR I=1 TO (NS-1) STEP+2
2060 X#=LOW#+(I*H#)
 

 

bullet 10 REM PROGRAM TO PRINT SORTED TELEPHONE DIRECTORY
20 '
30 CLS
40 DIM N$(5), A$(5), T(5)
50 REM I M
60 FOR I=1 TO 5
65 READ N$(I),A$(I),T(I)
100 NEXT I
110 '
120 REM BUBBLE SORT ROUTINE STARTS
130 FLAG=0:NE=5
140 WHILE FLAG=0
150 FLAG=1:NE=NE-1
160 FOR I=1 TO NE
170 WHILE N$(I)>N$(I+1)
180 SWAP N$(I),N$(I+1)
190 SWAP A$(I),A$(I+1)
200 SWAP T(I), T(I+1)
210 FLAG=0
220 WEND
230 NEXT I
240 WEND
250 '
260 REM P M
270 CLS
280 PRINT TAB(20) "TELEPHONE DIRECTORY"
290 FOR I=1 TO 5
300 PRINT TAB(5)N$(I);TAB(30)A$(I);TAB(70)T(I)
310 DATA AYUSH,HOWRAH,8600582
315 DATA AYUSH,CAL,4567890
320 DATA AYUSH,CAL,2332100
340 DATA AYUSH,CAL,2468114
350 DATA AYUSH,CAL, 5309032
370 NEXT I
380 END
 
bullet 10 REM 2 WAY MERGE SORT
20 '
30 CLS
40 FLAG=0
50 WHILE FLAG=0
60 INPUT "ENTER THE SIZE OF THE ARRAY:";N
70 IF N<1 OR N>30 THEN PRINT "INVALID DATA.TRY AGAIN" ELSE FLAG=1
80 WEND
90 DIM A(N),AUX(N)
100 FOR I=1 TO N
110 READ A(I)
120 NEXT I
130 DATA 5,10,1,-1,85,6,45,-7,15,82,13,0,0,7,9,-10,-15,1,2,7,100,-12,-82,12,23,5,2,6,6,,0,21,93,52,15
140 CLS
150 PRINT "UNSORTED LIST"
160 FOR I=1 TO N
170 PRINT "A(";I;")=";A(I)
180 NEXT I
190 GOSUB 1000'TO SORT THE UNSORTED LIST
200 PRINT "PRESS ANY KEY TO DISPLAY THE SORTED LIST"
210 Y$=INPUT$(1)
220 CLS:PRINT "SORTED LIST"
230 FOR I=1 TO N
240 PRINT "A(";I;")=";A(I)
250 NEXT I
260 PRINT "PRESS ANY KEY TO FINISH THE PROGRAM"
270 Y$=INPUT$(1)
280 END
1000 '
1010 REM MERGE SORT SUBROUTINE
1030 SIZE=1
1040 WHILE SIZE<=N
1050 IA=1
1060 IX=1
1070 WHILE (IA+SIZE)<=N
1080 IB=IA+SIZE
1090 UA=IB-1
1100 IF (IB+SIZE-1)<=N THEN UB=(IB+SIZE-1) ELSE UB=N
1110 I=IA
1120 J=IB
1130 WHILE I<=UA AND J<=UB
1140 IF A(I)<=A(J) THEN AUX(IX)=A(I):I=I+1 ELSE AUX(IX)=A(J):J=J+1
1150 IX=IX+1
1160 WEND
1170 WHILE I<=UA
1180 AUX(IX)=A(I)
1190 I=I+1
1200 IX=IX+1
1210 WEND
1220 WHILE J<=UB
1230 AUX(IX)=A(J)
1240 J=J+1
1250 IX=IX+1
1260 WEND
1270 IA=UB+1
1280 WEND
1290 FOR I=IA TO N
1300 AUX(IX)=A(I)
1310 IX=IX+1
1320 NEXT I
1325 FOR I= 1 TO N
1326 A(I)=AUX(I)
1327 NEXT I
1330 SIZE=2*SIZE
1340 WEND
1350 RETURN
 

 

bullet 10 REM PROGRAM TO CREATE A DATA FILE
20 '
30 CLS
40 LINE INPUT "ENTER A FILE NAME:",FILE$
50 IF FILE$="" THEN PRINT INVALID FILENAME TRY AGAIN":GOTO 40
60 OPEN "O",#1,FILE$
70 LINE INPUT "ENTER NAME:",N$
80 LINE INPUT "ENTER ADDRESS",A$
90 INPUT "ENTER TELEPHONE#:",T
100 PRINT #1,USING "\ \";N$
110 PRINT #1,USING "\ \";A$;
120 PRINT #1,USING "#######";T
130 INPUT "DO U WANT ANY MORE(Y/N)",ANS$
140 Y$=LEFT$(ANS$,1)
150 IF Y$="Y" OR Y$="y" THEN 70
160 CLOSE#1
170 END
 
bullet 10 REM PROGRAM TO READ A DATA FILE
20 '
30 CLS
40 LINE INPUT "ENTER A FILENAME:",FILE$
50 IF FILE$="" THEN PRINT "INVALID FILE NAME TRY AGAIN ":GOTO 40
60 OPEN "I",#1,FILE$
70 NREC=0
80 WHILE NOT EOF(1)
90 LINE INPUT #1,X$:NREC=NREC+1
100 N$=MID$(X$,1,20)
110 A$=MID$(X$,21,25)
120 T=VAL(RIGHT$(X$,7))
130 PRINT N$;TAB(30)A$;TAB(60)T
140 WEND
150 CLOSE#2
160 PRINT "NO OF RECORDS IN ";FILE$;"=";NREC
170 END
 
bullet 10 REM PROGRAM TO SORT A DATA FILE
20 '
30 CLS
40 LINE INPUT "ENTER A FILENAME =";FILE$
50 OPEN "I",#1,FILE$
60 NREC=0
70 WHILE NOT EOF(1)
80 LINE INPUT #1,X$
90 NREC=NREC+1
100 WEND
110 CLOSE #1
120 DIM N$(NREC),A$(NREC),T(NREC)
130 OPEN "I",#1,FILE$
140 REM READING RECORDS FROM INPUT FILE
150 FOR I=1 TO NREC
160 LINE INPUT #1,X$
170 N$(I)=LEFT$(X$,20)
180 A$(I)=MID$(X$,21,25)
190 T(I)=VAL(RIGHT$(X$,7))
200 NEXT I
210 CLOSE#1
220 REM BUBBLE SORT ROUTINE STARTS
230 '
240 FLAG=0:NE=NREC
250 WHILE FLAG=0
260 FLAG=1:NE=NE-1
270 FOR I=1 TO NE
280 WHILE N$(I)+A$(I)>N$(I+1)+A$(I+1)
290 SWAP N$(I),N$(I+1)
300 SWAP A$(I),A$(I+1)_
310 SWAP T(I),T(I+1)
320 FLAG=0
330 WEND
340 NEXT I
350 WEND
360 '
370 REM WRITING ON TO THE MASTER FILE
380 OPEN "O",#1,FILE$
390 FOR I=1 TO NREC
400 PRINT #1,N$(I);A$(I);
410 PRINT #1,USING"#######";T(I)
420 NEXT I
430 CLOSE #1
440 END
 

                                                                                                                            Back to Home

 

 

Hosted by www.Geocities.ws

1