tính n! mà ko dùng đệ qui, vòng lặp, goto á??? pro nào có cách làm thì showw hàng đilàm sao để tính giai thừa n không dùng đệ qui,không vòng lặp,không goto ?--> kiến thức cơ bản![]()
làm sao để tính giai thừa n không dùng đệ qui,không vòng lặp,không goto ?
Đã được chỉnh sửa lần cuối bởi zstar : 12-02-2011 lúc 10:30 PM.
tính n! mà ko dùng đệ qui, vòng lặp, goto á??? pro nào có cách làm thì showw hàng đilàm sao để tính giai thừa n không dùng đệ qui,không vòng lặp,không goto ?--> kiến thức cơ bản![]()
uk!!~ mình cũng ko bik. chỉ zùm mình với. ^^
mà nếu tính thủ công thì mình tính n!=n.(n-1).....1
đương nhiên là n phải biết trước để còn tính
:-D
Hì.Cách tận dụng tính chất của Constructor trong OOP có vẻ tạm chấp nhận đc bác nhỉ
trời, dùng constructor và biến static trong class
mà dùng constructor thế cũng gần như đệ quy quá. vì cũng biến không gian đầu vào n thành không gian nhỏ hơn để tăng kq
Dùng switch() case
Còn nếu muốn tính giá trị giai thừa lớn hơn thì sửa điều kiện nhập và thêm nhiều lệnh case thôi àh!!!!!!!!!!!!!!C Code:
#include <stdio.h> #include <conio.h> void main() { clrscr(); int n; long gt; //Kiem tra dieu kien nhap do } while (n<0||n>50); switch (n) { case 0: case 1: gt=1; break; case 2: gt=2; break; .............. case 50:........... break; } getch(); }
Nó là con của thằng nào ? Con của thằng nào ? Nói mau!!!!!!!!!!!!!!!
Nó là con của thằng nào ? Con của thằng nào ? Nói mau!!!!!!!!!!!!!!!
Cách này của Kevin, đảm bảo hết các yếu tố kể trên:
- Không đệ quy
- Không vòng lặp
- Không goto
- Kiến thức cơ bản
Về tốc độ chắc chắn nhanh hơn tuốt mấy cách trên.
C Code:
const long int factorial[] = { 1, 1, 2, 6, 24, 120, 720, 5040, 40320, 362880, 3628800, 39916800, 479001600, 6227020800, 87178291200, 1307674368000, 20922789888000, 355687428096000, 6402373705728000, 121645100408832000, 2432902008176640000 }; return factorial[n];
Bác nào thích toán học, em tặng code sau:
C Code:
Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó.Email: kevin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
Phone: 0972 89 7667
Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp hoặc bị sự thiếu kỷ luật làm tiêu tan sự nghiệp.