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

Własne funkcje- równania kwadratowe problem z działaniem

VPS Starter Arubacloud
0 głosów
745 wizyt
pytanie zadane 25 listopada 2017 w C i C++ przez artur96 Początkujący (250 p.)

Witam

Ostatnio na zajęciach otrzymałem zadanie o treści:

Napisz program, ktory oblicza pierwiastki rownania kwadratowego z wykorzystaniem funkcji wlasnych.

Zaczołem pisać program w następujący sposób:

stworzyłem funkcje void , w której chce zdeklarować delte pierwiastek z delty i pierwiastki(x,x1,x2) i zwrócić 

sobie je za pomocą wskaźników.Niestety gdy kontrolnie chciałem skompilować program zaczeły wyskakiwać mi błędy i program się nie kompiluje i niewiem co zrobiłem źle. code blocks wskazuje mi że jest coś nie tak z   deklaracją pierw z delty i  z x .Czy ktoś może mi pomóc znaleść problem?

pozdrawiam

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void Pierwiastki_Rownania_kwadratowego(int a, int b, int c, int *delta, float *pier, float *x, float *x1, float *x2)
{
    *delta=(b*b)-4*a*c;
    *pier=sqr(delta);
    *x=-b/2a;
}
int main(void)
{
    printf("Hello world!\n");
    return (0);
}

 

1 odpowiedź

+1 głos
odpowiedź 26 listopada 2017 przez Eryk Andrzejewski Mędrzec (164,260 p.)
edycja 26 listopada 2017 przez criss

Pierwsza sprawa:

*pier=sqr(delta);

Nie ma w bibliotece standardowej języka C takiej funkcji jak sqr, co najwyżej jest sqrt(). Ona przyjmuje jako parametr zmienną liczbową, nie wskaźnik. A więc poprawny kod dla tej linijki będzie taki:

*pier=sqrt(*delta); // zapomniałeś edytować kod na poprawwny :P (dereferencja `delta` i 't' w `sqrt` - Criss

Po drugie, błąd masz też tutaj:

*x=-b/2a;

W języku C nie możesz pominąć operatora * podczas mnożenia dwóch wartości. Popraw ten kod na taki (z uwzględnieniem kolejności działań):

*x=-b/(2*a);

 

komentarz 26 listopada 2017 przez artur96 Początkujący (250 p.)
dziękuję za pomoc

Podobne pytania

0 głosów
2 odpowiedzi 733 wizyt
pytanie zadane 3 lutego 2018 w C i C++ przez mn130496 Gaduła (3,530 p.)
0 głosów
1 odpowiedź 2,018 wizyt
+1 głos
1 odpowiedź 1,587 wizyt
pytanie zadane 20 listopada 2017 w C i C++ przez artur96 Początkujący (250 p.)

93,078 zapytań

142,041 odpowiedzi

321,445 komentarzy

62,422 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

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...