Advertisement
Guest User

Untitled

a guest
Apr 9th, 2020
159
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (defun % (a b)
  2.     (setq a (abs a))
  3.     (setq b (abs b))
  4.     (if (> b a)(progn (setq tmpA a) (setq a b) (setq b tmpA)))
  5.     (setq res (- a (* (/ a b) b)))
  6.     res
  7.   )
  8. (defun isPrime (n d)
  9.   (if (= d nil) (setq d 2))
  10.   (cond ((> (* d d) n) t)
  11.         ((zerop (% n d)) nil)
  12.         (t (isPrime n (1+ d)))))
  13. (defun c:vvid ( / )
  14. (initget 7)
  15. (setq mas () mas1 ())
  16.  
  17. (setq i 0)
  18. (initget 7)
  19. (setq v (getint "Vvedit rozmir masyvy"))
  20. (repeat v
  21.     (setq i (+ i 1))
  22.     (setq mas1 (list(getint (strcat "Vvedit  " (itoa i) "
  23.     element spysku: "))))
  24.     (setq mas (append mas mas1))
  25. );repead
  26.   (setq maxEl (nth 0 mas))
  27.   (foreach el mas (if (> el maxEl) (setq maxEl el)))
  28.  
  29.   (while (not (isPrime maxEl 2))
  30.     (setq maxEl (+ 1 maxEl))
  31.     )
  32.   (princ "Limit prime num is: ")(princ maxEl)
  33.  
  34.   (setq i 2)
  35.  
  36.  
  37.   (while (<= i maxEl)
  38.         (if (isPrime i 2) (progn
  39.                     (setq iArr ())
  40.                
  41.                 (foreach element mas
  42.                     (if (= (% element i) 0) (progn
  43.                                     (setq iArr (append iArr (list element) ) )
  44.                                   )
  45.                       )
  46.                   )
  47.                     (princ (strcat "Pidmasyv z prostym chuslom " (itoa i) " = "))
  48.                     (princ iArr)
  49.                 )
  50.       )
  51.     (setq i (1+ i))
  52.     )
  53.  
  54.  
  55. (princ "Result masyv ") (princ mas)
  56.   (princ "Max element ") (princ maxEl)
  57. );defun
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement