Top Banner
PROGRAMS BASED ON STACKS AND QUEUES 1. Program to implement stacks without classes. s=[] c="y" while (c=="y"): print "1. PUSH" print "2. POP " print "3. Display" choice=input("Enter your choice: ") if (choice==1): a=input("Enter any number :") s.append(a) elif (choice==2): if (s==[]): print "Stack Empty" else:
29

Computer Programs 11 Nov

Apr 11, 2016

Download

Documents

Najmus Sahar

python programs
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Computer Programs 11 Nov

PROGRAMS BASED ON STACKS AND QUEUES

1. Program to implement stacks without classes.

s=[]

c="y"

while (c=="y"):

print "1. PUSH"

print "2. POP "

print "3. Display"

choice=input("Enter your choice: ")

if (choice==1):

a=input("Enter any number :")

s.append(a)

elif (choice==2):

if (s==[]):

print "Stack Empty"

else:

print "Deleted element is : ",s.pop()

elif (choice==3):

l=len(s)

Page 2: Computer Programs 11 Nov

for i in range(l-1,-1,-1):

print s[i]

c=raw_input("Do you want to continue or not?(y/n)\n")

2. Program to implement stacks with classes.

class stack:

s=[]

def push(self):

a=input('Enter any number : ')

stack.s.append(a)

def display(self):

l=len(stack.s)

for i in range(l-1,-1,-1):

print stack.s[i]

a=stack()

c="y"

while (c=="y"):

print "1. PUSH"

print "2. POP "

print "3. Display"

choice=input("Enter your choice: ")

if (choice==1):

Page 3: Computer Programs 11 Nov

a.push()

elif (choice==2):

if (a.s==[]):

print "Stack Empty"

else:

print "Deleted element is : ",a.s.pop()

elif (choice==3):

a.display()

3. Program to implement Queue’s without classes.

a=[]

c='y'

while c=='y':

print "1. INSERT"

print "2. DELETE "

print "3. Display"

choice=input("Enter your choice : ")

if (choice==1):

b=input("Enter new number : ")

a.append(b)

elif (choice==2):

if (a==[]):

Page 4: Computer Programs 11 Nov

print "Queue Empty"

else:

print "Deleted element is : ",a[0]

del a[0]

elif (choice==3):

l=len(a)

for i in range(0,l):

print a[i]

else:

print "Wrong input"

c=raw_input("Do you want to continue or not? (y/n)\n")

4. Program to implement Queue’s with classes.

class queue:

q=[]

def insertion(self):

a=input("Enter new number : ")

queue.q.append(a)

def deletion(self):

if (queue.q==[]):

print "Queue Empty"

else:

Page 5: Computer Programs 11 Nov

print "Deleted element is : ",queue.q[0]

del queue.q[0]

def display(self):

l=len(queue.q)

for i in range(0,l):

print queue.q[i]

a=queue()

c='y'

while c=='y':

print "1. INSERT"

print "2. DELETE "

print "3. Display"

choice=input("Enter your choice : ")

if (choice==1):

a.insertion()

elif (choice==2):

a.deletion()

elif (choice==3):

a.display()

else:

print "Wrong input"

c=raw_input("Do you want to continue or not? (y/n)\n")

Page 6: Computer Programs 11 Nov

SQL QUERIES

1. Display all records from table EMP.SQL> select* from emp;

EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO

--------- ---------- --------- --------- --------- --------- ---------

8877 SMITH CLERK 7902 17-DEC-80 800 20

7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30

7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30

7566 JONES MANAGER 7839 02-APR-81 2975 20

7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30

7698 BLAKE MANAGER 7839 01-MAY-81 2850 30

7782 CLARK MANAGER 7839 09-JUN-81 2450 10

7788 SCOTT ANALYST 7566 19-APR-87 3000 20

7839 KING PRESIDENT 17-NOV-81 5000 10

7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30

7876 ADAMS CLERK 7788 23-MAY-87 1100 20

7900 JAMES CLERK 7698 03-DEC-81 950 30

9999 FORD ANALYST 7566 03-DEC-81 3000 20

7934 MILLER CLERK 7782 23-JAN-82 1300 10

14 rows selected.

Page 7: Computer Programs 11 Nov

2. Display empno and ename of all employees from table emp.

SQL> select empno, ename from emp;

EMPNO ENAME

--------- ----------

8877 SMITH

7499 ALLEN

7521 WARD

7566 JONES

7654 MARTIN

7698 BLAKE

7782 CLARK

7788 SCOTT

7839 KING

7844 TURNER

7876 ADAMS

7900 JAMES

Page 8: Computer Programs 11 Nov

9999 FORD

7934 MILLER

14 rows selected.

3. Display ename, sal, sal added with comm from emp.

SQL> select ename, sal, sal+comm from emp;

ENAME SAL SAL+COMM

---------- --------- ---------

SMITH 800

ALLEN 1600 1900

WARD 1250 1750

JONES 2975

MARTIN 1250 2650

BLAKE 2850

CLARK 2450

SCOTT 3000

KING 5000

TURNER 1500 1500

ADAMS 1100

JAMES 950

Page 9: Computer Programs 11 Nov

FORD 3000

MILLER 1300

14 rows selected.

4. Display ename joined with job with heading "Employee", sal*12 as "Total Salary" from table emp.

SQL> select ename ||job "Employee", sal*12 "Total Salary" from emp;

Employee Total Salary

------------------- ------------

SMITHCLERK 9600

ALLENSALESMAN 19200

WARDSALESMAN 15000

JONESMANAGER 35700

MARTINSALESMAN 15000

BLAKEMANAGER 34200

CLARKMANAGER 29400

SCOTTANALYST 36000

KINGPRESIDENT 60000

TURNERSALESMAN 18000

ADAMSCLERK 13200

Page 10: Computer Programs 11 Nov

JAMESCLERK 11400

FORDANALYST 36000

MILLERCLERK 15600

14 rows selected.

5. Display distinct sal of employees from table emp.

SQL> select distinct sal from emp;

SAL

---------

800

950

1100

1250

1300

1500

1600

2450

2850

2975

3000

5000

Page 11: Computer Programs 11 Nov

12 rows selected.

6. Show the structure of table Dept.

SQL> describe dept;

Name Null? Type

------------------------------- -------- ----

DEPTNO NOT NULL NUMBER(2)

DNAME VARCHAR(12)

LOC VARCHAR2(13

7. Write a Query to display Ename and sal of employees whose salary is greater than or equal to 3000 from table emp.

SQL> select ename ,sal from emp where sal>=3000;

ENAME SAL

---------- ---------

SCOTT 3000

Page 12: Computer Programs 11 Nov

KING 5000

FORD 3000

8. Write a query to display employee name, salary and department number who are not getting commission from table emp.

SQL> select ename, sal, deptno from emp where comm is null;

ENAME SAL DEPTNO

---------- --------- ---------

SMITH 800 20

JONES 2975 20

BLAKE 2850 30

CLARK 2450 10

SCOTT 3000 20

KING 5000 10

ADAMS 1100 20

JAMES 950 30

FORD 3000 20

Page 13: Computer Programs 11 Nov

MILLER 1300 10

10 rows selected.

9. Write a query to display employee Number, name , sal, sal*12 as annual Salary whose commission is not null from table emp.

SQL> select ename, sal, deptno from emp where comm is not null;

ENAME SAL DEPTNO

---------- --------- ---------

ALLEN 1600 30

WARD 1250 30

MARTIN 1250 30

TURNER 1500 30

10. Write a query to display employee name and salary of those employees who do not have their salary in the range of 1500 to 2000.

SQL> select ename, sal from emp where sal not between 1500 and 2000;

ENAME SAL

---------- ---------

Page 14: Computer Programs 11 Nov

SMITH 800

WARD 1250

JONES 2975

MARTIN 1250

BLAKE 2850

CLARK 2450

SCOTT 3000

KING 5000

ADAMS 1100

JAMES 950

FORD 3000

MILLER 1300

12 rows selected.

11. Write a query o display name, job, salary, and hiredate of employees who are hired between February 20 1981 and May 1 1981. Order the query in ascending order of HireDate.

SQL>select ename, job, hiredate from emp where hiredate between '20-FEB-1981' and '1-MAY-1981'

>order by hiredate;

ENAME JOB HIREDATE

Page 15: Computer Programs 11 Nov

---------- --------- ---------

ALLEN SALESMAN 20-FEB-81

WARD SALESMAN 22-FEB-81

JONES MANAGER 02-APR-81

BLAKE MANAGER 01-MAY-81

12. Write a query to display the name and hiredate of all the employees who were hired in 1982.

SQL> select ename , hiredate from emp where hiredate between '1-JAN-1982' and '31-DEC-1982';

ENAME HIREDATE

---------- ---------

MILLER 23-JAN-82

13. Write a query to display the name, job title and salary of those employees who do not have manager.

SQL> select ename, job, sal from emp where mgr is null;

ENAME JOB SAL

---------- --------- ---------

KING PRESIDENT 5000

Page 16: Computer Programs 11 Nov

14. Write a query to display the name of employee whose name contains 'A' as third alphabet.

SQL> select ename from emp where ename like '__A%';

ENAME

----------

BLAKE

CLARK

ADAMS

15. Write a query to display the name of the employee whose name contains 'T' as the last alphabet.

SQL> select ename from emp where ename like '%T';

ENAME

----------

Page 17: Computer Programs 11 Nov

SCOTT

16. Write a Query to display the name of the employee whose name contains 'M' as first alphabet and 'L' as third alphabet.

SQL> select ename from emp where ename like 'M_L%';

ENAME

----------

MILLER

17. Write a Query to display the name of the employee who is having 'L' as any alphabet of the name.

SQL> select ename from emp where ename like '%L%';

ENAME

----------

ALLEN

BLAKE

CLARK

MILLER

Page 18: Computer Programs 11 Nov

18. WAQ to display employee name, salary, salary increased by 15% expressed as a whole number Label the column as 'New Salary'.

SQL> select ename,sal, round (sal + sal * 0.15,0) "New Salary" from emp;

ENAME SAL New Salary

---------- --------- ----------

SMITH 800 920

ALLEN 1600 1840

WARD 1250 1438

JONES 2975 3421

MARTIN 1250 1438

BLAKE 2850 3278

CLARK 2450 2818

SCOTT 3000 3450

KING 5000 5750

TURNER 1500 1725

Page 19: Computer Programs 11 Nov

ADAMS 1100 1265

JAMES 950 1093

FORD 3000 3450

MILLER 1300 1495

14 rows selected.

19. WAQ to display ename, salary review date which is the date after six months of hiredate in format of 'Sunday, 7 SEP, 1981'.

SQL> SELECT ENAME, TO_CHAR ( ADD_MONTHS (HIREDATE,6), 'DAY, DD,MON, YYYY') "REVIEW DATE"

FROM EMP;

ENAME REVIEW DATE

---------- -----------------------

SMITH WEDNESDAY, 17,JUN, 1981

ALLEN THURSDAY , 20,AUG, 1981

WARD SATURDAY , 22,AUG, 1981

JONES FRIDAY , 02,OCT, 1981

MARTIN SUNDAY , 28,MAR, 1982

BLAKE SUNDAY , 01,NOV, 1981

CLARK WEDNESDAY, 09,DEC, 1981

SCOTT MONDAY , 19,OCT, 1987

KING MONDAY , 17,MAY, 1982

TURNER MONDAY , 08,MAR, 1982

Page 20: Computer Programs 11 Nov

ADAMS MONDAY , 23,NOV, 1987

JAMES THURSDAY , 03,JUN, 1982

FORD THURSDAY , 03,JUN, 1982

MILLER FRIDAY , 23,JUL, 1982

14 rows selected.

20. WAQ to display ename and total no of weeks lapsed between hiredate and today.

SQL> SELECT ENAME, ROUND((SYSDATE- HIREDATE)/7) FROM EMP

ENAME ROUND((SYSDATE-HIREDATE)/7)

---------- ---------------------------

SMITH 1272

ALLEN 1263

WARD 1263

JONES 1257

MARTIN 1232

BLAKE 1253

CLARK 1247

SCOTT 942

KING 1224

TURNER 1234

ADAMS 937

Page 21: Computer Programs 11 Nov

JAMES 1222

FORD 1222

MILLER 1215

14 rows selected.

21. WAQ to display ename and total no of days lapsed between hiredate and today.

SQL> SELECT ENAME, ROUND (SYSDATE- HIREDATE) FROM EMP;

ENAME ROUND(SYSDATE-HIREDATE)

---------- -----------------------

SMITH 8906

ALLEN 8841

WARD 8839

JONES 8800

MARTIN 8621

BLAKE 8771

CLARK 8732

SCOTT 6592

KING 8571

TURNER 8641

Page 22: Computer Programs 11 Nov

ADAMS 6558

JAMES 8555

FORD 8555

MILLER 8504

14 rows selected.

22. Create a query that produces display in the following format:

<employee name> EARNS<salary> Monthly and Working as<Job>

SQL> SELECT ENAME ||'EARNS $'||SAL||'MONTHLY AND WORKING AS' || JOB FROM EMP;

ENAME||'EARNS$'||SAL||'MONTHLYANDWORKINGAS'||JOB

----------------------------------------------------------------------------------------

SMITHEARNS $800MONTHLY AND WORKING ASCLERK

ALLENEARNS $1600MONTHLY AND WORKING ASSALESMAN

WARDEARNS $1250MONTHLY AND WORKING ASSALESMAN

JONESEARNS $2975MONTHLY AND WORKING ASMANAGER

MARTINEARNS $1250MONTHLY AND WORKING ASSALESMAN

BLAKEEARNS $2850MONTHLY AND WORKING ASMANAGER

CLARKEARNS $2450MONTHLY AND WORKING ASMANAGER

SCOTTEARNS $3000MONTHLY AND WORKING ASANALYST

KINGEARNS $5000MONTHLY AND WORKING ASPRESIDENT

TURNEREARNS $1500MONTHLY AND WORKING ASSALESMAN

Page 23: Computer Programs 11 Nov

ADAMSEARNS $1100MONTHLY AND WORKING ASCLERK

JAMESEARNS $950MONTHLY AND WORKING ASCLERK

FORDEARNS $3000MONTHLY AND WORKING ASANALYST

MILLEREARNS $1300MONTHLY AND WORKING ASCLERK

14 rows selected.

23. WAQ to display ename with first letter capitalized and other letter lowercase and length of their name string.

SQL> select initcap (ename) "name", length (ename) from emp;

name LENGTH(ENAME)

---------- -------------

Smith 5

Allen 5

Ward 4

Jones 5

Martin 6

Blake 5

Clark 5

Scott 5

King 4

Turner 6

Page 24: Computer Programs 11 Nov

Adams 5

James 5

Ford 4

Miller 6

14 rows selected.

24. WAQ to display the ename, dname and all the employees that work in the same dept as the given employee.

SQL> select ename, deptno from emp where deptno in (select deptno from emp)

ENAME DEPTNO

---------- ---------

CLARK 10

KING 10

MILLER 10

SMITH 20

ADAMS 20

FORD 20

SCOTT 20

JONES 20

ALLEN 30

BLAKE 30

Page 25: Computer Programs 11 Nov

MARTIN 30

JAMES 30

TURNER 30

WARD 30

14 rows selected.