Hỏitìm giúp lỗi với

21 bài đăng
27.12.2016 / 20:22
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma
HTML5
  1. <style>input[type='text']{width:64px;margin:4px;}</style>
  2. <form>
  3. a: <input type="text" name="a"> b: <input type="text" name="b"> c: <input type="text" name="c"> <input type="button" value="bấm" onclick="tinh(this.form)"/> <div id="kq"></div>
  4. </form>
  5. <script>
  6. function tinh(form){
  7. var kq;
  8. function uc(x,y){
  9. while(x!=y) {
  10. if(x>y) x=x-y;
  11. else y=y-x;
  12. }
  13. return x;
  14. }
  15. var kq,um,uh;
  16. a = parseInt(form.a.value);
  17. b = parseInt(form.b.value);
  18. c = parseInt(form.c.value);
  19. re = document.getElementById('kq');
  20. de = b*b - 4*a*c;
  21. cde = Math.sqrt(de);
  22. if(de>0){
  23. if(de%cde==0) {
  24. ng = -b+cde;
  25. ngk = uc(ng,2*a);
  26. nh = -b-cde;
  27. nhk = uc(nh,2*a);
  28. if(ng%(2*a)==0){ ng = ng/(2*a);}
  29. else {ng = ng/ngk+"/"+(2*a)/ngk;}
  30. if(nh%(2*a)==0) {nh = nh/(2*a);}
  31. else {nh = nh/nhk+"/"+(2*a)/nhk;}
  32. kq = "phương trình "+a+"x² +"+b+"x + "+c+" = 0 có 2 nghiệm phân biệt: "+ng+"và "+nh;
  33. }
  34. else{
  35. g='';
  36. f='';
  37. d = true;
  38. for(i=1;i<de;i++){
  39. if(de%i==0){
  40. e = de/i;
  41. ci = Math.sqrt(i);
  42. if(de%ci==0&&ci!=1){
  43. d = false;
  44. f+="√"+e;
  45. g+=ci;
  46. um = uc(-b,ci);
  47. uh = uc(um,2*a);
  48. break;
  49. }
  50. }
  51. }
  52. if(d==true){kq = "phương trình "+a+"x² +"+b+"x + "+c+" = 0 có 2 nghiệm phân biệt: ("+-b" + "f+")/"+2*a;}
  53. else{kq = "phương trình "+a+"x² +"+b+"x + "+c+" = 0 có 2 nghiệm phân biệt: ("+-b/um+" + "g/uh+f+")/"+2*a/uh+" và ("+-b/um+" - "g/uh+f+")/"+2*a/uh;}
  54.  
  55. }
  56. re.innerHTML = kq;
  57. }
  58. </script>

không hiểu sao hàm uc() chạy không nôi

27.12.2016 / 20:24
MrKen
Bài đăng: 2653
Trùm!
Vẫn là A N H

giải phương trình cần gì tính ước chung?

27.12.2016 / 20:25
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma

=)) làm như kiểu máy casio 570 ES ý. chia không hết thì đơn giản

27.12.2016 / 20:27
MrKen
Bài đăng: 2653
Trùm!
Vẫn là A N H

biết sao sai không. =)). nếu một trong hai số <= 0 thì nó tìm ước kiểu gì =))

Đã chỉnh sửa. MrKen (27.12.2016 / 20:28)
27.12.2016 / 20:36
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma

thanks thím nhé =)) =))

27.12.2016 / 20:37
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma

đúng là không nói thì tui cũng mù luôn

27.12.2016 / 20:39
MrKen
Bài đăng: 2653
Trùm!
Vẫn là A N H

phức tạp vấn đề lên làm gì :3

27.12.2016 / 20:41
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma

=)) phải phức tạp hơn xíu nữa mới xong được

27.12.2016 / 20:42
hyuganeji000
Bài đăng: 77
Member
Tẩu hỏa nhập ma

tập tành code, bị vướng cái này mấy tuần nên không học được cái nào mới hết :v

Đã chỉnh sửa. hyuganeji000 (27.12.2016 / 20:43)
27.12.2016 / 21:00
mad
Bài đăng: 2434
Member
Nhào vô cắn tao đi, tao sợ mày à cắn bừa.

uh = uc(um,2*a);

dòng 47 dán vào console nó báo lỗi =))