Reklama
Strona 1 z 2 12 OstatniaOstatnia
Pokazuje wyniki od 1 do 15 z 21

Temat: C++ problem.

  1. #1
    Avatar Uker
    Data rejestracji
    2009
    Położenie
    City of weeping
    Wiek
    30
    Posty
    868
    Siła reputacji
    16

    Domyślny C++ problem.

    Siema
    Problem śmieszny się nastał.
    Jakis hełp?
    Kod :
    #include<iostream>
    using namespace std;
    
    float i,n;
    float s;
    
    float podaj (float n)
    	{
    		cout<<"Podaj liczbe"<<endl;
    		cout<<"N= ";
    		cin>>n;
    		cout<<"-------------------------------------------------------"<<endl;	
    	}
    	
    float liczy (float i, float n, float s)
    	{
    		for (i=1; i<=n; i++)
    			{
    				s=1;
    				s=s+i;
    				
    				return s;
    				
    			}	
    	}
    	
    float wynik (float s)
    	{
    		cout<<"Suma liczb wynosi "<<s;
    		
    		return 0;
    	}
    	
    int main ()
    {
    	int i,n;
    	float s;
    	
    	podaj(n);
    	liczy(i,n,s);
    	wynik(s);
    	
    	return 0;
    }
    Halo, dzień dobry, witam.
    Runy wyraźnie wskazują, że jesteś na torg.pl...
    ...No więc właśnie za każdym razem potwierdzacie moją trafność.

  2. #2
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    Jaki problem?

    Wywal return s; za pętle
    Koniecznie Ci tam typ float potrzebny, może zwykły int styka?
    Kod :
    float liczy (int n)
    	{
    		int i;
            float s = 0.0;
    for (i=1; i<=n; i++)
    			{
    
    				s=s+(float) i;
    
    
    
    			}
    				
    				return s;
    	}
    Ostatnio zmieniony przez LGTK : 16-12-2012, 15:18
    PIŻMAG

  3. #3
    Avatar Uker
    Data rejestracji
    2009
    Położenie
    City of weeping
    Wiek
    30
    Posty
    868
    Siła reputacji
    16

    Domyślny

    AA no rzeczywiście.
    Po kompilacji i wpisaniu np. N=22 wyświetla wynik 1.00377e-317 no i żeby to jeszcze się zmieniał ten wynik ale do każdej liczby wyświetla ten sam.

    @up
    No teraz już tylko 0 wypisuje xD

    Float nie koniecznie tylko jak teraz kopiowałem to akurat float miałem bo właśnie kombinowałem z tymi typami xD

    I po podczepieniu twojej funkcji wyświetla 1.4013e-045 ;/
    Ostatnio zmieniony przez Uker : 16-12-2012, 15:22
    Halo, dzień dobry, witam.
    Runy wyraźnie wskazują, że jesteś na torg.pl...
    ...No więc właśnie za każdym razem potwierdzacie moją trafność.

  4. Reklama
  5. #4
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    W sumie co on ma ci liczyć? :D Sumować liczby od 0 do N?
    Kod :
    #include<iostream>
    using namespace std;
    
    
    
    int podaj ()
    	{
    		int n;
    		cout<<"Podaj liczbe"<<endl;
    		cout<<"N= ";
    		cin>>n;
    		cout<<"-------------------------------------------------------"<<endl;
    		return n;
    	}
    
    int liczy (int n)
    	{
    		int i;
            int s = 0;
    for (i=1; i <= n; i++)
    			{
    
    				s = s + i;
    
    
    
    			}
    cout<<"Suma liczb wynosi "<<s;
    				return s;
    
    	}
    
    
    int main ()
    {
    
    liczy(podaj());
    
    
    
    
    	return 0;
    }
    Ostatnio zmieniony przez LGTK : 16-12-2012, 15:31
    PIŻMAG

  6. #5
    Avatar Uker
    Data rejestracji
    2009
    Położenie
    City of weeping
    Wiek
    30
    Posty
    868
    Siła reputacji
    16

    Domyślny

    Tak.
    Podaje liczbę N i wtedy on sumuje właśnie wszystkie liczby aż do n następnie staje i wyświetla wynik.

    I założę się że jakiś głupi błąd popełniłem coś gdzieś źle wpisałem albo coś w tym stylu.
    Ostatnio zmieniony przez Uker : 16-12-2012, 15:37
    Halo, dzień dobry, witam.
    Runy wyraźnie wskazują, że jesteś na torg.pl...
    ...No więc właśnie za każdym razem potwierdzacie moją trafność.

  7. #6
    Avatar Thrawn
    Data rejestracji
    2005
    Posty
    234
    Siła reputacji
    21

    Domyślny

    No i kod LGTK działa tylko sobie dopisz na końcu system("PAUSE");

  8. Reklama
  9. #7
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    No dość sporo błędów np brak returnów w funkcjach. Tylko przy funckji void nie musisz go podawać. W funkcji liczy co obrót pętli s zmieniałeś na 1 i dodawałeś i więc tutaj też miałeś błąd. Nie potrzebne były zmienne globalne bo zamiast ich trzeba było użyć return.
    PIŻMAG

  10. #8
    Avatar Uker
    Data rejestracji
    2009
    Położenie
    City of weeping
    Wiek
    30
    Posty
    868
    Siła reputacji
    16

    Domyślny

    Mhm.. będę pamiętał dzięki :)

    I działa wam ten programik z kodu LGTK?
    Jeśli tak to ja juz nie wiem.
    Wyskakuje ten długi wynik 1.4013e- costam cośtam ...
    Mam DevC++ 5.2.0.3
    Ostatnio zmieniony przez Uker : 16-12-2012, 15:52
    Halo, dzień dobry, witam.
    Runy wyraźnie wskazują, że jesteś na torg.pl...
    ...No więc właśnie za każdym razem potwierdzacie moją trafność.

  11. #9

    Data rejestracji
    2012
    Posty
    60
    Siła reputacji
    14

    Domyślny

    Kod :
    #include <iostream>
    #include <conio.h>
    
    int main()
    {
        int n;
        std::cin >> n;
    
        int s = 0;
        int x = 0;
        
        while(n>=x)
        {
                   s+=x;
                   x++;
        }
        
        std::cout << s << std::endl;
        getch();
    }
    Sprawdz, czy ten Ci działa. Jeśli nie to w takim wypadku, wina leży gdzieś po Twojej stronie.

  12. Reklama
  13. #10

    Data rejestracji
    2010
    Położenie
    Aͦͯ͐̾͐ͦ̋̽́̎̀͗̌͡͏̸&#7
    Posty
    2,138
    Siła reputacji
    17

    Domyślny

    żeby zmieniać wartość zmiennej w funkcji, która nie jest mainem (czyli w definiowanej przez ciebie), musisz jako jej argument użyć adresu zmiennej, a nie zwykłej zmiennej, tj. jak chcesz napisać funkcję, która zwiększy wartość liczby o 1 musisz napisać:
    void zwieksz(int & c){
    c++;
    }
    istotny element jest pogrubiony
    w twoim wypadku zmienna ma losową wartość która akurat siedzi na wolnym miejscu w ramie

  14. #11
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    U mnie działa ok więc nie wiem coś ty tam namotał.
    PIŻMAG

  15. #12

    Data rejestracji
    2010
    Położenie
    Aͦͯ͐̾͐ͦ̋̽́̎̀͗̌͡͏̸&#7
    Posty
    2,138
    Siła reputacji
    17

    Domyślny

    Cytuj LGTK napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    U mnie działa ok więc nie wiem coś ty tam namotał.
    #include <iostream>

    using namespace std;

    void dodaj(int c){
    c++;
    }

    int main(){
    int q = 5;
    cout<<q<<endl;
    dodaj(q);
    cout<<q<<endl;
    }
    #include <iostream>

    using namespace std;

    void dodaj(int &c){
    c++;
    }

    int main(){
    int q = 5;
    cout<<q<<endl;
    dodaj(q);
    cout<<q<<endl;
    }
    przekompiluj sobie oba na ideone.com i zobacz, co się dzieje w obu przypadkach
    chyba, że to nie było do mnie ;d

  16. Reklama
  17. #13
    Avatar LGTK
    Data rejestracji
    2009
    Położenie
    Podlaskie, Białystok
    Wiek
    33
    Posty
    267
    Siła reputacji
    16

    Domyślny

    To było do autora tematu :D
    ps. dla mnie korzystanie w ten sposób z funkcji void to głupota lekka a przynajmniej jest mniej czytelne.
    PIŻMAG

  18. #14
    Avatar Uker
    Data rejestracji
    2009
    Położenie
    City of weeping
    Wiek
    30
    Posty
    868
    Siła reputacji
    16

    Domyślny

    Uuu ja tu widze że to poważniejszy problem jest bo nawet kolegi dapitczer kodu nie chwyta tylko ten długi wynik.

    Coraz bardziej mi się wydaje że te kody są po prostu tam dobre, że aż dev ich nie dźwiga.
    Ostatnio zmieniony przez Uker : 16-12-2012, 20:53
    Halo, dzień dobry, witam.
    Runy wyraźnie wskazują, że jesteś na torg.pl...
    ...No więc właśnie za każdym razem potwierdzacie moją trafność.

  19. #15
    Avatar Tibiarz
    Data rejestracji
    2008
    Położenie
    Tibiantis
    Wiek
    5
    Posty
    17,114
    Siła reputacji
    29

    Domyślny

    Cytuj Uker napisał Pokaż post
    Cytat został ukryty, ponieważ ignorujesz tego użytkownika. Pokaż cytat.
    Uuu ja tu widze że to poważniejszy problem jest bo nawet kolegi dapitczer kodu nie chwyta tylko ten długi wynik.

    Coraz bardziej mi się wydaje że te kody są po prostu tam dobre, że aż dev ich nie dźwiga.
    Jego kod jest na 100% dobry i musi być dobry wynik. Więc jeśli wyskakuje ci coś innego, to dziwne.
    A w twoich kodach są błędy.

  20. Reklama
Reklama

Informacje o temacie

Użytkownicy przeglądający temat

Aktualnie 1 użytkowników przegląda ten temat. (0 użytkowników i 1 gości)

Podobne tematy

  1. Odpowiedzi: 7
    Ostatni post: 11-12-2013, 22:16
  2. Odpowiedzi: 14
    Ostatni post: 30-05-2013, 22:52
  3. Problem z uruchomieniem minecrafta, jakis problem z java...
    Przez ogóras w dziale Sprzęt i oprogramowanie
    Odpowiedzi: 10
    Ostatni post: 11-09-2012, 18:34
  4. [7.6][Problem Z Map Edytem] Problem z mapa
    Przez EvilMaster w dziale Mapping
    Odpowiedzi: 1
    Ostatni post: 20-11-2009, 15:16

Zakładki

Zakładki

Zasady postowania

  • Nie możesz pisać nowych tematów
  • Nie możesz pisać postów
  • Nie możesz używać załączników
  • Nie możesz edytować swoich postów
  •