var w,h,el,g,my={};function setcalcMain(mode){var version='0.622';my.typ=typeof mode!=='undefined'?mode:'bla';w=Math.min(window.innerWidth-20,500) h=220;var s='';s+='
';s+='
';var clr='blue' s+='';s+='';s+='
';my.types=['union','intersection','difference'];s+='';s+=radioHTML('Type','type',my.types,'go');s+='
';s+='';s+='
';s+='
';s+='';s+='';s+='';s+='
© 2019 MathsIsFun.com v'+version+'   
';s+='
';document.write(s);my.examples=[{a:'a,b,c,d',b:'c,d,e,f'},{a:'a b,c , d,a,a, q a ,a',b:'q,c,d,e,f,w'},{a:'1,3,5,7,9',b:'2,4,6,8,10'},{a:'{a,b,c,d}',b:'{c,d}'},{a:'cow, horse, chicken, dog, cat',b:'cow, horse, dog, cat, mouse'},{a:'a a a a b',b:'b b b b c'},] my.exampleNo=-1 this.clrs=[["Blue",'#0000FF'],["Red",'#FF0000'],["Black",'#000000'],["Green",'#00cc00'],["Orange",'#FFA500'],["Slate Blue",'#6A5ACD'],["Lime",'#00FF00'],["Spring Green",'#00FF7F'],["Teal",'#008080'],["Gold",'#ffd700'],["Med Purple",'#aa00aa'],["Light Blue",'#ADD8E6'],["Navy",'#000080'],["Purple",'#800080'],["Dark SeaGreen",'#8FBC8F']];console.log("my.typ",my.typ);my.sortQ=false example()} function go(){var a=document.getElementById('texta').value var b=document.getElementById('textb').value var c=document.getElementById('textc').value var type=document.querySelector('input[name="type"]:checked').value;console.log('go',a,b,c,type) var as=parse(a) as=removeDups(as) console.log('as',a,as) var bs=parse(b) bs=removeDups(bs) console.log('bs',b,bs) var cs=[] var symb='' switch(type){case 'union':cs=as.slice() for(var i=0;ib)return 1;return-1;}else{return a-b;}});console.log('post sort',cs)} document.getElementById('textc').value=cs.join(', ') var s='' s+='{'+as.join(',')+'} '+symb+' {'+bs.join(',')+'} '+'='+' {'+cs.join(',')+'}' document.getElementById('info').innerHTML=s} function example(){my.exampleNo=loop(my.exampleNo,0,my.examples.length-1) console.log('my.exampleNo',my.exampleNo) var example=my.examples[my.exampleNo] document.getElementById('texta').value=example.a document.getElementById('textb').value=example.b go()} function loop(currNo,minNo,maxNo,incr){if(incr===undefined)incr=1;currNo+=incr;console.log('loop',currNo,minNo,maxNo,incr) var range=maxNo-minNo+1;if(currNomaxNo){currNo=minNo+(currNo-minNo)%range;} return currNo;} function swap(){var a=document.getElementById('texta').value var b=document.getElementById('textb').value document.getElementById('textb').value=a document.getElementById('texta').value=b go()} function removeDups(a){var result=[];a.forEach(function(item){if(result.indexOf(item)<0){result.push(item);}});return result} function parse(s){s=s.trim();s=s.replace(/({|})/gi,"");s=s.replace(/\s*\,\s*/g,",");s=s.replace(/\s+/g,",");while(s[s.length-1]==','||s[s.length-1]==' ')s=s.slice(0,-1);if(s.length==0)return[] var vals=s.split(",");return vals} function radioHTML(prompt,id,lbls,func){var s='';s+='
';for(var i=0;i';s+='';} s+='
';return s;} function sortToggle(){my.sortQ=!my.sortQ toggleBtn('sortBtn',my.sortQ) console.log('sortToggle',my.sortQ) go()} function toggleBtn(btn,onq){if(onq){document.getElementById(btn).classList.add("hi") document.getElementById(btn).classList.remove("lo")}else{document.getElementById(btn).classList.add("lo") document.getElementById(btn).classList.remove("hi")}}