Kezdőoldal » Számítástechnika » Programozás » Tudna segítani valaki egy C...

Gabesz890730 kérdése:

Tudna segítani valaki egy C programfeladatba?

Figyelt kérdés

Legyen adott az alábbi függvény: f(x)=4lnx+5x/harmadik gyök alatt(3,2-3x)a négyzeten.Írjon C programot, mely kiszámítja a függvény értékeit egy adott intervallumban egymástól egyenlő távolságokra levő x változókra! A program kérje be az intervallum kezdő és végpontját, valamint az osztásközök számát, és írja ki az osztópontokban (beleértve a kezdő és végpontot is) kiszámított függvényértékeket táblázatos formában. Azokban a pontokban, ahol f(x) nincs értelmezve, a program küldjön hibaüzenetet!

A feladathoz készítsen jegyzőkönyvet, mely tartalmazza a tantárgy nevét, a hallgató nevét és tankörét, a feladat számát, a feladatkiírás szövegét, a programban alkalmazott változók jegyzékét, a program forrásszövegét és teszteredményt a [0,1] intervallumra vonatkozóan, egytizedenként véve az osztópontokat!


2010. nov. 13. 17:42
 1/4 anonim válasza:
És hol akadtál el benne? Vagy más csinálja meg helyetted?
2010. nov. 13. 19:03
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
Hát tulajdonképpen az lenne nekem a legjobb ha vki megcsinálná helyettem mert fogalmam sincs hogy kell csinálni:S. Mondjuk ha laírná vki wordbe hogy nekem csak be keljen írnom a boorland c-be.Tudom hogy nagy kérés de nem szeretnék emiatt csúszni az egyetemen. Aki tud kérem segítsen.
2010. nov. 14. 11:17
 3/4 GipszI ***** válasza:

összes pont meghatározása (ennél többfajta megoldás is lehet):

- írsz listát (c-ben nem t'om van-e olyan, mint az STL c++-ban), amihez egy ciklussal hozzáadod a pontokat.

Nem tudom, hogy kell-e az intervallum kezdő és végpontja, ha igen, akkor:

int x = InterValBegin; //ez az intervallum alsó határa

while(x<=InterValEnd) //amíg nem futott túl az intervallum végpontján

{

x = x + SegmentSize; //x aktuális értékéhez hozzáadod az osztásköz nagyságát

if(x<=InterValEnd)

{

//hozzáadod a listához

FunctionPointList.Add(x); //ez itt asszem nem jó, de én már túlzottan objektumorientáltan gondolkodom, de erre írhatsz valami más fv-t.

}

}


- meghatározod, mennyi pont lehet, és egy annyi elemű tömböt hozol létre.


megnézed (ha adott a pontok száma, for ciklussal), hogy hol van értelmezve a fv. Mármint az f(x).

Ez ha jól sejtem, két dologtól függ:

- a 3.2 - 3*x mikor nulla (ugye ennek van a négyzete, és a négyzet a valós számoknál mindenképpen nemnegatív), mert akkor nem lehet értelmezni a törtet.

köbgyökvonás valahogy hasonlóan : [link] (tudom, ez csak négyzetgyök)

- a 4*ln(x)+5*x hol van értelmezve , vagyis, hogy az ln hol van értelmezve (kis segítség: [link]


én még a szépség kedvéért felvennék egy bool tömböt (az összes pontok elemszámával) és a megfelelő rossz pontoknál false-ra állítanám. Ezzel jobban látható, hogy hol nem tudod kiszámolni az értékeket.


Utána pedig ciklussal végigmész az összes ponton, és meghatározod a fv értékeit. Gondolom, a kiírással nem lesz probléma :)


Ha gond van, dobj egy privit.


Más: mi a határidő ? :P

2010. nov. 14. 12:20
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:

itt egy megoldás (teszteltem és működik devc++ -szal)


#include <stdio.h>

#include <math.h>

#include <windows.h>


main()

{

double fv, eleje, vege, leptek, i, a, b, c;

do{

printf("Add meg az intervallum elejet: "); scanf("%lf",&eleje);

}while(eleje<0);

do{

printf("Add meg az intervallum veget: "); scanf("%lf",&vege);

}while(vege<eleje);

do{

printf("Add meg a lepteket: "); scanf("%lf",&leptek);

}while(leptek>(vege-eleje)

);

for(i=eleje;i<=vege;i=i+leptek)

{

a=3.2-3*i;

c=a;

if (a<0) c=a*(-1);

c=pow(c,1.0/3);

if (i==0 || c<0.0001) printf("%2.2lf | fv. nincs ertelmezve vagy hibahataron beluli a fv erteke\n", i);

else

{

if (a<0) c=c*(-1);

b=4*log(i)+(5*i)/c;

printf("%2.2lf | %2.4lf\n", i, b);

}

}

system("pause");

return 0;

}

2010. nov. 24. 02:37
Hasznos számodra ez a válasz?

További kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!