Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...

[ Pregleda: 2459 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

djdmx
Zvonimirova
Zagreb

Član broj: 45078
Poruke: 18
*.cmu.carnet.hr.



Profil

icon [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...08.10.2007. u 20:16 - pre 169 meseci
Alo ekipa jel može pomoć... nisam nešto dobar u programiranju a dobio sam ovo kao obaveznu zadaću.... jel mi možete pomoći.....

Napisati program koji učitava pozitivni cijeli broj u dekadskom zapisu. Ako je broj izvan intervala [16,255], program treba ispisati "Izvan intervala". Ako je broj unutar intervala [16,255], program treba učitani broj pretvoriti u heksadekadski zapis i ispisati ga. Znamenke heksadekadskog broja potrebno je ispisati u formatu "%c%c" ( bez razmaka). Heksadekadske znamenke A, B, C, D, E i F treba ispisivati isključivo kao velika slova. Npr. za zadani broj 168, program treba ispisati A8 jer je 16810=A816.
Zabranjeno je korištenje programskih naredbi koje zaustavljaju programski tôk (npr. getch(), getche(), getchar(), system("pause"), scanf naredbe koje nisu zadane zadatkom itd.)

UNAPRIJED HVALA!!!!!


ovoliko sam riješio ali imam problem s ispisom... tj... pati me to što mora biti %c%c inače bi sve radilo....

Code:

#include "stdio.h"
int main ()
{
    int broj, o, d;
    scanf ("%i",&broj);
        if (!((broj>= 16) && (broj <= 255)))
        {
            printf ("izvan intervala");
        }
        else 
        {
            d=(broj / 16);
            o=(broj % 16);
            printf ("%c%c",d,o);
            
}
return 0;
}



[Ovu poruku je menjao djdmx dana 08.10.2007. u 22:14 GMT+1]
truly educated never graduate
 
Odgovor na temu

limasoft
WEB Programer

Član broj: 158935
Poruke: 20
*.vdial.verat.net.



Profil

icon Re: [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...09.10.2007. u 00:53 - pre 169 meseci
Vidi, greska ti je u ispisu. d i o su ti tipa int a prikazujes ih kao char.
Moras izvrsiti konverziju int vrednosti (0-15) u slova (0-F)
Pogledaj ASCII tabelu.
LimaSoft ®
 
Odgovor na temu

limasoft
WEB Programer

Član broj: 158935
Poruke: 20
*.vdial.verat.net.



Profil

icon Re: [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...09.10.2007. u 00:58 - pre 169 meseci


ASCII kod za slovoa A je 65 a za 0 je 48 tak oda treba da dodas sledece:

Code:

if(d>9) d=d+65;
else     d=d+48;


analogono i za promenljivu o.


LimaSoft ®
 
Odgovor na temu

laserjat
Vojvodina

Član broj: 43327
Poruke: 50
77.46.176.*



Profil

icon Re: [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...10.10.2007. u 00:31 - pre 169 meseci
Konvertovanje u heks. se vrsi tako sto se broj deli sa 16, a ostatak stavljas u neki niz, i tako sve dok broj ne postane 0.Za to sluzi while ciklus.
A prilikom ispisa obrnuto citas taj niz i ako je cifra manja od 10 pises je normalno a ako ne onda je pretvoris u char.

Code:

#include<stdio.h>

int main () {
    int broj,ost[10],i=0;

    scanf ("%d",&broj);
    if(!(broj>=16 && broj <=255))
        printf("izvan intervala");
    else
        while(broj>0) {
            ost[i++]=broj%16;
            broj/=16;
        }
    
    for(i--;i>=0;i--)
        if(ost[i]<10)
            printf("%d",ost[i]);
        else
            printf("%c",'A'+ost[i]-10);
    return 0;
}

 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Ucitavanje pozitivnih cijeli broj u dekadskom zapisu ...

[ Pregleda: 2459 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.