Test - Lab

Lab - 1

សរសេរកម្មវិធីអនុវត្តន៍កិច្ចការខាងក្រោម៖

  1. បញ្ចូលarrayមួយមានចំនួនN ជាចំនួនគត់ (0 < N < 10 ) បញចូលពីkeyboard។ បង្ហាញចំនួនទាំងនោះលើscreen នូវចំនួនទើបតែបានបញ្ចូលនេះ។

  2. បញ្ចលលេខ x (x > 0) ណាមួយពីkeyboard។

    1. ប្រសិនបើ x <= N: គណនាផលបូកជាមធ្យម នៃចំនួនxលេខតម្បូង។
    2. ប្រសិនបើ x > N: គណនាផលបូកសរុបនៃចំនួនទាំងនោះ?

បង្ហាញចំនួនទាំងនោះលើscreen។ (ត្រូវត្រួតពិនិត្យលក្ខខណ្ឌinput)

Solution

#include <stdio.h>

int main(){
    int i, N, x, A[10];
    int sum=0;
    float m=0;

    do{
        printf("Enter value of N = ");
        scanf("%d", &N);
    }while(N<=0 || N>=10);

    printf("\nEnter element of array A[%d]\n", N);
    for(i=0; i<N; i++){
        printf("A[%d]: ", i+1);
        scanf("%d", &A[i]);
    }
    printf("Array of A is : ");
    for(i=0; i<N; i++) printf("%d\t", A[i]);

    do{
        printf("\nEnter value of x = ");
        scanf("%d", &x);
    }while(x <= 0);
    if(x <= N){
        for(i=0; i<N; i++)
            m = m + A[i];
        m = m/N;
        printf("Medium of array A is : %.2f\n", m);
    }else{
        for(i=0; i<N; i++)         sum = sum + A[i];
        printf("Sum of array A is : %d\n", sum);
    }
    return 0;
}

Output

Enter value of N = 5

Enter element of array A[5]
A[1]: 2
A[2]: 3
A[3]: 4
A[4]: 5
A[5]: 5
Array of A is : 2   3       4       5       5
Enter value of x = 8
Sum of array A is : 19

Lab - 2

សរសេរកម្មវិធីអនុវត្តន៍កិច្ចការខាងក្រោម៖

  1. បញ្ចូលarrayមួយ ជាលេខចំនួនគត់ណាក៏ដោយពីkeyboard។ ការបញ្ចូលត្រូវបានបញ្ឈប់នៅពេលដែលចំនួនធាតុមាន៧ ឫបញ្ចូលលេខ០ ដែលលេខ០មិនមែនជាធាតុក្នុងarray។
    1. បង្ហាញចំនួនទាំងនោះលើscreenទម្រង់ជាសេរី។
    2. តម្រៀបវាជាលំដាប់កើន និង​ បង្ហាញចំនួនទាំងនោះលើscreen។

Solution

#include <stdio.h>

int main(){
    int i, j, n=0, tmp, A[7];
    for(i=0; i<7; i++){
        printf("A[%d] : ", i+1);
        scanf("%d", &tmp);
        if(tmp == 0) break;
        else A[i] = tmp;
        n++;
    }
    if(n==0) printf("\nThe array A has no element!!!");
    else{
        printf("\nThe array A is : ");
        for(i=0; i<n; i++) printf("%d\t", A[i]);
        for(i=0; i<n; i++)
            for(j=i+1; j<n; j++){
                if(A[i] > A[j]){
                    tmp = A[i];
                    A[i] =  A[j];
                    A[j] = tmp;
                }
            }
        printf("\nArray after re-arange (increase): ");
        for(i=0; i<n; i++) printf("%d\t", A[i]);
    }
    printf("\n");
    return 0;
}

Output

A[1] : 3
A[2] : 5
A[3] : 1
A[4] : 9
A[5] : 4
A[6] : 0

The array A is : 3  5       1       9       4
Array after re-arange (increase): 1    3    4       5       9

Lab - 3

សរសេរកម្មវិធីអនុវត្តន៍កិច្ចការខាងក្រោម៖

  1. បញ្ចលលេខn ជាចំនួនគត់ ពីkeyboard(0<n<10)។
  2. បញ្ចូលarrayមួយមានចំនួនNធាតុ ជាចំនួនពិត។ បង្ហាញចំនួនទាំងនោះលើscreenទម្រង់ជាសេរី។
  3. ស្វែងរកចំនួនធំបំផុតនៅក្នុងarrayនោះ និងរាប់ចំនួនលេខដែលធំនៅក្នុងarray។ បង្ហាញចំនួនទាំងនោះលើscreen។

Solution

#include <stdio.h>

int main()
{
    int i, N;
    int j=0;
    float max;
    float A[10];
    do{
        printf("Enter N = ");
        scanf("%d", &N);
    }while(N<= 0 || N>=10);
    printf("\nEnter Array A: \n");
    for(i=0; i<N; i++){
        printf("A[%d] \t: ", i+1);
        scanf("%f", &A[i]);
    }
    printf("The array of A is : ");
    for(i=0; i<N; i++) printf("%.2f\t", A[i]);
    max = A[0];
    for(i=0; i<N; i++){
        if(max == A[i])
            j++;
        if(max < A[i])
            {max = A[i]; j=1;}
    }
    printf("\nThe maximum of Array is %.2f", max);
    printf("\nThe number equal to max are : %d", j);
    printf("\n\n");
    return 0;
}

Output

Enter N = 9

Enter Array A:
A[1]        : 11
A[2]        : 45
A[3]        : 0.34
A[4]        : 2
A[5]        : -34
A[6]        : 9
A[7]        : 45
A[8]        : 45
A[9]        : 6.7
The array of A is : 11.00   45.00   0.34    2.00    -34.00  9.00    45.00   45.00   6.70
The maximum of Array is 45.00
The number equal to max are : 3