Trang chủ Tin Học Lớp 8 Xây dưng thuật toán tính tổng các số chẵn từ...

Xây dưng thuật toán tính tổng các số chẵn từ 1 đến n (n là số nguyên nhập từ bàn phím) CẤU TRÚC:WHILE … DO câu hỏi 4035857 - hoctapsgk.com

Câu hỏi :

Xây dưng thuật toán tính tổng các số chẵn từ 1 đến n (n là số nguyên nhập từ bàn phím) CẤU TRÚC:WHILE … DO

Lời giải 1 :

Bước 1: Nhập n

Bước 2: i<-1 to n nhập A[i]

Bước 3: s<-0

Bước 4: i<-1

Bước 5: Nếu i>n thì thực hiện bước 

Bước 6: Nếu A[i] mod 2 = 0 thì s<-s+A[i]

Bước 7: i<-i+1

Bước 8: Quay lại bước 5

Bước 9: Xuất s và kết thúc chương trình

Thảo luận

-- Xây dựng thuật toán mà bạn?
-- à ok chờ
-- Bạn có thể rút ngắn giúp mình đc k ạ?

Lời giải 2 :

Ta cần khai báo hai biến n là số cần tính tổng các chữ số lẻ và temp là biến thay thế cho n để tính tổng. Một biến S = 0 để lưu tổng các chữ số lẻ.

Sử dụng vòng lặp do..while để yêu cầu người dùng nhập vào số nguyên dương n, nếu n <= 0 thì yêu cầu nhập lại.

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

123456789do  {    printf("\nNhập vào số nguyên n lớn hơn 0: ");    scanf("%ld", &n);    if(n <= 0)    {      printf("\n Số n phải lớn hơn 0, vui lòng nhập lại !");    }  }while(n <= 0);

Tiếp đến gán temp = n, ta sẽ sử dụng biến temp để thay thế cho n tính tích các chữ số.

Sử dụng một vòng lặp while với điều kiện n != 0, bên trong vòng while ta tính tổng các chữ số chẵn của n.

123456789temp = n;  while(temp != 0)  {    if(temp % 2 == 0)    {     S = S + temp % 10;    }    temp = temp / 10;  }

Sau khi kết thúc vòng lặp while ta được tổng các chữ số lẻ là S, khi đó chỉ cần hiển thị S ra màn hình bằng printf().

Code:

123456789101112131415161718192021222324252627282930313233#include<stdio.h>#include<math.h>int main(){  //khai báo biến  long temp, n;  int S = 0;  //sử dụng dowhile để yêu cầu người dùng nhập vào só lớn hơn 0  //nếu n < 0 thì yêu cầu nhập lại  do  {    printf("\nNhập vào số nguyên n lớn hơn 0: ");    scanf("%ld", &n);    if(n <= 0)    {      printf("\n Số n phải lớn hơn 0, vui lòng nhập lại !");    }  }while(n <= 0);  //gán biến n cho temp, ta sẽ sử dụng temp để đếm các chữ số  temp = n;  while(temp != 0)  {    if(temp % 2 == 0)    {     S = S + temp % 10;    }    temp = temp / 10;  }  printf("\nTổng các chữ số chẵn của %ld là: %d",n,S);   printf("\n--------------------------------------\n");  printf("Chương trình này được đăng tại Freetuts.net");}

Kết quả:

Tính tổng các chữ số chẵn của số nguyên dương n bằng C++

Việc tính tổng các chữ số lẻ của số nguyên dương n bằng C++ cũng tương tự như ngôn ngữ C, vì về cơ bản thì hai ngôn ngữ này khá tương đồng nhau.

Ta chỉ cần thay thế printf() và scanf() trong C bằng cout và cin trong C++. Nhớ khai báo thư viện trước khi sử dụng nó nhé.

12345678910111213141516171819202122232425262728293031323334#include<iostream>#include<math.h>using namespace std;int main(){  //khai báo biến  long temp, n;  int S = 0;  //sử dụng dowhile để yêu cầu người dùng nhập vào só lớn hơn 0  //nếu n < 0 thì yêu cầu nhập lại  do  {    cout<<"\nNhập vào số nguyên n lớn hơn 0: ";    cin>>n;    if(n <= 0)    {      cout<<"\n Số n phải lớn hơn 0, vui lòng nhập lại !";    }  }while(n <= 0);  //gán biến n cho temp, ta sẽ sử dụng temp để đếm các chữ số  temp = n;  while(temp != 0)  {    if(temp % 2 == 0){      S = S + temp % 10;    }    temp = temp / 10;  }  cout<<"\nTổng các chữ số chẵn của "<<n<<" là: "<< S;   cout<<"\n--------------------------------------\n";  cout<<"Chương trình này được đăng tại Freetuts.net"; 

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 8

Lớp 8 - Năm thứ ba ở cấp trung học cơ sở, học tập bắt đầu nặng dần, sang năm lại là năm cuối cấp áp lực lớn dần nhưng các em vẫn phải chú ý sức khỏe nhé!

Nguồn : ADMIN :))

Copyright © 2021 HOCTAP247