logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak w C przekonwertować napis na zmienną i obliczyć funkcję?

bobek122 26 Lis 2006 21:25 1077 2
REKLAMA
  • #1 3266924
    bobek122
    Poziom 21  
    Posty: 624
    Pomógł: 4
    Ocena: 18
    Witam mam problem pisze program ktory po wpisaniu funkcji musi ja liczyc. Problem pojawił sie na poczatku gdyz z napisu musze zrobic zmienną. np.
    printf("podaj funkcje");
    scanf("%d" , &zmienna);

    zmienna jest napisem a jesli sie poda: 1/x to zeby zamiast to x wstawiało mi watrosc obliczonego x'a. czy to mozliwe?
  • REKLAMA
  • #2 3269201
    monsinior
    Poziom 17  
    Posty: 162
    Pomógł: 18
    Ocena: 7
    Jest sposób na to poprostu normalnie pobierz podaną funkcję do stringa.
    Później w programie przemiatając stringa wyciągasz z niego zmienne (np. x,y zmienne są zawsze literami ), operatory działań matematycznych (np. +,-,*,/ ,=) no i w końcu liczby stojące przy zmiennych (np 1,2,67).
    W tym momencie masz całą funkcję rozbitą na zmienne int i char.

    Oczywiście wszystko to nie jest takie proste bo musisz uwzględnić kolejność działań matematycznych nawiasy,mnożenie,dodawanie itp.

    Jeszcze jest jedno ważne pytanie funkcję będą ilu zmiennych i którego stopnia bo to trzeba wiedzieć przy pisaniu programu.
    Warto przeciążyć operatory +,*,-,/ .

    Zadanie jest trochę skomplikowane ale przy znanych i dobrych założeniach (ile zmiennych, którego stopnia funkcja itp.) nie jest trudne do zrobienia.

    Podaj więcej szczegółów to napewno uzyskasz pomoc :idea:
REKLAMA