Форум программистов, компьютерный форум, киберфорум
Наши страницы

Вычислить 18 значений функции ax^2+bx+c на отрезке [e,f], сохранить их в массиве Y и определить, имеет ли уравнение ax^2+bx+c=0 на отрезке [e,f] по крайней мере хотя бы один корень. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Указатели...... http://www.cyberforum.ru/cpp-beginners/thread368083.html
возникли проблемы с написанием программы на Си, на тему указатели. На паскале всё было довольно просто, а вот на Си ничего не выходит, помогите пожалуйста с решением...вот условие: Дана ...
C++ Использование псевдопеременных: bd (3,5) = s, где bd - база данных, s - элемент базы данных, тогда с 3 по 5 элементы базы данных заменить на элемент s. всем доброго времени суток! есть у меня класс bd, массив элементов этого класса table, а вот сам метод: int copyTable(int a, int b) { int i,j; bd table; for (a-=1; a<b; a++)... http://www.cyberforum.ru/cpp-beginners/thread368074.html
C++ Использование string
Даны текстовая строка и слово (например, ba). Напечатать все слова, входящие в эту текстовую строку, начинающиеся с букв заданного слова (например, bak, barber, baab, baalam), используя string....
Помогите решить прогу оченя надо C++
17) Отримати квадратну матрицю порядку n . 1 2 3 ... n-1 n 2 1 2 ... n-2 n-1 3 2 1 ... n-3 n-2 . . . . . ....
C++ Device driver file not found http://www.cyberforum.ru/cpp-beginners/thread368029.html
Ребят всем привет!!! Подскажите пожалуйста пытаюсь запустить через Dev C++ код программы,пишет ошибку Device driver file not found(EGAVGA.BGI)'' Помогите разобраться
C++ Построить алгоритм исключения элемента из очереди 1.Построить алгоритм исключения элемента из очереди длинной m и занесения элемента в стек длиной n (значения m и n выбираются произвольно) подробнее

Показать сообщение отдельно
Revol'veR
23 / 23 / 2
Регистрация: 05.11.2010
Сообщений: 134
18.10.2011, 21:32
Квадратное уравнение:
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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
 
float Discr(float a, float b, float c)
{
        return (float)(b*b-4*a*c);
}
 
float Quadro(float a, float b, float D, int flag)
{
        if(flag==0) return (float)((-b+sqrt(D))/(2*a));
        if(flag==1) return (float)((-b-sqrt(D))/(2*a));
        return 0;
}
 
void main()
{
        float a,b,c,d,e,f,D,D2,x1,x2,y1,y2;
        int s=0,f1=0,f2=0; //f1,f2 - признаки вещественности корней
        do
        {
                printf("Vvedite a(ne ravnoe 0):");
                scanf("%f",&a);
                if(a==0) printf("\nError! Retry!\n");
        }
        while(a==0);
        printf("\nVvedite b:");
        scanf("%f",&b);
        printf("\nVvedite c:");
        scanf("%f",&c);
        do
        {
                printf("\nVvedite d(ne ravnoe 0):");
                scanf("%f",&d);
                if(d==0) printf("\nError! Retry!\n");
        }
        while(a==0);
        printf("\nVvedite e:");
        scanf("%f",&e);
        printf("\nVvedite f:");
        scanf("%f",&f);
        D=Discr(a,b,c);
        if(D<0)
        {
                printf("D pervogo uravneniya <0; Net reshenii!");
                exit(1);
                getch();
        }
        if(D==0)
        {
                x1=x2=Quadro(a,b,D,0);
                if((int)x1!=x1) f1=1; //если они вещественные, то ставим флажок, т.к. x1 и х2 равны, то проверять можно только один
        }
        if(D>0)
        {
                x1=Quadro(a,b,D,0);
                x2=Quadro(a,b,D,1);
                if(((int)x1!=x1)&&((int)x2!=x2)) f1=1; // тут проверять надо оба значения
        }
        D2=Discr(d,e,f);
        if(D2<0)
        {
                printf("D vtorogo uravneniya <0; Net reshenii!");
                getch();
                exit(1);
        }
        if(D2==0)
        {
                y1=y2=Quadro(d,e,D2,0);
                printf("\nNe podhodit po usloviyu"); // не подходит, потому что между ними должны лежать другие корни
                exit(1);
                getch();
        }
        if(D>0)
        {
                y1=Quadro(d,e,D2,0);
                y2=Quadro(d,e,D2,1);
                if(((int)y1!=y1)&&((int)y2!=y2)) f2=1; // анаолгично, но теперь ставим второй флажок
        }
        if(y1>y2)
        {
                float temp=y2;
                y2=y1;
                y1=temp; // теперь в у1 всегда меньший корень
        }
        printf("\nKorni pervogo uravneniya:\tx1=%f\tx2=%f\nKorni vtorogo uravneniya:\tx1=%f\tx2=%f\n",x1,x2,y1,y2);
        if((x1>y1)&&(x1<y2)&&(x2>y1)&&(x2<y2)&&(f1)&&(f2)) //все удовлетворяет условию
        s=1;
        else
        {
                printf("\nUsloviya ne vypolneny!");
                if((x1<y1)||(x1>y2)||(x2<y1)||(x2>y2)) printf("\nKorni pervogo uravneniya ne lezhat mezhdu kornyami vtorogo uravneniya");
                if((!f1)||(!f2)) printf("\nKorni ne veshsestvennye");
        }
        printf("\ns=%d",s);
        getch();
}
А далее доработайте) Просто путаюсь в алгоритмах, не знаю куда вставить масив
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.