Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Autor | Správa |
---|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
Zdravím všetkých.
Potreboval by som do zajtra večera napísať zdrojový kód na výpočet tohto vzťahu v Pascale. y=sinx/(x-3)
Máme to ako zadanie do školy a ako tak nad tým sedím, nevychádza mi kompilácia, takže niekde budem mať chybu ale pozor, musí tu byť aj podmienka X<>0, aby nevznikla v menovateli 0, lebo potom sa nedá deliť a takéto podmienky sme ešte v Pascale neprogramovali. V podstate ide o to, že ak x vyhovuje podmienke, nech program počíta tento vzťah a ak nie, tak nech sa vráti na pozíciu Znovuzadania x.
Ak by ste mohli, buďte taký dobrý pomôcť mi a napísať mi zdrojový kód na výpočet tohto. Veľmi pekne ďakujem ..
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
A keby si sem dal svoj kód, ktorý ti nejde? Nebudeme to predsa celé písať za teba
|
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
jasné, jasné, sorry ... a ako vravím, takúto podmienku sme ešte nekódovali, že ak nevyhovuje, tak aby sa vrátila do určitého bodu, takže to goto som skúšal len tak z vlastnej hlavy, ale pravdapodobne to určite nieje dobre ani to. a niečo som vygooglil, že fcia sin predpokladá vstup v radiánoch, len potom neviem ako, keď x pre sin má byť v radiánoch a v menovateli má vystupovať ako číslo..
jasom bol v tom, že keď zadám x napr. 20, tak mi to vypočíta normálne sin 20 = 0,342, som v tom nový, tak žiadam len o pomoc, aby som nemal 0 bodov hneď za prvé zadanie z programovania na výške
Kód: Program ZADANIE;
var: x:real; y:real; sin:real;
begin writeln ('Zadaj x rôzne od 0'); readln (x); if (x<>0) then y:=sin (x)/(x-3) else goto writeln ('Zadaj x rôzne od 0')
writeln (' Výsledok vzťahu y=sin ',x:5:2,' / (',x:5:2,' -3) sa rovná ',y:5:2); readln end.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Len tak pomimo, prosím ťa, na akej výške?
A k veci: Ak predpokladá vstup v radiánoch, tak jej to pošli v radiánoch - Vygoogli si prevod stupňov na radiány.
A k tomu načítavaniu, cykly ste už brali? Lebo už len to, že poznáš goto je úplne zlé
Daj tam cyklus typu:
Kód: dokym sa x nerovna nule rob begin readln(x); end;
|
|
Registrovaný: 27.12.08 Prihlásený: 13.12.22 Príspevky: 1874 Témy: 96 | 96 Bydlisko: Bratislava,... |
pascalova funkcia sin akceptuje stupne v RADIANOCH, teda stupne musis delit 180 a nasobit pi.. goto nepoužívam... si si istý, že po nesplnení podmienky sa musíš vrátiť znovu na začiatok? vo väčšine úloh pri nesplnení úlohy stačí vypísať nesprávny vstup a ukončiť program.. no byť tebou tak to riešim tak, že tam dám jednoduchý cyklus:
Kód: x = 0; while (x = 0) do begin writeln('Zadaj x rôzne od 0'); readln(x); end; y:=sin((x*pi/180))/(x-3);
_________________ ~Listen to your brain, not your heart~ NB1: Lenovo Y500: CPU: Intel Core i7-3630QM; GPU: nVidia GT650M 2GB SLi; RAM: 16GB DDR3; HDD: 1TB + 256GB SSD (m4); LCD: 15,6" 1920x1080; OS: Win8.1 64-bit + Arch Linux 64-bit (UEFI Powered DualBoot) NB2: Asus K53SJ-SX093: CPU: Intel Core i3-2310M; GPU: Intel HD3000 / nVidia GT520M 1GB Optimus; RAM: 8GB DDR3; SSD: 128GB 840Evo; LCD: 15,6" 1366x768; OS: Win 8.1 Pro 64-bit (UEFI) |
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
Flupak: som na TU v Košiciach na Fakulte BERG a študujem Priemyselnú logistiku. S Algortimizáciou a programovaním som sa teraz stretol prvýkrát v živote a máme ho len teraz jeden semester v zime a berieme všetko len tak z rýchlika a len základy, preto sa pýtam pre Vás určite banality ale ešte do toho nejak nevidím.
Sfotil som preto radšej celý zdrojový kód, ktorý som sa pokúsil prepísať podľa Vašej rady, no Pascal ešte stále hlási chybu, tak sa môžme pozrieť čo to je za chybu.
Po odenterovaní mi kurzor ukáže na chybu niekde pri sínuse.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Chýba ti uzavieracia zátvorka funkcie sin
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 08.08.09 Príspevky: 12449 Témy: 39 | 39 |
mas za poslednym writeln bodkociarku?
_________________ always is always wrong |
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Ne nechýba, moju odpoveď ignoruj
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
za posledným writeln bodkočiarka je..
Flupak: mám tam všade zátvorky ako tak pozerám, nie? je tam pre vnútorný výraz (x*pi/180) potom to je ešte celé v zátvorke pre sin ((x*pi/180)) a potom tam je zátvorka aj pre výraz v menovateli (x-3)
EDIT: OK, flupak
taže nejaké nápady? :/
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
jooo, vidím bokočiarku za begin, prečo?
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
opravené, ale nie je to to
kurzor mi stále nastavuje na ten sin, že Syntax error ... ";" expected but "(" found ... ale nechápem kam tam môže ísť ; keď tam má byť zátvorka pre ten výraz :/
|
|
Registrovaný: 08.08.09 Príspevky: 12449 Témy: 39 | 39 |
ak ma pamat neklame, ludolfovo cislo nemusis definovat - napises len PI a malo by to vziat = bude to presnejsie kedze 22/7 != 3,14
inak preco mas tie zatvorky dve na jeden vyraz?
skusil by som to takto:
Kód: y=sin((x*PI)/180)/(x-3);
_________________ always is always wrong |
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
skúsil som to podľa teba a skúšam všeličo, mazať tam zátvorky a prepisovať ten výraz, ale stále tú istú chybu mi vypisuje SYNTAX ERROR s ; a ) ...
nechápem čo mu nesedí..
|
|
Registrovaný: 08.08.09 Príspevky: 12449 Témy: 39 | 39 |
hehehe co to tam vidim? Kód: var sin:real; ?
to ma byt naco dobre?
_________________ always is always wrong |
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
ach, som myslel, že aj sin treba zadefinovať, a pritom jasné, je to operácia/funkcia .... ani mne sa to nezdalo, ale som asi vygooglil zlú stránku a som sa nechal zmiasť
ale už to fungujeeeee ďakujem Vám pekne chlapci, že sme to spoločnými silami zvládli. Vzdávam vám rešpekt
Díky moc ešte raz
|
|
Registrovaný: 14.03.11 Prihlásený: 04.07.24 Príspevky: 815 Témy: 23 | 23 Bydlisko: Bratislava |
Dejvid píše: Zdravím všetkých.
Potreboval by som do zajtra večera napísať zdrojový kód na výpočet tohto vzťahu v Pascale. y=sinx/(x-3)
Máme to ako zadanie do školy a ako tak nad tým sedím, nevychádza mi kompilácia, takže niekde budem mať chybu ale pozor, musí tu byť aj podmienka X<>0, aby nevznikla v menovateli 0, lebo potom sa nedá deliť a takéto podmienky sme ešte v Pascale neprogramovali.
Teda, mládež, ja vám vôbec nerozumiem. Za mojich mladých čias asi bola iná matematika.
Kde si nabral podmienku x<> 0 keď ja vidím v menovateli (x-3)???
Menovateľ nemôže byť nula
x-3 <> 0
x <> ???
|
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
sorry, asi som sa zle vyjadril .. jasné, že podmienka má byť x<>3, len som asi predbehol situáciu a zle som sa vyjadril .. ja už som mal v mysli za x dosadené 3 a tak to som myslel, že už dosadené sa nesmie rovnať 0..
|
|
Registrovaný: 23.05.07 Prihlásený: 13.12.10 Príspevky: 12 Témy: 3 | 3 Bydlisko: Stará Lubovna |
zdravim ..mohol by si poslat ten tvoj funkcny program ? bol som ti velmi vdacny
|
|
Registrovaný: 07.11.11 Prihlásený: 19.11.11 Príspevky: 15 Témy: 2 | 2 |
Mne tam ešte trochu štrajkovalo to opakovanie po upravení podmienky, že y<>3, preto som to trochu zjednodušil, ale výsledný efekt je ten istý, len po zadaní x=3 nenasleduje opakovanie, ale len vypísanie chybovej hlášky a ukončenie programu.
Ale inak, nech sa páči :
Kód: program ZADANIE;
var x : real; y : real;
begin writeln (‘ Zadaj x rôzne od 3 ’); readln (x);
if (x<>3) then begin y:=sin (x)/(x-3); writeln( Výsledok vzťahu y=sin (,x:5:2,)/(,x:5:2,-3) je ,y:5:2); end else begin writeln(‘ Zle zadané x. x musí byť rôzne od 3.’); end; readln; end.
|
|
Registrovaný: 13.11.07 Prihlásený: 20.08.16 Príspevky: 1702 Témy: 0 | 0 |
Keďže si tam žiadne opakovanie nedal, tak je logické, že sa to neopakuje.
|
|
Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
|