Var a,b,c,d,i,f,g,h,n:integer; begin writeln('введите число'); readln(a); g:=0; c:=0; d:=0; i:=0; f:=0; writeln('введите число для сравнения'); readln(h); for b:=a downto 1 do begin if a mod b = 0 then writeln('его делитель ==>',b); if a mod b = 0 then c:=b+c; if a mod b = 0 then if b mod 2 = 0 then d:=d+b; if a mod b = 0 then if b mod 2 <> 0 then i:=i+1; if a mod b = 0 then f:=f+1; if a mod b = 0 then if b mod 2 = 0 then g:=g+1;i f a mod b = 0 then if b>h then n:=n+1; end; writeln('сумма его делителей ==>',c); writeln('сумма его чётных делителей ==>',d); writeln('количество нечётных делителей ==>',i); writeln('количество чётных делителей ==>',g); writeln('количество делителей ==>',f); writeln('количество делителей больших b ==>',n); end.
Delphi / Pascal function mySimpleDigit(a: integer):boolean; var i: integer; begin for i:=sqrt(a) downto 1 do if not (a mod i = 0) then mySimpleDigit:=false else mySimpleDigit:=true; end; var i,n,s: integer; begin write('Введите число: '); readln(n); if ((n>1) and (n<1000000)) then begin s:=0; for i:=2 to n-1 do if ((n mod i = 0) and (mySimpleDigit(i) = true)) then s:=s+i; end; writeln('Сумма всех простых делителей: ', s); readln; end.
C++ #include <cmath> #include <iostream> using namespace std; bool mySimpleDigit(unsigned a) { for (unsigned i =sqrt(a); i > 1; i--) if (!(a % i)) return false; return true; } int main() { unsigned n,s; cin >> n; if ((n>1) && (n<1000000)) { s=0; for (unsigned i=2; i<=n; i++) if ((n%i==0) && (mySimpleDigit(i)==true)) s+=i; cout << "Summa vsex prostix deliteley: " << s; } else cout << "Vvedite drugoe chislo"; return 0; }