- Ebook Giải thuật và lập trình Lê Minh Hoàng
- Các thuật toán sắp xếp trong Pascal

Kiểm tra số chính phương trong mảng 1 chiều



Trước hết, chúng ta sẽ tìm hiểu khái niệm về số chính phương. Số chính phương là gì? Số chính phương là một số mà tự nó là căn bậc hai của một số tự nhiên khác, hay nói rõ hơn thì số chính phương là bình phương của một số tự nhiên.
Ví dụ: 289 là một số chính phương vì 289 = 17 bình phương.

Thuật toán Pascal dưới đây sẽ giúp tìm số chính phương trong mảng 1 chiều.

  uses crt;
  type ArrInt = array[1..250] of integer;  
  Var n,i,x : integer;
         a: ArrInt;
  BEGIN
   clrscr;
   write('Nhap so phan tu: ');
   readln(n);
   for i:=1 to n do
   begin
     write('Phan tu thu ',i,'= ');
     readln(a[i]);
   end;
   writeln('Cac so chinh phuong co trong mang:');
   for i:=1 to n do
   begin
    x:=trunc(sqrt(a[i]));
     if sqr(x)=a[i] then
       write(a[i]:4);
   end;
   readln;
  END.  

Trong đó lệnh hàm sqrt để lấy căn và hàm trunc để lấy phần nguyên.



Nặc danh nói...

Hello there! I know this is kinda off topic but I was
wondering which blog platform are you using for this website?
I'm getting sick and tired of Wordpress because I've had problems with hackers and I'm looking at alternatives for another platform. I would be great if you could point me in the direction of a good platform.

Also visit my web site: cash advance franchise
Also see my webpage > payday loan no faxing


lúc 14:33 23 tháng 2, 2013
Nặc danh nói...

If you desire to increase your experience just keep visiting this web page and be updated with the most up-to-date
news posted here.

Also visit my weblog; chapter 7 bankruptcy florida


lúc 02:02 16 tháng 3, 2013
Nặc danh nói...

hay lắm , tks very much


lúc 19:56 23 tháng 5, 2013
Nặc danh nói...

!!!!!!!!!!


lúc 13:36 25 tháng 5, 2013
Unknown nói...

Thuật toán kiểm tra số chính phương không hay lắm.
Thay thế:
If trunc(sqrt(A[i])=sqrt(A[i]) then write(A[i]:4);


lúc 21:18 31 tháng 5, 2013
Nặc danh nói...

Trường hợp mảng nhập vào mà không có số chính phương thì câu lệnh xuất như thế nào vậy ạ?


lúc 15:06 29 tháng 6, 2013
Nặc danh nói...

ArrInt nghĩa là j` zậy


lúc 12:40 26 tháng 11, 2013
Nặc danh nói...

qua dai va kho hieu


lúc 14:46 2 tháng 12, 2013
Nặc danh nói...

Khai báo gián tiếp ArrInt thì phải


lúc 16:58 12 tháng 12, 2013
Nặc danh nói...

Ariirt gi d0 la cai ten.


lúc 21:30 17 tháng 12, 2013
Nặc danh nói...

ArrInt là tên biến ở đây tác giả viết tắt của từ ArrayInteger nghĩa là khai báo đây là mảng kiểu dữ liệu là số nguyên :D thay vì viết ArrInt chúng ta có thể viết bằng tên biến mà chúng ta đặt cho mảng đó VD MangN , ArrNguyen , ...


lúc 23:45 21 tháng 1, 2014
Unknown nói...

May quá biết làm rồi. Thank


lúc 20:22 6 tháng 2, 2014
Lâm thành phố nói...

Uses crt;
var j: integer;
i: byte;
test: boolean;
a: array[1..5] of integer;
begin
clrscr;
read(n);
for i:= 1 to n do
read(a[i]);
writeln('cac so cp');
test:= false;
for i:= 1 to n do
while test:= false do
for j:= 1 to a[i] do
if j*j = a [i] then
begin
test:= true;
write(a[i]);
end;
readln;
end.


lúc 09:07 27 tháng 7, 2014
Unknown nói...

neu phan tu cua mang la am (-) thi sao ?


lúc 08:52 13 tháng 9, 2015
Unknown nói...

tìm số cộng cp kiểu g vậy pn


lúc 08:28 20 tháng 9, 2015
Unknown nói...

ai biết tìm số chính phương lớn hơn gần x nhất ko


lúc 14:53 8 tháng 11, 2016
Nặc danh nói...

phan tu thu là gì vậy ?


lúc 20:55 30 tháng 5, 2017
Unknown nói...

Cảm ơn bạn vì đã chia sẻ


lúc 08:21 19 tháng 10, 2017
Nặc danh nói...

ok


lúc 19:16 9 tháng 2, 2018
Unknown nói...

Còn cách khác ko bạn


lúc 17:56 2 tháng 11, 2018
Nặc danh nói...

Chi la ten bien mang thoi


lúc 10:59 25 tháng 1, 2019
mai nói...

Đưa vào tệp mà không in ra được các số chính phương, bạn nào giúp mình xem sai ở chỗ nào với
uses crt;
var
a:array[1..100] of integer;
i,x,n:integer; f1,f2:text;
begin
clrscr;
assign(f1,'hh.inp'); reset(f1);
assign(f2,'hh.out'); rewrite(f2);
read(f1,n);
write(f2,'So chinh phuong ');
for i:=1 to n do begin
x:=trunc(sqrt(a[i])); read(f1,a[i]);
if sqr(x)=a[i] then writeln(f2,a[i],' '); end;
close(f1); close(f2); readln
end.


lúc 16:57 6 tháng 12, 2019
Nặc danh nói...

nhu cc


lúc 13:48 11 tháng 11, 2022

Đăng nhận xét

Thành viên Blog

Tổng số lượt xem trang

Translate

Return to top of page Copyright © 2012 | Theme by Hack Tutors. Cung cấp bởi Blogger.
Các code pascal trong blog được sưu tầm, lựa chọn sao cho tối ưu nhất. Cảm ơn các tác giả đã viết thuật toán.