wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Student Grade Calculator in LISP

profile
Zaobiya Khan
Jul 16, 2025
2 Likes
1 Discussions
2 Reads

The program performs the following key functions:


  1. Takes user input for the three scores, each between 0 and 100.
  2. Validates that the entered scores are numbers within the correct range.
  3. Calculates the average of the three scores.
  4. Determines the letter grade (A–F) based on the calculated average:


A: 90–100

B: 80–89

C: 70–79

D: 60–69

F: below 60


Displays the results: individual scores, average score (formatted to 2 decimal places), and final letter grade.


Program:-


;; Student Grade Calculator

(defun calculate-grade (total)

(cond ((>= total 90) "A")

((>= total 80) "B")

((>= total 70) "C")

((>= total 60) "D")

(t "F")))


(defun get-valid-score (prompt min max)

(format t "~%~A (Enter score between ~D and ~D): " prompt min max)

(let ((score (read)))

(if (and (numberp score) (>= score min) (<= score max))

score

(progn

(format t "Invalid score! Please enter a number between ~D and ~D~%" min max)

(get-valid-score prompt min max)))))


(defun main ()

(format t "~%Welcome to Student Grade Calculator~%")

;; Get scores for different components

(let* ((assignment (get-valid-score "Enter Assignment score" 0 100))

(midterm (get-valid-score "Enter Midterm score" 0 100))

(final (get-valid-score "Enter Final exam score" 0 100))

;; Calculate weighted total

(total (/ (+ assignment midterm final) 3))

(final-grade (calculate-grade total)))

;; Display results

(format t "~%Results:~%")

(format t "Assignment Score: ~D~%" assignment)

(format t "Midterm Score: ~D~%" midterm)

(format t "Final Score: ~D~%" final)

(format t "Average Score: ~,2F~%" total)

(format t "Final Grade: ~A~%" final-grade)))


;; Run the program

(main)


Output:


Comments ()


Sign in

Read Next

Gaming Disorder: When Gaming Affects Mental Health

Blog banner

What is OS Fingerprinting?

Blog banner

Memory management

Blog banner

Message Passing in OS

Blog banner

Cache Memory in Operating Systems

Blog banner

Atlantis - The Lost Island.........

Blog banner

Evolution of Operating Systems

Blog banner

Solitary Play Activities for Preschoolers: Types and Benefits

Blog banner

(Input/Output) in os

Blog banner

INTERRUPTS

Blog banner

Sweet and Sour Mango Pickle (Gol Keri)

Blog banner

History of ITIL

Blog banner

My Favorite Country

Blog banner

Buffers in Operating Systems

Blog banner

38_Network Sniffing Techniques_SBC

Blog banner

INTERNET SECURITY

Blog banner

Child labour

Blog banner

Process in OS

Blog banner

10 Interesting Facts about Death Note

Blog banner

What is Data, Information and Knowledge?

Blog banner

Remote Work in 2026

Blog banner

Different types of scam frauds

Blog banner

Deadlock

Blog banner

How To Implement Search Engine Marketing (Sem) Strategy Effectively

Blog banner

My First Trek - Sondai, Karjat - Shoaib Malik

Blog banner

File sharing

Blog banner

Hubspot

Blog banner

Direct Memory Access

Blog banner

Data Security and Data Privacy in Data Science

Blog banner

Education?

Blog banner

Direct Memory Access

Blog banner

Swiggi

Blog banner

Personalized Movie Recommendations with Data Science

Blog banner

Khau Galli – Vile Parle

Blog banner

Characteristics of Etherum

Blog banner

NETWORK SECURITY RISKS

Blog banner

Different Types of Data

Blog banner

Is it important to follow all the trends that come up on social media?

Blog banner

Why Oak Tree Hotel Is Arcadia’s Hidden Gem?

Blog banner

The Role of Frontline Managers in Driving Workplace Performance and Customer Satisfaction

Blog banner

Data Exfiltration

Blog banner

ADIDAS

Blog banner