6.4. Izdvajanje cifara dvocifrenog, trocifrenog, ... broja

6.4.1. Izdvojiti cifre dvocifrenog broja. Ispisati prvi cifru desetica pa cifru jedinica.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema. Dvocifren broj
broj = x*101 + y*100
Ostatak dijeljenja dvocifrenog broja sa 10 broj MOD 10 dobijamo jedinice broja (u ovom slučaju dvocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dvocifrenog broja se dobija cifra desetica. Vidi primjere >>. Ispisati prvi cifru desetica pa cifru jedinica.

Opis programa:

Listing programa:

PROGRAM P06411101;
USES 
  WinCRT;
VAR
  x, y, broj: INTEGER;
BEGIN
  WRITE('Dvocifren broj ');
  READLN(broj);
  y := broj MOD 10; {cifra jedinica}
  x := broj DIV 10; {cifra desetica}
  WRITELN('broj=', broj, ' cifra desetica=', x, ' cifra jedinica=', y);
END.

6.4.2. Izdvojiti cifre dvocifrenog broja i ispisati unazad.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema. Dvocifren broj
broj = x*101 + y*100
Ostatak dijeljenja dvocifrenog broja sa 10 broj MOD 10 dobijamo jedinice broja (u ovom slučaju dvocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dvocifrenog broja se dobija cifra desetica. Vidi primjere >>. Ispisati prvi cifru desetica pa cifru jedinica.

Opis programa:

Listing programa:

PROGRAM P06411102;
USES 
  WinCRT;
VAR
  x, y, broj: INTEGER;
BEGIN
  WRITE('Dvocifren broj ');
  READLN(broj);
  y := broj MOD 10; {cifra jedinica}
  x := broj DIV 10; {cifra desetica}
  WRITELN('broj=', broj, ' cifra jedinica=', y, ' cifra desetica=', x);
END.

6.4.3. Izdvojiti cifre dvocifrenog broja. Sabrati cifre i ispisati broj, cifre i sumu.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema. Dvocifren broj
broj = x*101 + y*100
Ostatak dijeljenja dvocifrenog broja sa 10 broj MOD 10 dobijamo jedinice broja (u ovom slučaju dvocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dvocifrenog broja se dobija cifra desetica. Vidi primjere >>. Ispisati prvi cifru desetica pa cifru jedinica.

Opis programa:

Listing programa:

PROGRAM P06411103;
USES 
  WinCRT;
VAR
  x, y, broj, s: INTEGER;
BEGIN
  WRITE('Dvocifren broj ');
  READLN(broj);
  y := broj MOD 10; {cifra jedinica}
  x := broj DIV 10; {cifra desetica}
  s := x + y; {suma cifra}
  WRITELN('broj=', broj, ' cifra desetica=', x, ' cifra jedinica=', y, ' Suma cifra=', s);  
END.

6.4.4. Izdvojiti cifre trocifrenog broja. Ispisati izdvojene cifre.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema.Trocifren broj
broj = x*102 + y*101 + z*100
Izrazom broj MOD 10 dobijamo jedinice broja (u ovom slučaju trocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dobija se dvocifren broj. Zatim ponoviti postupak iz prethodnog zadatka. Vidi primjere >>.

Opis programa:

Listing programa:

PROGRAM P06411104;
USES 
  WinCRT;
VAR
  x, y, z, broj, t: INTEGER;
BEGIN
  WRITE('Trocifren broj ');
  READLN(broj);
  z := broj MOD 10; {cifra jedinica}
  t := broj DIV 10; {prve dvije cifre}
  y := t MOD 10; {cifra desetica}
  x := t DIV 10; {cifra stotica}
  WRITELN('broj=', broj, ' cifra stotica=', x, ' cifra desetica=', y, ' cifra jedinica=', z);
END.


6.4.5.
Izdvojiti cifre trocifrenog broja. Ispisati izdvojene cifre unazad.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema.Trocifren broj
broj = x*102 + y*101 + z*100
Izrazom broj MOD 10 dobijamo jedinice broja (u ovom slučaju trocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dobija se dvocifren broj. Zatim ponoviti postupak iz prethodnog zadatka. Vidi primjere >>. Ispisati izdvojene cifre unazad.

Opis programa:

Listing programa:

PROGRAM P06411105;
USES 
  WinCRT;
VAR
  x, y, z, broj, t: INTEGER;
BEGIN
  WRITE('Trocifren broj ');
  READLN(broj);
  z := broj MOD 10; {cifra jedinica}
  t := broj DIV 10; {prve dvije cifre}
  y := t MOD 10; {cifra desetica}
  x := t DIV 10; {cifra stotica}
  WRITELN('broj=', broj, ' cifra jedinica=', z, ' cifra desetica=', y, ' cifra stotica=', x);
END.

6.4.6. Izdvojiti cifre trocifrenog broja. Sabrati izdvojene cifre.

Opis rješenja: Pri pretvaranju se koristi osobina pozicionog sistema.Trocifren broj
broj = x*102 + y*101 + z*100
Izrazom broj MOD 10 dobijamo jedinice broja (u ovom slučaju trocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dobija se dvocifren broj. Zatim ponoviti postupak iz prethodnog zadatka. Vidi primjere >>.

Opis programa:

Listing programa:

PROGRAM P06411106;
USES 
  WinCRT;
VAR
  x, y, z, broj, t, s: INTEGER;
BEGIN
  WRITE('Trocifren broj ');
  READLN(broj);
  z := broj MOD 10; {cifra jedinica}
  t := broj DIV 10; {prve dvije cifre}
  y := t MOD 10; {cifra desetica}
  x := t DIV 10; {cifra stotica}
  s := x + y + z; {suma cifra}
  WRITELN('broj=', broj, ' cifra stotica=', x, ' cifra desetica=', y, ' cifra jedinica=', z, ' Suma cifra=', s);
END.

6.4.7. Napisati program za ispis trocifrenih brojeva koji su jedanki sumi kubova svojih cifara (Amstrongov broj).

Opis rješenja: Izdvajanje cifara iz dvocivrenog broja je:
a := i DIV 100; - Količnik dijeljenja sa 100 je cifra desetica
b := i MOD 100 DIV 10; Ostatak dijeljnja sa 100 je dvocifren broj a dijeljnjem dvocifrenog broja sa 10 cjelobrojni količnik je cifra desetica.
c := i MOD 10; Ostatak dijeljna sa 10 je cifra jedinica.
Sabiraju se kubovi svih cifara i provjera da li je suma jednak trocifrenom broju. Ako je ispunjen uslov to je Amstrongov broj.

Listing programa:

PROGRAM p14612034;
USES
  WinCrt;
VAR
  a, b, c, i : INTEGER;
BEGIN
  WRITELN('Amstrongovi broji');
  FOR i := 100 TO 999 DO
    BEGIN
      a := i DIV 100;
      b := i MOD 100 DIV 10;
      c := i MOD 10;
      IF a*a*a + b*b*b + c*c*c = i THEN  
        WRITELN(i,  ' Amstrongov broj');
    END;
END.

6.4.8. Izdvojiti cifre četverocifrenog broja.

Opis rješenja: Izrazom broj MOD 10 dobijamo jedinice broja (u ovom slučaju dvocifrenog). Cjelobrojnim dijeljenom sa 10 (broj DIV 10) dobija se dvocifren broj. Zatim ponoviti postupak iz prethodnog zadatka. Vidi primjere >>.

Opis programa: Pri pretvaranju se koristi osobina pozicionog sistema.Četverocifren broj
broj = w*103 + x*102 + y*101 + z*100

Listing programa:

PROGRAM P06411107;
USES 
  WinCRT;
VAR
   w, x, y, z, broj, t: INTEGER;
BEGIN
  WRITE('Cetverocifren broj ');
  READLN(broj);
  z := broj MOD 10; {cifra jedinica}
  t := broj DIV 10; {prve tri cifre}
  y := t MOD 10; {cifra desetica}
  t := t DIV 10; {prve dvije cifre}
  x := t MOD 10; {cifra stotica}
  w := t DIV 10; {cifra hiljadica}
  WRITELN('broj=', broj, ' cifra jedinica=', z, ' cifra desetica=', y, ' cifra stotica=', x, ' cifra hiljadica=', w);
END.

Izvođenje programa:

Index