Advertisement
AZchuong

2 so la ban

Feb 23rd, 2017
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.67 KB | None | 0 0
  1. Hai số m,n gọi là bạn của nhau nếu tổng các ước của m bằng n và ngược lại.Tìm tất cả các số là bạn của nahu và nhỏ hơn 10001.
  2.  
  3.  
  4. Ý tưởng: Thay vì chạy 2 vòng lặp để xét m và n, ta có thể chỉ cần chạy 1 vòng lặp kiểm tra xem m và uoc(m) có là bạn của nhau không.
  5.  
  6. PROGRAM timban;
  7. FUNCTION uoc(k:INTEGER):longint;
  8. VAR i,tong:INTEGER;
  9. BEGIN
  10. tong:=0;
  11. FOR i:=1 TO k DIV 2 DO
  12. IF k MOD i =0 THEN tong:=tong+i;
  13. uoc:=tong;
  14. END;
  15. VAR m:longint;
  16. BEGIN
  17. for m:= 1 to 10001 do
  18.    if uoc(uoc(m)) = m then writeln(m, ' va ', uoc(m),' la ban cua nhau');
  19. readln
  20. END.
  21. Cảm ơn các bạn đã xem :D
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement