1. Bài Tập Tính Tính S(n) = CanBac2(2+CanBac2(2+….+CanBac2(2 ...
Có thể bạn quan tâm
Bài tập cơ bản này ta có thể có nhiều hướng giải quyết khác nhau, như sử dụng vòng lặp for , sử dụng vòng lặp while, …kết hợp với sử dụng hàm căn bậc hai (sqrt) nằm trong thư viện <math.h> trong ngôn ngữ lập trình C.
Đầu vào sẽ là một biến nguyên n, yêu cầu của bài toán là tính S(n) = CanBac2(2+CanBac2(2+….+CanBac2(2 + CanBac2(2)))) có n dấu căn.
2. Lời giảiĐể giải được bài tập tính S(n) = CanBac2(2+CanBac2(2+….+CanBac2(2 + CanBac2(2)))) có n dấu căn bạn phải có kiến thức về toán học cơ bản, có kiến thức về lập trình C cơ bản, cách sử dụng vòng lặp và hàm căn bậc hai (sqrt) trong ngôn ngữ lập trinh C.
Các bước thực hiện bài toán như sau:
Bước 1: Khai báo biến int n để gán giá trị của n, khai báo biến float S đển gán giá trị căn bậc hai của 2.
Bước 2: Ta sẽ sử dụng vòng for với một biến int i = 2 , điều kiện dừng khi nó bằng n và mỗi lần i tăng lên 1.
Bước 3: Trong vòng lặp ta cho biến S sẽ bằng căn bậc hai của (2+S).
Bước 4: In biến S ra màn hình.
Chương trình giải bài tập tính S(n) = CanBac2(2+CanBac2(2+….+CanBac2(2 + CanBac2(2)))) có n dấu căn như sau :
#include<stdio.h> #include<math.h> int main() { //khai bao bien n int n; //khai bao bien S float S; do { printf("\nNhap n(n >= 1): "); scanf("%d", &n); if(n < 1)//neu N<1 yeu cau nhap lai { printf("\nn phai >= 1. Xin nhap lai !"); } }while(n < 1); S = sqrt((float)2);//gan S = can bac hai cua 2 // vong lap for bat dau tu i=2 va ket thuc khi i=n, moi lan i tang len 1 for(int i = 2; i <= n; i++) { S = sqrt(2 + S);//gan S = can bac hai cua (2+S) } //in S ra man hinh printf("\nTong S = %f", S); }Ví dụ tôi nhập n=10
Kết quả:
| Nhap n(n >= 1): 10 Tong S = 1.999998 |
Để thực hiện giải bài tập tính S(n) = CanBac2(2+CanBac2(2+….+CanBac2(2 + CanBac2(2)))) có n dấu căn bạn đọc cần phải có kiến thức cơ bản về ngôn ngữ lập trình C, bạn cần nắm vững cách nhập xuất căn bản, sử dụng hàm căn bậc hai (sqrt) và các cách sử dụng vòng lặp trong C và các phép toán học cơ bản.
Bài tập trên có thể giải bằng các khác là sử dụng vòng lặp while.
Chương trình như sau:
#include<stdio.h> #include<math.h> int main() { //khai bao bien n int n; //khai bao bien S float S; do { printf("\nNhap n(n >= 1): "); scanf("%d", &n); if(n < 1)//neu N<1 yeu cau nhap lai { printf("\nn phai >= 1. Xin nhap lai !"); } }while(n < 1); S = sqrt((float)2);//gan S = can bac hai cua 2 int i=2;//vong lap bat dau tu i=2 while(i<=n)//vong lap ket thuc neu i=n { S= sqrt(2+S);//gan S = can bac hai cua (2+S) i++;//moi lan i tang len 1 } //in S ra man hinh printf("\nTong S = %f", S); }Ví dụ tôi nhập n=20
Kết quả:
| Nhap n(n >= 1): 20 Tong S = 2.000000 |
Từ khóa » Căn Bậc N Java
-
Cách Tìm Căn Bậc 3, Căn Bậc N Trong C/C++ - Lập Trình Không Khó
-
Cách Tính Căn Bậc 3, Căn Bậc 4 Và Căn Bậc N Trong Lập Trình C/C++
-
Cách Tính Căn Bậc N Của Số Thực X!
-
Căn Bậc 2 Trong Java - Techacademy
-
Tính Căn Bậc Hai Trong Java - Freetuts
-
Cần Giúp Về Thuật Toán Tính Căn Bậc N Của X Trong Java
-
Java: Hàm Toán Học (Math) | V1Study
-
Cần Giúp Hàm Tính Căn Bậc N - Programming - Dạy Nhau Học
-
[C++] Bài 107: Viết Hàm Tinh S = Căn Bậc N Của (X) - YouTube
-
Tính Căn Bậc Hai Trong Java - Freetuts
-
Tính Căn Bậc 2 Từ 1 đến 100 Trong Java | Tìm ở đây
-
Tìm Căn Bậc Hai Không Dùng Sqrt - Lập Trình Không Khó
-
Sqrt() Trong Java