Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
Autor | Správa |
---|
Registrovaný: 14.01.12 Prihlásený: 20.07.13 Príspevky: 46 Témy: 9 | 9 |
Zdravím, riesim logisticky prepoctovy programik a viaznem zrejme na banalite .. no skratka mam vytvorenu funkciu ktora po jej vlozeni pomocou pointrov vzajomne prehodi hodnoty dvoch premennych ..z troch. podla toho ktore urcim v hlavicke funkcie..ide o prieskum vsetkych kombinacii z troch prvkov. cize vlozim fciu a zadam prvy vzorec ..malo by nasledovat dalsich 7 inych vzorcov..nasledne zas vlozim tu istu funkciu, cize mam novu komb. a zas zvazok tych istych vzorcov..ale problem je ze aj ked kombinacna fcia je funkcna..zo vzorcov mi tlaci stale 0.Viete mi povedat preco ?Dakujem za kazdu radu...vkladam zjednoduseny kod len s podstatou.Dakujem
Kód: #include <stdio.h> #include <stdlib.h> #include <math.h> int Dmj1r, Smj1r, Vmj1r, Hmj1r, Qmj1r, Dpal, Spal, pk1v;
void kombi(float *a, float *b);
main() { float Dmj1r, Smj1r, Vmj1r, Hmj1r, Qmj1r, Dpal, Spal, pk1v; printf("zadaj DLZKU mj1r v <m>: \n"); scanf("%f",&Dmj1r); printf("zadaj SIRKU mj1r v <m>: \n"); scanf("%f",&Smj1r); printf("zadaj VYSKU mj1r v <m>: \n"); scanf("%f",&Vmj1r); printf("zadaj HMOTNOST mj1r v <kg>: \n"); scanf("%f",&Hmj1r); printf("zadaj POCET mj1r v <ks>: \n"); scanf("%f",&Qmj1r); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); system("pause"); }
/* FUNCTIONS */ void kombi(float *a, float *b){ float p; p=*a; *a=*b; *b=p; } // pridané po 50 minútach od posledného príspevkuvlastne potrebujem vysledky tych vzorcov ktore nasledne budem vyhodnocovat v dalsich castiach prog.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
To môžeš byť celkom rád, že ti tam chodia aspoň nuly.
Kód: pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r))
Premenné Dpal a Spal majú akú hodnotu?
A čo tam robia tie globálky s rovnakými menami? Dúfam, že to tam nie je naschvál...
|
|
Registrovaný: 14.01.12 Prihlásený: 20.07.13 Príspevky: 46 Témy: 9 | 9 |
spravne postrehy a pekne povedane (: ale to su len preklepy.. samozrejme ze Dpal a Spal idu tiez z klavesy a tie globalne bol omyl ale po odstraneni sa nic nezmenilo..moze byt problem ze to robim v devc++ ? ak som spravne postrehol podpora c by mala fungovat. no prenikam do tychto veci len pomaly .. vdaka
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Tak som to vyskúšal (A v DevCpp aby sa nepovedalo) a akonáhle inicializujem Dpal a Spal, všetko ide a nuly nevidím.
Skúšam to s hodnotami:
Dpal = 1000;
Spal = 500;
Vstup:
100
60
40
30
3
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 14.01.12 Prihlásený: 20.07.13 Príspevky: 46 Témy: 9 | 9 |
spravne, nasledovny zaver som totiz necakal..Pri normalej priamej inicializacii Dpal a Spal to slape. ale problem zrejme robia fcie pre Dpal a Spal ktore som najprv neuviedol kvoli adminmi odporucanej strucnosti. Ide o fcie osetrujuce presiahnutie rozmerovych limit. Cize bez nich to ide..po ich vlozeni prebieha inicializacia Dpal a Spal nepriamo cez fcie a tak mi to hadze nuly.(a po tychto fciach nasleduje este priama inicializacia dalsich premennych..to len mimochodom) tak vkladam este raz kod aj s tymi fciami...ak by si sa nato nahodou mohol este mrknut..alebo niekto ... fakt diks.
Kód: #include <stdio.h> #include <stdlib.h> #include <math.h>
float dlzkap(float Dpal, float Dmj1r); float sirkap(float Spal, float Smj1r); void kombi(float *a, float *b);
main() { float Dmj1r, Smj1r, Vmj1r, Hmj1r, Qmj1r, Dpal, Spal, Vpal, Hpal, Dlp, Slp, Vlp, Nlp, pk1v, H1v, pv, Vmj2r, Hmj2r, pkNaPal, PPP, PPMpo, PPMpr; printf("zadaj DLZKU mj1r v <m>: \n"); scanf("%f",&Dmj1r); printf("zadaj SIRKU mj1r v <m>: \n"); scanf("%f",&Smj1r); printf("zadaj VYSKU mj1r v <m>: \n"); scanf("%f",&Vmj1r); printf("zadaj HMOTNOST mj1r v <kg>: \n"); scanf("%f",&Hmj1r); printf("zadaj POCET mj1r v <ks>: \n"); scanf("%f",&Qmj1r); dlzkap(Dpal, Dmj1r); /* tieto dve fcie zrejme robia problem */ sirkap(Spal, Smj1r); printf("zadaj VYSKU pal. v <m>: \n"); scanf("%f",&Vpal); printf("zadaj VAHU pal. v <m>: \n"); scanf("%f",&Hpal); printf("\nzadaj DLZKU loznej plochy v <m>: \n"); scanf("%f",&Dlp); printf("zadaj SIRKU loznej plochy v <m>: \n"); scanf("%f",&Slp); printf("zadaj VYSKU loznej plochy v <m>: \n"); scanf("%f",&Vlp); printf("zadaj NOSNOST loznej plochy v <kg>: \n"); scanf("%f",&Nlp); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Dmj1r, &Smj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); kombi(&Smj1r, &Vmj1r); printf("\n %.3f %.3f %.3f \n", Dmj1r, Smj1r, Vmj1r); pk1v=(floor(Dpal/Dmj1r))*(floor(Spal/Smj1r)); printf("\n %.0f \n", pk1v); system("pause"); }
/* FUNCTIONS */
float dlzkap(float Dpal, float Dmj1r){ do{ printf("\nzadaj DLZKU pal. v <m>: \n"); scanf("%f",&Dpal); if(Dpal<Dmj1r) printf("\nDlzka mj1r je vacsia ako dlzka pal.\n"); } while(Dpal<Dmj1r); } float sirkap(float Spal, float Smj1r){ do{ printf("zadaj SIRKU pal. v <m>: \n"); scanf("%f",&Spal); if(Spal<Smj1r) printf("\nSirka mj1r je vacsia ako sirka pal.\n"); } while(Spal<Smj1r); } void kombi(float *a, float *b){ float p; p=*a; *a=*b; *b=p; }
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Nevidím, že by si ich nastavoval.
Vidím funkciu, ktorej predáš ako parameter neinicialozovanú premennú a práve načítanú premennú, niečo s nimi urobíš a toť vše. Ak chceš načítať premennú vo funkcii, predaj funkcii len ukazateľ na ňu tak, ako to robíš v kombi()
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 14.01.12 Prihlásený: 20.07.13 Príspevky: 46 Témy: 9 | 9 | |
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | 3 |
Niet za čo
|
|
Stránka: 1 z 1
| [ Príspevkov: 8 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Assembler, C, C++, Pascal, Java | 5 | 564 | 04.01.2012 19:17 walther | | v Assembler, C, C++, Pascal, Java | 3 | 554 | 26.01.2012 21:01 Fico | | v Redakčné systémy | 18 | 744 | 01.03.2013 11:46 GIGN1987 | | v JavaScript, VBScript, Ajax | 6 | 591 | 29.07.2009 20:04 Ďuri | | v Ostatné | 3 | 1502 | 02.03.2007 9:54 javo | | v ATI/AMD grafické karty | 6 | 337 | 05.08.2015 8:43 brmbo | | v PHP, ASP | 2 | 345 | 03.01.2010 14:20 pilná lama glama | | v Databázy | 3 | 691 | 07.11.2010 18:21 pogo | | v HTML, XHTML, XML, CSS | 1 | 553 | 04.08.2008 16:20 lio | | v HTML, XHTML, XML, CSS | 6 | 481 | 25.10.2010 18:02 don jebot | | v Chladiče a všetky druhy chladenia | 1 | 292 | 02.08.2014 17:28 brmbo | | v Ostatné | 4 | 492 | 06.07.2019 12:56 shiro | | v PHP, ASP | 1 | 533 | 18.07.2009 14:09 Snacker | | v JavaScript, VBScript, Ajax | 1 | 423 | 29.10.2009 19:25 GoodWill | | v PHP, ASP | 1 | 611 | 25.02.2007 16:25 m@-nX | | v ATI/AMD grafické karty | 0 | 261 | 13.07.2012 11:21 matt1024 |
|