summaryrefslogtreecommitdiff
path: root/cst116-lab1-Ahmed/cst116-lab1-Ahmed.cpp
blob: 3ebee5609e7ea0db92696bf9634b5987b7f12a5d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// BlankConsoleLab.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include <iostream>



using std::cout;
using std::cin;
using std::endl;


int main()
{
    float width;
    float length;
    float area;
    float mass;
    float aspect_ratio;
    float grav_pull;
    bool isStable = false;
    bool range = false;


    
    while (isStable == false) {
        
        // prompt user for width and length input, then store into appropriate variables
        while (range == false) {

            cout << "Enter width (In centimeters): " << endl;
            cin >> width;
            cout << "Enter length (In centimeters): " << endl;
            cin >> length;
            // loops only if the width and length are not between 1 and 400
            if (width > 400 || length > 400 || width < 1 || length < 1) {
                cout << "Please keep the width and length between 1 and 400 centimeters" << endl;
            }

            else {
                range = true;
                break;
            }
        }
        

        // display the entered values back to the user
        cout << "You entered: " << width << " cm for width, and: " << length << " cm for length" << endl;
        
        // compute and  siplay the area
        area = ((width * length) / 2) / 10000;
        cout << "The area for your kite is: " << area << " square meters" << endl;
        
        //computer the aspect ratio and prompt user with warning if condition not met
        aspect_ratio = (width / length);
        
        //compute the mass of the kite by multiplying the area, fabric weight, and converting to kg
        mass = (area * 135) / 1000;
        cout << "The mass of your kite is: " << mass << " kg" << endl;

        //compute the gravitional pull of the kite by multiplying th emass by the acceleration due to gravity
        grav_pull = mass * 9.8;
        cout << "The gravitional pull of your kite is: " << grav_pull << " Newtons" << endl;
        //Warns if aspect ratio is too high and causes instability
        if (aspect_ratio >= 1) {
            cout << "Warning, an aspect ratio of: " << aspect_ratio << " is too high and will provide instability, Try Again" << endl;
            cout << " " << endl;
            range = false;

        }
        // otherwise break out successfully
        else {
            cout << "Aspect Ratio: " << aspect_ratio << endl;
            isStable = true;
            break;
        }

           
        
    }



}