23BCA071 Practicle ADS 2
23BCA071 Practicle ADS 2
Student ID – 23BCA071
1.Write a PL/SQL code to input empno and salary from user. Calculate
bonus based on condition
DECLARE
empno NUMBER;
salary NUMBER;
bonus NUMBER;
BEGIN
-- Taking user input
empno := &empno;
salary := &salary;
-- Calculating bonus
IF salary >= 5000 AND salary < 20000 THEN
bonus := salary * 0.05;
ELSIF salary >= 20000 AND salary < 50000 THEN
bonus := salary * 0.07;
ELSIF salary >= 50000 THEN
bonus := salary * 0.10;
ELSE
bonus := 0;
END IF;
-- Printing result
DBMS_OUTPUT.PUT_LINE('Emp ID: ' || empno);
DBMS_OUTPUT.PUT_LINE('Original Salary: ' || salary);
DBMS_OUTPUT.PUT_LINE('Bonus: ' || bonus);
END;
/
DECLARE
cust_id NUMBER;
meter_units NUMBER;
bill_amount NUMBER;
BEGIN
-- Taking user input
cust_id := &cust_id;
meter_units := &meter_units;
-- Printing result
DBMS_OUTPUT.PUT_LINE('Customer ID: ' || cust_id);
DBMS_OUTPUT.PUT_LINE('Meter Units: ' || meter_units);
DBMS_OUTPUT.PUT_LINE('Total Bill Amount: ' || bill_amount);
END;
/
DECLARE
ch CHAR(1);
BEGIN
ch := '&ch';
-- Checking vowel
IF ch IN ('A', 'E', 'I', 'O', 'U', 'a', 'e', 'i', 'o', 'u') THEN
DBMS_OUTPUT.PUT_LINE(ch || ' is a Vowel');
ELSE
END IF;
END;
DECLARE
ch CHAR(1);
BEGIN
ch := '&ch';
CASE UPPER(ch)
END CASE;
END;
4. Write a PL/SQL block to find odd and even numbers from 1 to 10.
DECLARE
rollno NUMBER;
totmarks NUMBER;
grade VARCHAR2(2);
BEGIN
-- Taking user input
rollno := &rollno;
totmarks := &totmarks;
-- Printing result
DBMS_OUTPUT.PUT_LINE('Roll No: ' || rollno);
DBMS_OUTPUT.PUT_LINE('Total Marks: ' || totmarks);
DBMS_OUTPUT.PUT_LINE('Grade: ' || grade);
END IF;
END;
/
DECLARE
i NUMBER;
BEGIN
DBMS_OUTPUT.PUT_LINE('Even Numbers:');
FOR i IN 1..10 LOOP
IF MOD(i, 2) = 0 THEN
DBMS_OUTPUT.PUT_LINE(i);
END IF;
END LOOP;
DBMS_OUTPUT.PUT_LINE('Odd Numbers:');
FOR i IN 1..10 LOOP
IF MOD(i, 2) <> 0 THEN
DBMS_OUTPUT.PUT_LINE(i);
END IF;
END LOOP;
END;
/
Student ID – 23BCA071