6.4.. 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 % 10 dobijamo jedinice broja (u ovom slučaju trocifrenog). Cjelobrojnim dijeljenom sa 100 dobija se cifra stotica. Cifrea jedinica je ostatak dijeljenje sa 10. Cjelobrojnim dijeljenom sa 10 dobiju se prve dvije cifre, one se dijele sa 10 i ostatak dijeljenja je cifra desetica. Vidi primjere >>. Po učitavanju program prelazi na:
I varijanta - izdvajanje cifara i izračunavanje sume, a zatim ispis;;
II varijanta - izdvajanje cifara korišćenjem pomoćne varijable pa ispis;
III varijanta - izdvajanje cifara te izračunavanje sume u naredbi ispis.

Tekstualni algoritam:

  1. ulaz - učitati: "Ucitaj trocifren broj: "; broj
  2. obrada - izračunati:
    x = broj / 100; // cifra stotina
    y = broj / 10 % 10; // cifra desetica
    z = broj % 10; // cifra jedinica
    s = x + y + z; // suma cifra
  3. izlaz - ispisati: broj, x, y, z, s

Tekstualni algoritam II varijanta:

  1. ulaz - učitati: "Ucitaj trocifren broj: "; broj
  2. obrada - izračunati:
    x = broj / 100; // cifra stotina
    t = broj / 10; // prve dvije cifre
    y = t % 10; // cifra desetica
    z = broj % 10; // cifra jedinica
    s = x + y + z; // suma cifra
  3. izlaz - ispisati: broj, x, y, z, s

Listing programa:

// 06411106
#include <stdio.h>
int main()
{
    int x, y, z, broj, s;      // deklarisanje varijabli
    printf("Trocifren broj:"); // ime varijable cija vrijednost se ucitava
    scanf("%d", &broj);        // ucitavanje vrijednosti varijable sa tastature 
	  
    x = broj / 100;            // cifra stotica    
    y = broj / 10 % 10;        // cifra desetica
    z = broj % 10;             // cifra jedinica
    s = x + y + z;             // suma cifra
    printf("Trocifren broj = %d\n", broj);  // ispis
    printf("Cifra stotica= %d  Cifra desetica= %d  Cifra jedinica= %d  Suma cifara= %d", x, y, z, s);  // ispis
    return 0;
}

II varijanta
// 06411106
#include <stdio.h>
int main()
{
    int  broj, x, y, z, t, s;  // deklarisanje varijabli
    printf("Trocifren broj:"); // ime varijable cija vrijednost se ucitava
    scanf("%d", &broj);        // ucitavanje vrijednosti varijable sa tastature 
	  
    x = broj / 100;            // cifra stotica    
    t = broj / 10;             // prve dvije cifre
    y = t % 10;                // cifra desetica
    z = broj % 10;             // cifra jedinica
    s = x + y + z;             // suma cifra
    printf("Trocifren broj = %d\n", broj);  // ispis
    printf("Cifra stotica= %d  Cifra desetica= %d  Cifra jedinica= %d  Suma cifara= %d", x, y, z, s);  // ispis
    return 0;
}

III varijanta
// 06411106
#include <stdio.h>
int main()
{
    int broj;                  // deklarisanje varijabli
    printf("Trocifren broj:"); // ime varijable cija vrijednost se ucitava
    scanf("%d", &broj);        // ucitavanje vrijednosti varijable sa tastature 

    printf("Trocifren broj = %d\n", broj);  // ispis
    printf("Cifra stotica = %d  Cifra desetica = %d  Cifra jedinica = %d\n", broj / 100, broj / 10 % 10, broj % 10);  // ispis
    printf("Suma cifara = %d", broj / 100 + broj / 10 % 10 + broj % 10);  // ispis
    return 0;
}

Ispis na ekranu:

Index