Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Помогите ламеру с передачей параметров функции на C

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> Помогите ламеру с передачей параметров функции на C
Имя
Сообщение << Старые топики   Новые топики >>
Помогите ламеру с передачей параметров функции на C - 2006-03-25 10:49:38   
SuperLamer

Сообщений: 4
Оценки: 0
Присоединился: 2005-11-07 17:35:41
Как возвращать значения параметров в функцию?
Заданная задача: Параметрами функции должны быть коэффициенты и корни уравнения. Значение, возвращаемое функцией должно передавать в вызывающую программу информацию о наличии корней уравнения: 2 – два разных корня, 1 – корни одинаковые, 0 – уравнение не имеет решения. Кроме того, функция должна проверять корректность исходных данных. Если исходные данные некорректны, то функция должна возвращать –1.
Решение не требую.
Попробую сам.
По возможности приведите пример.
и каким символом обозначается операция конъюнкции?
Post #: 1
Помогите ламеру с передачей параметров функции на C - 2006-03-25 22:28:50   
cybermind

Сообщений: 805
Оценки: 0
Присоединился: 2004-05-24 20:16:13
1) В функции main с помощью scanf получаешь от чела коэффиценты квадратного уравнения: a, b и c.
2) printf ("%d", check(a, b, c));
3) В функции check делаешь необходимые проверки: данных a, b и c. Если введённые данные - бред, return -1;
Иначе считаешь дискриминант. В соответствии с полученными результатами формируешь return.
return 0, return 1, return 2 надо запихать в соответствующие условия.

Конъюнкция - вроде как . (точка), но не уверен точно.
Post #: 2
Помогите ламеру с передачей параметров функции на C - 2006-03-25 22:36:00   
cybermind

Сообщений: 805
Оценки: 0
Присоединился: 2004-05-24 20:16:13
Вот только нафига корни уравнения передевать в функцию мне неясно.
Но если всё же требуют это сделать, передавать будешь по значению:

2)
float x1 = 0, x2 = 0;

printf ("%d", check(a, b, c, x1, x2));

3)
Ко всему вышесказанному добавлю заголовок функции:
int check(a, b, c, &x1, &x2)
В таком случае твои корни будут передаваться в уравнении, как и требовалось.
Но к тому же они будут автоматически меняться в процедуре main()
Поэтому помимо высчитывания дискриминанта придётся сосчитать сами корни. Потом вывести их в процедуре main после строки printf ("%d", check(a, b, c, x1, x2));.
Post #: 3
Страниц:  [1]
Все форумы >> [Веб-программинг] >> Помогите ламеру с передачей параметров функции на C







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.