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; }
program raf105;
var a,b,c:integer;
begin
write('Введите 3 числа: ');
readln(a,b,c);
if (a<b) and (a<c)
then writeln('Произведение 2 наибольших чисел: ',b*c);
if (b<a) and (b<c)
then writeln('Произведение 2 наибольших чисел: ',a*c);
if (c<b) and (c<a)
then writeln('Произведение 2 наибольших чисел: ',b*a);
end.
2.а)program raf105;
var a,i,b:integer;
begin
write('Введите число: ');
readln(a);
for i:=1 to a do
if ((a mod i)=0) and ((i mod 2)<>0)
then b:= b+i;
writeln('Сумма нечётных делителей введённого числа: ',b);
end.
б)program raf105;
var a,a2,i,j,b:integer;
begin
write('Введите меньшее число: ');
readln(a);
write('Введите большее число: ');
readln(a2);
for j:=a to a2 do
begin
for i:=1 to j do
if ((j mod i)=0) and ((i mod 2)<>0)
then b:= b+i;
writeln('Сумма нечётных делителей числа ',j,' равна: ',b);
b:= 0;
end;
end.
Язык программирования PascalABC
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;
}