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

Przeszktałć liczby od –999999 do 999999 na ich zapis słowny

Object Storage Arubacloud
0 głosów
996 wizyt
pytanie zadane 20 listopada 2017 w C i C++ przez Uczący się wiecznie Nowicjusz (120 p.)

Witam, oto treść mojego zadania: Zaimplementuj kod źródłowy, który przekształca liczby od –999999 do 999999 na ich zapis słowny (podpowiedź: mógłbyś skorzystać z przewagi, jaką daje fakt, że w typie całkowitym obcinane są miejsca dziesiętne; pamiętaj też, że Twój algorytm nie musi działać dla wszystkich wprowadzanych liczb, a tylko dla tych, które mają do sześciu cyfr). Poniżej przedstawiam kod:

#include <iostream>
using namespace std;

int main()
{

int jedynki;
int dwucyfrowe;
int setki;
int liczba;
cout <<"podaj liczbe"<< endl;
cin >> liczba;


   jedynki = liczba%10;
   dwucyfrowe = liczba - jedynki;

   ////////////////////GRUPA 10-90//////////////////////
       switch(dwucyfrowe)
       {

       case 10:
        {
            cout <<"DZIESIEC";
            break;

        }

       case 20:
        {
            cout <<"DWADZIESCIA";
            break;
        }
       case 30:
        {
            cout <<"TRZYDZIESCI";
            break;
        }

        case 40:
        {
            cout <<"CZTERDZIESCI";
            break;
        }

        case 50:
        {
            cout <<"PIECDZIESCIAT";
            break;
        }

        case 60:
        {
            cout <<"SZESCDZIESCIAT";
            break;
        }

         case 70:
        {
            cout <<"SIEDEMDZIESCIAT";
            break;
        }

         case 80:
        {
            cout <<"OSIEMDZIESCIAT";
            break;
        }

        case 90:
        {
            cout <<"DIEWIECDZIESCIAT";
            break;
        }

//////////////GRUPA 1-9////////////////////


       }
       switch(jedynki)
    {
       case 1:
        {
            cout <<"JEDEN";
            break;
        }

       case 2:
        {
            cout <<"DWA";
            break;
        }

        case 3:
        {
            cout <<"TRZY";
            break;        }

        case 4:
        {
            cout <<"CZTERY";
            break;
        }


        case 5:
        {
            cout <<"PIEC";
            break;
        }

        case 6:
        {
            cout <<"SZESC";
            break;
        }


        case 7:
        {
            cout <<"SIEDEM";
            break;
        }


        case 8:
        {
            cout <<"OSIEM";
            break;
        }


        case 9:
        {
            cout <<"DZIESIEC";
            break;
        }



    }

//////////////////////GRUPA100-900////////////////////////


        switch(setki)
    {
       case 100:
        {
            cout <<"STO";

            break;
        }

       case 200:
        {
            cout <<"DWIESCIE";
            break;
        }

        case 300:
        {
            cout <<"TRZYSTA";
            break;
        }

        case 400:
        {
            cout <<"CZTERYSTA";
            break;
        }


        case 500:
        {
            cout <<"PIECSET";
            break;
        }

        case 600:
        {
            cout <<"SZESCSET";
            break;
        }


        case 700:
        {
            cout <<"SIEDEMSET";
            break;
        }


        case 800:
        {
            cout <<"OSIEMSET";
            break;
        }


        case 900:
        {
            cout <<"DZIEWIECSET";
            break;

        }

    }



cin.ignore ();
cin.get ();
return 0;
}

Przepraszam z góry za wszelki bałagan, to mój pierwszy post na jakimkolwiek forum(wszelkie uwagi mile widziane);). Problem polega na tym ,ze już prawie tydzień siedzę nad tym i się głowie jak dołączyć "setki" do "liczba" zakres od 21 do 99 działa poprawnie. Zaznaczam, że tablice mam dopiero w następnym rozdziale i chce to zrobić bez ich użycia. Do dyspozycji mam petle, switche, funkcje, liczby pseudolosowe. Prosiłbym o jakąkolwiek wskazówkę w którą stronę mam iść, bo już z tylu stron starałem się to ugryźć, że już sam zgłupiałem. Pozdrawiam !

1
komentarz 20 listopada 2017 przez Benek Szeryf (91,010 p.)

(...) to mój pierwszy post na jakimkolwiek forum(wszelkie uwagi mile widziane (...)

Fajny nick, zwłaszcza jak będziesz się logował z komputera, gdzie nie będzie obsługiwany język polski :)

komentarz 20 listopada 2017 przez Uczący się wiecznie Nowicjusz (120 p.)
ok rozumiem;)

1 odpowiedź

+1 głos
odpowiedź 20 listopada 2017 przez ziemjok Gaduła (4,160 p.)

możesz zrobić tak:

 jedynki = liczba%10;
 dwucyfrowe = liczba%100 - jedynki;
setki = liczba%1000 - dwucyfrowe - jedynki

dasz np 976 to jedynki będą się równać 6, dwucyfrowe 76-6 czyli 70, a setki 976 - 70 - 6 czyli 900

 

EDIT: jeszcze zauważyłem że w case 9 masz błąd :)

i pisze się szescdziesiat a nie SZESCDZIESCIAT

komentarz 20 listopada 2017 przez Uczący się wiecznie Nowicjusz (120 p.)
oo to to coś w ten deseń kombinowałem, dzięki wielkie będę walczył dalej pozdrawiam :)
komentarz 20 listopada 2017 przez Uczący się wiecznie Nowicjusz (120 p.)
a bo to tak za przeproszeniem na "pałe" pisałem żeby było ;), ale dzięki !!

Podobne pytania

0 głosów
3 odpowiedzi 632 wizyt
pytanie zadane 26 listopada 2016 w HTML i CSS przez madis Użytkownik (540 p.)
0 głosów
4 odpowiedzi 1,361 wizyt
pytanie zadane 6 listopada 2018 w Python przez buchacz Nowicjusz (160 p.)
0 głosów
1 odpowiedź 355 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 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!

...