Kĩ thuật cộng dồn – nhân dồn

Cộng dồn (nhân dồn) hay còn gọi là cộng gom (nhân gom) là một kĩ thuật hết sức cơ bản trong lập trình, chúng ta hãy cùng tìm hiểu kĩ thuật này qua bài toán sau:

Viết chương trình tính tổng sau (N là số tự nhiên)

S = 1 + 2 + 3 + … + N (N < 50 000)

Dữ liệu vào file: Sum.inp Dữ liệu ra file: Sum.out
Chứa số n Chứa tổng S làm tròn lấy 2 chữ số thập phân

Bài toán tương tự: Viết chương trình tính các tổng (tích) sau với (n<1000)

S = 1 + 1/2 + … + 1/n.

Code cộng dồn trong Pascal







	
	




program bai_1_1;
var n,i:word; S:Real;f:text;
begin
{----Doc file ----}
    assign(f,'sum.inp'); reset(f);
    readln(f,n);close(f);
{----Tinh S = 1+ 1/2 +...+1/n-----}
   	S:=0;
   	for i:=1 to n do S:=S+1/(i);

{----Ghi file ----}
    assign(f,'sum.out'); rewrite(f);
    write(f,S:0:2); close(f);
end.

Code cộng dồn trong Python










s = 0
f = open("Sum.inp")
fo = open("Sum.out", "w")
a = int(f.read())
for i in range(1,a+1):
    s = s+i
f.close()
s = str(s)
fo.write(s)
fo.close()

Code cộng dồn trong C
















#include<stdio.h>
int main()
{
  int n;
  long S;
  S = 0;
  i = 1;
  printf("\nNhập vào số n: ");
  scanf("%d", &n);
 
  for(int i = 1; i <=n; i++)
    {
        S = S + i;
    }
  printf("\nTổng 1 + 2 + ... + %d là %ld: ", n, S);
 
}

Code cộng dồn trong C++














#include <iostream>
using namespace std;
int main() {
  int n;
  long s = 0;
  cout<<"Nhập vào số n: ";
  cin>> n;
  for(int i = 1; i <= n; i++){
    s += i;
  }
  cout<<"Tổng 1 + 2 + 3 +... + "<<n<<" là: "<<s;
 
  cout<<"\n----------------------------------\n";
  cout<<"Chương trình này được đăng tại Freetuts.net";
}

Cộng dồn trong Scratch

Cộng dồn trong Scratch giao diện tiếng anh

Cộng dồn trong Scratch giao diện tiếng Việt

Read:   CHỦ ĐỀ 1. MỘT SỐ VẬT LIỆU, NGUYÊN LIỆU THÔNG DỤNG - Giáo án KHTN 6 - Chân trời sáng tạo

Hình đại diện của người dùng

admin

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *