Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2017, 12:13   #1
sanya_prokopchuk
 
Регистрация: 03.11.2017
Сообщений: 5
По умолчанию Помогите найти ошибку в коде С

ошибка при обьявлении функций func_1, func_2

#include <stdio.h>

double a, b, h;

typedef struct arg
{
double x;
double y;
} arg;

void input()
{
scanf("%lf%lf%lf", &a, &b, &h);
}

double func_1(arg.x x)
{
return (x*x);
}

double func_2(arg.y y)
{
return (1/y);
}

void tabulation()
{
for (a; a <= b; a += h)
printf("%lf\t%lf\n", func_1(a), func_2(a));
}

void program()
{
input();
tabulation();
}

int main()
{
program();
return 0;
}
sanya_prokopchuk вне форума Ответить с цитированием
Старый 11.12.2017, 12:20   #2
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Код:
double func_1(double x)
{
return (x*x);
}

double func_2(double y)
{
return (1/y);
}

void tabulation()
{
for (a; a <= b; a += h)
printf("%lf\t%lf\n", func_1(arg.x), func_2(arg.y));
}
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 11.12.2017, 12:48   #3
sanya_prokopchuk
 
Регистрация: 03.11.2017
Сообщений: 5
По умолчанию

Все равно выскакивает ошибка
Работаю в DevC++ 5.11 TDM-GCC 4.9.2 ))

Вы передали тип как аргумент в функцию? Насколько я понимаю typedef определяет структуру как тип..
sanya_prokopchuk вне форума Ответить с цитированием
Старый 11.12.2017, 12:58   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
Все равно выскакивает ошибка
Какая? Мы гадать должны?

Цитата:
Вы передали тип как аргумент в функцию?
Вы о чем? Или просто не знаете, как определяются и вызываются функции?

Цитата:
Насколько я понимаю typedef определяет структуру как тип..
И? А небо синее...
p51x вне форума Ответить с цитированием
Старый 11.12.2017, 12:58   #5
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Сообщение от sanya_prokopchuk Посмотреть сообщение
Вы передали тип как аргумент в функцию?
Я передал аргумент в функцию, а не тип. В описании функции задал этот аргумент как double.

Цитата:
Насколько я понимаю typedef определяет структуру как тип..
Определяет, да, но никто не отменял необходимости заполнять переменную этого типа данными. Вы не можете передать в функцию часть структурного типа, как Вы пытались это сделать - только весь тип, и уже внутри функции забирать из нужного поля нужное значение. Конкретно в Вашем случае, видимо, должно быть так:

Код:
#include <stdio.h>

double a, b, h;

typedef struct arg
{
  double x;
  double y;
};

arg St;

void input()
{
  scanf("%lf%lf%lf", &a, &b, &h);
}

double func_1(arg aStruct)
{
  return (aStruct.x*aStruct.x);
}

double func_2(arg aStruct)
{
return (1/aStruct.y);
}

void tabulation()
{
  for (a; a <= b; a += h){
    St.x = a;
    St.y = a;
    printf("%lf\t%lf\n", func_1(St), func_2(St));
  }
}

void program()
{
input();
tabulation();
}

int main()
{
program();
return 0;
}
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите, пожалуйста, найти ошибку в коде (найти сумму факториалов чётных чисел в заданном диапазоне) kris14 Паскаль, Turbo Pascal, PascalABC.NET 8 25.10.2017 15:42
Помогите найти ошибку в коде!С# Dr.Dremor Помощь студентам 1 07.10.2016 16:21
Помогите найти ошибку в коде Jora_Kornev Общие вопросы Delphi 10 10.01.2009 17:00
Помогите найти ошибку в коде C++ Жека:) Помощь студентам 15 29.10.2008 11:32
помогите найти ошибку в коде Joker88 Помощь студентам 1 04.03.2008 12:43