[ Príspevkov: 8 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

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íspevku

vlastne potrebujem vysledky tych vzorcov ktore nasledne budem vyhodnocovat v dalsich castiach prog.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

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...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.01.12
Prihlásený: 20.07.13
Príspevky: 46
Témy: 9 | 9
Napísal autor témyOffline : 23.01.2012 13:31 | zaciatocnicky problem - C (hodnoty a pointre)

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


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

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!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.01.12
Prihlásený: 20.07.13
Príspevky: 46
Témy: 9 | 9
Napísal autor témyOffline : 23.01.2012 16:42 | zaciatocnicky problem - C (hodnoty a pointre)

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;
         
                               }
                               





Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

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!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 14.01.12
Prihlásený: 20.07.13
Príspevky: 46
Témy: 9 | 9
Napísal autor témyOffline : 23.01.2012 21:22 | zaciatocnicky problem - C (hodnoty a pointre)

Dakujem.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.12.20
Príspevky: 1516
Témy: 3 | 3

Niet za čo :)


 [ Príspevkov: 8 ] 


zaciatocnicky problem - C (hodnoty a pointre)



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

vkladanie suborov v C - zaciatocnicky problem

v Assembler, C, C++, Pascal, Java

5

564

04.01.2012 19:17

walther

V tomto fóre nie sú ďalšie neprečítané témy.

Pointre v Cecku..

v Assembler, C, C++, Pascal, Java

3

554

26.01.2012 21:01

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

Jommla! začiatočnícky help

v Redakčné systémy

18

744

01.03.2013 11:46

GIGN1987

V tomto fóre nie sú ďalšie neprečítané témy.

problem pri zisteni hodnoty inputu (javascript)

v JavaScript, VBScript, Ajax

6

591

29.07.2009 20:04

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

hexadecimálne hodnoty

v Ostatné

3

1502

02.03.2007 9:54

javo

V tomto fóre nie sú ďalšie neprečítané témy.

stabilné hodnoty

v ATI/AMD grafické karty

6

337

05.08.2015 8:43

brmbo

V tomto fóre nie sú ďalšie neprečítané témy.

prebratie hodnoty FLOOR

v PHP, ASP

2

345

03.01.2010 14:20

pilná lama glama

V tomto fóre nie sú ďalšie neprečítané témy.

zistenie hodnoty autoincrement

v Databázy

3

691

07.11.2010 18:21

pogo

V tomto fóre nie sú ďalšie neprečítané témy.

margin, padding hodnoty

v HTML, XHTML, XML, CSS

1

553

04.08.2008 16:20

lio

V tomto fóre nie sú ďalšie neprečítané témy.

Defaultné hodnoty CSS

v HTML, XHTML, XML, CSS

6

481

25.10.2010 18:02

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

SpeedFan opačné hodnoty

v Chladiče a všetky druhy chladenia

1

292

02.08.2014 17:28

brmbo

V tomto fóre nie sú ďalšie neprečítané témy.

Rozdielne hodnoty input, output

v Ostatné

4

492

06.07.2019 12:56

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Vytiahnutie správnej hodnoty array

v PHP, ASP

1

533

18.07.2009 14:09

Snacker

V tomto fóre nie sú ďalšie neprečítané témy.

získanie pôvodnej hodnoty dokumentu

v JavaScript, VBScript, Ajax

1

423

29.10.2009 19:25

GoodWill

V tomto fóre nie sú ďalšie neprečítané témy.

overenie hodnoty v tabulke

v PHP, ASP

1

611

25.02.2007 16:25

m@-nX

V tomto fóre nie sú ďalšie neprečítané témy.

Zvýšenie max. hodnoty frekvencií

v ATI/AMD grafické karty

0

261

13.07.2012 11:21

matt1024



© 2005 - 2024 PCforum, edited by JanoF