Poslao: 22 Jan 2007 23:19
|
offline
- Pridružio: 21 Nov 2005
- Poruke: 277
|
kod koji je ispod pisan je u vs6
izracunava mi sve sto se trazi od njega
ali(uvek srecu kvari)kada ubaci da mi ispise poruku za ako je a=0,b=0,c=0 i sl.(sa a,b,c)
napise mi i rezultate za x1 i x2(koji su neki kao -1#z..)
kako to da resim da mi ispise samo poruku bez da racuna x1 i x2
#include <stdio.h>
#include<math.h>
float x1();
float x2();
float a,b,c,d,x;
void main(void)
{
printf("unesi vrednost a=");
scanf("%f",&a);
printf("unesi vrednost b=");
scanf("%f",&b);
printf("unesi vrednost c=");
scanf("%f",&c);
d=(b*b)-(4*a*c);
if (d<0)
printf("jednacina je kompleksna\n");
else if (d>0)
printf("x1=%.2f\n x2=%.2f\n",x1(),x2());
if (d==0)
{
x=(-b)/(2*a);
printf("jednacina ima jedno resenje x=%.2f\n",x);
}
}
float x1()
{
return (-b+(sqrtf(d)))/(2*a);
}
float x2()
{
return (-b-(sqrtf(d)))/(2*a);
}
|
|
|
Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
|
|
|
Poslao: 22 Jan 2007 23:53
|
offline
- Pridružio: 21 Nov 2005
- Poruke: 277
|
ne fali nista u tom delu koda ali
hocu da kada mu dodam :if (a==0)
printf("jednacina ima xxx resenje");
da tu zavrsi svoje racunanje i da mi u slucaju da je a=0 ispise samo zeljenu poruku i nista vise
hocu da radi kao u slucajevima sa d=0 i d<0
probaj ako ti nije tesko
|
|
|
|
Poslao: 23 Jan 2007 00:01
|
offline
- bobby
- Administrator
- Pridružio: 04 Sep 2003
- Poruke: 24135
- Gde živiš: Wien
|
Iz glave, posto nemam VS instaliran:
#include <stdio.h>
#include<math.h>
float x1();
float x2();
float a,b,c,d,x;
void main(void)
{
printf("unesi vrednost a=");
scanf("%f",&a);
printf("unesi vrednost b=");
scanf("%f",&b);
printf("unesi vrednost c=");
scanf("%f",&c);
d=(b*b)-(4*a*c);
if (a==0)
printf("poruka o gresci\n");
else
{
if (d<0)
printf("jednacina je kompleksna\n");
else
if (d>0)
printf("x1=%.2f\n x2=%.2f\n",x1(),x2());
else
if (d==0)
{
x=(-b)/(2*a);
printf("jednacina ima jedno resenje x=%.2f\n",x);
}
}
}
float x1()
{
return (-b+(sqrtf(d)))/(2*a);
}
float x2()
{
return (-b-(sqrtf(d)))/(2*a);
}
Obrati paznju na jos jedno 'else' ispred 'if (d==0)'
|
|
|
|
Poslao: 23 Jan 2007 00:09
|
offline
- Pridružio: 21 Nov 2005
- Poruke: 277
|
if (a==0)
printf("poruka o gresci\n");
else
ovo else nisam koristio
a za ovo donje mi je pravio problem kao i sa ubacivanjem a=0
tj.piso mi je sve moguce odgovore umesto samo jednog
valjda me razumes
probacu ujutru sad sam na poslu
pa javljam
ali cenim da ce da sljaka (mada sa c nikad nisi nacisto)
hvala puno
|
|
|
|
Poslao: 23 Jan 2007 00:16
|
offline
- bobby
- Administrator
- Pridružio: 04 Sep 2003
- Poruke: 24135
- Gde živiš: Wien
|
Hmm.. lose ugnjezdeno grananje.
Probaj
#include <stdio.h>
#include<math.h>
float x1();
float x2();
float a,b,c,d,x;
void main(void)
{
printf("unesi vrednost a=");
scanf("%f",&a);
printf("unesi vrednost b=");
scanf("%f",&b);
printf("unesi vrednost c=");
scanf("%f",&c);
d=(b*b)-(4*a*c);
if (a==0)
printf("poruka o gresci\n");
else
{
if (d<0)
printf("jednacina je kompleksna\n");
else
{
if (d>0)
printf("x1=%.2f\n x2=%.2f\n",x1(),x2());
else
{
x=(-b)/(2*a);
printf("jednacina ima jedno resenje x=%.2f\n",x);
}
}
}
}
float x1()
{
return (-b+(sqrtf(d)))/(2*a);
}
float x2()
{
return (-b-(sqrtf(d)))/(2*a);
}
Ne treba ti vise da ispitujes d==0 posto je to jedina preostala mogucnost.
|
|
|
|
Poslao: 24 Jan 2007 21:07
|
offline
- Pridružio: 21 Nov 2005
- Poruke: 277
|
evo konacne i radi sve kako treba
mozda nekom zatreba
#include <stdio.h>
#include<math.h>
float x1();
float x2();
float a,b,c,d,x,r,p;
void main(void)
{
printf("Unesi vrednost a=");
scanf("%f",&a);
printf("Unesi vrednost b=");
scanf("%f",&b);
printf("Unesi vrednost c=");
scanf("%f",&c);
d=(b*b)-(4*a*c);
if (a!=0 && b!=0 && c==0)
{
x=-b/a;
printf("Jednacina ima jedinstveno resenje
x=%.2f\n",x);
}
else if(a==0 && b!=0 && c==0)
printf("Jednacina ima trivijalno resenje\n");
else if (a!=0 && b==0 && c==0)
printf("Jednacina ima trivijalno resenje\n");
else if(a==0 && b==0 && c!=0)
printf("Jednacina nema resenje\n");
else if (a==0 && b==0 && c==0)
printf("Jednacina je neodredjena\n");
else
{
if (a==0)
{
x=-c/b;
printf("Jednacina je linearna i ima jedno resenje
x=%.2f\n",x);
}
else
{
if (d<0)
{
printf("Jednacina ima konjugovano kompleksna
resenja.\n");
r=-b/(2*a);
p=(sqrtf(-d))/(2*a);
printf("x1=%.2f+%.2fi\n",r,p);
printf("x2=%.2f-%.2fi\n",r,p);
}
else
{
if (d>0)
printf("x1=%.2f\n x2=%.2f\n",x1(),x2());
else
{
x=(-b)/(2*a);
printf("Jednacina ima jedno resenje koje
predstavlja dvostruku nulu jednacine x=%.2f\n",x);
}
}
}
}
}
float x1()
{
return (-b+(sqrtf(d)))/(2*a);
}
float x2()
{
return (-b-(sqrtf(d)))/(2*a);
}
[mod by bobby] ubacio program pod CODE tagove
|
|
|
|