You are on page 1of 5

PRACTICAL NO: 15

AIM: Study about how to ask ChatGPT to write complex algorithms.

Objective

To study and understand how to use ChatGPT to generate complex algorithms.

Expected Course Outcomes(Cos)


CO5: Perform case studies on different available AI systems

Prerequisite Theory
 Basic knowledge of Python programming.

def chatbot_response(user_input):
if "hello" in user_input.lower():
return "Hello! How can I assist you today?"
elif "how are you" in user_input.lower():
return "I'm just a Chatbot, but I'm here to help you!"
elif "bye" in user_input.lower():
return "Goodbye! Have a great day!"
else:
return "I'm sorry, I don't understand that."
if __name__ == "__main__":
print("Chatbot: Hello! How can I assist you today?")
while True:
user_input = input("You: ")
if user_input.lower() == "exit":
break
response = chatbot_response(user_input)
print("Chatbot:", response)
OUTPUT:
Write any two Program of Following

1. Explore ChatGPT's capabilities by asking it to generate algorithms for different


problem scenarios.
(BREADTH FIRST SEARCH)
INPUT:-
from collections import deque

def bfs(graph, start):


# Create a queue for BFS and mark the start node as visited
queue = deque()
visited = set()
queue.append(start)
visited.add(start)

while queue:
# Dequeue a vertex from the queue
vertex = queue.popleft()
print(vertex, end=' ')

# Visit all adjacent vertices of the dequeued vertex. If an adjacent


# has not been visited, mark it as visited and enqueue it.
for neighbor in graph[vertex]:
if neighbor not in visited:
queue.append(neighbor)
visited.add(neighbor)

# Example usage:
# Define a graph as an adjacency list
graph = {
'A': ['B', 'C'],
'B': ['A', 'D', 'E'],
'C': ['A', 'F'],
'D': ['B'],
'E': ['B', 'F'],
'F': ['C', 'E']
}

start_node = 'A' # Choose a starting node


print("Breadth-First Search starting from node", start_node)
bfs(graph, start_node)

OUTPUT:-

2. Analyze the generated algorithms and discuss their efficiency and correctness.
(BREADTH FIRST SEARCH)
INPUT:-
from collections import deque

def bfs(graph, start, target):


queue = deque()
visited = set()
queue.append(start)
visited.add(start)

while queue:
vertex = queue.popleft()
if vertex == target:
return True # Target found
for neighbor in graph[vertex]:
if neighbor not in visited:
queue.append(neighbor)
visited.add(neighbor)

return False # Target not found

# Example usage:
graph = {
'A': ['B', 'C'],
'B': ['A', 'D', 'E'],
'C': ['A', 'F'],
'D': ['B'],
'E': ['B', 'F'],
'F': ['C', 'E']
}

start_node = 'A'
target_node = 'F'

print("Breadth-First Search starting from node", start_node)


if bfs(graph, start_node, target_node):
print("Path from", start_node, "to", target_node, "found.")
else:
print("No path from", start_node, "to", target_node, "found.")

OUTPUT:-

3. Compare ChatGPT-generated algorithms with manually written ones for specific


problems.
INPUT:-

MANUALLY :-
from collections import deque

def bfs(graph, start):


visited = set()
queue = deque([start])
visited.add(start)

while queue:
node = queue.popleft()
print(node, end=' ')

for neighbor in graph[node]:


if neighbor not in visited:
queue.append(neighbor)
visited.add(neighbor)
# Example usage:
graph = {
'A': ['B', 'C'],
'B': ['A', 'D', 'E'],
'C': ['A', 'F'],
'D': ['B'],
'E': ['B', 'F'],
'F': ['C', 'E']
}

start_node = 'A'
print("Breadth-First Search starting from node", start_node)
bfs(graph, start_node)
OUTPUT:-

CHATGPT:-
from collections import deque

def bfs(graph, start):


queue = deque()
visited = set()
queue.append(start)
visited.add(start)

while queue:
vertex = queue.popleft()
print(vertex, end=' ')

for neighbor in graph[vertex]:


if neighbor not in visited:
queue.append(neighbor)
visited.add(neighbor)

# Example usage:
graph = {
'A': ['B', 'C'],
'B': ['A', 'D', 'E'],
'C': ['A', 'F'],
'D': ['B'],
'E': ['B', 'F'],
'F': ['C', 'E']
}

start_node = 'A'
print("Breadth-First Search starting from node", start_node)
bfs(graph, start_node)
OUTPUT:-

Conclusion-
Hence, We perform Python program to remove stop words from a given passage from a text file using
NLTK.
Progressive Assessment Sheet as per Rubrics

Regular Level of
Attendance Presentation Total
Assessment Understanding

05 05 07 08 25

Sign : Date:

You might also like