Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
0
Добавлен:
16.11.2025
Размер:
3.49 Кб
Скачать
#include <locale.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
// int random(int range_min, int range_max){ // Функция для произвольного диапазона случайных числен
//     int r = ((double)rand() / RAND_MAX) * (range_max - range_min) + range_min;
//     return(r);
// }
int main(void)
{
    // Часть 1. Произвольный массив
    // double md;
    // int KOLVO, MINIMUM, MAXIMUM, a, m=0, sc=0, sc2=0, sc3=0;
    // printf("Input: 'Number of el.'  'Lower border' 'Higher border' 'Value of a'\n");
    // scanf("%d %d %d %d", &KOLVO, &MINIMUM, &MAXIMUM, &a);
    // int mas[KOLVO];
    // for (int i = 0; i < KOLVO; i++){
    //     mas[i]=random(MINIMUM, MAXIMUM);
    //     if(mas[i]>a){
    //         m+=mas[i];
    //         sc+=1;
    //     }
    //     printf("   m[%d]=%d\n", i, mas[i]);
    // }
    // md=((double)m)/((double)sc);
    // for(int i=0; i<KOLVO; i++){
    //     if(mas[i]<md){
    //         sc2+=1;
    //         if(mas[i]>MINIMUM){
    //             MINIMUM=mas[i];
    //         }
    //     }
    // }
    // for(int i=0; i<KOLVO; i++){
    //     if(mas[i]<md){
    //         if(mas[i]==MINIMUM){
    //             sc3++;
    //         }
    //     }
    // }
    // printf("Average value of elements bigger than a = %f\n", md);
    // printf("Number of elements less than m = %d Largest element less than m = %d Number of that element=%d\n", sc2, MINIMUM, sc3);
    // Часть 2. Через указатели.
    // int m1=0;
    // double md1;
    // sc=0, sc2=0, sc3=0;
    // int *p;
    // printf("Input: 'Number of el.'  'Lower border' 'Higher border' 'Value of a'\n");
    // scanf("%d %d %d %d", &KOLVO, &MINIMUM, &MAXIMUM, &a);
    // int mas1[KOLVO];
    // p=mas1;
    // for (int i = 0; i < KOLVO; i++){
    //     *(p+i)=random(MINIMUM, MAXIMUM);
    //     if(*(p+i)>a){
    //         m1+=*(p+i);
    //         sc+=1;
    //     }
    //     printf("   m[%d]=%d\n", i, *(p+i));
    // }
    // md1=((double)m1)/((double)sc);
    // p=mas1;
    // for(int i=0; i<KOLVO; i++){
    //     if(*(p+i)<md1){
    //         sc2+=1;
    //         if(*(p+i)>MINIMUM){
    //             MINIMUM=*(p+i);
    //         }
    //     }
    // }
    // for(int i=0; i<KOLVO; i++){
    //     if(*(p+i)<md){
    //         if(*(p+i)==MINIMUM){
    //             sc3++;
    //         }
    //     }
    // }
    // printf("Average value of elements bigger than a = %f\n", md1);
    // printf("Number of elements less than m = %d Largest element less than m = %d\n Number = %d", sc2, MINIMUM, sc3);
    // Часть 3 - на автоматическую проверку.
    double md;
    int i, a, m=0, sc=0, sc2=0, sc3=0, MINIMUM=-10000;
    int mas[40];
    for (i=0; i<40; ++i){
            scanf("%d", &mas[i]);
    }
    scanf("%d", &a);
    for (i = 0; i < 40; i++){
        if(mas[i]>a){
            m+=mas[i];
            sc+=1;
        }
    }
    md=((double)m)/((double)sc);
    for(int i=0; i<40; i++){
        if(mas[i]<md){
            sc2+=1;
            if(mas[i]>MINIMUM){
                MINIMUM=mas[i];
            }
        }
    }
    for(int i=0; i<40; i++){
        if(mas[i]<md){
            if(mas[i]==MINIMUM){
                sc3++;
            }
        }
    }
    printf("%.04f\n%d\n%d %d\n", md, sc2, MINIMUM, sc3);
}
Соседние файлы в папке 1 семестр