if (i == s)
printf ("%d ",i);
}
m = (int)sqrt (q) + 1; sqm = m * m;
for (i = q; i <= b; i = i + 2)
{ // , a b
s = 1; // s
for (j = 3; j <= m; j = j + 2) /* */
if (i % j == 0)
{
s+= j;
if ((k = i / j) < j) s+=k;
}
/* s i */
if (i == s)
printf ("%d ",i);
}
return 0;
}
, . , , , . , .
perfnum.c , , . , , perfnum5.c , a b . flag - , . , NO (0), , YES (1). , , , . . 1 , , . .
6 ()
/*perfnum6.c*/
/* a,b, , a b*/
#include <math.h> /* */
#include <stdio.h> /* -*/
#define NO_NUMBERS "NO PERFECT NUMBERS BETWEEN a=%d b=%d \n"
#define NO 0
#define YES 1
main()
{
unsigned int a, b;
unsigned int i, j, k, r, d, s;
unsigned int p, q;
unsigned int m, sqm;
unsigned int flag = NO;
scanf (" a = %d b = %d", &a, &b);
if (b < 6)
{
printf (NO_NUMBERS. a, b);
return 0;
}
if (a % 2 ==0) // a
{ p = a; q = a + 1; }
else
{ q = a; p = a + 1; }
m = (int) sqrt (p) + 1 sqm = m * m;
d=1;
for (r = 0; r <= 1; r++)
{
for (i = p; i <= b; i = i + 2)
{ /* , a b, - */
|
|
s = 1; // s
for (j = 2; j < sqrt (i) + 1; j = j + d)
if (i % j == 0)
{
s+=j;
if ((k = i / j) < j) s+=k;
}
/* s i */
if (i == s)
{ printf ("%d ",i); flag = YES; }
}
m = (int)sqrt (q) + 1 sqm = m * m;
d = 2;
p = q;
}
if (NO == flag)
printf (NO_NUMBERS, a, b);
return 0;
}
1-
. :
;
;
;
.
.
, :
;
;
, .
.
2-
1 n, , n .
2 p; , p. . , , p.
3 n, n . , , .
4 m*n, ; , . , .
5 P=(p1, p2,..., pn) - 1,2,...,n. m1,m2,...,mn , i=1,2,...,n mi , i, P , i. n . , - .
6 , . , , .
7 n, k. , n , k , .
8 . a1, a2,... a1 a, k = 1, 2,... a(k+1), ak a. , b.
a, b, , .
|
|
9 , . , , . , .
bcc32 M -(???) map, ;
bcc32 S - asm, , ;
bcc32 c - ( obj), ;
bcc32 o __ (???) - ( exe), .
{public void paint (Graphics g)
{
Font font = new Font (TimesRoman, FontBOLD, 24);
g.setFont (font);
g.drawString (I am a student, 5, 25)
}
}
Path : C:\ProgramFiles\Java\jdk 1.6.0_18