Dodawanie liczb ze stringu char.

0

Witam. Czy jest możliwość dodania dwóch liczb które są w char? Wydzielam je np. sscanf i jak mogę je dodać?

0

Tak, tylko używając kolejnych cyfr po kolei.

0

Czyli? dodać to po prostu?

0

Dosłownie w ten sposób jak robisz to pisemnie

0

Okej, kolejne pytanko. Dziękuje za odpowiedzi. :*

Jak mam w tablicy tab[1] do tab[3] liczbe a druga od tab[4] do tab[5], jak mogę to dodać? Jest na to jakaś funkcja?

0

przede wszystkim litery zmień na liczby (ciężko dodawać litery).
char to typ liczbowy tylko mały. Dlatego w pętli zrób działanie string[i] -= '0'; wtedy jeżeli miałaś '1' to będzie równe '1' - '0' == 1
Jak robiłem w C kiedyś kalkulator to najpierw stworzyłem funkcję która wyrównywała mi dwa stringi do dłuższego z nich np:
Jeżeli wprowadziłem
2332
1234567
To wyrównywało mi
2332
1234567
Wtedy ostatnie liczby mają ten sam indeks w tablicy.
Na nich dokonuj obliczeń a potem rób resztę z dzielenia przez 10, jeżeli jest większe od 10 to liczbę ktora wyszła z wyniku dzielisz przez 10 i dodajesz do liczby o indeksie mniejszym o 1.
Zastanów się nad projektem, nie rób niczego na szybko. Pokolei analizuj co Ty byś robił/a na kartce i przenieś to na kod.

0

Tylko że ja mam to zrobić na charze. Mam już liczby, i tak jak mają być ale, nie wiem jak je dodać. Zastanawiam się nad tym, bo mam jedną liczbę tab[1] do tab[3], a drugą od tab[4] do tab[6]. W tej samej tablicy. Nie mogę stworzyć drugiej i podzielić tylko muszę to jakoś dodać. Mhm

0

W takim układzie masz trochę trudniej, musisz zapamiętać długości obu liczb, służy temu funkcja strlen(char*) (w nagłówku <string.h>, w kompilatorze C++ <string> lub <cstring>).
Dziwi mnie jednak fakt, że nie możesz sobie storzyć drugiej tablicy:
char first[100];
char second[100];

1 użytkowników online, w tym zalogowanych: 0, gości: 1