Trang chủ Tin Học Lớp 8 Viết chương trình in ra các số nguyên tố từ...

Viết chương trình in ra các số nguyên tố từ 1 đến N và tính tổng các phần tử đó. Với n được nhập từ bàn phím . Không sao chép trên mạng ạ. VD: N=6 In ra

Câu hỏi :

Viết chương trình in ra các số nguyên tố từ 1 đến N và tính tổng các phần tử đó. Với n được nhập từ bàn phím . Không sao chép trên mạng ạ. VD: N=6 In ra: Các SNT là 2 3 5. Tổng các số là 10.

Lời giải 1 :

//Mình viết code C++ nhé. Không sao chép đâu cả :)

#include <algorithm>

#include <iostream>

//Tạo ra một cái sàng nguyên tố (kiểu Eratosthenes)

const bool * sang_nguyen_to(const int n)

{

//Tạo mảng có n phần tử:

 bool * sang= new bool[n];
 fill(sang, sang+ n, 1);

 //"Đục" số 0 và số 1:
 sang[0] = sang[1] = 0;
 for (int i = 0; i<n; ++i)
 {

  //Nếu số đã bị "đục" thì bỏ qua.
  if (sang[i] == 0) continue;

  //Nếu số chưa bị "đục" thì là số nguyên tố, "đục" hết tất cả các bội của nó.
  for (int j = i+i; j<Num; j+=i) sang[j] = 0;
 }
 return sang;
}

int main()

{

    int N; //Khai báo số nguyên N.

    cin >> N; //Nhập vào số n.

    bool * sang = sang_nguyen_to(N + 1); //Tạo một mảng các giá trị để kiểm tra xem nó có phải là số nguyên tố không. Nếu số N là số nguyên tố thì lưu 1, nếu không thì lưu 0.

    long long tong = 0;    //Khai báo biến tổng, để kiểu to to một tý kẻo tràn số.

    for (int i = 1; i<=N; ++i) //Duyệt từ 1 đến N.

    {

          if (sang[i] == 1) //Nếu là số nguyên tố

          {

                cout << i << " "; //Xuất ra số i.

                tong = tong + i; //Tăng tổng.

          }

    }

    cout << endl;

    cout << tong; //Xuất ra tổng.

    return 0; //Kết thúc.

}

Thảo luận

Lời giải 2 :

PROGRAM bt1;
uses crt;
Var n,i,s:integer;
    A:array[1..100] of integer;
function snt(k:integer):integer;
var d:byte;
 begin
  for i:=1 to k do if k mod i=0 then inc(d);
  if d=2 then
   begin
    write(k,' ');
    S:=S+k;
    d:=0;
   end
  else d:=0;
 end;
begin
 clrscr;
 write('Nhap so n: '); readln(n);
 for i:=1 to n do snt(i);
 writeln;
 writeln(S);
 readln;
end.

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