[ dean25 @ 04.11.2010. 19:37 ] @
Molim MODERATORE DA NE IZBRISU TEMU DO SUTRA jer sam je postavio na dva mjesta iz razloga sto je jako HITNO!!!
Hvala!

Pozdrav narodu dobre volje,

do sutra moram predati napisan program koji pretvara malo u veliko slovo, veliko mora ostati veliko a simbol ili broj trebaju ostati isti takvi. Smije se koristiti samo studio.h

Sve sam napisao ali ne znam kako da ogranicim tj da iz ASCI sistema koristim samo SLOVA...


MOLIM VAS ZA HITAN ODGOVOR JER DO 09:00 SUTRA MORAM PREDATI...


Hvala,


Code:

#include <stdio.h>


#define BIT_MASKA 0xDF; //1101 1111
#define BIT_SHIFT 0x01 //0000 0001
#define BIT_FHIFT 0x80 //1000 0000

void charBin(char word);
char convertUpperCase(char word);
void printMask();




int main()
{

    char input_letter;
    char temp_output;

    printf("Please enter a character: ");
    scanf("%c",&input_letter);

    printf("Input:   ");
    charBin(input_letter);
    printf("\n");

    printf("Bitmask: 11011111\n");
    temp_output = convertUpperCase(input_letter);
    printf("Output:  ");
    charBin(temp_output);
    printf("\n");


    printf("Your result: %c\n",temp_output);

    return 0;
}

char convertUpperCase(char word)
{
    word = word & BIT_MASKA;
    return word;
}

void charBin(char word)
{
    int counter;
    int temp;
    for(counter = 7; counter >= 0; counter--)
    {
        temp = ((word << (counter+7) & (BIT_FHIFT >> 7)?1:0));
        printf("%d",temp);
    }
}

[ MasterRW @ 04.11.2010. 21:28 ] @
Pozdrav,


Nadam se da će da pomogne. U ASCII tabeli mala slova su od vrednosi 97(karakter a) do vrednosti 122(karakter z).
Samo karaktere koji su u tom opsegu vrednosti trebaš da menjaš, ostali koliko sam razumeo treba da ostanu kakvi jesu (?).
Int vrednost malog slova umanjiš za 32 (97(a)-32=65(A)) i dobijaš njegovo veliko slovo :)
Ovo takođe možeš da uradiš i sa switch-om, ali mislim da je jednostavnije sa jednim if-om (koji ispituje da li karakter pripada opsegu) i ovim oduzimanjem..

Code:

if ((vrednost>=97) && (vrednost=<127))
{
  nova_vrednost = vrednost - 32;
}
else
{
   nova_vrednost = vrednost;
}
[ MasterRW @ 04.11.2010. 21:35 ] @
Uops sad sam video da ti radiš preko pomeranje bitova, no svejedno ideja je ista. Nadam se da će da posluži.
[ dean25 @ 04.11.2010. 21:41 ] @
tj kod tebe "vrednost" znaci zapravo kod mene "slovo"???


Pa s obzirom da radim preko pomeranja bitova mislim da nece ici na takav nacin??? ili hoce :)??


Probam pa javim za koji minut :)
[ dean25 @ 04.11.2010. 21:46 ] @
Ideja uspela! :)

Sve radi kako treba :)


Hvala puno

[CLOSED]
[ MasterRW @ 04.11.2010. 22:13 ] @
‚‚vrednost‚‚ je int vrednost karaktera, nisam ni gledao tvoj kod, tek posle :)
Ako ne želiš da radiš preko pomeranja bitova, možeš ovako sa oduzimanjem vrednosti.
Drago mi je da sam bio od pomoći.
Kako si na kraju uradio program?


[Ovu poruku je menjao MasterRW dana 04.11.2010. u 23:35 GMT+1]
[ markic @ 05.11.2010. 10:24 ] @
Citat:
dean25: Smije se koristiti samo studio.h

Studio kažeš?
[ MasterRW @ 05.11.2010. 12:45 ] @
Code:
studio.h

Code:
#include <stdio.h>


Verovatno je mislio na stdio.h :)