Тема: Проблема зі знаходженням мінімального значення в масиві
Виникають проблеми при спробі знайти мінімальне значення в масиві, при компіляції видає якусь дурню, сиджу над завданням уже декілька годин, помилок не знайшов, допоможіть, будь ласка. Найцікавіше в тому, що максимальне значення шукає добре, а от з мінімальним проблема. Мова C, пишу в Visual Studio 2022.
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#define MAX_N 100
int main() { system("chcp 1251"); srand(time(0));
    int n;
    double arr[MAX_N];
    double a, b, x = 0, negsum = 0, dob, mi = arr[0], ma = arr[0];
    printf("    Введіть мінімальне значення діапазону випадкових значень масиву\n =>"); scanf_s("%lf", &a);
    printf("    Введіть максимальне значення діапазону випадкових значень масиву\n =>"); scanf_s("%lf", &b);
    if (a > b) { printf("Мінімальне значення діпапзону повинне бути меньшим за максимальне, будь ласка, спробуйте ще раз"); }
    printf("    Введіть кількість дійсних елементів масиву\n =>"); scanf_s("%d", &n);
    for (int i = 0;i < n;i++)
    {
        arr[i] = { rand() * (b - a + 1) / RAND_MAX + a }; printf("%.2f ", arr[i]);
        if (arr[i] < 0)negsum += arr[i];
        if (arr[i] > ma) ma = arr[i];
        else  if (mi > arr[i])  mi = arr[i];
    }
    printf("\n    Сума від'ємних елементів масиву: %f", negsum);
    printf("\n    Мінімум:  %.2f", mi);
    printf("\n    Максимум: %.2f", ma);
}