.Cho dãy gồm n (n ε Z
∗
) số nguyên dương a1, a2, .., an. Xuất ra các số chính
phương có mặt trong dãy số này.
Môn toán rời rạc ạ .
Cho dãy gồm N số nguyên A1, A2, An. Hãy trình bày thuật toán tính và hiển thị tổng các số dương có trong dãy đã cho?
#include <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 từ bàn phím số nguyên dương N,N <=100 và dãy A gồm N số nguyên A1,A2,...An. xuất ra màng hình tổng các số nguyên trong dãy A theo yêu cầu sau
1 : viết các thủ tục nhập / xuất mảng A
2 : Viết các hàm tính tổng các số nguyên tromg dãu A, tổng số chẵn, tổng số lẻ trong dãy A
Mình chỉ viết chương trình chính thôi, còn chương trình con bạn tự viết nhé
uses crt;
var a:array[1..100]of integer;
i,n,t,t1,t2:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
edn;
t:=0;
for i:=1 to n do
t:=t+a[i];
writeln(t);
readln;
end.
xây dựng bài toán cho các bài toán sau:
a)nhập vào số nguyên N và dãy các số a1,a2,...,an.hãy tính tổng các số dương có trong dãy
b)nhập vào số nguyên N và dãy các số a1,a2,...,an.hãy đếm các số dương có trong dãy
Y tưởng : xét từng số hạng trong dãy nếu số hạng > 0 thì xếp vào một biến tổng rồi chia cho số hàng đã xếp được
Input : Dãy A gồm N số nguyên a1....aN;
Output : Trung bình cộng của các số dương;
B1 : Nhập N số nguyên a1.... aN;
B2 : TB <--- 0, dem <---- 0, i <---- 1, Tong <--- 0;
B3 : Nếu a[i] > 0 thì Tong <--- TB + a[i];
B4 : dem <--- dem + 1;
B5 : Nếu i > N thì đưa ra màn hình kết quả TB = Tong/Dem rồi kết thúc chương trình;
B 6 : i <--- i + 1 rồi quay lại B3;
Bài. Hiển thị các phần tử dương trong dãy Cho dãy số nguyên gồm N phần tử a1, a2, …, aN Yêu cầu: Hiển thị các phần tử dương trong dãy. Dữ liệu vào: File văn bản DAYD.INP gồm + Dòng đầu ghi số N ; + Dòng thứ hai một dãy số nguyên a1, a2, …, aN (mỗi số cách nhau ít nhất một dấu cách). Dữ liệu ra: Ghi ra file văn bản DAYD.OUT + Một dãy các phần tử dương(Các phần tử cách nhau ít nhất một dấu cách).
#include <bits/stdc++.h>
using namespace std;
long long a[1000],n,i;
int main()
{
freopen("dayd.inp","r",stdin);
freopen("dayd.out","w",stdout);
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]>0) cout<<a[i]<<" ";
return 0;
}
Cho dãy A gồm N số nguyên a1,a2 ,…aN và số nguyên dương k. Hãy cho biết trong dãy A có bao nhiêu số là bội của k?
Hãy xác định bài toán và mô tả thuật toán giải các bài toán
Input: N, dãy số nguyên a1,a2,...,aN và k
Output: Số phần tử là bội của k
Thuật toán liệt kê:
Bước 1: Nhập N, dãy số nguyên a1,a2,...,aN và k
Bước 2: d←0; i←1;
Bước 3: Nếu i>N thì in ra d và kết thúc
Bước 4: Nếu ai chia hết cho k thì d←d+1;
Bước 5: i←i+1; quay lại bước 3
tìm các số nguyên tố trong dãy số nguyên có n phấn tử a1, a2...an. dữ liệu vào đọc từ file nguyên tố.INP, gồm 2 dòng:
- dòng đầu chứa số nguyên dương n,n<= 250.
-dòng 2 chứa các phần tử của dãy số gồm a1, a2...an.
-dữ liệu ra ghi vào tệp nguyên tố .OUTP ,các phần tử là số nguyên tố nằm trên 1 dòng
giúp mình với ạ, mình cảm ơn!!
#include <bits/stdc++.h>
using namespace std;
long long a[1000],i,n,j;
bool kt;
int main()
{
freopen("nguyento.inp","r",stdin);
freopen("nguyento.out","w",stdout);
cin>>n;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]>1)
{
kt=true;
for (j=2; j*j<=a[i]; j++)
if (a[i]%j==0) kt=false;
if (kt==true) cout<<a[i]<<" ";
}
return 0;
}
Bài 1. Cho số nguyên dương N, dãy các số nguyên dương a1, a2, a3,…,aN và một số nguyên dương x. Trình bày thuật toán kiểm tra xem số x có trong dãy hay không? (có thể trình bày thuật toán dưới dạng liệt kê hoặc sơ đồ khối).
Giả sử có dãy số: a1, a2, a3, a4. Trong đó:
- a1: là ngày sinh của học sinh.
- a2: là tháng sinh của học sinh.
- a3: là năm sinh của học sinh.
- a4: là số 2021.
- x: là số 15.
Hãy trình bày các bước để kiểm tra x có trong dãy a1, a2, a3, a4 hay không?
Ví dụ: học sinh sinh ngày 18/05/2005 thì cần trình bày các bước để kiểm tra số 15 có trong dãy số 18, 5, 2005, 2021 hay không?
#include <bits/stdc++.h>
using namespace std;
long long a[4],n,x;
int main()
{
cin>>n>>x;
for (i=1; i<=n; i++) cin>>a[i];
for (i=1; i<=n; i++)
if (a[i]==x)
{
cout<<"YES";
break;
}
cout<<"NO";
return 0;
}
Viết thuật toán giải bài toán: Cho số nguyên dương N và dãy số A có N phần tử A1, A2, …, AN. Hãy tính trung bình cộng các số lẻ trong dãy A.
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,t,dem;
int main()
{
cin>>n;
dem=0;
t=0;
for (i=1; i<=n; i++)
{
cin>>x;
if (x%2!=0)
{
dem++;
t=t+x;
}
}
double s=t*1.0/dem*1.0;
cout<<fixed<<setprecision(2)<<s;
return 0;
}
Thuật toán liệt kê:
Bước 1: Nhập n và dãy A1,A2,..,An
Bước 2: TB←0; i←1; d←0;
Bước 3: Nếu i>n thì in ra TB/d và kết thúc
Bước 4: Nếu Ai mod 2=1 thì TB←TB+Ai và d←d+1;
Bước 5: i←i+1, quay lại bước 3