Với một dãy số hữu hạn bất kỳ ta luôn tìm được số nhỏ nhất trong dãy số đó. Ví dụ: Dãy số gồm 5 phần tử: 7, 8, 4, -9, 9; Số nhỏ nhất trong dãy số trên là -9. Yêu cầu: Viết chương trình tìm phần tử nhỏ nhất của dãy n số nhập vào từ bàn phím. Kết quả xuất ra màn hình. --HẾT---
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
Đề thi tin học trẻ BT phải ko b?
Mà bài này giải sao nhỉ?
Muốn xem code để tham khảo quá!!!
sắp xếp lại các phần tử theo chiều tăng dần rồi đặt kết quả muốn tìm = 1, so sánh nó với từng phần tử trong mảng, nếu bé hơn thì dừng chương trình và đó là kết quả, nếu không thỉ cộng kết quả cho phần tử đang được so sánh.
code :
program giai;uses crt;var n,m,i,c,t : integer;A : array[1..100] of integer;beginclrscr;write('so phan tu cua day so :');readln(m);for i:=1 to m do begin readln(A[i]); end;for i:= 1 to m do for n:=i+1 to m do if A[i] > A[n] then begin c:= A[i]; A[i] := A[n]; A[n] := c; end;t:= 1;for i:=1 to m-1 do if t < A[i] then break else t:= t+ A[i];writeln(t);readln;end.Khi ta thay phần tử trong dãy bằng số lần xuất hiện của chúng thì ta nhận thấy:
- Dãy S(0) có 5 số hạng.
- Số phần tử giống nhau bằng chính số lần xuất hiện của các số giống nhau, chẳng hạn như trên ví dụ: Trong 5 số đã cho có hai số 1 thì ở S(1) xuất hiện hai lần số 2, có hai số hai thì S(1) lại xuất hiện thêm 2 số 2. Như vậy số 2 sẽ không xuất hiện với số lần lẻ. Giả sử S(0) có 3 số 1 thì S(1) sẽ có 3 số 3, số 3 sẽ xuất hiện ít nhất 3 lần với số lần chia hết cho 3, v.v,... Ta rút ra được chú ý rằng trong S(1), số n sẽ xuất hiện ít nhất n lần và số lần xuất hiện sẽ là bội của n.
Xét các đáp án ta thấy:
- ĐA 1: Xuất hiện lẻ lần số 2. (Loại)
- ĐA 2: Hợp lý. Ta chỉ cần lấy S(0) là dãy số gồm 5 số, ba số đầu khác nhau, hai số cuối giống nhau và khác ba số đầu.
- ĐA 3: Số 3 xuất hiện 1 lần (Loại)
- ĐA 4: Số 3 xuất hiện 4 lần (Loại)
-ĐA 5: Số 2 xuất hiện lẻ lần (Loại)
Vậy đáp án đúng là : S(1) = ( 1, 1 ,1 ,2 ,2)
Chúc Tuấn Minh học tốt ^^
Bài giải :
Khi ta thay phần tử trong dãy bằng số lần xuất hiện của chúng thì ta nhận thấy:
- Dãy S(0) có 5 số hạng.
- Số phần tử giống nhau bằng chính số lần xuất hiện của các số giống nhau, chẳng hạn như trên ví dụ: Trong 5 số đã cho có hai số 1 thì ở S(1) xuất hiện hai lần số 2, có hai số hai thì S(1) lại xuất hiện thêm 2 số 2. Như vậy số 2 sẽ không xuất hiện với số lần lẻ. Giả sử S(0) có 3 số 1 thì S(1) sẽ có 3 số 3, số 3 sẽ xuất hiện ít nhất 3 lần với số lần chia hết cho 3, v.v,... Ta rút ra được chú ý rằng trong S(1), số n sẽ xuất hiện ít nhất n lần và số lần xuất hiện sẽ là bội của n.
Xét các đáp án ta thấy:
- ĐA 1: Xuất hiện lẻ lần số 2. (Loại)
- ĐA 2: Hợp lý. Ta chỉ cần lấy S(0) là dãy số gồm 5 số, ba số đầu khác nhau, hai số cuối giống nhau và khác ba số đầu.
- ĐA 3: Số 3 xuất hiện 1 lần (Loại)
- ĐA 4: Số 3 xuất hiện 4 lần (Loại)
-ĐA 5: Số 2 xuất hiện lẻ lần (Loại)
Vậy đáp án đúng là : S(1) = ( 1, 1 ,1 ,2 ,2)
uses crt;
var a,b,c:array[1..1000]of integer;
i,n,dem,max:integer;
begin
clrscr;
write('Nhap n='); readln(n);
for i:=1 to n do
begin
write('A[',i,']='); readln(a[i]);
end;
dem:=0;
max:=a[1];
for i:=1 to n do
if max<a[i] then max:=a[i];
for i:=1 to n do
if max=a[i] then
begin
inc(dem);
b[dem]:=a[i];
c[dem]:=i;
end;
if dem=1 then writeln('So lon nhat la: ',b[dem],' vi tri la: ',c[dem])
else writeln('So lon nhat la: ',b[1],' vi tri la: ',c[1]);
readln;
end.
a) dãy số: 3 là dãy số tăng bội 3
b) dãy số: 3, 5 Không phải là dãy số tăng bội 3
b) dãy số: 3, 5, 10 là dãy số tăng bội 3
d) dãy số: 12, 9, 6, 3 Không phải là dãy số tăng bội 3
e) dãy số: 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60 là dãy số tăng bội 3
Uses crt;
var max,min,n,i,m,n: longint;
a: array[1..100] of longint
begin clrscr;
for i:=1 to n do begin
if(a[i] mod 2=0) then m:=m+a[i];
if(a[i] mod 2<>0) then n:=n+a[i];
end;
max:=a[1];
min:=a[1];
for i:=1 to n do begin
if(max<a[i]) then max:=a[i];
if(min>a[i]) then min:=a[i];
end;
Writeln('Tong cac phan tu chan: ',m);
Writeln('Tong cac phan tu le: ',n);
Writeln('Phan tu co gia tri lon nhat: ',max);
Writeln('Phan tu co gia tri nho nhat: ',min);
readln;
end.
Người ta nói tần số của một số A trong một dãy số A1, A2, …,An là số lần xuất hiện của số A trong dãy A1,A2,…,An.
Ví dụ: Cho dãy số 2 3 4 5 1 3 3 4 3
Tần số của số 2 là 1. Tần số của số 3 là 4.
Cho một file văn bản có tên TANSO.INP và có cấu trúc như sau:
Dòng 1: Chứa số nguyên N dương (0<N<=10000)
N dòng tiếp theo: mỗi dòng chứa một số nguyên Ai (0<Ai<101), các số ghi cách nhau ít nhất một dấu cách trống.
Hãy viết chương trình đọc file trên và tìm tần số xuất hiện của các số trong N số đã cho. Yêu cầu chương trình chạy không quá 2 giây.
Kết quả xuất ra file văn bản TANSO.OUT gồm nhiều dòng. Mỗi dòng chứa 2 số Ai và Ki ghi cách nhau ít nhất một dấu cách trống. Trong đó Ai là số thuộc dãy, Ki là tần số của số Ai. Ai được xếp tăng dần từ đầu đến cuối file.
#include <bits/stdc++.h>
using namespace std;
long long n,i,x,nn;
int main()
{
cin>>n;
nn=LLONG_MAX;
for (i=1; i<=n; i++)
{
cin>>x;
nn=min(nn,x);
}
cout<<nn;
return 0;
}
mình có bản Pascal không bạn