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

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

Восстановить пароль Регистрация
 
Donwoload
0 / 0 / 0
Регистрация: 28.06.2011
Сообщений: 13
28.06.2011, 18:38     Программирование с использование функции #1
Для трех данных уравнений,, вывести количество действительных корней. Использовать функцию, которая по известным коэффициентам квадратного уравнения находит количество его действительных корней (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++ программирование с использованием функции.С++
C++ Программирование с использованием функции
ввод данных в функции конструктора и использование их в перегруженой функции C++
использование массива из функции в другой функции C++
Программирование и использование процедуры. C++
Классы. Программирование алгоритмов с использованием конструктора, деструктора, friend - функции инициализации set() и функции вывода результатов prin C++
C++ Классы. Программирование алгоритмов с использованием конструктора, деструктора, friend - функции инициализации set() и функции вывода результатов pri

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 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;
    }
}
Миниатюры
Программирование с использование функции  
Yandex
Объявления
28.06.2011, 19:48     Программирование с использование функции
Ответ Создать тему
Опции темы

Текущее время: 04:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru