• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

zliczanie wywołań funkcji

HackNation - ogólnopolski hackathon
0 głosów
586 wizyt
pytanie zadane 17 listopada 2020 w C i C++ przez ifuknowme555 Początkujący (410 p.)
edycja 17 listopada 2020 przez ifuknowme555

mam mały problem w zadaniu w zliczaniu wywołań funkcji. chodzi o to aby licznik był jako zmienna globalna a nie lokalna. poniżej mam kodzik(1)

chciałbym sie upewnić jeszcze czy zliczanie obrotów pętli mogę zrobić tak (2)

int fibonacci_rec(int n) 
{
    if (n < 3)
        return 1;
    else
        return fibonacci_rec(n - 1) + fibonacci_rec(n - 2);
}
int fib_it(int n)
{
    int f1 = 1;
    int f2 = 1;
    int temp;
    if (n < 3)
        return 1;
    for (int i = 3; i <= n; i++)
    {
        temp = f1 + f2;
        f1 = f2;
        f2 = temp;
    }
    return f2;
}

void pr4a() //tutaj wywolanie funckji i potem zliczanie obrotow petli
{
    int n=6, licznik = 0;
    printf("%d\n", fib_it(n));
    if (n < 3)
        licznik = 0;
    else
    {
        for (int i = 3; i <= n; i++)
        {
            licznik++;
        }
        printf("%d",licznik);
    }
}
void pr4b() //nie wiem jak zrobic zliczanie wywolan
{
    int n=6, licznik = 0;
    printf("%d\n", fibonacci_rec(n));
    if (n < 3)
        licznik=1;
    else
        //tutaj nie wiem jak to zrobić
}

dziękuję za każdą pomoc.

1 odpowiedź

0 głosów
odpowiedź 17 listopada 2020 przez Wiciorny Ekspert (282,580 p.)

Aby zmienna była globalna ustaw ją jako pole klasy, a nie metody. Czyli nie wewnątrz metod.
http://www.algorytm.edu.pl/wstp-do-c/typy-zmiennych.html#zmienne%20lokalne%20i%20globalne

przykład dla counter - licznik 
 

include <iostream>

int counter = 0;

int f(){
    return counter++;
}

int main(){
    std::cout << f(); //output = 0
    std::cout << f()+f(); // output = 1; - postincrementation 
    return 0;
}

 

komentarz 17 listopada 2020 przez tkz Nałogowiec (42,040 p.)
komentarz 17 listopada 2020 przez Wiciorny Ekspert (282,580 p.)
ja nie mówie że to działa, to jest przykład jak wygląda zmienna globalna- a nie zadanie kolegi

Podobne pytania

0 głosów
1 odpowiedź 726 wizyt
pytanie zadane 28 września 2016 w C i C++ przez Arkadiusz Sieczak Początkujący (400 p.)
0 głosów
1 odpowiedź 604 wizyt
pytanie zadane 10 października 2021 w C i C++ przez yato_ Początkujący (350 p.)
0 głosów
3 odpowiedzi 2,049 wizyt
pytanie zadane 1 czerwca 2018 w C i C++ przez qlucha Obywatel (1,790 p.)

93,625 zapytań

142,548 odpowiedzi

323,034 komentarzy

63,129 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 1210p. - dia-Chann
  2. 1197p. - DziarnowskiJ
  3. 1177p. - Łukasz Piwowar
  4. 1172p. - CC PL
  5. 1161p. - Maurycy W
  6. 1141p. - Adrian Wieprzkowicz
  7. 1138p. - raydeal
  8. 1134p. - Tomasz Bielak
  9. 1116p. - rucin93
  10. 1101p. - robwarsz
  11. 1100p. - Mariusz Fornal
  12. 1024p. - ssynowiec
  13. 885p. - Dominik Łempicki (kapitan)
  14. 847p. - Grzegorz Aleksander Klementowski
  15. 838p. - Wojciech Malicki
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...