Hej wam.
Mam problem z napisaniem programu w języku C który liczy logarytm. Nie mam pojęcia co robie źle, że program nie chce się skompilować, najpierw błąd jest przy samym 'log' potem pojawia sie na wstepie przy print...
Bardzo proszę o napisanie go. Treść :
Program liczący parametr x x=ln(a*a-b*b)*[(c+d)^n]/[c-d] dla c różnego od d
wynik powinien zawierać oznaczenie 'parametr'.
Bardzo proszę o pomoc
Paulina
Policzyć logarytm w języku C
Otrzymałeś(aś) rozwiązanie do zamieszczonego zadania? - podziękuj autorowi rozwiązania! Kliknij
-
- Witam na forum
- Posty: 5
- Rejestracja: 25 cze 2013, 14:46
-
- Witam na forum
- Posty: 5
- Rejestracja: 25 cze 2013, 14:46
Re: Policzyć logarytm w języku C
No ja właśnie nie wiedziałam jak ten logarytm wpisać. z 'log' też próbowalam. Ale teraz widze, że chyba potęgę źle wpisywałam :
zamiast pow to pisałam np 2^4.
Teraz skompilowałam jak wkleiłam to co napisałeś i działa!
Dziękuje
zamiast pow to pisałam np 2^4.
Teraz skompilowałam jak wkleiłam to co napisałeś i działa!
Dziękuje
-
- Witam na forum
- Posty: 5
- Rejestracja: 25 cze 2013, 14:46
-
- Witam na forum
- Posty: 5
- Rejestracja: 25 cze 2013, 14:46
Re: Policzyć logarytm w języku C
#include <stdio.h>
#include <conio.h>
#include <math.h>
int main(void)
{
float x=0, a=0, b=0, c=0, d=0, n=0 ;
printf("Prosze podac parametry a, b, c, d i n, dla nastepujacego wzoru : \n") ;
printf("x = ln(a^2 - b^2) * (c+d)^n / (c-d), dla 'c' roznego od 'd' \n") ;
scanf("%f%f%f%f%f", &a, &b, &c, &d, &n) ;
if(c==d)
{
printf("\nPodales bledne parametry, c musi byc rozne od d \n") ;
}
else
{
x = log(a*a - b*b) * ( pow(c+d, n) / (c-d) ) ;
}
printf("\nWyliczony parametr wynosi x = %f", x) ;
getch() ;
return 0 ;
}
#include <conio.h>
#include <math.h>
int main(void)
{
float x=0, a=0, b=0, c=0, d=0, n=0 ;
printf("Prosze podac parametry a, b, c, d i n, dla nastepujacego wzoru : \n") ;
printf("x = ln(a^2 - b^2) * (c+d)^n / (c-d), dla 'c' roznego od 'd' \n") ;
scanf("%f%f%f%f%f", &a, &b, &c, &d, &n) ;
if(c==d)
{
printf("\nPodales bledne parametry, c musi byc rozne od d \n") ;
}
else
{
x = log(a*a - b*b) * ( pow(c+d, n) / (c-d) ) ;
}
printf("\nWyliczony parametr wynosi x = %f", x) ;
getch() ;
return 0 ;
}
-
- Witam na forum
- Posty: 5
- Rejestracja: 25 cze 2013, 14:46
-
- Dopiero zaczynam
- Posty: 19
- Rejestracja: 10 maja 2013, 15:38
- Otrzymane podziękowania: 3 razy
- Płeć:
Bo tak wygląda prawidłowo zdefiniowana funkcja.
Pierwszy człon - informuje komputer jakiego typu jest zmienna, którą funkcja zwraca.
Drugi - to nazwa funkcji.
Trzeci - w nawiasach, informuje jakiego typu argumenty pobiera funkcja. Void oznacza, że funkcja nie pobiera argumentów.
np. funkcja potęgowa:
double pow (double x, double y);
z tym że nawiasach możesz napisać bez x i y.
Nie wiem, u mnie działa bez problemów.
Jedynie kosmetycznie możesz pousuwać klamry przy if i else, bo one mają zasięg do pierwszego średnika, więc przy jedno komendowej instrukcji klamry są zbędne.
PS Na marginesie jaki mam znaczek przy płeć??
Pierwszy człon - informuje komputer jakiego typu jest zmienna, którą funkcja zwraca.
Drugi - to nazwa funkcji.
Trzeci - w nawiasach, informuje jakiego typu argumenty pobiera funkcja. Void oznacza, że funkcja nie pobiera argumentów.
np. funkcja potęgowa:
double pow (double x, double y);
z tym że nawiasach możesz napisać bez x i y.
Nie wiem, u mnie działa bez problemów.
Jedynie kosmetycznie możesz pousuwać klamry przy if i else, bo one mają zasięg do pierwszego średnika, więc przy jedno komendowej instrukcji klamry są zbędne.
PS Na marginesie jaki mam znaczek przy płeć??