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

Domain Name System

Blog banner

Types of Hackers.

Blog banner

Deadlock and Starvation

Blog banner

Delhi city

Blog banner

Critical success factors

Blog banner

DEVELOPMENTS LEADING TO MODERN OPERATING SYSTEMS

Blog banner

Linux VServer Architecture

Blog banner

Business-to-Business

Blog banner

Data Warehousing

Blog banner

Caching windows

Blog banner

Method of Evaluating Information Security Level in an Organization

Blog banner

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

Blog banner

Virtual memory

Blog banner

MYNTRA

Blog banner

Memory Management in Operating System

Blog banner

Full Disk Encryption on Digital Forensics

Blog banner

OS Assignment 3

Blog banner

Different memory allocation strategies

Blog banner

Twisted world

Blog banner

SPAM

Blog banner

FILE SHARING

Blog banner

10 Amazing facts about Tokyo Ghoul

Blog banner

Mutual exclusion

Blog banner

What makes Nugget RC Racing Florida’s Most Exciting Racing Events?

Blog banner

A-B-C of Networking: Part-2 (Components)

Blog banner

STARVATION

Blog banner

The Secure Software Development Life Cycle (SDLC)

Blog banner

Memory Management in Operating System

Blog banner

Types of email

Blog banner

This too shall pass

Blog banner

THE INPACT OF SOCIAL MEDIA!

Blog banner

Steps to create an Ubuntu EC2 Instance with GUI in AWS

Blog banner

OPERATING SYSTEM

Blog banner

VIRTUAL MACHINES

Blog banner

Hash password! Is it really secured?

Blog banner

IT Service Continuity Management

Blog banner

EID UL FITR

Blog banner

Linux

Blog banner

Layers Of Blockchain

Blog banner

Time Series Analysis

Blog banner

Interrupts

Blog banner

What is online marketing and why do you need to know about it ?

Blog banner