Как исправить ошибку: function 'logf' should have a prototype - C (СИ)

Узнай цену своей работы

Формулировка задачи:

#include <stdio.h>
#include <conio.h>
#include <math.h>
 
float ver[10] = {0.4f, 0.2f, 0.1f, 0.05f, 0.05f, 0.05f, 0.05f, 0.04f, 0.03f, 0.03f};
float max_key_ver=0;
unsigned long m=3462538;
int mes[7];
float PKE[10],PEK[10],SumEK,HK,HR,H,N;

void main()
{
    int i,j,tmpmes;
 
    for (i=6;i>=0;i--)
    {
        mes[i]=m%10;
        m/=10;
    }
 
    for (i=0;i<10;i++)
    {
        PEK[i]=1;
        for (j=0;j<7;j++)
        {
            tmpmes=mes[j]-i;
            if(tmpmes<0) 
                tmpmes=10-abs(tmpmes);
            PEK[i]*=ver[tmpmes];
        }
    }
 
    SumEK=0;H=0;
    for (i=0;i<10;i++)
    {
        SumEK+=0.1f*PEK[i];
        PKE[i]=0;
    }
 
    printf("апостериорные вероятности:\n");
    for (i=0;i<10;i++)
    {
        PKE[i] = 0.1f * PEK[i] / SumEK;
        if (max_key_ver<PKE[i]) 
            max_key_ver=PKE[i];
       H += ver[i]*logf(ver[i])/logf(2); /* !!! ошибка:function 'logf' should have a prototype */
        printf("\tключ %i : вероятность использования %6.4f\n",i,PKE[i]);
    }
 
    HK=logf(10)/logf(2);
    HR=logf(7)/logf(2);
    N=HK/(HR+H);
 
    printf("Расстояние единственности  = %5f",N);
    getch();
}

Решение задачи: «Как исправить ошибку: function 'logf' should have a prototype»

textual
Листинг программы
спасибо большое все заработало

Оцени полезность:

8   голосов , оценка 4.25 из 5
Похожие ответы