wisemonkeys logo
FeedNotificationProfileManage Forms
FeedNotificationSearchSign in
wisemonkeys logo

Blogs

Student Grade Calculator in LISP

profile
Zaobiya Khan
Jul 16, 2025
2 Likes
1 Discussions
0 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

10 Survival Tips that might save your life

Blog banner

Deadlock

Blog banner

geographic information system (GIS)

Blog banner

Security issues

Blog banner

Importance of business process documentation

Blog banner

File system

Blog banner

The IT Service Lifecycle

Blog banner

Service Transition Process in ITSM

Blog banner

The Bold Digital Marketing Moves That Made Durex India’s Second-Largest Condom Brand

Blog banner

Footprinting

Blog banner

Music helps reduce stress

Blog banner

Mobile Security

Blog banner

PHONE TECHNOLOGY

Blog banner

AI & Data Science in Healthcare – Predicting diseases, medical imaging analysis

Blog banner

An Approach To Spyware Detection And Removal

Blog banner

INTRANET

Blog banner

PROCESS STATES OF OPERATING SYSTEM

Blog banner

Unlocking the Secrets: Basic Operations of Computer Forensic Laboratories

Blog banner

Why Kanye West (Now Ye) is the GOAT: A Legacy Beyond Music

Blog banner

Virtual memory

Blog banner

Mumbai Metro 3

Blog banner

Hacking of web server and application

Blog banner

Telegram and it's features

Blog banner

Life

Blog banner

Blog name

Blog banner

Multiprocessor and scheduling

Blog banner

 " Healing of Yoga "

Blog banner

Types of Big Data

Blog banner

MPL and how its effects?

Blog banner

Memory Management Techniques

Blog banner

Google classroom

Blog banner

Why You Should Not Use Free VPNs

Blog banner

Direct Memory Access

Blog banner

Classification Vs Clustring? What's the diffrence?

Blog banner

Critical success factors

Blog banner

SWEET SHREDDED MANGO CHUNDA (MANGO CHUNDA)

Blog banner

Raid

Blog banner

Memory Management

Blog banner

Financial Fraud Detection

Blog banner

38_Exploring The Honeynet Project

Blog banner

Mesh Topology

Blog banner

Disk Scheduling

Blog banner