- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Haskell Program to calculate the volume, diagonal, and area of Cuboids
This tutorial will help us in calculating the volume, diagonal, and area of the Cuboids. The volume of a cuboid is a measure of the amount of space inside the cuboid. And area involves the surface area of the cuboid. The diagonal of a cuboid is a line segment connecting two opposite vertices of the cuboid. It is also known as the "space diagonal" or "body diagonal" of the cuboid.
Algorithm
Step 1 − The volume, diagonal and area functions are defined on the basis of simple mathematical formula as volume l w h = l * w * h ; diagonal l w h = sqrt (l^2 + w^2 + h^2) and area l w h = 2 * (l*w + w*h + h*l) respectively.
Step 2 − Program execution will be started from main function. The main() function has whole control of the program. It is written as main = do. The main function takes input from the user for the length, width, and height of the cuboid and then uses the above functions to calculate the volume, diagonal, and surface area.
Step 3 − The variables named, “length” , “width” and “height” is being initialized. It will contain the length, width and height of the cuboid whose area, diagonal and volume is to be computed.
Step 4 − The final resultant volume, diagonal and area value is displayed once the volume, diagonal and area functions are called.
Using User-defined Functions
This example defines three functions: volume, diagonal, and area, which respectively calculate the volume, diagonal, and surface area of a cuboid. Finally, it displays the results to the user.
Example
volume :: Float -> Float -> Float -> Float volume l w h = l * w * h diagonal :: Float -> Float -> Float -> Float diagonal l w h = sqrt (l^2 + w^2 + h^2) area :: Float -> Float -> Float -> Float area l w h = 2 * (l*w + w*h + h*l) main :: IO () main = do let l = 5 let w = 4 let h = 10 let v = volume l w h d = diagonal l w h a = area l w h putStrLn ("Volume: " ++ show v) putStrLn ("Diagonal: " ++ show d) putStrLn ("Surface Area: " ++ show a)
Output
Volume: 200.0 Diagonal: 11.874342 Surface Area: 220.0
Using a Data Type
This example defines a custom data type Cuboid that contains the cuboid’s length, width, and height. The volume, diagonal, and area functions take a Cuboid as input and return the calculated values. Finally, it displays the results to the user.
Example
data Cuboid = Cuboid { length :: Float, width :: Float, height :: Float } volume :: Cuboid -> Float volume (Cuboid l w h) = l * w * h diagonal :: Cuboid -> Float diagonal (Cuboid l w h) = sqrt (l^2 + w^2 + h^2) area :: Cuboid -> Float area (Cuboid l w h) = 2 * (l*w + w*h + h*l) main :: IO () main = do putStrLn "Enter the length, width, and height of the cuboid: " let l = 5 let w = 4 let h = 10 let cuboid = Cuboid l w h v = volume cuboid d = diagonal cuboid a = area cuboid putStrLn ("Volume: " ++ show v) putStrLn ("Diagonal: " ++ show d) putStrLn ("Surface Area: " ++ show a)
Output
Volume: 200.0 Diagonal: 11.874342 Surface Area: 220.0
Conclusion
There are different ways to calculate the volume, diagonal and area of a cuboid. In Haskell, the volume, diagonal and the area of a cuboid can be calculated by using user-defined function or by using a data type to represent the cuboid and a set of functions to operate on it.
- Related Articles
- Haskell Program to calculate the volume and area of Cone
- Haskell Program to calculate the volume and area of Sphere
- Haskell Program to calculate the volume and area of the Cylinder
- Golang program to Calculate the Volume, Diagonal and Area of a Cuboid?
- Haskell Program to calculate the volume of Cube
- Haskell Program to Find the Surface area and Volume of Cuboid
- Haskell Program to calculate the area of Cube
- Swift Program to calculate the volume and area of Sphere
- C++ Program to calculate the volume and area of Sphere
- Python Program to calculate the volume and area of Cone
- Python Program to calculate the volume and area of Sphere
- Haskell Program to calculate the area of the rhombus
- Program to calculate area and volume of a Tetrahedron
- Swift Program to calculate the volume and area of the Cylinder
- Python Program to calculate the volume and area of the Cylinder
