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

sprawdzenie kodu równanie kwadratowe

0 głosów
776 wizyt
pytanie zadane 13 listopada 2017 w C i C++ przez artur96 Początkujący (250 p.)

Witam 

Napisałem program na zajęcia z programowania, który liczy pierwiastki równania kwadratowego ale za każdym razem podaje mi zły wynik (cały czas pokazuje że pierwiastek = 0)i nie wiem  o co chodzi próbowałem już to poprawić ale nie udało mi się (nie mogę znaleść tego błędu).Czy ktoś może mi pomóc w znalezieniu tego błędu ?.Pozdrawiam

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(void)
{
    int a=0,b=0,c=0,w=2,pd,x1=0,x2=0, x0=0 , delta;
    delta=pow(b,w)-4*a*c;
    pd=sqrt(delta);
    x1= -b-pd/2*a;
    x2=-b+pd/2*a;
    x0=-b/2*a;

    printf("Podaj wspolczynniki a,b,c rownania kwadratowego a*x*x+b*x+c: \n");

    printf("Wspolczynnik a: \n");
    scanf("%d", &a);

    printf("Wspolczynnik b: \n");
    scanf("%d", &b);

    printf("Wspolczynnik c: \n");
    scanf("%d", &c);

    if(delta>0)
    {
        printf("pierwiastek x1 = %d , pierwiastek x2 = %d \n", x1,x2);
    }
    else if(delta==0)
    {
        printf("Pierwiastek rownania x0 = %d",x0);
    }
    else
    {
        printf("Brak rozwiazania rownania w zbiorze liczb Rzeczywistych.");
    }
    return (0);
}

 

2 odpowiedzi

+1 głos
odpowiedź 14 listopada 2017 przez jeremus Maniak (59,720 p.)
wybrane 14 listopada 2017 przez artur96
 
Najlepsza
pewnie problem w tym, że wszystkie zmienne są typu integer
0 głosów
odpowiedź 13 listopada 2017 przez marcin99b Szeryf (85,790 p.)
Dlaczego przy miejscach zerowych nie użyjesz nawiasów?
Teraz masz złą kolejność wykonywania zadań
komentarz 13 listopada 2017 przez artur96 Początkujący (250 p.)

acha czylipowinno być  x1=(-b-pd) \ (a*a) dobrze rozumiem?

komentarz 13 listopada 2017 przez marcin99b Szeryf (85,790 p.)
x1=(-b-pd) \ (a*2)

sprawdź czy działa
komentarz 13 listopada 2017 przez artur96 Początkujący (250 p.)
Niestety tym razem wywala mi program(program nie działa)

ewidentnie coś jest nie tak przy pierwiastkach bo gdy dodaje nawiasy program nie działa a jak nie ma nawiasów program działa tylko cały czas wyświetla mi wartość pierwiastka 0 czycoś jeszcze może byćnie tak?
komentarz 14 listopada 2017 przez marcin99b Szeryf (85,790 p.)
Sprawdź breakepointami w którym miejscu program wykonuje złe obliczenie i przeanalizuj to miejsce

Podobne pytania

0 głosów
1 odpowiedź 923 wizyt
pytanie zadane 25 listopada 2017 w C i C++ przez artur96 Początkujący (250 p.)
0 głosów
3 odpowiedzi 547 wizyt
pytanie zadane 20 listopada 2017 w C i C++ przez kamil98u Nowicjusz (220 p.)
+2 głosów
1 odpowiedź 508 wizyt

93,630 zapytań

142,551 odpowiedzi

323,053 komentarzy

63,134 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 1936p. - dia-Chann
  2. 1916p. - DziarnowskiJ
  3. 1886p. - Łukasz Piwowar
  4. 1868p. - CC PL
  5. 1842p. - Maurycy W
  6. 1841p. - raydeal
  7. 1840p. - Adrian Wieprzkowicz
  8. 1782p. - rucin93
  9. 1777p. - robwarsz
  10. 1743p. - Michal Drewniak
  11. 1701p. - rafalszastok
  12. 1588p. - Tomasz Bielak
  13. 1491p. - Rafał Trójniak
  14. 1257p. - ssynowiec
  15. 1208p. - Mariusz Fornal
Szczegóły i pełne wyniki

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

Kursy INF.02 i INF.03
...