1. 程式人生 > 實用技巧 >Bubble Cup 13 - Finals [Online Mirror, unrated, Div. 1] K. Lonely Numbers (數學)

Bubble Cup 13 - Finals [Online Mirror, unrated, Div. 1] K. Lonely Numbers (數學)

任務一

#include<math.h>
#include<stdio.h>
void solve(double a, double b, double c);
int main() {
    double a, b, c;
    printf("Enter a,b,c:");
    while (scanf("%lf%lf%lf", &a, &b, &c) != EOF) {
        solve(a, b, c);
        printf("Enter a,b,c:");
    }
    return 0;
}
void
solve(double a, double b, double c) { double x1, x2; double delta, real, imag; if (a == 0) printf("not quadratic equation.\n"); else { delta = b * b - 4 * a * c; if (delta >= 0) { x1 = (-b + sqrt(delta)) / (2 * a); x2 = (-b - sqrt(delta)) / (2
* a); printf("x1=%f,x2=%f\n", x1, x2); } else { real = -b / (2 * a); imag = sqrt(-delta) / (2 * a); printf("x1=%f+%fi ,x2=%f-%fi\n", real, imag, real, imag); } } }

任務2

#include<stdio.h>
long long fac(int c);

int main() {
    
int i, n; printf("Enter n:"); scanf("%d", &n); for (i = 1; i <= n; ++i) printf("%d!=%lld\n", i, fac(i)); return 0; } long long fac(int n) { static long long p = 1; printf("p=%lld\n", p); p = p * n; return p; }

#include<stdio.h>
int func(int, int);
int main() {
    int k = 4, m = 1, p1, p2;

    p1 = func(k, m);
    p2 = func(k, m);
    printf("%d,%d\n", p1, p2);

    return 0;
}
int func(int a, int b) {
    static int m = 0, i = 2;
    i += m + 1;
    m = i + a + b;
    return(m);
}

任務3

#include<stdio.h>
#define N 1000
int fun(int n, int m, int bb[N]) {
    int i, j, k = 0, flag;

    for (j = n; j <= m; j++) {
        if(m>n&&n>=2)
            for(i=2;j<=m;i++)
                if (j% i == 0) {
                    flag = 0;
                    break;
                }
        if (i >= j)
            bb[k++] = j;
    }
    return k;
}
int main() {
    int n = 0, m = 0, i, k, bb[N];

    scanf("%d", &n);
    scanf("%d", &m);

    for (i = 0; i < m - n; i++)
        bb[i] = 0;
    k = fun(n, m, bb);
    for (i = 0; i < k; i++)
        printf("%4d", bb[i]);

    return 0;
}

任務4

#include<stdio.h>
long long fun(int n);

int main() {
    int n;
    long long f;
    while (scanf("%d", &n) != EOF) {
        f = fun(n);
        printf("n=%d,f=%lld\n", n, f);
    }
    return 0;
}
long long fun(int n)
{
    long long int x;
    if (n == 1)
        x = 1;
    else x = fun(n - 1) * 2 + 1;
    return x;
}

任務5

#include<stdio.h>
void draw(int n, char symbol);
#include<stdio.h>
int main(){
    int n;
    char symbol;
    while (scanf("%d %c", &n, &symbol) != EOF) {
        draw(n, symbol);
        printf("\n");
    }
    return 0;
    }
void draw(int n, char symbol) {
    int i, a, b, c, d;
    a = n;
    for (i = 1; i <= n; i++)
    {
        d = 2 * i - 1;
        for (b = 1; b <= (a - i); b++)
        {
            printf("");
        }
        for (c = 1; c <= d; c++) {
            printf("%c", symbol);
        }
        printf("\n");
    }
}