1.Write
a program to print the following format
WELCOME TO PL/SQL PROGRAMMING
BEGIN
DBMS_OUTPUT.PUT_LINE('WELCOME
TO PL/SQL PROGRAMMING');
END;
/
2.Write a program to print the numbers from 1 to 100
DECLARE
N
NUMBER(3):=1;
V
VARCHAR2(1000);
BEGIN
WHILE
N <=1000
LOOP
V:=V||''||N;
N:=N+1;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
END;
/
3.write a program to print the even numbers from 1 to
100
DECLARE
N
NUMBER(3):=0;
BEGIN
WHILE
N <=100
LOOP
N:=N+2;
DBMS_OUTPUT.PUT_LINE(N);
END
LOOP;
END;
/
4.Write a program to print the odd numbers from 1 to
100
DECLARE
N
NUMBER(3):=1;
BEGIN
WHILE
N <=100
LOOP
N:=N+2;
DBMS_OUTPUT.PUT_LINE(N);
END
LOOP;
END;
/
5.write a program for multiplication table
DECLARE
A
NUMBER(2):=&A;
B
NUMBER(2):=1;
C
NUMBER(3);
BEGIN
WHILE
B <=10 LOOP
C:=A*B;
DBMS_OUTPUT.PUT_LINE(A||'*'||B||'='||C);
B:=B+1;
END
LOOP;
END;
/
6.write a program to find the sum of numbers from 1 to
100
DECLARE
N
NUMBER(3):=1;
S
NUMBER(4):=0;
BEGIN
WHILE
N <=100
LOOP
S:=S+N;
N:=N+1;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
SUM OF 1 TO 100 IS '||S);
END;
/
7.Write a program to find the sum of all odd numbers
from 1 to 100
DECLARE
N
NUMBER(3):=1;
S
NUMBER(4):=0;
BEGIN
WHILE
N <=100
LOOP
S:=S+N;
N:=N+2;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
SUM OF 1 TO 100 ODD NUMBERS IS '||S);
END;
/
8.Write a program to find the sum of all even numbers
from 1 to 100
DECLARE
N
NUMBER(3):=0;
S
NUMBER(4):=0;
BEGIN
WHILE
N <=100
LOOP
S:=S+N;
N:=N+2;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
SUM OF 1 TO 100 EVEN NUMBERS IS '||S);
END;
/
9.Write a program to accept a number and find how many
digits it contain ?
DECLARE
N
NUMBER(5):=&N;
CNT
NUMBER:=0;
R
NUMBER(2):=0;
BEGIN
WHILE
N !=0
LOOP
R:=MOD(N,10);
CNT:=CNT+1;
N:=TRUNC(N/10);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('NUMBER
OF DIGITS OF GIVEN NUMBER IS '||CNT);
END;
/
10.Write a program to accept a number and find the sum
of the digits
DECLARE
N
NUMBER(5):=&N;
S
NUMBER:=0;
R
NUMBER(2):=0;
BEGIN
WHILE
N !=0
LOOP
R:=MOD(N,10);
S:=S+R;
N:=TRUNC(N/10);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF DIGITS OF GIVEN NUMBER IS '||S);
END;
/
11.Write a program to accept a number and print it in
reverse order
DECLARE
N
NUMBER(5):=&N;
REV
NUMBER(5):=0;
R
NUMBER(5):=0;
BEGIN
WHILE
N !=0
LOOP
R:=MOD(N,10);
REV:=REV*10+R;
N:=TRUNC(N/10);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
REVERSE OF A GIVEN NUMBER IS '||REV);
END;
/
12.Write a program to accept a no and check whether it
is Armstrong number or not ?
13.Write a porgram to generate all the Armstrong
numbers from 1 to 1000
14.Write a program to generate all prime numbers
between 1 to 100
15.Write a program to aceept a number and check
whether it is prime number or not
16.Write a program to display the fibonacci series
from 1 to 10
17.Write a program to aceept a number and print it in
binary format
18.Write a program to accept a number and find the
factorial of the number
19.Find the factorials of numbers from 1 to 10
DECLARE
FACT
NUMBER:=1;
V
VARCHAR2(100);
BEGIN
FOR
I IN 1..10
LOOP
FOR
J IN 1..I
LOOP
FACT:=FACT*J;
V:=J||'*'||V;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(RTRIM(V,'*')||'='||FACT);
FACT:=1;
V:=NULL;
END
LOOP;
END;
/
20.Write a program to aceept a number and display it
in the Octal format
DECLARE
N
NUMBER(2):=&N;
R
NUMBER(2);
V
VARCHAR2(1000);
BEGIN
WHILE
N>0
LOOP
R:=MOD(N,8);
V:=R||V;
N:=TRUNC(N/8);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('OCTAL
OF A GIVEN NUMBER IS '||V);
END;
/
21.Write a program to accept a number and print the
multiplication tables upto soo
DECLARE
N
NUMBER(2):=&N;
M
NUMBER;
BEGIN
FOR
I IN N..N+5
LOOP
FOR
J IN 1..10
LOOP
M:=I*J;
DBMS_OUTPUT.PUT_LINE(I||'*'||J||'='||M);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('*********************');
END
LOOP;
END;
/
22.Write a program to accept the temp in Centigrade
and convert it into Fahrenheit(c=F-32/1.8)
DECLARE
C
NUMBER:=&C;
F
NUMBER;
BEGIN
F:=C*1.8+32;
DBMS_OUTPUT.PUT_LINE('THE
FARENHETT OF GIVEN OC IS '||F);
END;
/
23.Write a program to calculate the area of a triangle
by accepting the 3 sides
(s=(a+b+c)/2 area=sqrt(s*(s-a)*(s-b)*(s-c)))
DECLARE
S
NUMBER;
A
NUMBER:=&A;
B
NUMBER:=&B;
C
NUMBER:=&C;
AREA
NUMBER(7,2);
BEGIN
S:=(A+B+C)/2;
AREA:=SQRT(S*(S-A)*(S-B)*(S-C));
DBMS_OUTPUT.PUT_LINE('THE
AREA OF TRIANGLE IS '||AREA);
END;
/
24.Write a program to calculate the area of a circle
by accepting the radius and unit of measure Area=PI*r2
DECLARE
R
NUMBER:=&R;
AREA
NUMBER(7,2);
BEGIN
AREA:=(22/7)*R*R;
DBMS_OUTPUT.PUT_LINE('THE
AREA OF CIRCLE IS '||AREA);
END;
/
25.Write a program to calculate the perimeter of a
circle(perimeter=2*PI*r)
DECLARE
R
NUMBER:=&R;
PERIMETER
NUMBER(7,2);
BEGIN
PERIMETER:=2*(22/7)*R;
DBMS_OUTPUT.PUT_LINE('THE
PERIMETER OF CIRCLE IS '||PERIMETER);
END;
/
26.Write a program to accept the 3 sides of the
triangle and display the type of triangle
DECLARE
A
NUMBER(4,2):=&A;
B
NUMBER(4,2):=&B;
C
NUMBER(4,2):=&C;
PERIMETER
NUMBER(7,2);
BEGIN
IF
(A=B AND B=C AND C=A) THEN
DBMS_OUTPUT.PUT_LINE('EQUILATERAL
TRIANGLE');
ELSIF
A=B OR A=C OR C=B THEN
DBMS_OUTPUT.PUT_LINE('ISOSOCELESS
TRIANGLE');
ELSE
DBMS_OUTPUT.PUT_LINE('SCALEN
TRIANGLE');
END
IF;
END;
/
27.Write a program accept the value of A,B&C
display which is greater
DECLARE
A
NUMBER(4,2):=&A;
B
NUMBER(4,2):=&B;
C
NUMBER(4,2):=&C;
BEGIN
IF
(A>B AND A>C) THEN
DBMS_OUTPUT.PUT_LINE('A
IS GREATER '||''||A);
ELSIF
B>C THEN
DBMS_OUTPUT.PUT_LINE('B
IS GREATE '||''||B);
ELSE
DBMS_OUTPUT.PUT_LINE('C
IS GREATER '||''||C);
END
IF;
END;
/
28.Write a program accept a string and check whether
it is palindrome or not
DECLARE
S
VARCHAR2(10):='&S';
L
VARCHAR2(20);
TEMP
VARCHAR2(10);
BEGIN
FOR
I IN REVERSE 1..LENGTH(S)
LOOP
L:=SUBSTR(S,I,1);
TEMP:=TEMP||''||L;
END
LOOP;
IF
TEMP=S THEN
DBMS_OUTPUT.PUT_LINE(TEMP
||''||' IS PALINDROME');
ELSE
DBMS_OUTPUT.PUT_LINE(TEMP ||''||' IS NOT PALINDROME');
END
IF;
END;
/
29.Write a program aceepts the value of A,B and swap
the nos and print the values
DECLARE
A
NUMBER(2):=&A;
B
NUMBER(2):=&B;
FLAG
NUMBER(2);
BEGIN
FLAG:=A;
A:=B;
B:=FLAG;
DBMS_OUTPUT.PUT_LINE('A
'||'= '||A||' AND '||''||'B '||'= '||B);
END;
/
30.Write a program to accept the values of A , B and
swap the numbers and print the values
without using third variable
DECLARE
A
NUMBER(2):=&A;
B
NUMBER(2):=&B;
FLAG
NUMBER(2);
BEGIN
FLAG:=A;
A:=B;
B:=FLAG;
DBMS_OUTPUT.PUT_LINE('A
'||'= '||A||' AND '||''||'B '||'= '||B);
END;
/
31.Write a program to accept the side of a square and
calculate the area area =a2
DECLARE
A
NUMBER:=&A;
AREA
NUMBER(5);
BEGIN
AREA:=A*A;
DBMS_OUTPUT.PUT_LINE('AREA
OF A SQUARE IS '||''||AREA);
END;
/
32.Write a program to accept principle amount
,rate,time calculate the simple interest si=(p*t*r)/100
DECLARE
P
NUMBER(6,2):=&P;
R
NUMBER(6,2):=&R;
T
NUMBER(6,2):=&T;
SI
NUMBER(6,2);
BEGIN
SI:=(P*R*T)/100;
DBMS_OUTPUT.PUT_LINE('SIMPLE
INTEREST IS '||''||SI);
END;
/
33.Erite a program to aceept the principle
amount,rate,time and find the compound interest
ci=p*(1+r/100)n
DECLARE
P
NUMBER(6,2):=&P;
R
NUMBER(6,2):=&R;
T
NUMBER(6,2):=&T;
CI
NUMBER(6,2);
BEGIN
CI:=P*POWER(1+(R/100),T);
DBMS_OUTPUT.PUT_LINE('COMPOUND
INTEREST IS '||CI);
END;
/
34.WAP to calculate the sum of 1!+2!+......+n!
DECLARE
N
NUMBER:=&N;
S
NUMBER:=0;
F
NUMBER:=1;
BEGIN
FOR
I IN 1..N
LOOP
FOR
J IN 1..I
LOOP
F:=F*J;
END
LOOP;
S:=S+F;
F:=1;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF FACT IS '||S);
END;
/
35.WAP to calculate the sum of 1+1/2+1/3+......+1/n
DECLARE
N
NUMBER:=&N;
A
NUMBER;
S
NUMBER(6,2):=0;
BEGIN
FOR
I IN 1..N
LOOP
A:=1/I;
S:=S+A;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF NO ARE '||S);
END;
/
36.WAP to calculate the sum of 1/1!+1/2!+.....+1/n!
DECLARE
N
NUMBER:=&N;
S
NUMBER(6,2):=0;
F
NUMBER:=1;
BEGIN
FOR
I IN 1..N
LOOP
FOR
J IN 1..I
LOOP
F:=F*J;
END
LOOP;
S:=S+(1/F);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
IS '||S);
END;
/
37.WAP to calculate the sum of 1/1!+2/2!+......+n/n!
DECLARE
N
NUMBER(4):=&N;
S
NUMBER(6,2):=0;
F
NUMBER(4):=1;
BEGIN
FOR
I IN 1..N
LOOP
FOR
J IN 1..I
LOOP
F:=F*J;
END
LOOP;
S:=S+(I/F);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF FACT IS '||S);
END;
/
38.Write a program to display the months between two
dates of a year
DECLARE
D
DATE:='&D';
D1
DATE:='&D1';
BEGIN
WHILE
D < D1
LOOP
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D,'MONTH'));
D:=ADD_MONTHS(D,1);
END
LOOP;
END;
/
39.Write a program to accept the date and print the
weekdays from the given date
DECLARE
D
DATE:='&D';
WD
DATE;
BEGIN
WD:=D+6;
WHILE
D <= WD
LOOP
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D,'DAY'));
D:=D+1;
END
LOOP;
END;
/
40.WAP to accept the date and print the weekdays from
the given date along with date format
DECLARE
D
DATE:='&D';
WD
DATE;
BEGIN
WD:=D+6;
WHILE
D <= WD
LOOP
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D,'DAY')||D);
D:=D+1;
END
LOOP;
END;
/
41.Writa a program to accept a year and check whether
it is leap year or not
DECLARE
Y
NUMBER:=&Y;
R
NUMBER;
BEGIN
IF
MOD(Y,4)=0 AND MOD(Y,100)!=0 OR MOD(Y,400)=0
THEN
DBMS_OUTPUT.PUT_LINE(Y
||' IS A LEAP YEAR');
ELSE
DBMS_OUTPUT.PUT_LINE(Y
||' IS NOT A LEAP YEAR');
END
IF;
END;
/
42.Write a program to accept a year and display all
sundays along with the date
DECLARE
Y
NUMBER(4):=&YYYY;
A
DATE;
B
DATE;
I
NUMBER(2):=1;
BEGIN
A:=TO_DATE('01-JAN-'||Y,'DD-MON-YYYY');
B:=LAST_DAY(ADD_MONTHS(A,11));
WHILE
A <= B
LOOP
IF
TO_CHAR(A,'D')=1 THEN
DBMS_OUTPUT.PUT_LINE(LPAD(I,2,'0')||'-'||UPPER(TO_CHAR(A,'DAY'))||A);
I:=I+1;
END
IF;
A:=A+1;
END
LOOP;
END;
/
43.WAP to accept a string and count how many vowels
present in the string
DECLARE
V
VARCHAR2(300):='&V';
CNT
NUMBER(5):=0;
C
CHAR;
BEGIN
FOR
I IN 1..LENGTH(V)
LOOP
C:=SUBSTR(V,I,1);
IF
C IN ('A','E','I','O','U') THEN
CNT:=CNT+1;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('NO
OF VOWELS PRESENT = '||CNT);
END;
/
44.Write a program to accept a year and check whether
it is leap year or not . If it is
leap year then display how many sundays present in
that year
DECLARE
D
DATE:='&YEAR';
Y
VARCHAR2(20);
CNT
NUMBER(5):=0;
V
VARCHAR2(20);
BEGIN
Y:=TO_CHAR(D,'YYYY');
D:=TO_DATE('01-JAN-'||Y);
IF
MOD(Y,4)=0 AND MOD(Y,100)!=0 OR MOD(Y,400)=0 THEN
FOR
I IN 1..366
LOOP
V:=TO_CHAR(D,'D');
IF
V=1 THEN
CNT:=CNT+1;
END
IF;
D:=D+1;
DBMS_OUTPUT.PUT_LINE('NO
OF VOWELS PRESENT = '||CNT);
END
LOOP;
END;
/
45.Write a program to accept a char and check it is
vowel or consonant
DECLARE
C
CHAR:='&C';
BEGIN
IF C='A' OR C='E' OR C='I' OR C='O' OR C='U' THEN
DBMS_OUTPUT.PUT_LINE('VOWEL');
ELSE
DBMS_OUTPUT.PUT_LINE('CONSONANT');
END
IF;
END;
/
46.WAP to accept A,B,C & D check whether it is
Ramanujan number or not
DECLARE
A
NUMBER:=&A;
B
NUMBER:=&B;
C
NUMBER:=&C;
D
NUMBER:=&D;
BEGIN
IF
POWER(A,3)+POWER(B,3)=POWER(C,3)+POWER(D,3)
THEN
DBMS_OUTPUT.PUT_LINE(A||CHR(179)||'+'||B||CHR(179)||'='||C||CHR(179)||'+'||D||CHR(179));
ELSE
DBMS_OUTPUT.PUT_LINE(A||CHR(179)||'+'||B||CHR(179)||'!='||C||CHR(179)||'+'||D||CHR(179));
END
IF;
END;
/
47.WAP to accept the CMR & LMR & find out the
total bill amount
i)0-100 units Rs.50 per unit ii)101-200n
units Rs.o.25 per unit
iii)>200 units Rs.1.25 per unit
DECLARE
LMR
NUMBER(5):=&LMR;
CMR
NUMBER(5):=&CMR;
TOT
NUMBER(5):=0;
BILL
NUMBER(7,2):=0;
BEGIN
TOT:=CMR-LMR;
IF
TOT <= 100 THEN
BILL:=TOT*.50;
ELSIF
TOT > 100 AND TOT <= 200 THEN
BILL:=(100*.50)+((TOT-100)*.75);
ELSE
BILL:=(100*.50)+(100*.75)+(TOT-200)*1.25;
END
IF;
DBMS_OUTPUT.PUT_LINE('TOTAL
UNIT CONSUMED '||TOT);
DBMS_OUTPUT.PUT_LINE('TOTAL
BILL AMOUNT '||BILL);
END;
/
48.WAP or accept marks of 3 subject as i/p and calculate
the total marks and division of a student
i) If totmark>=60 then division is First
ii) If totmark <60 and totmark>=50 then division
is second
iii) If totmark< 50 and >=35 then division is
third
iv) If totmark< 35 then fail
DECLARE
M1
NUMBER(2):=&M1;
M2
NUMBER(2):=&M2;
M3
NUMBER(2):=&M3;
TOTMARK
NUMBER(5,2);
AVE
NUMBER(5,2):=0;
BEGIN
TOTMARK:=M1+M2+M3;
AVE:=TOTMARK/3;
IF
AVE>=60 THEN
DBMS_OUTPUT.PUT_LINE('THE
DIVISION IS FIRST '||AVE);
ELSIF
AVE<60 AND AVE>=50 THEN
DBMS_OUTPUT.PUT_LINE('THE
DIVISION IS SECOND '||AVE);
ELSIF
AVE<50 AND AVE>=35 THEN
DBMS_OUTPUT.PUT_LINE('THE
DIVISION IS THIRD '||AVE);
ELSE
DBMS_OUTPUT.PUT_LINE('FAIL
'||AVE);
END
IF;
END;
/
49.WAP to accept a number and print its multiplication
table horinzontally
DECLARE
J
NUMBER:=&J;
V
VARCHAR2(1000);
K
NUMBER(3);
BEGIN
FOR
I IN 1..10
LOOP
K:=J*I;
V:=V||J||'*'||I||'='||K||'
';
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
END;
/
50.WAP to accept a string and print it in reverse
order
DECLARE
STR
VARCHAR2(100):='&sTR';
STR1
VARCHAR2(100);
N
NUMBER(5);
L
VARCHAR2(20);
BEGIN
N:=LENGTH(STR);
FOR
I IN 1..N
LOOP
L:=SUBSTR(STR,I,1);
STR1:=L||STR1;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(STR1);
END;
/
51.Write a program to accept a number and find out the
sum of first and last digits
DECLARE
A
NUMBER(4):=&A;
B
NUMBER(5):=0;
C
NUMBER(5):=0;
S
NUMBER(5);
BEGIN
IF
A>9 THEN
C:=SUBSTR(A,1,1);
B:=SUBSTR(A,LENGTH(A),1);
S:=B+C;
ELSE
S:=A;
END
IF;
DBMS_OUTPUT.PUT_LINE('SUM
OF FIRST AND LAST DIGIT IS '||S);
END;
/
52.WAP to accept the basic salary and find out the
ta,da,hra,lic and gs
i)ta 20% of basic, da 10% of basic, hra 30% of basic,
lic 5% of basic
DECLARE
BS
NUMBER(6,2):=&BS;
TA
NUMBER(6,2);
DA
NUMBER(6,2);
HRA
NUMBER(6,2);
GS
NUMBER(6,2);
LIC
NUMBER(6,2);
NS
NUMBER(8,2);
BEGIN
TA:=BS*(20/100);
HRA:=BS*(30/100);
DA:=BS*(10/100);
LIC:=BS*(5/100);
GS:=TA+HRA+DA;
NS:=GS-LIC;
DBMS_OUTPUT.PUT_LINE('EMPLOYEE
BS IS '||BS);
DBMS_OUTPUT.PUT_LINE('GROSS
SALARY IS '||GS);
DBMS_OUTPUT.PUT_LINE('NET
SALARY IS '||NS);
END;
/
53.WAP to accept the length and breadth of a rectangle
and find out the perimeter
DECLARE
L
NUMBER(4,2):=&L;
B
NUMBER(4,2):=&B;
A
NUMBER(4,2);
BEGIN
A:=2*(L+B);
DBMS_OUTPUT.PUT_LINE('THE
PERIMETER OF RECTANGLE IS '||A);
END;
/
54.WAP to accept the cost price and selling price of
an item and find
the loss or profit
DECLARE
CP
NUMBER(25,2):=&CP;
SP
NUMBER(25,2):=&SP;
AMT
NUMBER(7,2);
BEGIN
IF
CP < SP THEN
AMT:=SP-CP;
DBMS_OUTPUT.PUT_LINE('PROFIT
IS '||AMT);
ELSE
AMT:=CP-SP;
DBMS_OUTPUT.PUT_LINE('LOSS
IS '||AMT);
END
IF;
END;
/
55.Writ a program to generate the following series
53 53 53 53 53
43 43 43 43
33 33 33
23 23
13
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN REVERSE 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||I||CHR(179);
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
56.WAP to accept a no in binary format and print it in
decimal format
DECLARE
N
VARCHAR2(20):=&N;
PRO
NUMBER(10,4):=0;
L
VARCHAR2(10);
BEGIN
FOR
I IN 1..LENGTH(N)
LOOP
L:=SUBSTR(N,I,1);
PRO:=PRO+L*POWER(2,LENGTH(N)-I);
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
DECIMAL NUMBER IS '||PRO);
END;
/
57.WAP to accept two nos and input and find one no is
raised to another one (without using any function)
DECLARE
A
NUMBER:=&A;
B
NUMBER:=&B;
R
NUMBER:=1;
BEGIN
FOR
I IN 1..B
LOOP
R:=R*A;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('A
RAISED POWER B IS '||R);
END;
/
58.WAP to accept a sentence and count the no of chars
in that sentence
DECLARE
STR
VARCHAR2(100):='&STR';
NO
NUMBER(5):=0;
I
NUMBER;
BEGIN
I:=INSTR(STR,'.');
DBMS_OUTPUT.PUT_LINE('NO
OF CHAR IS '||I);
END;
/
59.WAP to accept two strings and display the large one
among those
DECLARE
STR1
VARCHAR2(100):='&STR1';
STR2
VARCHAR2(100):='&STR2';
BEGIN
IF
LENGTH(STR1) > LENGTH(STR2) THEN
DBMS_OUTPUT.PUT_LINE(STR1
||' IS GREATER');
ELSIF
LENGTH(STR1) < LENGTH(STR2) THEN
DBMS_OUTPUT.PUT_LINE(STR2
||' IS GREATER');
ELSE
DBMS_OUTPUT.PUT_LINE('BOTH
STRINGS ARE EQUAL');
END
IF;
END;
/
60.WAP to display all the nos whose sum of digits is 9
from 1 to 9999
DECLARE
N
NUMBER;
M
NUMBER;
S
NUMBER:=0;
BEGIN
FOR
I IN 1..999
LOOP
N:=I;
WHILE
N>0
LOOP
M:=MOD(N,10);
S:=S+M;
N:=TRUNC(N/10);
END LOOP;
IF
S=9 THEN
DBMS_OUTPUT.PUT_LINE(I||'
');
END
IF;
S:=0;
END
LOOP;
END;
/
61.WAP to accept a no and find the sum in a single
digit
DECLARE
N
NUMBER(4):=&N;
S
NUMBER(10):=0;
BEGIN
WHILE
LENGTH(N)>1
LOOP
FOR
I IN 1..LENGTH(N)
LOOP
S:=S+SUBSTR(N,I,1);
END
LOOP;
N:=S;
S:=0;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('THE
SUM IN SINGLE DIGIT IS '||N);
END;
/
62.Ente the no of days and find out the no of years
and no of days and months
DECLARE
D
NUMBER:=&D;
Y
NUMBER;
M
NUMBER;
BEGIN
Y:=TRUNC(D/365);
M:=TRUNC(MOD(D,365)/30);
D:=MOD(MOD(D,365),30);
DBMS_OUTPUT.PUT_LINE(Y||'
YEARS '||M||' MONTHS '||D||' DAYS');
END;
/
63.WAP to accept the date and print all the weekdays
along with the given date
DECLARE
D
DATE:='&D';
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..7
LOOP
V:=TO_CHAR(D,'DAY')||D;
DBMS_OUTPUT.PUT_LINE(V);
D:=D+1;
END
LOOP;
END;
/
64.WAP while purchasing certain items,discount of each
is as follows
i) If qty purchased > 1000 discount is 20%
ii) If the qty and price per item are i/p then
calculate the expenditure
DECLARE
QTY
NUMBER(5):=&QTY;
UP
NUMBER(6,2):=&UP;
DIS
NUMBER(6,2):=0;
TAMT
NUMBER(10,2);
BILL
NUMBER(10,2);
BEGIN
BILL:=QTY*UP;
IF
BILL > 1000 THEN
DIS:=BILL*20/1000;
END
IF;
TAMT:=BILL-DIS;
DBMS_OUTPUT.PUT_LINE('THE
TOTAL AMOUNT IS '||TAMT);
END;
/
65.Write a program to accept a string and count the no
of individual chars
DECLARE
V
VARCHAR2(100):='&V';
V1
VARCHAR2(100);
LB
NUMBER;
LA
NUMBER;
DIFF
NUMBER;
C
CHAR;
N
NUMBER(5):=0;
BEGIN
V1:=V;
WHILE
LENGTH(V1)>0
LOOP
C:=SUBSTR(V1,1,1);
LB:=LENGTH(V1);
V1:=REPLACE(V1,C);
LA:=NVL(LENGTH(V1),0);
DIFF:=LB-LA;
IF
ASCII(C)=32 THEN
DBMS_OUTPUT.PUT_LINE('SPACE'||'
EXISTS '||DIFF||' TIMES');
ELSE
DBMS_OUTPUT.PUT_LINE(C||'
EXISTS '||DIFF||' TIMES');
END
IF;
N:=N+DIFF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('TOTAL
LENGTH OF THE GIVEN STRING '||V||'='||N);
END;
/
66.Write a program to display all combination of
1,2,&3
BEGIN
FOR
I IN 1..3
LOOP
FOR
J IN 1..3
LOOP
FOR
K IN 1..3
LOOP
DBMS_OUTPUT.PUT_LINE(I||J||K);
END
LOOP;
END
LOOP;
END
LOOP;
END;
/
67.Write a program to find out the series
12+22+32+42+....++n2
DECLARE
N
NUMBER:=&N;
A
NUMBER:=1;
B
NUMBER:=2;
C
NUMBER:=0;
D
NUMBER:=0;
S
NUMBER:=0;
BEGIN
WHILE
A<=N
LOOP
C:=C+A*A;
A:=A+2;
END
LOOP;
WHILE
B<=N
LOOP
D:=D+B*B;
B:=B+2;
END
LOOP;
S:=C-D;
DBMS_OUTPUT.PUT_LINE('RESULT
IS '||S);
END;
/
68.Write a program to accep the time in HH & MIN
format and find the total senconds
DECLARE
H
NUMBER:=&HOUR;
M
NUMBER:=&MINUTE;
S
NUMBER(10):=0;
BEGIN
S:=(H*60*60)+(M*60);
DBMS_OUTPUT.PUT_LINE(H||'
HOURS '||M||' MINUTES '||'IS'||S||' SECONDS');
END;
/
69.WAP to accept the distance between two cities in km
and convert into mts ,cm & ft
DECLARE
D NUMBER:=&D;
M
NUMBER:=0;
CM
NUMBER:=0;
FT
NUMBER:=0;
BEGIN
M:=D*1000;
CM:=M*100;
FT:=ROUND(CM/12.3);
DBMS_OUTPUT.PUT_LINE('DISTANCE
IN METERS IS '||M);
DBMS_OUTPUT.PUT_LINE('DISTANCE
IN CENTIMETERS IS '||CM);
DBMS_OUTPUT.PUT_LINE('DISTANCE
IN FOOT IS '||FT);
END;
/
70.Write a program to find the series
x+x2/2!+x3/3!+.....+xn/n!
DECLARE
N
NUMBER:=&N;
X
NUMBER:=&X;
S
NUMBER:=0;
F
NUMBER:=1;
BEGIN
FOR
I IN 1..N
LOOP
FOR
J IN 1..I
LOOP
F:=F*J;
END
LOOP;
S:=ROUND(s+(POWER(X,I)/F),3);
F:=1;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF NUMBER IS '||S);
END;
/
71.Write a program to accept the population of
hyderabad each year the population increases
2% after 4y what is the population of hyd
DECLARE
P
NUMBER:=&P;
L
NUMBER;
BEGIN
FOR
J IN 1..4
LOOP
L:=P*2/100;
P:=P+L;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('POPULATION
OF HYDERABAD AFTER 4 YEARS IS '||TRUNC(P));
END;
/
72.WAP to accept the 3 dates and display the most
recently month among 3 dates
DECLARE
D1 DATE:='&D1';
D2
DATE:='&D2';
D3
DATE:='&D3';
M1
NUMBER;
M2
NUMBER;
M3
NUMBER;
BEGIN
M1:=TO_CHAR(D1,'MM');
M2:=TO_CHAR(D2,'MM');
M3:=TO_CHAR(D3,'MM');
IF
M1>M2 AND M1>M3 THEN
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D1,'MON')||'
IS RECENT MONTH');
ELSIF
M2>M1 AND M2>M3 THEN
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D2,'MON')||'
IS RECENT MONTH');
ELSE
DBMS_OUTPUT.PUT_LINE(TO_CHAR(D3,'MON')||'
IS RECENT MONTH');
END
IF;
END;
/
73.Accept a string and print in the following format
O
OR
ORA
ORAC
ORACL
ORACLE
DECLARE
V
VARCHAR2(20):='&V';
C
VARCHAR(20);
BEGIN
FOR
I IN 1..LENGTH(V)
LOOP
C:=SUBSTR(V,1,I);
DBMS_OUTPUT.PUT_LINE(C);
END
LOOP;
END;
/
74.Write a program to accept the annual income of the
emp and find the income tax
i) If the annsal > 60000 then tax is 10% of income
ii) If the annsal > 100000 then tax is Rs 800+16%
of income
iii) If the annsal > 140000 then tax is Rs 2500+25%
of income
DECLARE
AI
NUMBER(10,2):=&ANNUALINCOME;
TAX
NUMBER(10,3):=0;
BEGIN
IF
AI BETWEEN 36000 AND 50000 THEN
TAX:=AI*10/100;
ELSIF
AI BETWEEN 50000 AND 100000 THEN
TAX:=800+AI*16/100;
ELSIF
AI > 100000 THEN
TAX:=2500+AI*25/100;
END
IF; DBMS_OUTPUT.PUT_LINE('ANNUAL INCOME '||AI);
DBMS_OUTPUT.PUT_LINE('TAX
'||TAX);
END;
/
75.WAP to accept a year as i/p & find how many
even number present in that year
DECLARE
Y
NUMBER:=&YEAR;
A
VARCHAR2(20);
CNT
NUMBER(5):=0;
BEGIN
FOR
I IN 1..LENGTH(Y)
LOOP
A:=SUBSTR(Y,I,1);
IF
MOD(A,2)=0 THEN
CNT:=CNT+1;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('NUMBER
OF EVEN DIGIT IS '||CNT);
END;
/
76.WAP to accept a year as i/p & find how many odd
number present in that year
DECLARE
Y
NUMBER:=&YEAR;
A
VARCHAR2(20);
CNT
NUMBER(5):=0;
BEGIN
FOR
I IN 1..LENGTH(Y)
LOOP
A:=SUBSTR(Y,I,1);
IF
MOD(A,2)!=0 THEN
CNT:=CNT+1;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('NUMBER
OF EVEN DIGIT IS '||CNT);
END;
/
77.WAP to accept a number and calculate the sum of
numbers in even places
DECLARE
N
NUMBER:=&NUMBER;
A
VARCHAR2(10);
S
NUMBER:=0;
BEGIN
FOR
I IN 1..LENGTH(N)
LOOP
A:=SUBSTR(N,I,1);
IF
MOD(I,2)=0 THEN
S:=S+A;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE('SUM
OF EVEN PLACE IS '||S);
END;
/
78.WAP to accept the emp details and calculate the
bonus based on the following conditions
i) If sal < 500 then bonus is 10% sal
ii) If sal > 3500 then bonus is 12% sal
iii) If sal > 1000 then bonus is 13.5% sal
DECLARE
EMPNOV
NUMBER:=&EMPNOV;
SALV
NUMBER;
B
NUMBER(7,2);
BEGIN
SELECT
SAL INTO SALV FROM EMP WHERE EMPNO=EMPNOV;
IF
SALV BETWEEN 500 AND 3500 THEN
B:=SALV*10/100;
ELSIF
SALV BETWEEN 3500 AND 10000 THEN
B:=SALV*12/100;
ELSIF
SALV>10000 THEN
B:=SALV*13.5/100;
END
IF;
DBMS_OUTPUT.PUT_LINE('EMPNO
'||EMPNOV);
DBMS_OUTPUT.PUT_LINE('SALARY
'||SALV);
DBMS_OUTPUT.PUT_LINE('BONUS
'||B);
END;
/
79.WAP to accept the empno and display
ename,sal,hiredate and calculate ta,da,hra,lic,gross,exp and
print all emp details. ta is 30% of sal,da is 20% of
sal,hra is 15% of sal,lic is 5% of sal
DECLARE
EMPNOV
NUMBER:=&EMPNOV;
ENAMEV
EMP.ENAME%TYPE;
SALV
EMP.SAL%TYPE;
HIREDATEV
EMP.HIREDATE%TYPE;
EXP
NUMBER(7,2);
TA
NUMBER(7,2);
DA
NUMBER(7,2);
HRA
NUMBER(7,2);
LIC
NUMBER(7,2);
GROSS
NUMBER(7,2);
S
NUMBER:=0;
BEGIN
SELECT
ENAME,SAL,HIREDATE INTO ENAMEV,SALV,HIREDATEV FROM EMP WHERE EMPNO=EMPNOV;
EXP:=ROUND(MONTHS_BETWEEN(SYSDATE,HIREDATEV)/12,3);
TA:=SALV*30/100;
DA:=SALV*20/100;
HRA:=SALV*15/100;
LIC:=SALV*5/100;
GROSS:=SALV+TA+DA+HRA-LIC;
DBMS_OUTPUT.PUT_LINE('EMPNO
'||EMPNOV);
DBMS_OUTPUT.PUT_LINE('ENAME
'||ENAMEV);
DBMS_OUTPUT.PUT_LINE('SALARY
'||SALV);
DBMS_OUTPUT.PUT_LINE('EXPERIENCE
'||EXP);
DBMS_OUTPUT.PUT_LINE('TA
'||TA);
DBMS_OUTPUT.PUT_LINE('DA
'||DA);
DBMS_OUTPUT.PUT_LINE('HRA
'||HRA);
DBMS_OUTPUT.PUT_LINE('LIC
'||LIC);
DBMS_OUTPUT.PUT_LINE('GROSS
'||GROSS);
END;
/
80.WAP to accept the item no ,item name,qty,unit price
and calculate the bill
If the bill > 500 then give discount 2% of bill
amount and display the details
DECLARE
INO
NUMBER:=&INO;
INAME
VARCHAR2(50):='&INAME';
QTY
NUMBER(5):=&QTY;
UP
NUMBER(7,2):=&UP;
DIS
NUMBER(7,2):=0;
BILL
NUMBER(7,2);
NET
NUMBER(7,2);
BEGIN
BILL:=QTY*UP;
IF
BILL>500 THEN
DIS:=BILL*2/100;
END
IF;
NET:=BILL-DIS;
DBMS_OUTPUT.PUT_LINE('ITEM
NO '||INO);
DBMS_OUTPUT.PUT_LINE('ITEM
NAME '||INAME);
DBMS_OUTPUT.PUT_LINE('QUANTITY
'||QTY);
DBMS_OUTPUT.PUT_LINE('UNIT
PRICE '||UP);
DBMS_OUTPUT.PUT_LINE('BILL
AMT '||BILL);
DBMS_OUTPUT.PUT_LINE('DISCOUNT
'||DIS);
DBMS_OUTPUT.PUT_LINE('NET
AMT '||NET);
END;
/
81.Write a program to generate sequence of numbers
horizontally from 1 to 25
DECLARE
V
VARCHAR2(100);
BEGIN
FOR
I IN 1..25
LOOP
V:=V||'
'||I;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
END;
/
82.WAP to accept a empno and display
empno,name,sal,exp,dname,grade and loc.
DECLARE
EMPNOV
NUMBER:=&EMPNO;
ENAMEV
EMP.ENAME%TYPE;
HIREDATEV
DATE;
SALV
EMP.SAL%TYPE;
EXP
NUMBER;
DNAMEV
DEPT.DNAME%TYPE;
GRADEV
SALGRADE.GRADE%TYPE;
BEGIN
SELECT
ENAME,SAL,HIREDATE,DNAME,GRADE INTO ENAMEV,SALV,HIREDATEV,DNAMEV,GRADEV FROM
EMP,DEPT,SALGRADE
WHERE
EMPNO=EMPNOV AND EMP.DEPTNO=DEPT.DEPTNO AND SAL BETWEEN LOSAL AND HISAL;
EXP:=ROUND(MONTHS_BETWEEN(SYSDATE,HIREDATEV)/12,3);
DBMS_OUTPUT.PUT_LINE('EMPNO
'||EMPNOV);
DBMS_OUTPUT.PUT_LINE('ENAME
'||ENAMEV);
DBMS_OUTPUT.PUT_LINE('SALARY
'||SALV);
DBMS_OUTPUT.PUT_LINE('EXPERIENCE
'||EXP||' YEARS');
DBMS_OUTPUT.PUT_LINE('DNAME
'||DNAMEV);
DBMS_OUTPUT.PUT_LINE('GRADE
'||GRADEV);
END;
/
83.WAP to accept a empno and display empno,based on
experience calculate the bonus and store it into the bonus table
If exp > 5 years then bonus is 1 month salary
If exp between 5 and 9 years then bonus is 20% of
annual salary
If exp more than 9 years then bonus is 1 month sal
plus 25% of annual salary
DECLARE
EMPNOV
NUMBER:=&EMPNO;
ENAMEV
EMP.ENAME%TYPE;
HIREDATEV
DATE;
SALV
EMP.SAL%TYPE;
EXP
NUMBER;
DNAMEV
DEPT.DNAME%TYPE;
GRADEV
SALGRADE.GRADE%TYPE;
BEGIN
SELECT
ENAME,SAL,HIREDATE,DNAME,GRADE INTO ENAMEV,SALV,HIREDATEV,DNAMEV,GRADEV FROM
EMP,DEPT,SALGRADE
WHERE
EMPNO=EMPNOV AND EMP.DEPTNO=DEPT.DEPTNO AND SAL BETWEEN LOSAL AND HISAL;
EXP:=ROUND(MONTHS_BETWEEN(SYSDATE,HIREDATEV)/12,3);
DBMS_OUTPUT.PUT_LINE('EMPNO
'||EMPNOV);
DBMS_OUTPUT.PUT_LINE('ENAME
'||ENAMEV);
DBMS_OUTPUT.PUT_LINE('SALARY
'||SALV);
DBMS_OUTPUT.PUT_LINE('EXPERIENCE
'||EXP||' YEARS');
DBMS_OUTPUT.PUT_LINE('DNAME
'||DNAMEV);
DBMS_OUTPUT.PUT_LINE('GRADE
'||GRADEV);
END;
/
84.WAP to accept the empno, based upon the dname
transfer the emps ie, make the changes in the emp table. Transfer the emps from
Accounting dept to Research, Research dept to Operation, Opertion dept to Sales
and Sales to Accounting dept
DECLARE
EMPNOV
NUMBER:=&EMPNO;
DNAMEV
VARCHAR2(20);
DNAMEVV
VARCHAR2(20);
BEGIN
SELECT
DNAME INTO DNAMEV FROM EMP,DEPT WHERE EMPNO=EMPNOV AND EMP.DEPTNO=DEPT.DEPTNO;
IF
DNAMEV='ACCOUNTING' THEN
DNAMEVV:='RESEARCH';
ELSIF
DNAMEV='RESEARCH' THEN
DNAMEVV:='SALES';
ELSIF
DNAMEV='SALES' THEN
DNAMEVV:='OPERATIONS';
ELSIF
DNAMEV='OPERATIONS' THEN
DNAMEVV:='ACCOUNTING';
END
IF;
UPDATE
EMP SET DEPTNO=(SELECT DEPTNO FROM DEPT WHERE DNAME=DNAMEVV) WHERE
EMPNO=EMPNOV;
END;
/
85.WAP to accept the empno and display all the details
of emp. If emp doesnot exist display the appreciate message
DECLARE
EMPNOV
NUMBER:=&EMPNO;
EMPV
EMP%ROWTYPE;
BEGIN
SELECT
* INTO EMPV FROM EMP WHERE EMPNO=EMPNOV;
DBMS_OUTPUT.PUT_LINE('EMPNO
'||EMPV.EMPNO);
DBMS_OUTPUT.PUT_LINE('ENAME
'||EMPV.ENAME);
DBMS_OUTPUT.PUT_LINE('JOB
'||EMPV.JOB);
DBMS_OUTPUT.PUT_LINE('SALARY
'||EMPV.SAL);
DBMS_OUTPUT.PUT_LINE('HIREDATE
'||EMPV.HIREDATE);
DBMS_OUTPUT.PUT_LINE('DEPTNO
'||EMPV.DEPTNO);
DBMS_OUTPUT.PUT_LINE('MGRNO
'||EMPV.MGR);
DBMS_OUTPUT.PUT_LINE('COMMISSION
'||EMPV.COMM);
EXCEPTION
WHEN
NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('EMP
NUMBER DOES NOT EXIST');
END;
/
86.WAP to accept the empno and print all the details
of emp,dept and salgrade
DECLARE
E
EMP%ROWTYPE;
D
DEPT%ROWTYPE;
S
SALGRADE%ROWTYPE;
BEGIN
SELECT
* INTO E FROM EMP WHERE EMPNO=&EMPNO;
SELECT
* INTO D FROM DEPT WHERE E.DEPTNO=DEPT.DEPTNO;
SELECT
* INTO S FROM SALGRADE WHERE E.SAL BETWEEN LOSAL AND HISAL;
DBMS_OUTPUT.PUT_LINE('EMPNO '||E.EMPNO);
DBMS_OUTPUT.PUT_LINE('DEPTNO
'||D.DEPTNO);
DBMS_OUTPUT.PUT_LINE('DNAME
'||D.DNAME);
DBMS_OUTPUT.PUT_LINE('LOCATION
'||D.LOC);
DBMS_OUTPUT.PUT_LINE('GRADE
'||S.GRADE);
DBMS_OUTPUT.PUT_LINE('HISALARY
'||S.HISAL);
DBMS_OUTPUT.PUT_LINE('LOWSALARY
'||S.LOSAL);
END;
/
87.WAP to accept the mgrno and display the
empno,ename,sal,dname and grade of all emps working under that mgr
DECLARE
MGRV
NUMBER:=&MGRV;
CURSOR
EMPCUR IS
SELECT
EMPNO,ENAME,SAL,DEPTNO,GRADE FROM EMP,SALGRADE WHERE MGR=MGRV AND SAL BETWEEN
LOSAL AND HISAL;
X
EMPCUR%ROWTYPE;
BEGIN
OPEN
EMPCUR;
LOOP
FETCH
EMPCUR INTO X;
EXIT
WHEN EMPCUR%NOTFOUND;
DBMS_OUTPUT.PUT_LINE('EMPNO
'||X.EMPNO);
DBMS_OUTPUT.PUT_LINE('ENAME
'||X.ENAME);
DBMS_OUTPUT.PUT_LINE('SALARY
'||X.SAL);
DBMS_OUTPUT.PUT_LINE('DEPTNO
'||X.DEPTNO);
DBMS_OUTPUT.PUT_LINE('GRADE
'||X.GRADE);
DBMS_OUTPUT.PUT_LINE('******************');
END
LOOP;
CLOSE
EMPCUR;
END;
/
88.WAP to accept the empno and display the exp with
minimum 3 decimal places
DECLARE
EMPNOV
NUMBER:=&EMPNOV;
HIREDATEV
DATE;
EXPV
NUMBER(10,5);
BEGIN
SELECT
HIREDATE INTO HIREDATEV FROM EMP WHERE EMPNO=EMPNOV;
EXPV:=ROUND(MONTHS_BETWEEN(SYSDATE,HIREDATEV)/12,3);
DBMS_OUTPUT.PUT_LINE('EXPERIENCE
OF EMP'||EMPNOV||' IS '||EXPV||' YEARS ');
END;
/
89.Write a program to print the following series
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||'
'||J;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
90.Write a program to print the following series
1
2 1
3 2 1
4 3 2 1
5 4 3 2 1
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN REVERSE 1..I
LOOP
V:=V||'
'||J;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
91.Write a program to print the following series
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN REVERSE 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||'
'||J;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
92.Write a program to print the following series
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..5
LOOP
V:=V||'
'||I;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
93.Write a program to print the following series
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..5
LOOP
V:=V||'
'||J;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
94.Write a program to print the following series
5 4 3 2 1
5 4 3 2
5 4 3
5 4
5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN REVERSE 1..5
LOOP
IF
I<=J THEN
V:=V||'
'||J;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
95.Write a program to print the following series
5 5 5 5 5
4 4 4 4
3 3 3
2 2
1
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN REVERSE 1..5
LOOP
FOR
J IN 1..5
LOOP
IF
I>=J THEN
V:=V||'
'||I;
END
IF;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
96.Write a program to print the following series
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||'
'||I;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
97.Write a program to print the following series
1
0 1
1 0 1
0 1 0 1
1 0 1 0 1
DECLARE
A
NUMBER:=1;
V
VARCHAR2(20):=1;
BEGIN
DBMS_OUTPUT.PUT_LINE(V);
FOR
I IN 1..4
LOOP
IF
SUBSTR(V,1,1)='1' THEN
V:='0'||V;
ELSE
V:='1'||V;
END
IF;
DBMS_OUTPUT.PUT_LINE(V);
END
LOOP;
END;
/
98.Write a program to print the following series
*
* *
* * *
* * * *
* * * * *
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||'
'||'*';
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
99.Write a program to print the following series
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN 1..I
LOOP
V:=V||'
'||'*';
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
FOR
I IN REVERSE 1..5
LOOP
FOR
J IN 2..I
LOOP
V:=V||'
'||'*';
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
100.Write a program to print the following series
1 2 3 4 5
2 3 4 5
3 4 5
4 5
5
DECLARE
V
VARCHAR2(20);
BEGIN
FOR
I IN 1..5
LOOP
FOR
J IN I..5
LOOP
V:=V||'
'||J;
END
LOOP;
DBMS_OUTPUT.PUT_LINE(V);
V:=NULL;
END
LOOP;
END;
/
No comments:
Post a Comment