Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

[c] od 1 do n bez uzycia tablic

tomczasowy 07 Lis 2010 10:37 522 4
  • #1 07 Lis 2010 10:37
    tomczasowy
    Poziom 7  

    Zaczyna msie ponownie bawic w c. Napisalem sobie wczoraj program zliczajacy sume czynnikow tablicy 20 elementowej {1, 2..20}. Teraz chce uzyskac efekt taki, ze zliczy mi sume elementow od 1 do n. Tj:
    1+2+3+4+...+n, ale bez uzycia tablic. Napisale mcos takiego ale nie wskakuje mi do petli if nawet, nie wyswietla sie ten komunikat po ifie:

    Code:
    #include<stdio.h>
    
    main () {
            int i=1;
            int n;
            int z;
            int x;
                    printf("\nPodaj teraz liczbe,wieksza od 2, ktorej czynniki chcesz zsumowac :");
                    scanf("%d", &n);
                    printf("\nTa liczba to = %d\n", n);
                            if(n>2) {
                            printf("\nPodales liczbe wieksza od 2, suma jej czynnikow to = ");
                                    while(i=1) {
                                    z=z;
                                    i=i+1;
                                    }
                                    while(i<n) {
                                            x=z+1;
                                            z=z+x;
                                            i=i+1; /* to wywoluje petle 20 razy */

                                    }
                                    while(i=n) {
                                            printf(" Suma jej czynnikow to = %d ", z); /* do zmiany */
                                    }
                            }
                            else {
                            printf("\nPodales liczbe mniejsza od 2, a to zle.. ");
                            }



    }

    0 4
  • #2 07 Lis 2010 10:41
    Terminator
    Poziom 23  

    Code:
    while(i=1)
    
    while(i=n)

    Zainteresuj się tym, robisz po prostu przypisanie ... a nie warunek
    Code:
    while ( warunek ) .... while(i==1)

    0
  • Pomocny post
    #4 07 Lis 2010 10:51
    Terminator
    Poziom 23  

    Code:
    #include<stdio.h>
    

    int main ()
    {
        int suma=0;
        int n;
        printf("\nPodaj teraz liczbe,wieksza od 2, ktorej czynniki chcesz zsumowac :");
        scanf("%d", &n);
        printf("\nTa liczba to = %d\n", n);
        if(n>2)
       {
          printf("\nPodales liczbe wieksza od 2, suma jej czynnikow to = ");
          for(int i=1; i<=n; i++)
             suma+=i;
          printf("%d",suma);

        }
        else
          printf("\nPodales liczbe mniejsza od 2, a to zle.. ");

       return 0;
    }

    0
  • #5 07 Lis 2010 11:13
    tomczasowy
    Poziom 7  

    Thx a lot, teraz i rozumiem swoja glupote i rozumiem zapis wyzej. THX :)

    0