Mọi người có thể làm dưới dạng bài C++ được không ạ :((
Cho dãy a gồm n phần tử a1, a2, a3,....an
a) Số âm đầu tiên và chỉ số của nó
b) Số dương đầu tiên và chỉ số của nó
c) In ra tất cả số chẵn và số lẻ
d) Sắp xếp các dãy tăng dần
Cho một dãy gồm n số nguyên dương A1,A2,…,An (N≤105,Ai≤109).
Hãy in số lớn nhất cùng chỉ số của nó, nếu có nhiều số lớn nhất thì in ra chỉ số của số đầu tiên gặp.
Input:
Dòng đầu chứa số n, dòng thứ hai chứa n số nguyên dương A1,A2,…,An
Output:
Dòng đầu chứa số có giá trị lớn nhất, dòng thứ hai chỉ số của nó.
Input
Copy
6
91 451 43 3 451 54
Output
Copy
451
2
Lưu ý: dùng C++
#include <bits/stdc++.h>
using namespace std;
int main()
{
long a[105], i,n,max,vt;
cout<<"n="; cin>>n;
for (i=1; i<=n; i++)
{
cout<<"A["<<i<<"]="; cin>>a[i];
}
max=a[1];
for (i=1; i<=n; i++)
if (max<a[i]) max=a[i];
vt=1;
for (i=1; i<=n; i++)
if (max==a[i]) vt=i;
cout<<max<<endl;
cout<<vt;
return 0;
}
Cho một dãy gồm n số nguyên dương A1,A2,…,An (N≤105,Ai≤109).
Hãy in số lớn nhất cùng chỉ số của nó, nếu có nhiều số lớn nhất thì in ra chỉ số của số đầu tiên gặp.
Input:
Dòng đầu chứa số n, dòng thứ hai chứa n số nguyên dương A1,A2,…,An
Output:
Dòng đầu chứa số có giá trị lớn nhất, dòng thứ hai chỉ số của nó.
Input
Copy
6
Output
Copy
451
Lưu ý dùng : python
uses crt;
var a,b,c:array[1..250]of integer; i,n,dem,dem1,sd,vtd,sa,vta,sdcc,sacc,vtd1,vtc1:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
dem:=0;
dem1:=0;
for i:=1 to n do
begin
if a[i]>0 then
begin
dem:=dem+1;
b[dem]:=a[i];
end;
if a[i]<0 then
begin
inc(dem1);
c[dem1]:=a[i];
end;
end;
writeln('So duong dau tien trong day la: ',b[1]);
sd:=b[1];
vtd:=n;
for i:=n downto 1 do
if sd=a[i] then
begin
if vtd>i then vtd:=i;
end;
writeln('Chi so cua no la: ',vtd);
writeln('So am dau tien trong day la: ',c[1]);
sa:=c[1];
vta:=n;
for i:=n downto 1 do
if sa=a[i] then
begin
if vta>i then vta:=i;
end;
writeln('Chi so cua no la: ',vta);
writeln('So duong cuoi cung trong day la: ',b[dem]); sdcc:=b[dem];
vtd1:=1;
for i:=1 to n do
if sdcc=a[i] then
begin
if vtd1<i then vtd1:=i;
end;
writeln('Chi so cua no la: ',vtd1);
writeln('So am cuoi cung trong day la: ',c[dem]); sacc:=c[dem];
vtc1:=1;
for i:=1 to n do
if sacc=a[i] then
begin
if vtc1<i then vtc1:=i;
end;
writeln('Chi so cua no la: ',vtc1);
readln;
end.
Cho một dãy gồm n số nguyên dương A1,A2,…,An
(N≤105,Ai≤109) và số K.
Hãy in số nhỏ nhất lớn hơn K cùng chỉ số của nó, nếu có nhiều số nhỏ nhất lớn hơn K thì in ra các chỉ số của nó.
Input:
Dòng đầu chứa số n và K, dòng thứ hai chứa n số nguyên dương A1,A2,…,An.
Output:
Dòng đầu chứa số có giá trị nhỏ nhất lớn hơn K, dòng thứ hai chứa các chỉ số của nó.
Input
Copy
6 35
91 32 43 43 451 54
Output
Copy
43
2
Lưu ý :dùng c++
Viết chương trình nhập vào mảng số nguyên rồi thực hiện các công việc sau đây: A) Đếm số các phần tử có giá trị dương(âm) và tính tổng của chúng B) Tìm số dương(âm) đầu tiên và chỉ số của nó trong mảng Mong mọi người giúp ạ mai em ktra học kỳ rồi ạ
uses crt;
var a:array[1..100]of integer;
i,n,dem1,dem2,t1,t2,sa,sd,vt1,vt2:integer;
begin
clrscr;
readln(n);
for i:=1 to n do readln(a[i]);
dem1:=0;
t1:=0;
dem2:=0;
t2:=0;
for i:=1 to n do
begin
if a[i]>0 then begin inc(dem1); t1:=t1+a[i]; end;
if a[i]<0 then begin inc(dem2); t2:=t2+a[i]; end;
end;
writeln(dem1);
writeln(dem2);
writeln(t1);
writeln(t2);
for i:=1 to n do
if a[i]>0 then
begin
sd:=a[i];
vt1:=i;
break;
end;
if (dem1=0) then writeln('Khong co so duong trong day')
else writeln('So duong dau tien la: ',sd,' vi tri la: ',vt1);
for i:=1 to n do
if a[i]<0 then
begin
sa:=a[i];
vt2:=i;
break;
end;
if (dem2=0) then writeln('Khong co so am trong day')
else writeln('So am dau tien la: ',sa,' vi tri la: ',vt2);
readln;
end.
Cho dãy gồm N số tự nhiên a1,a2,a3...aN. viết chương trình in ra tổng các số âm,số dương của Dữ liệu vào cho bởi tệp DULIEU.INP có cấu trúc - dòng đầu tiên chứa số N - dòng thứ 2 chứa các số a1,a1,s3...aN các số cách nhau ít nhất 1 kí tự trống
uses crt;
const fi='dulieu.inp'
var f1:text;
a:array[1..100]of integer;
n,i,t1,t2:integer;
begin
clrscr;
assign(f1,fi); reset(f1);
readln(f1,n);
for i:=1 to n do
read(f1,a[i]);
t1:=0;
t2:=0;
for i:=1 to n do
begin
if a[i]>0 then t1:=t1+a[i];
if a[i]<0 then t2:=t2+a[i];
end;
writeln('Tong cac so duong la: ',t1);
writeln('Tong cac so am la: ',t2);
close(f1);
readln;
end.
cho dãy số gồm N số tự nhiên a1,a2,a3,...aN .Viết chương trình in ra trung bình cộng của các phần tử trên .Dữ liệu vào bởi tệp DULIEU.INP có cấu trúc : dòng đầu tiên chứa số nguyên N ,dòng thứ 2 chứa các số a1,a2,a3,...aN các số cách nhau ít nhất một kí tự trống
program du_lieu;
uses crt;
var i,n:integer;
a:array[1..100]of integer;
tbc:real;
f:text;
begin
clrscr;
assign(f,'DULIEU.INP');reset(f);
readln(f,n);
for i:=1 to n do
begin
read(f,a[i]);
end;
close(f);
for i:=1 to n do
tbc:=tbc+a[i];
writeln(tbc/n);
readln;
end.
1. Tính tổng các số trong dãy số A = a1+a2+a3+..aN. Xác định input của bài toán
2. Cho N và dãy a1,a2,...aN. Trường hợp tìm thấy và đưa ra chỉ số i đầu tiên mà a i chia hết cho 3 thì với điều kiện nào thuật toán sẽ dừng?
A. i>N
B.ai chia hết cho 3
C. ai không chia hết cho 3
D. i<N
3. Thuật toán sau dùng để giải quyết bài toán nào?
B1: Nhập N, các số hạng a1,a2,a3,..aN
B2: Tong - 0, i - 1
B3. Nếu I>N thì đưa ra Tong rồi kết thúc
B4: Nếu i chia thì hết cho 2 thì Tong - Tong + Ai
B5: i - i+1
B6: quay lại B3
A. Tính tổng các số có vị trí chẵn
B. Tính tổng dãy số
C. Tính tổng các số dương trong dãy
D. Tính tổng các số chẵn trong dãy
4. Thuật toán sau dùng để giải quyết bài toán nào?
B1: Nhập giá trị hai số a,b
B2: c -a
B3: a - b
B4: b - c
B5: đưa ra giá trị mới của a và b rồi kết thúc
A. Hoán đổi giá trị 2 số a,b
B. Hoán đổi giá trị 3 số a,b,c
C. Tìm giá trị của a,b,c
D. Nhập giá trị của 3 số a,b,c
1:
#include <bits/stdc++.h>
using namespace std;
long long n,i,x;
int main()
{
cin>>n;
long long t=0;
for (i=1; i<=n; i++)
{
cin>>x;
t=t+x;
}
cout<<t;
return 0;
}
Nói nhanh: Từ dãy số nguyên A ban đầu gồm n phần tử: a1,a2,...,an (ai ). An và Bình thay phiên nhau nói nhanh các số sao cho số thứ nhất là phần tử đầu tiên của dãy A, số thứ hai là tổng của hai phần tử đầu tiên của dãy A, số thứ i là tổng của i phần tử đầu tiên của dãy A.
Yêu cầu: Hãy viết lại các số An và Bình nói nhanh đó;
Dữ liệu gồm:
- Dòng 1: một số nguyên dương n (n )
- Dòng 2: ghi lần lượt các số a1, a2, …, an tương ứng với các số của dãy A.