第六周思考题
- 格式:docx
- 大小:15.66 KB
- 文档页数:9
杨振宇 2018/05/06 20:56:0
1.
#include
#include
int isprime(int n)
{
int i;
if (n == 2)
return 0;
for (i = 2; i <= sqrt(n); i++)
{
if (n%i == 0)
return 0;
}
return 1;
}
int main()
{
int num, i, j, k, n = 0;
while (scanf("%d", &num), num != 0)
{
for (i = 3; i
for (j = i; j
for (k = j; k
if (i + j + k == num && isprime(i) && isprime(j) && isprime(k))
{
goto l;
}
}
}
}
n++;
}
l:printf("%d=%d+%d+%d", num, i, j, k);
return 0;
}
2.
杨振宇 2018/05/06 20:56:17
#include
int fact(int a)
{
int i,sum=0;
for(i=1;i<=a;i++)
{
sum=sum+i;
}
return sum;
}
int main()
{
int a;
scanf("%d",&a);
printf("%d",fact(a));
}
3.
杨振宇 2018/05/06 20:56:32
#include
#include
int fact(int a)
{
int b,c=1,i=1;
while (a / c != 0)
{
c = pow(10, i);
i++;
}
i--;
b = a * a;
b = b % c;
if (a==b)
{
return 1;
}
else
{
return 0;
}
}
int main()
{
int a;
scanf("%d", &a);
if (fact(a))
{
printf("%d是同构数\n", a);
}
else
printf("%d不是同构数\n", a);
}
4.
杨振宇 2018/05/06 20:56:45
#include
#include
int f(int n)
{
long int i = 1, i1, q, e, n1, i2 = 0, w,sum=0;
do
{
q = pow(10.0, i);
n1 = n / q;
i++;
} while (n1 != 0);
i--;
for (i1 = 0; i1 <= i; i1 += 2)
{
q = pow(10.0, i1 + 1);
w = pow(10.0, i1);
e = pow(10.0, i2);
sum = sum + (n%q - n % w) / e;
q = 1;
w = 1;
i2++;
}
return sum;
}
int main()
{
long int n;
scanf("%ld", &n);
printf("%ld", f(n));
getchar();
getchar();
}
5.
杨振宇 2018/05/06 20:56:57
#include
#include
int f(int n)
{
long int i = 1, i1, q, e, n1, i2 = 0, w,sum=0;
do
{
q = pow(10.0, i);
n1 = n / q;
i++;
} while (n1 != 0);
i--;
for (i1 = 0; i1 <= i; i1 += 2)
{
q = pow(10.0, i1 + 1);
w = pow(10.0, i1);
e = pow(10.0, i2);
sum = sum + (n%q - n % w) / e;
q = 1;
w = 1;
i2++;
}
return sum;
}
int main()
{
long int n;
scanf("%ld", &n);
printf("%ld", f(n));
getchar();
getchar();
}
6.
杨振宇 2018/05/06 20:57:16
#include
#include
double f(int n, double x)
{
switch (n)
{
case 0:
return 1;
break;
case 1:
return x;
break;
default:
x = ((2 * n - 1)*x - f(n - 1, x) - (n - 1)*f(n - 2, x)) / n;
return x;
}
}
int main()
{
int n;
double x;
scanf("%lf%d", &x, &n);
printf("%.2f", f(n,x));
}