Áp dụng phương pháp tinh chỉnh từng bước, xây dựng thuật toán để nhập vào một dãy số nguyên, đếm xem trong dãy có bao nhiêu số nguyên tố. Số lượng các số nguyên tố là số chẵn hay lẻ? Đánh giá độ phức tạp của thuật toán xây dựng được.
. Áp dụng phương pháp tinh chỉnh từng bước xây dựng giải thuật nhập vào một dãy số nguyên, tính tích các số lẻ, dương, chia hết cho 3 hoặc 5 (không kể số 0
Áp dụng phương pháp tinh chỉnh từng bước xây dựng giải thuật nhập vào một
dãy số nguyên, tính tích các số lẻ, dương, chia hết cho 3 hoặc 5 (không kể số 0).
Giúp mình với ạ
Nhập vào dãy số nguyên có n phần tử (n<=52). Nhập vào một số nguyên k, đếm xem trong dãy có bao nhiêu số chia hết cho k. Kiểm tra lượng số chia hết cho k là chẵn hay lẻ
var n,i,k,d: integer;
a:array[1..52] of integer;
begin
write('Nhap so N: '); readln(n);
for i:=1 to n do
begin
write('a[',i,'] = '); readln(a[i]);
end;
write('Nhap so k: '); readln(k);
d:=0;
for i:=1 to n do
if a[i] mod k = 0 then d:=d+1;
writeln('Co ',d,' so chia het cho ',k,' trong day');
if d mod 2 = 0 then writeln('Chan') else writeln('Le');
end.
uses crt;
var a:array[1..52]of integer;
i,n,k,dem:integer;
begin
clrscr;
repeat
write('Nhap n='); readln(n);
until (0<n) and (n<=52);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
write('Nhap k='); readln(k);
dem:=0;
for i:=1 to n do
if a[i] mod k=0 then inc(dem);
writeln('Trong day co ',dem,' so chia het cho ',k);
if dem mod 2=0 then writeln('So luong so chia het cho ',k,' la so chan')
else writeln('So luong so chia het cho ',k,' la so le');
readln;
end.
Viết chương trình nhập một dãy số nguyên gồm N phần tử (N<=1000). Đếm xem dãy có bao nhiêu phần tử là số nguyên tố và tính tổng các số nguyên tố trong dãy.
Program HOC24;
var d,i,n: integer;
a: array[1..1000] of integer;
t: longint;
function nt(x: longint): boolean;
var j: longint;
begin
nt:=true;
if (x=2) or (x=3) then exit;
nt:=false;
if (x=1) or (x mod 2=0) or (x mod 3=0) then exit;
j:=5;
while j<=trunc(sqrt(x)) do
begin
if (x mod j=0) or (x mod (j+2)=0) then exit;
j:=j+6;
end;
nt:=true;
end;
begin
write('Nhap N: '); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
d:=0; t:=0;
for i:=1 to n do
if nt(a[i]) then
begin
d:=d+1;
t:=t+a[i];
end;
writeln('Co ',d,' so nguyen to trong day');
write('Tong cac so nguyen to trong day la: ',t);
readln
end.
uses crt;
var a:array[1..1000]of integer;
i,n,dem,t,j,kt:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
dem:=0;
t:=0;
for i:=1 to n do
if a[i]>1 then
begin
kt:=0;
for j:=2 to a[i]-1 do
if a[i] mod j=0 then kt:=1;
if kt=0 then
begin
inc(dem);
t:=t+a[i];
end;
end;
writeln('So luong so nguyen to la: ',dem);
writeln('Tong cac so nguyen to la: ',t);
readln;
end.
Cho dãy A gồm n số nguyên (n>0), các phần tử lần lượt của dãy số có giá trị A1,A2,.....An . Hãy đếm xem trong dãy A có bao nhiêu phần tử có giá trị là 27 .
a) Xác định bài toán
b) Xây dựng thuật toán
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1;i<=n; i++)
{
cin>>x;
if (x==27) dem++;
}
cout<<dem;
return 0;
}
a)
Input: số nguyên dương n và dãy số A1,A2,...,An
Output: Số phần tử có giá trị bằng 27
b) Thuật toán liệt kê:
Bước 1: Nhập n và dãy A1,A2,..,An
Bước 2: Dem←0; i←1;
Bước 3: Nếu i>n thì in ra Dem và kết thúc
Bước 4: Nếu Ai = 27 thì Dem←Dem+1;
Bước 5: i←i+1, quay lại bước 3
Cho dãy A gồm n số nguyên (n>0), các phần tử của dãy số lần lượt có giá trị A1, A2,….,An. Hãy đếm xem trong dãy A có bao nhiêu phần tử có giá trị là 50
a. Xác định bài toán
b. Xây dựng thuật toán
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x==50) dem++;
}
cout<<dem;
return 0;
}
Xây dựng thuật toán cho bài toán sau: cho 1 số nguyên dương N và dãy số nguyên A: a1,a2…aN. Hãy tính: a) Tổng các phần tử có giá trị dương: a1+a3+a5+a7 b) đếm xem trong dãy A có bao nhiêu phần tử có giá trị
a: #incldue <bits/stdc++.h>
using namespace std;
long long i,n,x,t;
int main()
{
cin>>n;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x>0) t=t+x;
}
cout<<t;
return 0;
}
viết chương trình nhập vào một dãy số nguyên n phần tử, n nhập từ bàn phím.
a) In ra màn hình dãy số vừa nhập xếp theo thứ tự tăng dần.
b) In ra màn hình các số nguyên tố trong dãy số vừa nhập và đếm xem đã nhập vào bao nhiêu số nguyên tố.
Cho dãy số gồm n số nguyên (n>0), các phần của dãy số lần lượt có giá trị A1, A2,... . Hãy đếm xem trong dãy A có bao phần tử có giá trị 50 a) Xác định bài toán b) Xây dựng thuật toán
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,dem;
int main()
{
cin>>n;
dem=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x==50) dem++;
}
cout<<dem;
return 0;
}