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

Pierwszy i ostatni element liczby.

Object Storage Arubacloud
0 głosów
845 wizyt
pytanie zadane 19 marca 2021 w C i C++ przez xTMx3 Obywatel (1,560 p.)

Witam, 

przychodzę z pytaniem, na które zapewne jest banalna odpowiedź, ale, na którą sam wpaść niestety nie mogę. 

Mierząc się z pewnym zadaniem zatrzymałem się w momencie, gdzie muszę sprawdzić czy pierwsza cyfra z liczby, która zapisywana jest w zmiennej "dziesietna" jest taka sama jak ostatnia cyfra tej liczby. Jeśli warunek jest prawdziwy, to "ile" ma być zwiększane o jeden, ale to już nieistotne. 

Mój problem polega na tym, w jaki sposób mogę dostać się do tej pierwszej oraz ostatniej cyfry? 

Chodzi mi o coś takiego: 

int dziesietna=liczba;

if(/*pierwsza cyfra z liczby zapisanej w dziesietna */ == /* ostatnia cyfra z liczby zapisanej w dziesietna */)
{
ile++;
}

Mając tą liczbę jako string mógłbym to zapisać jakoś tak: 

int dziesietna=liczba;

if(dziesietna[0] == dziesietna[dziesietna.size()-1)
{
ile++;
}

Ale nie mogę zmienić "dziesietna" na string, bo wtedy nie będę mógł zapisać w niej wyniku działania funkcji, musi być int. Widziałem już na kilku stronach różne rozwiązania, ale wszystkie zawierały jakieś funkcje to_string itp, a ja jestem dopiero początkujący i chciałbym dowiedzieć się czy w inny sposób da się to jakoś zrobić? 

komentarz 19 marca 2021 przez tkz Nałogowiec (42,000 p.)
Dziesiątek, czy jedności? Używasz pierwszego słowa, a kod prezentuje drugi wyraz. Z liczby 123, chcesz wyciągnąć 2, czy 3?
komentarz 19 marca 2021 przez xTMx3 Obywatel (1,560 p.)
Chodzi o to:

Mając np. 123 potrzebuję 1 i 3,

mając  5681 potrzebne byłyby 5 i 1.

1 odpowiedź

+2 głosów
odpowiedź 19 marca 2021 przez SzkolnyAdmin Szeryf (86,400 p.)
wybrane 19 marca 2021 przez xTMx3
 
Najlepsza

Ostatnia cyfra w liczbie to nie problem:

int lastDigit = liczba%10;

Pierwszą cyfrę liczby uzyskasz przy pomocy funkcji:

int firstDigit(int n) {
    int x;
    do {
        x = n%10;
        n = n/10;
    }
    while(n>0);
    return x;
}

 

komentarz 19 marca 2021 przez xTMx3 Obywatel (1,560 p.)
Tak jak myślałem, rozwiązanie niezbyt trudne, tylko głowa odmawia współpracy.

Dzięki wielkie :)

Podobne pytania

0 głosów
1 odpowiedź 144 wizyt
+1 głos
2 odpowiedzi 153 wizyt
pytanie zadane 27 sierpnia 2021 w HTML i CSS przez ShockWave Bywalec (2,350 p.)
0 głosów
1 odpowiedź 152 wizyt
pytanie zadane 2 marca 2019 w JavaScript przez piotruchk Nowicjusz (170 p.)

92,615 zapytań

141,465 odpowiedzi

319,776 komentarzy

61,997 pasjonatów

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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...