PDA

View Full Version : giải dùm em mấy bài tập này ik mai thi ùi :(



nh0kkute995
09-12-2011, 22:24
bài 1 : cho mảng 1 chiều gồm n phần tử ( gái trị các phần tử phát sinh ngẩu nhiên ) viết chương trình tìm số nguyên tố nhỏ nhất trong dãy A.
bài 2: Cho mảng 1 chiều gồm N ptu~ ( gtri. các ptu~ phát sinh ngẫu nhiên) Viết ct tìm số chẵn lớn nhất trong dãy A
bài 3: viết chương trình chuyển đổi 1 số nguyên N sang hệ cơ số nhị̣ phân

lehang_gb1
12-12-2011, 20:51
{Nhap vao day gom N so nguyen. Tim so nguyen to nho nhat trong day}
{Nhap vao day gom N so nguyen. Tim so nguyen to nho nhat trong day}
Var A:array[1..100] of integer;
i,j,min,N,d:integer;
kt:boolean;
begin
randomize;
write('Nhap vao so phan tu cua mang:');
Readln(N);
{Nhap ngau nhien mang}
For i:=1 to N do A[i]:=random(50);{Cac so nguyen to nho hon 50}
{Dua ra man hinh mang vua nhap ngau nhien}
For i:=1 to N do write(A[i]:5);
writeln;


{Tim so nguyen to dau tien trong mang va gan bang
min- so nguyen to nho nhat trong mang}
For i:=1 to n do
begin
{Bien d dung de kiem tra xem mang co so nguyen to nao khong}
d:=0;
kt:=A[i]>1;{ban dau kiem tra gan bang tru neu x>1}
for j:=2 to trunc(sqrt(A[i])) do
if A[i] mod j=0 then
Begin
kt:=false;
break;
End;
if kt=true then
begin
d:=1;
min:=a[i];
break;
End;
End;
If d=1 then
Begin
For i:=1 to N do
begin
kt:=A[i]>1;{ban dau kiem tra gan bang tru neu x>1}
For j:=2 to trunc(sqrt(A[i])) do
if a[i] mod j= 0 then
Begin
kt:=False;
break;{Thoat khoi vong lap}
End;
If kt =true then
if A[i]<min then min:=A[i];
End;
write('So nguyen to nho nhat trong mang la:',min)
End
else
write('mang khong co so nguyen to nao');
Readln
End.
{Cach khac ban co the dung mot mang de luu tru cac so nguyen to
sau do tim phan tu nho nhat trong mang nay}


{Tương tự bài 2 cũng vậy, ngoài ra bạn có thể dùng mảng b để lưu trữ các số nguyên tố, sau đó tìm phần tử nhỏ nhất trong mảng này}

lehang_gb1
12-12-2011, 21:08
{bài 3 chuyển 1 số nguyên N sang số ở hệ nhị phân. Ta kết hợp với kiểu xâu}

{Doi 1 so nguyen N sang so nhi phan}
Var N,du:integer;S:string;
Begin
write('Nhap vao so nguyen duong N:');
Readln(N);
S:='';
While N>0 do
begin
du:=N mod 2;
N:=N div 2;
If du=1 then S:='1'+S else S:='0'+S;
write('So nhi phan la:',S);
Readln
End.

Farmer_Boy
13-12-2011, 21:33
bạn bỏ vào khung code cho dễ nhìn nhé

auauau97
25-12-2011, 14:24
các bạn bỏ các câu lệnh vào khung code nhá

http://i.imgur.com/vcqkN.png