Kod slova – rešenje

Prvo se generiše slučajan broj koristeći funkciju rand().
funkcija srand(time(0)) postavlja početnu vrednost (seme) generatora slučajnih brojeva. Pošto se time(0) menja svake sekunde, rand() pri svakom pokretanju daje drugačije brojeve. Da bi koristili pomenute funkcije potrebno je uključiti datoteke:
#include <stdlib.h>
#include <time.h> /* time */
više o generisanju slučajnih brojeva pročitajte na strani www.geeksforgeeks.org/output-c-programs-set-33-rand-srand/?ref=rp
Traženjem ostatka deljenja sa 150, ograničava ovaj broj od 0-149
Da bi se generisao slučajan broj od 1 do 150 treba napisati
kodZnaka =1+ rand()%150
Koristeći dalje if-else if-else if-else određuje se koji je slučaj od ponuđena 4
Prilikom ispisivanja koda znaka, kao i samog znaka koristi se u oba slučaja celobrojni kod, ali se za format, u slučaju celog broja stavlja "%d", dok se za prikaz znaka koristi "%c". Npr
printf("Veliko slovo %d %c\n",kodZnaka,kodZnaka);

Rešenje:


#include <stdio.h>
#include <stdlib.h>
#include <time.h>       /* time */

int main()
{
    int kodZnaka;
    /* initialize random seed: */
    srand (time(0));

    /* slučajan ceo broj između 1 i 150 */
    kodZnaka =1+ rand()%150;

    /*Da li znak nije slovo*/
    if(!((kodZnaka >=65 && kodZnaka<=90) || (kodZnaka >=97 && kodZnaka<=122)))
    {
        printf("Nije slovo nego je neki drugi znak :  %c %d\n",kodZnaka,kodZnaka);
    }
    /*Ako program dođe ovde onda je u pitanju slovo */
    /*Da li je veliko slovo*/
    else if(kodZnaka >=65 && kodZnaka<=90)
    {
        printf("Veliko slovo %d %c\n",kodZnaka,kodZnaka);
    }
    /*Da li je malo slovo*/
    else if(kodZnaka >=97 && kodZnaka<=122)
    {
        printf("Malo slovo %d %c\n",kodZnaka,kodZnaka);
    }
    else{
        printf("Nista od navedenog\n");
    }

    return 0;
}