-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAverage, minimum, maximum, standard deviation ofelements of an array.fprg
More file actions
114 lines (114 loc) · 5.56 KB
/
Average, minimum, maximum, standard deviation ofelements of an array.fprg
File metadata and controls
114 lines (114 loc) · 5.56 KB
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<?xml version="1.0"?>
<flowgorithm fileversion="3.0">
<attributes>
<attribute name="name" value=""/>
<attribute name="authors" value="Aloukik"/>
<attribute name="about" value=""/>
<attribute name="saved" value="2023-01-24 11:00:25 PM"/>
<attribute name="created" value="QWxvdWtpaztTVEFSVExFUjsyMDIzLTAxLTI0OzEwOjU0OjA3IFBNOzI2MjA="/>
<attribute name="edited" value="QWxvdWtpaztTVEFSVExFUjsyMDIzLTAxLTI0OzEwOjU5OjE0IFBNOzU7cHJhanc7REVTS1RPUC00RERWTks2OzIwMjMtMDEtMjE7MDM6NTM6NDkgUE07YXZnZXJhZ2Ugb2YgZWxlbWVudHMgaW4gYXJyYXkgW2Z1bmN0aW9uIGNhbGxdWzFdLmZwcmc7MTA3Nzg="/>
<attribute name="edited" value="QWxvdWtpaztTVEFSVExFUjsyMDIzLTAxLTI0OzExOjAwOjI1IFBNOzE7MjcyMA=="/>
</attributes>
<function name="Main" type="None" variable="">
<parameters/>
<body>
<declare name="i, n" type="Integer" array="False" size=""/>
<output expression=""ENTER NUMBER OF EMPLOYEES"" newline="True"/>
<input variable="n"/>
<declare name="a" type="Integer" array="True" size="n"/>
<output expression=""ENTER SALARIES OF EMPLOYEES"" newline="True"/>
<for variable="i" start="0" end="n-1" direction="inc" step="1">
<input variable="a[i]"/>
</for>
<output expression=""AVERAGE SALARY IS "&average(a,n)" newline="True"/>
<output expression=""MINIMUM SALARY IS "&minimum(a,n)" newline="True"/>
<output expression=""MAXIMUM SALARY IS "&maximum(a,n)" newline="True"/>
<output expression=""STANDARD DEVIATION="&sd(a,n)" newline="True"/>
</body>
</function>
<function name="average" type="Real" variable="avg">
<parameters>
<parameter name="a" type="Integer" array="True"/>
<parameter name="n" type="Integer" array="False"/>
</parameters>
<body>
<declare name="avg" type="Real" array="False" size=""/>
<declare name="sum, i" type="Integer" array="False" size=""/>
<assign variable="sum" expression="0"/>
<for variable="i" start="0" end="n-1" direction="inc" step="1">
<assign variable="sum" expression="sum+a[i]"/>
</for>
<assign variable="avg" expression="sum/n"/>
</body>
</function>
<function name="maximum" type="Integer" variable="max">
<parameters>
<parameter name="a" type="Integer" array="True"/>
<parameter name="n" type="Integer" array="False"/>
</parameters>
<body>
<declare name="i, j, temp" type="Integer" array="False" size=""/>
<declare name="max" type="Integer" array="False" size=""/>
<for variable="i" start="0" end="n-1" direction="inc" step="1">
<assign variable="j" expression="i+1"/>
<while expression="j<n">
<if expression="a[i]>a[j]">
<then>
<assign variable="temp" expression="a[i]"/>
<assign variable="a[i]" expression="a[j]"/>
<assign variable="a[j]" expression="temp"/>
</then>
<else/>
</if>
<assign variable="j" expression="j+1"/>
</while>
</for>
<assign variable="max" expression="a[n-1]"/>
</body>
</function>
<function name="minimum" type="Integer" variable="min">
<parameters>
<parameter name="a" type="Integer" array="True"/>
<parameter name="n" type="Integer" array="False"/>
</parameters>
<body>
<declare name="i, j, temp" type="Integer" array="False" size=""/>
<declare name="min" type="Integer" array="False" size=""/>
<assign variable="i" expression="0"/>
<for variable="i" start="0" end="n-1" direction="inc" step="1">
<assign variable="j" expression="i+1"/>
<while expression="j<n">
<if expression="a[i]>a[j]">
<then>
<assign variable="temp" expression="a[i]"/>
<assign variable="a[i]" expression="a[j]"/>
<assign variable="a[j]" expression="temp"/>
</then>
<else/>
</if>
<assign variable="j" expression="j+1"/>
</while>
</for>
<assign variable="min" expression="a[0]"/>
</body>
</function>
<function name="sd" type="Real" variable="sd">
<parameters>
<parameter name="a" type="Integer" array="True"/>
<parameter name="n" type="Integer" array="False"/>
</parameters>
<body>
<declare name="i, sum" type="Integer" array="False" size=""/>
<declare name="Avrg, sd" type="Real" array="False" size=""/>
<assign variable="sum" expression="a[0]"/>
<for variable="i" start="1" end="n-1" direction="inc" step="1">
<assign variable="sum" expression="sum+a[i]"/>
</for>
<assign variable="Avrg" expression="sum/n"/>
<assign variable="sd" expression="0"/>
<for variable="i" start="0" end="n-1" direction="inc" step="1">
<assign variable="sd" expression="sd+ (a[i]-Avrg)*(a[i]-Avrg)"/>
</for>
</body>
</function>
</flowgorithm>