Выдаёт - неправильно завершена декларация,помогите найти ошибку

198
08 ноября 2017, 02:38
#include <stdio.h>
#include<conio.h>
#include <math.h> void main(void)
{
double f,z,x;
int m;
printf("vvedite x=");
scanf("%lf",&x);printf("vvedite m=");scanf("%d",&m);
if (x>10)f=sin(3*x);
else if(x<10) f=3*x;else f=cos(x);
printf("x=%.1lf,f=%.3lf",x,f);
switch(m){
      case 3:z=tan(x);break;
      case 5,2:z=log(abc(-m));break;
      default:z=sin(m);
      }
printf("x=%.1lf,m=%d,z=%.3lf\n",x,m,z);
}
Answer 1

Вот, исправил некоторые ошибки в Вашем коде, компилируется, выполняется...

#include <stdio.h>
#include <math.h> 
int main()
{
    double f,z,x;
    int m;
    printf("vvedite x = ");
    scanf("%lf",&x);
    printf("vvedite m = ");
    scanf("%d",&m);
    if (x > 10.0) f = sin(3.0 * x); // сравнивать числа с пл. точкой лучше через эпсилон
    else if(x < 10.0) f = 3.0 * x;
    else f = cos(x);
    printf("x = %.1lf, f = %.3lf\n", x, f); // тут добавил \n
    switch(m)
    {
        case 3:
            z = tan(x);
            break;
        case 5: case 2: // тут была ошибка
            z = log(abs(-m)); // тут была ошибка
            break;
        default:
            z = sin(m);
            break;
    }
    printf("x = %.1lf, m = %d, z = %.3lf\n", x, m, z);
    return 0;
}

Пример работы:

vvedite x = 11.0
vvedite m = 5
x = 11.0, f = 1.000
x = 11.0, m = 5, z = 1.609

Заметьте, f округлено с 0.9999.... Что касается точности сравнения чисел с плавающей точкой - то Вы вводите эпсилон (точность), например, 10^-3 и сравниваете Ваше число с некоторым плюс или минус этот самый эпсилон. Например, посмотрите этот вопрос.

READ ALSO
Метод касательных(Ньютона) [требует правки]

Метод касательных(Ньютона) [требует правки]

Не могу понять как реализовать этот метод на с++ Нашел много примеров программ но они полностью не подходят, помогите плизВот пример который...

392
C++ чтение из файла

C++ чтение из файла

CLion ругается на fstreamНе могу понять почему

246
Задать цвет с помощью R, G, B составляющих

Задать цвет с помощью R, G, B составляющих

В документации написано:

314
shared_ptr и ошибка _crtisvalidheappointer(block)

shared_ptr и ошибка _crtisvalidheappointer(block)

Добрый деньПодскажите, пожалуйста, в чем может быть ошибка

276