#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
    char *binarni_broj;                                     //deklariraj pokazivac na polje u koje cemo smjestiti binarni broj kao niz znakova
    int n,provjera;                                         //n je varijabla koja odreduje velicinu binarnog broja,"provjera" odreduje jeli provjera uspjesna
    printf("\n koliko vas binarni broj ima znamenaka? ");
    scanf("%d",&n);
    binarni_broj=(char*)malloc((n+1)*sizeof(char));         //rezerviram n mjesta za binarni broj + jedno mjesto za znak za kraj stringa
    printf("\n upisite vas binarni broj");
    fflush(stdin);                                          //brisem sve iz standardnog ulaza
    gets(binarni_broj);                                     //ucitavam binarni broj kao string(niz znakova)
    puts(binarni_broj);                                     //ispisujem uneseni binarni broj na ekran (nepotrebno)
    n--;                                                    //postavljam se na bit najmanje tezine(prvi zdesna,zadnji u polju)
    while(binarni_broj[n] == '0' && n>0)   n--;             //sve dok su bitovi 0 i dok nisi dosao do kraja,idi na slijedeci bit
    while(binarni_broj[n] == '1' && n>0)   {                //Sada se sigurno dogodila promjena iz 0 u 1 i sve dok su bitovi 1 i dok nisi dosao do kraja...
        n--;                                                //...idi na slijedeci bit
        if( binarni_broj[n] == '0' ) {                      //ako je trenutni bit 0,dogodila se jos jedna promjena,postavi provjeru u 0 i izadji iz petlje
            provjera = 0;
            break;
        }
    }
    if(n == 0) provjera = 1;                                //ako si dosao do kraja(do bita najvece tezine(prvi slijeva,prvi u polju),znaci da su ispred 0 same jedinice i postavi provjeru u 1
                                                            //ako je n razlicit od 0,to znaci da si iskocio iz petlje prije kraja jer se desila jos jedna promjena sto znaci da ispred broja nisu same jedinice
    printf("\n%d",provjera);
    return 0;
    }
