Arnam Program File
Arnam Program File
PROGRAM FILE
1
TABLE OF CONTENT
S.No. TOPIC
1 XI- Review & Working
with Functions
2 Data File Handling
3 Stack
4 Database Connectivity
5 SQL Queries
2
Working with Functions
1. Fibonacci Sequence
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
a, b = b, a + b
return a
print(fibonacci(12))
3. Factorial
def factorial(n):
result = 1
for i in range(2, n + 1):
result *= i
return result
print(factorial(7))
4. Palindrome Check
def is_palindrome(s):
if len(s) <= 1:
return True
if s[0] != s[-1]:
3
return False
return is_palindrome(s[1:-1])
print(is_palindrome('Madam'))
6. Permutations of a String
def string_permutations(s):
if len(s) == 1:
return [s]
perm_list = []
for i in range(len(s)):
for perm in string_permutations(s[:i] + s[i+1:]):
perm_list.append(s[i] + perm)
return perm_list
print(string_permutations('abc'))
7. GCD
def gcd(a, b):
while b != 0:
a, b = b, a % b
return a
print(gcd(144,225))
4
9. 11. List Reversal (Using List)
def reverse_list(lst):
reversed_lst = []
for item in lst[::-1]:
reversed_lst.append(item)
return reversed_lst
print(reverse_list([1,2,3,4,5]))
def hangman(word_list):
word = random.choice(word_list).upper()
guessed_letters = []
tries = 6
display = ['_' for _ in word]
if guess in guessed_letters:
print("You've already guessed that letter.")
continue
guessed_letters.append(guess)
if guess in word:
print(f"Good job! {guess} is in the word.")
for i, letter in enumerate(word):
if letter == guess:
display[i] = guess
else:
tries -= 1
5
print(f"Wrong guess. {tries} tries left.")
print(' '.join(display))
# Example usage
word_list = ['python', 'hangman', 'challenge', 'developer']
hangman(word_list)
6
Data File Handling
11. Count Vowels and Consonants in the file
def count_vowels_consonants(filename):
vowels = "AEIOUaeiou"
v_count = c_count = 0
count_vowels_consonants('sample.txt')
7
import csv
def display_csv(filename):
with open(filename, newline='') as file:
reader = csv.reader(file)
for row in reader:
print(row)
display_csv('data.csv')
import csv
data = [
['Alok', '12A', 85],
['Riya', '12B', 90],
['Karan', '12C', 78]
]
write_student_data('students.csv', data)
import pickle
8
def write_binary(filename, data):
with open(filename, 'wb') as file:
pickle.dump(data, file)
print("Data written to binary file.")
def read_binary(filename):
with open(filename, 'rb') as file:
data = pickle.load(file)
print("Data retrieved:", data)
write_binary('students.dat', student_data)
read_binary('students.dat')
9
Stack Implementation
stack = []
# Driver Code
10
if __name__ == "__main__":
push(10)
push(20)
push(30)
display()
peek()
pop()
display()
reverse()
display()
11
Database Connectivity
Connect to MySQL and Create Database
import mysql.connector
try:
conn = mysql.connector.connect(host="localhost", user="root", password="lps123")
cursor = conn.cursor()
except mysql.connector.Error as e:
print(f"Error: {e}")
finally:
if cursor:
cursor.close()
if conn:
conn.close()
try:
conn = mysql.connector.connect(
host="localhost",
user="root",
password="lps123",
database="example_db"
)
cursor = conn.cursor()
12
)
""")
# Inserting data
cursor.execute("INSERT INTO students (name, age) VALUES ('Alice', 22), ('Bob', 25)")
conn.commit()
print("Data inserted into 'students' table.")
# Fetching data
cursor.execute("SELECT * FROM students")
for row in cursor.fetchall():
print(row)
except mysql.connector.Error as e:
print(f"Error: {e}")
finally:
if cursor:
cursor.close()
if conn:
conn.close()
try:
conn = mysql.connector.connect(
host="localhost",
user="root",
password="lps123",
database="example_db"
)
cursor = conn.cursor()
# Updating data
cursor.execute("UPDATE students SET age = 23 WHERE name = 'Alice'")
13
conn.commit()
print("Updated Alice's age to 23.")
# Deleting data
cursor.execute("DELETE FROM students WHERE name = 'Bob'")
conn.commit()
print("Deleted record of Bob.")
except mysql.connector.Error as e:
print(f"Error: {e}")
finally:
if cursor:
cursor.close()
if conn:
conn.close()
14
SQL Queries
-- 1. Select all records from a table
SELECT * FROM employees;
-- 8. Delete records
DELETE FROM employees WHERE employee_id = 15;
15