Viết chương trình tính tổng sau biết rằng n nhập từ bàn phím S = 1+2 2+3 3 4 n n+1

Hãy sử dụng kiến thức vòng lặp while hoặc vòng lặp for của Python để giải bài tập sau:

Tính tổng S(n) = 1 + 2 + 3 + … + n.

Đây là chương trinh tính tổng từ 1 đến n với n được nhập từ bàn phím, sử dụng ngôn ngữ Python để giải.

Viết chương trình tính tổng sau biết rằng n nhập từ bàn phím S = 1+2 2+3 3 4 n n+1

Bài giải

-------------------- ######## --------------------

Với bài này thì ta chỉ cần sử dụng hai thao tác như sau:

Viết chương trình tính tổng sau biết rằng n nhập từ bàn phím S = 1+2 2+3 3 4 n n+1

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

  • Tạo một biến sum để lưu trữ tổng của dãy số đó
  • Sử dụng vòng lặp để lặp qua từ 1 đến n

Ta sẽ sử dụng hàm input để yêu cầu người dùng nhập vào số n.

Sử dụng vòng lặp for:

tong = 0 n = 1 print("-- HỌC PYTHON TẠI FREETUTS.NET --- ") print("Tính tổng S(n) = 1 + 2 + 3 + … + n") # Nhập dữ liệu print("hãy nhập vào số n: ") n = int(input()) # Tính tổng for i in range(0, n+1): tong += i # In kết quả print ("Tổng là: ", tong)

Sử dụng vòng lặp while:

Bài viết này được đăng tại [free tuts .net]

tong = 0 n = 1 i = 1 print("-- HỌC PYTHON TẠI FREETUTS.NET --- ") print("Tính tổng S(n) = 1 + 2 + 3 + … + n") # Nhập dữ liệu print("hãy nhập vào số n: ") n = int(input()) # Tính tổng while i <= n : tong += i i += 1 # In kết quả print ("Tổng là: ", tong)

Chạy cả hai chương trình và nhập n = 4 thì sẽ có kết quả như sau:

Viết chương trình tính tổng sau biết rằng n nhập từ bàn phím S = 1+2 2+3 3 4 n n+1

Danh sách bài tập Python cơ bản

Cùng chuyên mục:

24 BÀI TẬP MẪU TIN HỌC 11- (CHƯƠNG 1, 2, 3)Bài tập 1: Viết chương trình nhập vào một số nguyên và kiểm tra xem số vừa nhập là số chẵn hay số lẻ.Program Kiemtratinhchanle;Uses crt;Var x:integer;BeginWrite('Nhap vao mot so nguyen : '); Readln(x);If (x MOD 2=0) Then Writeln('So vua nhap vao la so chan')ElseWriteln('So vua nhap vao la so le');Readln;End.Bài tập 2: Viết chương trình giải phương trình bậc nhất ax+b=0Program Giaiptb1;Uses Crt;Var a,b,x : real;BeginWrite('a = '); Readln(a);Write('b = '); Readln(b);If (a = 0) Then { Nếu a bằng 0 }If (b = 0) Then { Trường hợp a = 0 và b = 0 }Writeln('Phuong trinh co vo so nghiem') 0 }≠Else { Trường hợp a=0 và b Writeln('Phuong trinh vo nghiem') 0 }≠Else { Trường hợp a Beginx:= -b/a;Writeln('Phuong trinh co nghiem la :',x:6:2);End;Readln;End.1Bài tập 3: Viết chương trình tính tổng S = 1+2+ +N.Cách 1: Dùng vòng lặp FOR.Program TinhTong;Uses crt;Var N,i,S:integer;BeginClrscr;Write('Nhap vao gia tri cua N :'); Readln(N);S:=0;For i:=1 to N do S:=S+i;Writeln('Ket qua la :',S);Readln; End.Cách 2: Dùng vòng lặp WHILE.Program TinhTong;Uses crt;Var N,i,S:integer;BeginClrscr;Write('Nhap vao gia tri cua N :'); Readln(N);S:=0; i:=1;While i<=N DoBeginS:=S+i;i:=i+1;End;Writeln('Ket qua la :',S);Readln; End.Bài tập 4: Viết chương trình nhập vào N số nguyên từ bàn phím. Hãy tính và in ra màn hình tổng của các số vừa được nhập vào.Ý tưởng: Dùng phương pháp cộng dồn. Cho vòng lặp FOR chạy từ 1 tới N, ứng với lần lặp thứ i, ta nhập vào số nguyên X và đồng thời cộng dồn X vào biến S.2Program Tong;Uses crt;Var N,S,i,X : Integer;BeginClrscr; S:=0;For i:=1 To n DoBeginWrite('Nhap so nguyen X= '); Readln(X);S:=S+X;End;Writeln(‘Tong cac so duoc nhap vao la: ‘,S); Readln;End.Bài tập 5: Viết chương trình tính số Pi với độ chính xác Epsilon, biết: Pi/4 = 1-1/3+1/5-1/7+ Ý tưởng: Ta thấy rằng, mẫu số là các số lẻ có qui luật: 2*i+1 với i=1, ,n. Do đó ta dùng i làm biến chạy. Vì tính số Pi với độ chính xác Epsilon nên không biết trước được cụ thể số lần lặp, do đó ta ≤phải dùng vòng lặp WHILE. Có nghĩa là phải lặp cho tới khi t=4/(2*i+1) Epsilon thì dừng.Program Tinh_tong_Pi;Uses Crt;Const Epsilon=1E-4;Var Pi,t:real;i,s:Integer;BeginPi:=4; i:=1; s:=-1;t:=4/(2*i+1);While t>Epsilon DoBeginPi:=Pi+s*t;s:=-s; i:=i+1;t:=4/(2*i+1);End;Writeln('So Pi = ',Pi:0:4);3Readln;End.Bài tập 6: Viết chương trình nhập vào số nguyên N. In ra màn hình tất cả các ước số của N.Ý tưởng: Cho biến i chạy từ 1 tới N. Nếu N MOD i=0 thì viết i ra màn hình.Uses Crt;Var N,i : Integer;BeginClrscr; Write('Nhap so nguyen N= '); Readln(N);For i:=1 To N DoIf N MOD i=0 Then Write(i:5); Readln;End.Bài tập 7: Viết chương trình tìm USCLN và BSCNN của 2 số a, b được nhập vào từ bàn phím.Ý tưởng:- Tìm USCLN: Lấy số lớn trừ số nhỏ cho đến khi a=b thì dừng. Lúc đó: USCLN=a.- BSCNN(a,b) = a*b DIV USCLN(a,b).Program Tim_USCLN_BSCNN;Uses crt;Var a,b, m,n:integer;BeginWrite('Nhap a : '); Readln(a);Write('Nhap b : '); Readln(b);m:=a; n:=b;While (m<>n) DoBeginIf (m>n) Then m:=m-n Else n:=n-m;End;Writeln('USCLN= ',m);4Writeln('BSCNN= ',a*b DIV n);Readln; End.Bài tập 8: Viết chương trình tìm các số có 3 chữ số sao cho: = a3 + b3 + c3.Ý tưởng:Dùng phương pháp vét cạn. Ta biết rằng: a có 9. Ta→9 (vì a là số hàng trăm), b,c có thể có giá trị từ 0→thể có giá trị từ 1 sẽ dùng 3 vòng lặp FOR lồng nhau để duyệt qua tất cả các trường hợp của a,b,c.Ứng với mỗi bộ abc, ta sẽ kiểm tra: Nếu 100.a + 10.b + c = a3 + b3 + c3 thì in ra bộ abc đó. Program Timgiatri_abc;Uses crt;Var a,b,c : Word;BeginFor a:=1 To 9 DoFor b:=0 To 9 DoFor c:=0 To 9 DoIf (100*a + 10*b + c)=(a*a*a + b*b*b + c*c*c) Then Writeln(a,b,c); Readln;End.Bài tập 9: Viết chương trình nhập vào số tự nhiên N rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không.Ý tưởng: N là số nguyên tố nếu N không có ước số N div 2. Từ định nghĩa này ta đưa ra giải thuật:→nào từ 2 - Đếm số ước số N div 2 lưu vào biến d.→của N từ 2 - Nếu d=0 thì N là số nguyên tố.Uses crt;Var N,i,d : Word;BeginIf N<2 Then Writeln(N,’ khong phai la so nguyen to’)Else5Begind:=0;For i:=2 To N div 2 DoIf (N MOD i=0) Then d:=d+1;If d=0 Then Writeln(N,’ la so nguyen to’)Else Writeln(N,’ khong phai la so nguyen to’);End; Readln;End.Bài tập 10: Viết chương trình nhập tính diện tích tam giác, nhập độ dài cạnha,b,c từ bàn phím. Công thức tính Diện tích là , p là nửa chu viProgram Tam_Giac;Vara,b,c: Integer;p,s: Real;BeginWriteln('CHUONG TRINH TINH DIEN TICH TAM GIAC');Write('Cho biet canh thu nhat = '); Readln(a);Write('Cho biet canh thu hai = '); Readln(b);Write('Cho biet canh thu ba = '); Readln(c);p := 0.5 * (a + b + c);s := sqrt(p*(p-a)*(p-c)*(p-c));Writeln('+Dien tich hinh tam giac = ',s:6:2,' met vuong');ReadlnEnd.BÀI TẬP Thực hànhBài tập 1: Viết chương trình giải phương trình bậc hai: ax2 + bx + c = 0, a≠0.Gợi ý:- Tính Delta=b*b-4*a*c.- Biện luận:6Delta<0: Phương trình vô nghiệm.Delta=0: Phương trình có nghiệm kép: x = -b/(2*a).Delta>0: Phương trình có 2 nghiệm phân biệt: SQRT(Delta))/(2*a).±x1,2 = (-bBài tập 2: Viết chương trình nhập vào từ bàn phím: giờ, phút, giây. Cọng thêm một số giây cũng được nhập từ bàn phím. Hãy in ra kết quả sau khi cọng xong.Gợi ý:- Gọi số giây được cộng thêm là: ss. Gán giây:=giây+ss.60 thì: phút:=phút + giây DIV 60 và≥- Nếu giây giây:=giây MOD 60.60 thì: giờ:=giờ + phút DIV 60 và phút:=phút≥- Nếu phút MOD 60.Bài tập 3: Viết chương trình tìm Max, Min của 4 số: a, b, c, d.Bài tập 4: Viết chương trình in ra màn hình các giá trị của bảng 255.→mã ASCII từ 0Gợi ý: 255. In ra màn hình i và→Cho biến i chạy từ 0 CHR(i).Bài tập 5: Viết chương trình in ra màn hình các số nguyên từ 1 đến 100 sao cho cứ 10 số thì xuống dòng.Gợi ý:→Cho biến i chạy từ 1 100. In ra màn hình i và kiểm tra: nếu i MOD 10=0 thì WRITELN.Bài tập 6: Viết chương trình in ra màn hình bảng cữu chương.Gợi ý:Dùng 2 vòng lặp FOR lồng nhau: i là số bảng cữu chương (2 9), j là số thứ tự trong từng bảng cữu chương (1 10).For i:=2 To 9 DoFor j:=1 To 10 Do Writeln(i,’x’,j,’=’,i*j);Bài tập 7: Viết chương trình tính các tổng sau:7S0 = n! = 1*2* *n {n giai thừa}S1 = 1 + 1/2 + + 1/nS2 = 1 + 1/2! + + 1/n!S3 = 1 + x + x2/2! + x3/3! + + xn/n!S4 = 1 - x + x2/2! - x3/3! + + (-1)nxn/n!S5 = 1 + sin(x) + sin2(x) + + sinn(x).Bài tập 8: Viết chương trình để tìm lời giải cho bài toán sau:“Trong giỏ vừa thỏ vừa gà,Một trăm cái cẳng bốn ba cái đầu.Hỏi có mấy gà mấy thỏ?”Bài tập 9: Viết chương trình để tìm lời giải cho bài toán sau: Trăm trâu trăm bó cỏBó lại cho trònTrâu đứng ăn nămTrâu nằm ăn baNăm con trâu giàMỗi con ăn một.Hỏi có bao nhiêu trâu đứng, trâu nằm, trâu già?Bài tập 10: Viết chương trình nhập vào một số nguyên dương. Hãy thông báo lên màn hình số đó có bao nhiêu chữ số và tổng các chữ số của số đó.Gợi ý:Dùng vòng lặp WHILE. Trong khi N>0 thì: lấy ra chữ số cuối cùng của N để tính bằng phép toán MOD 10, sau đó bỏ bớt đi chữ số cuối cùng của N bằng phép toán DIV 10.Bài tập 11: Viết chương trình in ra màn hình tất cả các số nguyên tố từ 2 đến N. Với N được nhập từ bàn phím.Bài tập 12: Viết chương trình phân tích một số ra thừa số nguyên tố. Ví dụ:N=100 sẽ in ra màn hình:100 | 2850 | 225 | 55 | 51 |Bài tập 13: Số hoàn thiện là số tự nhiên có tổng các ước của nó (không kể chính nó) bằng chính nó. Viết chương trình kiểm tra xem một số được nhập vào từ bàn phím có phải là số hoàn thiện hay không? Ví dụ: 6, 28 là các số hoàn thiện.Gợi ý:- Tính N div 2 lưu vào biến S.→tổng các ước số của N: từ 1 - Nếu S=N thì N là số hoàn thiện.Bài tập 14: Viết chương trình in ra các số nguyên từ 1 đến N2 theo hình xoắn ốc với N được nhập vào từ bàn phím. Ví dụ, với N=5 ta có:1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 99

  • lý thuyết
  • trắc nghiệm
  • hỏi đáp
  • bài tập sgk

Viết chương trình tính tổng S = 1+2+3+...+n. Trong đó n là số nguyên được nhập từ bàn phím

Các câu hỏi tương tự