• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Program do liczenia funkcji kwadratowej i problem z warunkami

VPS Starter Arubacloud
0 głosów
814 wizyt
pytanie zadane 19 września 2018 w C i C++ przez misado Nowicjusz (160 p.)

Dopiero zacząłem z c++ także nie bijcie :/

Bez tego 3 warunku wszystko działa ok ale jak go dodam to nawet nie ważne jaka wyjdzie delta w konsoli na końcu pokazuje mi wynik ze wszystkich warunków. Próbowałem już zmieniać ostatni warunek na  samo else poprzedni też itp itd . Kombinuje już z godzine ale nie moge nic wykminić.

#include <iostream>
#include <math.h>

using namespace std;
int main()
{
    int a, b, c, delta, x0, x1, x2, deltapierwiastek;
    cout << "Podaj wartość przy x2 ";
    cin >> a;
    cout << "Podaj wartość przy x ";
    cin >> b;
    cout << "Podaj wartość wyrazu wolnego ";
    cin >> c;
    delta=(b*b)-(4*a*c);
    {
        if (delta<0)
             {cout << "Delta ujemna";}
               else if  (delta==0)
                 {x0=-b/2*a;
            cout << "Delta wynosi " << delta << endl << "x0= " << x0 << endl;}
              else if  (delta>0);
                {deltapierwiastek=sqrt(delta);
                x1=-b+deltapierwiastek/2*a;
                x2=-b-deltapierwiastek/2*a;
                cout << "Delta wynosi" << delta << endl << "x1= " << x1 << endl << "x2= " << x2;}


    }
    return 0;
}

 

4 odpowiedzi

0 głosów
odpowiedź 19 września 2018 przez Velta Maniak (51,890 p.)
W 21 linijce masz średnik, którego raczej nie powinno być.
0 głosów
odpowiedź 19 września 2018 przez RafalS VIP (122,820 p.)

Potrzebujesz liczb zmiennoprzecinkowych a nie całkowitych: 

    double a, b, c, delta, x0, x1, x2, deltapierwiastek;

i wszystko zacznie działać :P.

EDIT: Kolega zauważył średnik w 21 linijce, którego nie powinno być

0 głosów
odpowiedź 19 września 2018 przez misado Nowicjusz (160 p.)
Ehhh a ja sie tylko męczyłem....

Dzięki :)
0 głosów
odpowiedź 19 września 2018 przez niezalogowany
x1=(-b+deltapierwiastek)/2*a;
x2=(-b-deltapierwiastek)/2*a;

Kolejność operacji ma znaczenie. Teraz już powinno na pewno działać poprawnie :D

Podobne pytania

0 głosów
1 odpowiedź 465 wizyt
0 głosów
1 odpowiedź 505 wizyt
+1 głos
1 odpowiedź 1,464 wizyt
pytanie zadane 16 października 2017 w JavaScript przez excavelty Bywalec (2,480 p.)

92,455 zapytań

141,263 odpowiedzi

319,100 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...