Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
5 / 5 / 0
Регистрация: 17.04.2009
Сообщений: 69

Решение квадратного уравнения

03.05.2009, 00:41. Показов 2997. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, форумчане! Не могу разобраться, что у меня не так, если не сложно отзовитесь =)
Задача простая по сути: "Найти корни квадратного уравнения. Используя условный оператор if - else. В зависимости от значений коэффициентов получать то или иное решение. Программа должна вычислять как комплексные так и действительные числа."
В общем то сложность заключается в работе конца программы, где я уже использую дискриминант. Почему то не выводит ответ, при дискриминанте меньше нуля. Код прилагается.
Да, я в программировании новичок, тапками не кидаться =)
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
#include<stdio.h>
#include<conio.h>
#include<math.h>
 
void main ()
{
    int  j;
    float a, b, c, d, x, x3, x4;
    double x1, i, x2;
 
    printf ("Bac npuBeTcTBueT nporpaMMa peweHu9 kBadpaTHoro ypaBHeHu9!\n");
    printf ("BBeduTe 3Ha4eHue kooqpuLLueHToB a, b, c!\n");
    j=1;
    i=-sqrt(1);
 
    while (j==1)
    {
        printf ("a=");
        scanf ("%f", &a);
        printf ("b=");
        scanf ("%f", &b);
        printf ("c=");
        scanf ("%f", &c);
 
        if (a==0)
        {
            x=-c/b;
            printf ("PeweHue ypaBHeHu9: x=%f\n", x);
        }
        else if (b==0)
        {
            x1=-sqrt(c/a);
            x2=sqrt(c/a);
            printf ("PeweHue ypaBHeHu9: x1=%d, x2=%d\n", x1, x2);
        }
        else if (c==0)
        {
            x3=0;
            x4=-b/a;
            printf ("PeweHue ypaBHeHu9: x1=%d, x2=%d\n", x3, x4);
        }
        else if (a!=0 && b!=0 && c!=0)
        {
            d=b*b-4*a*c;
            if (d>0)
            {
                x1=(-b+sqrt(d))/2*a;
                x2=(-b-sqrt(d))/2*a;
                printf ("kopHu ypaBHeHu9: x1=%d, x2=%d\n", x1, x2);
            }
            else if (d=0)
            {
                x=-b/2*a;
                printf ("peweHue ypaBHeHu9: x=%f\n", x);
            }
            else if (d<0)
            {
                d=-d;
                x1=(-b+sqrt(d)*i)/2*a;
                x2=(-b-sqrt(d)*i)/2*a;
                printf ("kopHu ypaBHeHu9: x1=%d, x2=%d\n", x1, x2);
            }
        }
        printf ("XoTuTe pewuTb eLLLe ypaBHeHue? da - HajMuTe 1, HeT - HajMuTe JlIO6yIO dpyryIO\n");
        scanf ("%i", &j);
    }
    getch ();
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.05.2009, 00:41
Ответы с готовыми решениями:

Решение квадратного уравнения
как можно решить следующее уравнение: x=(a+b)*(a+b)*(a+b)-7.4*a*a*b+4*a+6 при любых значениях а и b, не хватает как говорится прямоты...

Решение квадратного уравнения
Нужно сделать программу для решения уровнения Оно имеет вид a*x^2+b*x+c&gt;0 ---------------------- #include &lt;vcl.h&gt; ...

Решение квадратного уравнения
Должен был получиться калькулятор квадратных уравнений. Дискриминант правильный, но при поиске иксов какая-то лажа. #include...

7
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
03.05.2009, 00:56
Цитата Сообщение от Ламер-программер:( Посмотреть сообщение
else if (d=0)
сравнение на равенство происходит двойным равно.. а то у тебя присваевание происходит, и естевтсвенно, не будет выполнятся условие d<0
C++
1
else if (d==0)
1
5 / 5 / 0
Регистрация: 17.04.2009
Сообщений: 69
03.05.2009, 01:45  [ТС]

стыдно то как, такое, да ещё и постить... Monte-Cristo, благодарю что зашли и посмотрели на столь глупую ошибку
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
03.05.2009, 01:48
Code
1
printf ("PeweHue ypaBHeHu9: x1=%d, x2=%d\n", x1, x2);
%d - спецификатор для целочисленного типа, а у тебя какого типа x'ы?
0
5 / 5 / 0
Регистрация: 17.04.2009
Сообщений: 69
03.05.2009, 01:52  [ТС]
Gravity, double тогда как?
0
 Аватар для Gravity
577 / 571 / 65
Регистрация: 29.01.2009
Сообщений: 1,274
03.05.2009, 01:57
Ламер-программер:(, %f для float и %lf для double.
1
5 / 5 / 0
Регистрация: 17.04.2009
Сообщений: 69
03.05.2009, 02:01  [ТС]
Gravity, спасибо большое!
Спасибо вам что не прошли мимо глупой темы
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
04.05.2009, 02:39
Цитата Сообщение от Gravity
%f для float и %lf для double.
не, у printf есть только L (для long double), %lf это для scanf (тоже попадался )

Добавлено через 15 часов 37 минут 50 секунд
Code
1
    i=-sqrt(1);
вот это вообще убрать, при выводе просто ставить i
а чтобы вычислить всё, что можно вычислить просто по-отдельности вычисли корень дискриминанта, потом раздели -b и полученный корень из дискриминанта по-отдельности на 2a, а потом в выводе собирай форму a+bi (a = -b/2*a, b = sqrt(d)/2*a)

потому что то, что ты записал, во-первых неправильно, а во-вторых, если и сделать правильно, она всё равно не вычислит, так как корень из -1 не вычисляется
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.05.2009, 02:39
Помогаю со студенческими работами здесь

Решение квадратного уравнения
Программа меняет корни Х1 и Х2 местами. вместо -1 2 выводит 2 -1 #include &lt;iostream&gt; #include &lt;cmath&gt; #include...

Решение квадратного уравнения
Написать программу решение квадратного уравнения. Программа должно проверять правельность исходных данных и в случае, если коэффициент при...

Решение квадратного уравнения
Почему не работает? #include &quot;pch.h&quot; #include &lt;iostream&gt; #include &quot;math.h&quot; using namespace std; int main(int argc,...

Решение квадратного уравнения
Ребят, нужен пример квадратного уравнения с условиями: 1.&quot;Некорректный ввод данных 2.Уравнение имеет бесконечное множество корней ...

Решение квадратного уравнения
Вообщем задание. Написать программу для решения квадратного уравнения, где инкапсулированный метод вычисления х1 и х2... Я вот написал...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru