Skip to content

Commit 0d583d6

Browse files
authored
Update Arith Geo
1 parent 4586222 commit 0d583d6

File tree

1 file changed

+16
-24
lines changed

1 file changed

+16
-24
lines changed

Arith Geo

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -35,32 +35,24 @@
3535
* *
3636
***************************************************************************************/
3737

38-
function ArithGeo(arr) {
38+
function ArithGeo(arr) {
39+
if (arr.length < 2) return -1;
3940

40-
var arithFlag = true, geoFlag = true;
41-
var diff = arr[1] - arr[0];
42-
43-
for (var i = 2; i < arr.length; i++) {
44-
if ((arr[i] - arr[i-1]) !== diff) {
45-
arithFlag = false;
46-
}
47-
}
48-
if (arithFlag) {
49-
return "Arithmetic";
50-
}
51-
else { // check for geometric pattern
52-
diff = arr[1] / arr[0];
53-
for (var i = 2; i < arr.length; i++) {
54-
if ((arr[i] / arr[i-1]) !== diff) {
55-
geoFlag = false;
56-
}
57-
}
58-
if (geoFlag) {
59-
return "Geometric";
41+
let isArithmetic = true;
42+
let isGeometric = true;
43+
let diff = arr[1] - arr[0];
44+
let ratio = arr[1] / arr[0];
45+
46+
for (let i = 1; i < arr.length; i++) {
47+
if (arr[i] - arr[i - 1] !== diff) {
48+
isArithmetic = false;
6049
}
61-
else {
62-
return "-1";
50+
if (arr[i] / arr[i - 1] !== ratio) {
51+
isGeometric = false;
6352
}
6453
}
65-
54+
55+
if (isArithmetic) return "Arithmetic";
56+
if (isGeometric) return "Geometric";
57+
return -1;
6658
}

0 commit comments

Comments
 (0)