Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Donwoload
0 / 0 / 0
Регистрация: 28.06.2011
Сообщений: 13
#1

Программирование с использование функции - C++

28.06.2011, 18:38. Просмотров 473. Ответов 2
Метки нет (Все метки)

Для трех данных уравнений,, вывести количество действительных корней. Использовать функцию, которая по известным коэффициентам квадратного уравнения находит количество его действительных корней (2-два различных корня, 1 - одинаковые корни, 0 - уравнение не имеет решения). Если исходные данные неверны, то функция возвращает -1.
int kvadur (float a, float b, float c) / / коэффициенты уравнения
{
float d; / / дискриминант
if (а == 0) return (-l);
d = b * b-4 * a * c;
if (d <0) return (0);
else if (d == 0) return (1);
else return (2);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.06.2011, 18:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программирование с использование функции (C++):

Программирование с использование подпрограм - C++
вычислить x-сумму значений функций x=c(sin(x+y),x-y)=c(cos(квадарат)(x),sin(y(квадрат))+c(2x-3y,|(модуль)x/y-1|)+c(x(куб)-y(куб),x-y). ...

Программирование и использование процедуры. - C++
даны три матрицы размерностью 3х4. найдите для каждой из них максимальный и минимальный элементы, используя процедуру. выведите матрицы, у...

Классы. Программирование алгоритмов с использованием конструктора, деструктора, friend - функции инициализации set() и функции вывода результатов prin - C++
Братаны, выручайте!:help: Общая постановка. Пользовательский класс Х должен содержать необходимые элементы-данные, которые создаются в...

Классы. Программирование алгоритмов с использованием конструктора, деструктора, friend - функции инициализации set() и функции вывода результатов pri - C++
Братаны, выручайте! Общая постановка. Пользовательский класс Х должен содержать необходимые элементы-данные, которые создаются в...

Возвращение результата функции bool и использование его в функции main() - C++
У меня есть функция bool, которая имеет вид: bool Pisos(int row, int place) { if (...) return true; else return false;...

Ввод данных в функции конструктора и использование их в перегруженной функции - C++
Вот собственно код, как его исправить, что бы не было ошибки. Пишет что переменные не объявлены. Это вполне естественно. Но как сделать...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
28.06.2011, 19:36 #2
ну так в чем вопрос-то? ваш код почти коректен

Добавлено через 4 минуты
C
1
2
3
4
5
6
7
8
9
10
11
12
int square_equation (float a, float b, float c) // название "kvadur" не очень
{
     if (а == 0.0f) 
         return -1;     
     float d = b * b - 4 * a * c; // зачем коментировать очевидные вещи 
     if (d < 0.0f) 
         return 0; 
     else if (d == 0.0f) 
         return 1; 
     else 
         return 2; 
}
-=ЮрА=-
Заблокирован
Автор FAQ
28.06.2011, 19:48 #3
Вот код и скриншот работы программы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#include <stdio.h>
#include <math.h>
 
int square_root(float a, float b, float c, float &x1, float &x2);
void show_roots(int nRoots, float x1, float x2);
 
void main()
{
back:
    printf("square equation ax^2+bx+c\r\n");
    printf("Enter coefs of 1-st equation\r\n");
    float a1,b1,c1;
    scanf("%f",&a1);
    scanf("%f",&b1);
    scanf("%f",&c1);
    printf("Enter coefs of 2-nd equation\r\n");
    float a2,b2,c2;
    scanf("%f",&a2);
    scanf("%f",&b2);
    scanf("%f",&c2);
    printf("Enter coefs of 3-rd equation\r\n");
    float a3,b3,c3;
    scanf("%f",&a3);
    scanf("%f",&b3);
    scanf("%f",&c3);
 
    float x1,x2;
    int N = square_root(a1, b1, c1, x1, x2);
    printf("1-st equation\r\n");
    show_roots(N, x1, x2);
 
    N = square_root(a2, b2, c2, x1, x2);
    printf("2-nd equation\r\n");
    show_roots(N, x1, x2);
 
    N = square_root(a3, b3, c3, x1, x2);
    printf("3-rd equation\r\n");
    show_roots(N, x1, x2);
 
    printf("Press NUM1 to enter new equations\r\n");
    scanf("%d",&N);
    if(N == 1)
        goto back;
}
 
int square_root(float a, float b, float c, float &x1, float &x2)
{
    int nRoots = 0;
    float D = b*b - 4*a*c;
    if(-1 < D)
    {
        nRoots++;
        if(0 == D)
        {
            x1 = -b/2*a;
            x2 = x1;
        }
        else
        {
            nRoots++;
            x1 = (-b - sqrt(D))/2*a;
            x2 = (-b + sqrt(D))/2*a;
        }
    }
    return nRoots;
}
 
void show_roots(int nRoots, float x1, float x2)
{
    switch(nRoots){
    case 1:
        printf("Equation has one root : %f",x1);
        break;
    case 2:
        printf("Equation has two roots : \r\n");
        printf("root1 : %f\r\n",x1);
        printf("root1 : %f\r\n",x2);
        break;
    default:
        printf("Equation doesn't has rots\r\n");
        break;
    }
}
Миниатюры
Программирование с использование функции  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2011, 19:48
Привет! Вот еще темы с ответами:

Использование функции как параметра другой функции - C++
В задании указано, что функция P прибавляет значение функции ff к элементу массива, если он входит в промежуток от C до D, которые вводятся...

использование массива из функции в другой функции - C++
как использовать полученный массив в другой функции. к примеру в функции int Mass(char *fname) происходит конвертация одномерного массива...

Программирование на булевые функции - C++
Привет всем. Я тут решал задачу под мат-логике. И мне интересно, а возможно ли ПК (на C++) научить решать подобные задачи на булевы...

Линейное программирование и функции - C++
1. Вычислить 2. 3. Разработать функцию, которая находит оптимумы математической функции, заданной на некотором интервале.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru