Długa liczbą, jak podzielić...

0

Mam długą liczbę składającą się z kilku tysięcy cyfr (opcjonalnie może to być ciąg znaków) i pytanie jak tą liczbę/ciąg znaków podzielić na pojedyńcze cyfry/znaki i wrzucić je do tablicy. Dodam że znam długość (z ilu znaków się składa) i jest pobierana ze standardowego wejścia.

I drugie jak zcalić kilka cyfr w jedna liczbę czyli mam cyfry 1, 2, 3 i chcę je scalić w jedną liczbę 123. Od biedy można by coś takiego zrobić:

int a=1,b=2,c=3,d;
d=((100*a)+(10*b)+c);

ale przy większej ilości może to być kłopotliwe.

0

Mozesz to zrobic tak:

  1. Wczytujesz ta liczbe jako ciag znakow (do tablicy)
  2. Umieszczasz to w pliku(bedzie on pelnil role bufora)
  3. Odczytujesz po jednyzm znaku z liku i konwertujesz ten znaczek na typ integer ( funkcja atoi())

Mozesz to tez robic w droga strone tylko zamiast atoi() uzywasz itoa() i wtedy zapiszujesz.

0
  1. Fajnie, ale jeśli już masz ta liczbę w tablicy (nie wazne, czy to char[]/char*, czy string, klasa, ale mozna sie dobrac do kazdego znaczka), to potem chcesz ją skonwertować do innej tablicy po to tylko, zeby sie dobrać do każdej z cyfr ? Masz tam cyfry, wystarczy odjąć od każdego znaku '0' (48) zeby z ascii przejsc do wartości.

  2. analogicznie.. wpisz każda cyferkę+48 do tablicy charów.

0

Podajcie może jakiś kod jak wczytać długą liczbę do tablicy tak by każda cyfra znajdowała się pod innym indeksem bo ja chyba cós mieszam:

int a[10];
scanf("%d", a);

na wejście wchodzi "1234567890" a dostaję takie coś:
a[9]=0
a[8]=0
a[7]=0
a[6]=0
a[5]=0
a[4]=0
a[3]=73
a[2]=-106
a[1]=2
a[0]=-46

0

%d wczytuje liczby typu integer... takie które obsługuje komputer...a 10 cyfrowych integerów standardowo nie obsługuje, tym bardziej o długości kilku tysięcy znaków

wczytaj tą liczbę do tablicy charów jak stringa, a potem wystarczy że od każdego chara odejmiesz 49 i bedziesz miał swoją liczbę w tablicy

0

sorki to oczywiście nie miało być 49 ;-)

0

wczytaj tą liczbę do tablicy charów jak stringa
czyli jak, sorki ale już jestem tak zamieszany i jeszcze teraz komp mi jakieś chochliki wali

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