-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest.js
More file actions
92 lines (83 loc) · 3.01 KB
/
test.js
File metadata and controls
92 lines (83 loc) · 3.01 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
let n,nv,nM1;
let val,arr=[[]];
function sendkey(){
//document.getElementById("fname").value;
document.getElementById("resultBox").innerHTML="";
let i=0,j=0,text=document.getElementById("fname").value;
let values=text.split("\n");
//values = values.split("\n");
while(values[i] != undefined){
val=values[i].split(" ");
nv=val.length;
//console.log("val:"++"\n");
arr[i]=val.map(Number);
i++;
}
n=i;
console.log(arr);
nM1=n-1;
find();
}
function find(){
let pos=0,count=0,a,b,c,d,ei,ej,cha="-",aster,temp,inter=((n-1)*n)/2;
while(count < inter){
count=0;
document.getElementById("resultBox").innerHTML+=("<br><br>~<br>");
for(ei=0;ei<n;ei++){
c=arr[pos][pos];
a=Math.abs(c);
d=arr[ei][pos];
b=Math.abs(d);
aster="'";
aster=aster.repeat(pos);
if(a == 0){
for(let p=pos+1;p<n;p++){
if(arr[p][pos]){
temp=arr[pos];
arr[pos] = arr[p];
arr[p] = temp;
temp=a;
a=b;
b=temp;
document.getElementById("resultBox").innerHTML+=(`<span style="color:rgb(53, 52, 52);font-family:monospace;"> By interchanging L${aster}<sub>${pos+1}</sub> & L${aster}<sub>${p+1}</sub></span><br>`);
p=n;
}
}
}
for(ej=0;ej<nv;ej++){
if(ei<=pos) {
if(ej== nv-1) document.getElementById("resultBox").innerHTML+=(`= ${arr[ei][ej]} `);
else{
if(ej>0 && arr[ei][ej]>=0) document.getElementById("resultBox").innerHTML+=("+");
document.getElementById("resultBox").innerHTML+=(`${arr[ei][ej]}x<sub>${ej+1}</sub> `);
}
}
else {
if(((a * d) - (b * c)) == 0 ){
arr[ei][ej] = (a * arr[ei][ej]) - (b * arr[pos][ej]);
if(ej== nv-1) document.getElementById("resultBox").innerHTML+=(`= ${arr[ei][ej]} <span class="process">[L${aster}'<sub>${ei+1}</sub> = ${a}L${aster}<sub>${ei+1}</sub> ${cha} ${b}L${aster}<sub>${pos+1}</sub>]</span>`);
else{
if(ej>0 && arr[ei][ej]>=0) document.getElementById("resultBox").innerHTML+=("+");
document.getElementById("resultBox").innerHTML+=(`${arr[ei][ej]}x<sub>${ej+1}</sub> `);
}
cha = "-";
}
else{
arr[ei][ej] = (a * arr[ei][ej]) + (b * arr[pos][ej]);
if(ej== nv-1) document.getElementById("resultBox").innerHTML+=(`= ${arr[ei][ej]} <span class="process">[L${aster}'<sub>${ei+1}</sub> = ${a}L${aster}<sub>${ei+1}</sub> ${cha} ${b}L${aster}<sub>${pos+1}</sub>]</span>`);
else {
if(ej>0 && arr[ei][ej]>=0) document.getElementById("resultBox").innerHTML+=("+");
document.getElementById("resultBox").innerHTML+=(`${arr[ei][ej]}x<sub>${ej+1}</sub> `);
}
cha = "+";
}
}
if(ej<ei){
if(arr[ei][ej] == 0) count++;
}
}
document.getElementById("resultBox").innerHTML+=("<br>");
}
pos++;
}
}