abc Programski jezik C
Cjelobrojno dijeljenje i modul broja

Kad se dijele dva broja pojavljuje se ostatak (različlit od nule) ako broj nije djeljiv.Ovo ima veliku primjenu u računarskoj tehnici tako da se koriste naredbe za cjelobrojno dijeljenje (DIV) i ostatak cjelobrojnog dijeljnja (%).

Na primjer kad se broj 7 dijeli sa 2, rezultat je 3 i ostatak 1. Ovaj oblik dijeljenja se prikazuje sa 7 : 2 = 3 (1).

"DIV" - Cjelobrojno dijeljenje /

Rezultat cjelobrojnog dijeljenja je količnik bez ostatka tj. uzima se samo cio dio količnika.

Primjer 1. .Izvesti cjelobrojno dijeljenje 7 sa 2.
Opis rješenja: Kad se broj 7 dijeli sa 2, rezultat cjelobrojnog dijeljenja je 3 a ostatak se ne uzima u obzir. Operator dijeljnja je / . Rezultate se deklariše kao cjelobrojna varijabla (int) tako da će izlaz biti cio dio količnika, cjelobrojna vrijednost

Cjelobrojno dijeljenje: Listing programa Ispis na ekranu
 int c;
 c = 7 / 2;  // Cjelobrojno dijeljenje

Vrijednost po izvođenju:
c  = 3
#include <stdio.h>
int main()
{
    int a, b, c;
    printf("Cjelobrojno dijeljenje:");
    printf("Brojnik:");
    scanf("%d", &a);    // ulaz a - brojnik
    printf("Nazivnik:");
    scanf("%d", &b);    // ulaz b - nazivnik
    c = a / b;         // Cjelobrojno dijeljenje
    printf("a / b =  c    %d / %d = %d", a, b, c); // ispis
    return 0;
}  
Cjelobrojno dijeljenje:
Brojnik: 7 
Nazivnik: 2 
a / b =  c    7 / 2 = 3

Primjer 2. Prikazati cjelobrojno dijeljenje brojeva 10, 20, ... , 100 sa 10.
Opis rješenja: Cjelobrojno dijeljenja sa 10 znači odbacivanje cifre sa najmanjom težinom tj. cifre jedinica (prvu cifru sa desne strane). Tako da bi 10 DIV 10 i 19 DIV 10 dali isti rezultat 1 (tj. odbacili bi desnu cifru). Na slijedećoj slici je cjelobrojno dijeljenje brojeva 10, 20, ..., 100 sa 10. Rezultat je odbacivanje desne cifre.

Tabela 1. Cjelobrojno dijeljenje brojeva 10, 20, ... , 100 sa 10

Cjelobrojno dijeljenje: Listing programa Ispis na ekranu
int c;
c = 40 / 10; // Cjelobrojno dijeljenje

Vrijednost po izvođenju:
c  = 4
#include <stdio.h>
int main()
{
    int i, a, b, c;
    printf("Cjelobrojno dijeljenje:");
    for(i = 10; i <= 100;  i=i + 10) {
        c = i / 10;   // Cjelobrojno dijeljenje
        printf("\n%d / 10 = %d  ", i, c);  // ispis
    }
    return 0;
}  
Cjelobrojno dijeljenje
10 / 10 = 1  
20 / 10 = 2  
30 / 10 = 3  
40 / 10 = 4  
50 / 10 = 5  
60 / 10 = 6  
70 / 10 = 7  
80 / 10 = 8  
90 / 10 = 9  
100 / 10 = 10  

Primjer 3. Prikazati cjelobrojno dijeljenje brojeva 123, 223, 323, ... , 1023 sa 100.
Opis rješenja: Cjelobrojno dijeljenja sa 100 znači odbacivanje dvije cifre sa najmanjom težinom tj. cifre desetica i jedinica (dvije cifre sa desne strane). Tako da bi 323 DIV 100 i 394 DIV 100 dali isti rezultat 3 (tj. odbacili bi dvije desne cifre). Na slijedećoj slici je cjelobrojno dijeljenje brojeva 123, 223, 323, ..., 1023 sa 100. Rezultat je odbacivanje dvije desne cifre. Ostaje cifra stotica.

Tabela 2. Cjelobrojno dijeljenje brojeva 123, 223, 323, ... , 1023 sa 100

Cjelobrojno dijeljenje: Listing programa Ispis na ekranu
int c;
c = 678 / 100; // Cjelobrojno dijeljenje

Vrijednost po izvođenju:
c  = 6
#include <stdio.h>
int main()
{
    int i, a, b, c;
    printf("Cjelobrojno dijeljenje:");
    for(i = 123; i <= 1050;  i=i + 100) {
        c = i / 100;  // Cjelobrojno dijeljenje
        printf("\n%d / 100 = %d  ", i, c);  // ispis
    }
    return 0;
}
Cjelobrojno dijeljenje:
123 / 100 = 1  
223 / 100 = 2  
323 / 100 = 3  
423 / 100 = 4  
523 / 100 = 5  
623 / 100 = 6  
723 / 100 = 7  
823 / 100 = 8  
923 / 100 = 9  
1023 / 100 = 10

 

MODUL - Ostatak cjelobrojnog dijeljenja (operator %)

Rezultat naredbe % je ostatak cjelobrojnog dijeljenja.
N a p o m e n a: Prije provjere djeljivosti (ostatka) treba treba provjeriti da li je broj pozitivan.

Primjer 4 .Izračunati ostatak cjelobrojnog dijeljenja 7 sa 2.
Kad se broj 7 dijeli sa 2, rezultat je 3 i ostatak 1. Ovaj oblik dijeljenja se prikazuje sa 7 : 2 = 3 (1).
Računarski ispis:
7 % 2
Rezultat je 1.

Primjer 5 . Ispisati ostatak cjelobrojnog dijeljenja brojeva od 1 do 9 sa brojem 2.
Ostatak dijeljenja sa 2 je provjera parnosti. Ako je broj paran rezultat naredbe n % 2 je 0 (npr., 2 % 2, 4, % 2, ... Rezultat je 0). Rezultat naredbe neparnih brojeva je 1 (npr. 1 % 2, 3 % 2, 5 % 2,... Rezultat je 1). Na slijedećoj slici je ispis ostataka dijeljenje brojeva od 1 do 9 sa 2.

Tabela 3. Ostatak cjelobrojnog dijeljenja brojeva od 1 do 9 sa brojem 2

Ostatak cjelobrojnog dijeljenja sa 2 - Parnost Listing programa Ispis na ekranu
Ako je broj paran rezultat naredbe n % 2 je 0 
Primjer 1:
2 % 2, 4, % 2, ... Rezultat je 0. 

Rezultat naredbe neparnih brojeva je 1 
Primjer 2:
1 % 2, 3 % 2, 5 % 2,... Rezultat je 1.
#include <stdio.h>
int main()
{
    int i, a, b, c;
    printf("Modul broja % \n");
    printf("Ostatak dijeljenja od 0 do 9 sa 2:");
    for(i = 1; i <= 9;  i++) {
        c = i % 2;   // Osatak dijeljenja sa 2
        printf("\n%d % 2 = %d  ", i, c);  // ispis
    }
    return 0;
} 
Modul broja % 
Ostatak dijeljenja od 0 do 9 sa 2:
1 % 2 = 1  
2 % 2 = 0  
3 % 2 = 1  
4 % 2 = 0  
5 % 2 = 1  
6 % 2 = 0  
7 % 2 = 1  
8 % 2 = 0  
9 % 2 = 1

Primjer 6 . Ispisati ostatak cjelobrojnog dijeljenja brojeva od 1 do 9 sa brojem 10.
Dijeljenje sa 10 je izdvajanje zadnje cifre. Rezultat naredbe 1 % 10 je 1, 2 % 10 je 2, ..., 9 % 10 je 9 i 10 % 10 je 1.

Tabela 4 Ostatak cjelobrojnog dijeljenja brojeva od 1 do 9 sa brojem 10

Ostatak cjelobrojnog dijeljenja sa 10 - cifra jedinica Listing programa Ispis na ekranu
Ostatak dijeljenja sa 10 je cifra jedinica
1 % 10 je 1, 
2 % 10 je 2, 
..., 
9 % 10 je 9 i 
10 % 10 je 1. 
#include <stdio.h>
int main()
{
    int i, a, b, c;
    printf("Modul broja % \n");
    printf("Ostatak dijeljenja od 0 do 9 sa 10:");
    for(i = 1; i <= 9;  i++) {
        c = i % 10;   // Osatak dijeljenja sa 10
        printf("\n%d % 10 = %d  ", i, c);  // ispis
    }
    return 0;
} 
Modul broja % 
Ostatak dijeljenja od 0 do 9 sa 10:
1 % 10 = 1  
2 % 10 = 2  
3 % 10 = 3  
4 % 10 = 4  
5 % 10 = 5  
6 % 10 = 6  
7 % 10 = 7  
8 % 10 = 8  
9 % 10 = 9  

 

Primjer dijeljenja

Cjelobrojno dijeljenje

Rezultat cjelobrojnog dijeljenja

Ostatak cjelobrojnog dijeljenja

Rezultat oOstataka cjelobrojnog dijeljenja

7 : 2 = 3 (1)

7 / 2

3

7 % 2

1

5 : 3 = 1 (2)

5 / 3

1

5 % 3

2

5 : 2 = 2 (1)

5 / 2

2

5 % 2

1

0 : 2 = 0 (0)

0 / 2

0

0 % 2

0

1 : 2 = 0 (1)

1 / 2

0

1 % 2

1

2 : 2 = 1 (0)

2 / 2

1

2 % 2

0

3 : 2 = 1 (1)

3 / 2

1

3 % 2

1

4 : -3 = -1 (1)

4 / -3

-1

4 % -3

1

2 : -1 = -2 (0)

2 / -1

-1

2 % -1

0

5 : -1 = -5 (0)

5 / -1

-5

5 % -1

0

R.br.

Primjer / zadatak

Rezultat

Opis

1

9 % 4
9 / 4

2
2


3

9 % 3 * 2
11 % 3 * 2
10 % 3 * 2
1 +11 % 3 * 2 + 2
1 + 11 % 3 * (2 + 2)
(1 + 11) % 3 * 2 + 2

0
2
1
7
9
2

 

2

9 / 3 * 2
1 - 9 / 3 * 2 + 1
1 - 9 / 3 * (2 + 1)
(1 - 9) / 3 * 2 + 1
1 - 10 / 3 * 2 + 4

6
-4
-8
5

 

4

16 / 4
16 / 4 *2
1 + 19 % 5
(1 + 19) % 5

4
8
4
0

cjelobrojno dijeljenje
prvo se izvodi dijeljenje (/)
prvo se izvodi mod (%)
zagrade imaju priporitet, sabiranje pa mod (%)

5

4 / 2 - 4 % 3
8 / 4 - 5 % 4
6 / 2 - 5 % 3
8 / 3 - 9 % 4

1
1
1
1

 

6

1 + 25 / 5 % 2
3 + 14 % (2*9) - 6 / 2
3 / 8 + 3 % 8

2
14
3

 

7

Programi
Dijeljenja sa 2
Ostatka dijeljenja sa 2
Dijeljenje sa 10 i 100
Sekunde u sate, minute i sekunde

   

Povezani sadržaji:

  1.     Aritmetički operatori u Pascalu
  2.     Izbor funkcija u Pascalu
  3.     Pisanje izraza u Pascalu
  4.     Funkcija DIV
  5.     Funkcija MOD

Index