From d72efd6db1263e8863ed29e8f4b8078bd06672f7 Mon Sep 17 00:00:00 2001 From: Nimitha21 <168287366+Nimitha21@users.noreply.github.com> Date: Wed, 15 May 2024 12:02:01 +0530 Subject: [PATCH] Add files via upload --- Task 1 | 39 +++++++++++++++++++++++++++++++++++++ Task 2 | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Task 3 | 33 +++++++++++++++++++++++++++++++ Task 4 | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 187 insertions(+) create mode 100644 Task 1 create mode 100644 Task 2 create mode 100644 Task 3 create mode 100644 Task 4 diff --git a/Task 1 b/Task 1 new file mode 100644 index 0000000..4b9865b --- /dev/null +++ b/Task 1 @@ -0,0 +1,39 @@ +def addition(x,y): + return x+y + +def subtraction(x,y): + return x-y + +def multiplication(x,y): + return x*y + +def division(x,y): + if(y==0): + return "Error! Devision by zero" + else: + return x/y + + + +print("Operation.") + +print("1. Addition.") +print("2. Subtraction.") +print("3. Multiplication.") +print("4. Division.") + +choice =input("Enter your Choice: ") + +num1 = float(input("Enter number first : ")) +num2 = float(input("Enter number second : ")) + +if choice == "1": + print("Result : ", addition(num1 , num2)) +elif choice == "2": + print("Result : ", subtraction(num1 , num2)) +elif choice == "3": + print("Result : ", multiplication(num1 , num2)) +elif choice == "4": + print("Result : ", division(num1 , num2)) +else: + print("Invalid input.") diff --git a/Task 2 b/Task 2 new file mode 100644 index 0000000..6822f4e --- /dev/null +++ b/Task 2 @@ -0,0 +1,61 @@ +class TaskManager: + def __init__(self): + self.tasks = [] + + def add_task(self, task): + self.tasks.append(task) + print("Task added successfully.") + + def delete_task(self, task_index): + if task_index < len(self.tasks): + del self.tasks[task_index] + print("Task deleted successfully.") + else: + print("Invalid task index.") + + def mark_completed(self, task_index): + if task_index < len(self.tasks): + self.tasks[task_index]['completed'] = True + print("Task marked as completed.") + else: + print("Invalid task index.") + + def display_tasks(self): + print("\nTasks:") + for index, task in enumerate(self.tasks): + print(f"{index + 1}. {task['description']} - {'Completed' if task['completed'] else 'Pending'}") + + +def main(): + task_manager = TaskManager() + + while True: + print("\nTask Manager") + print("1. Add Task") + print("2. Delete Task") + print("3. Mark Task as Completed") + print("4. Display Tasks") + print("5. Exit") + + choice = input("Enter your choice: ") + + if choice == '1': + description = input("Enter task description: ") + task_manager.add_task({'description': description, 'completed': False}) + elif choice == '2': + task_index = int(input("Enter index of task to delete: ")) - 1 + task_manager.delete_task(task_index) + elif choice == '3': + task_index = int(input("Enter index of task to mark as completed: ")) - 1 + task_manager.mark_completed(task_index) + elif choice == '4': + task_manager.display_tasks() + elif choice == '5': + print("Exiting...") + break + else: + print("Invalid choice. Please try again.") + + +if __name__ == "__main__": + main() diff --git a/Task 3 b/Task 3 new file mode 100644 index 0000000..604f21e --- /dev/null +++ b/Task 3 @@ -0,0 +1,33 @@ +import random + +def guess_number(): + # Generate a random number between 1 and 100 + secret_number = random.randint(1, 100) + attempts = 0 + max_attempts = 10 + # You can adjust this value as needed + + print("Welcome to the Number Guessing Game!") + print("I have chosen a number between 1 and 100. You have", max_attempts, "attempts to guess it.") + + while attempts < max_attempts: + try: + guess = int(input("Enter your guess: ")) + except ValueError: + print("Please enter a valid number.") + continue + + attempts += 1 + + if guess < secret_number: + print("Too low! Try again.") + elif guess > secret_number: + print("Too high! Try again.") + else: + print("Congratulations! You've guessed the number", secret_number, "correctly in", attempts, "attempts!") + break + else: + print("Sorry, you've run out of attempts. The number was:", secret_number) + +# Run the game +guess_number() diff --git a/Task 4 b/Task 4 new file mode 100644 index 0000000..049cc53 --- /dev/null +++ b/Task 4 @@ -0,0 +1,54 @@ +import PyPDF2 +import fitz +import os + +def pdf_to_text(pdf_file, output_folder): + # Open the PDF file + with open(pdf_file, 'rb') as file: + pdf_reader = PyPDF2.PdfFileReader(file) + + # Create output folder if it doesn't exist + if not os.path.exists(output_folder): + os.makedirs(output_folder) + + # Extract text from each page + for page_num in range(pdf_reader.numPages): + page = pdf_reader.getPage(page_num) + text = page.extractText() + + # Write extracted text to a text file + text_file_path = os.path.join(output_folder, f"page_{page_num + 1}.txt") + with open(text_file_path, 'w') as text_file: + text_file.write(text) + + print("Text extraction completed. Text files saved in:", output_folder) + +def pdf_to_images(pdf_file, output_folder): + # Open the PDF file + pdf_document = fitz.open(pdf_file) + + # Create output folder if it doesn't exist + if not os.path.exists(output_folder): + os.makedirs(output_folder) + + # Iterate through each page and save as image + for page_num in range(len(pdf_document)): + page = pdf_document[page_num] + image_path = os.path.join(output_folder, f"page_{page_num + 1}.png") + pix = page.get_pixmap() + pix.writePNG(image_path) + + print("Image conversion completed. Images saved in:", output_folder) + +def main(): + pdf_file = 'sample.pdf' # Change this to the path of your PDF file + output_folder = 'output' # Output folder where converted files will be saved + + # Convert PDF to text + pdf_to_text(pdf_file, output_folder) + + # Convert PDF to images + pdf_to_images(pdf_file, output_folder) + +if __name__ == "__main__": + main()