[C/C++] COnvertitore da Decimale a Esadecimale

di Anonimizzato15913 il
14 risposte
Ciao a tutti ragazzi sono nuovo, per lunedì devo consegnare a scuola un programma con molte conversioni, l'unica che mi da problemi è quella da Decimale a Esadecimale, vi dico subito che usiamo "Dev c++", qualcuno riesce ad aiutarmi a farlo? Si prega l'uso degli Array(Vettori) e stringhe, usare "printf"e "scanf", no for e cout..
Grazie a tutti in anticipo per l'aiuto

14 Risposte

  • 
    Int decimale = 10;
    Printf("0x%x\n",decimale);
    
    Prof fregato.
    cmq c e c++ sono diversi, devi essere piu preciso sia sul linguaggio che sul tipo di aiuto e posta il codice che nn riesce.
  • Il problema è che non so da dove incominciare...
  • Neanche io so come aiutarti, non so nemmeno in che linguaggio.
    Sai fare la conversione su un foglio?
  • Certo che si, linguaggio quello scolastico, quello con le printf scanf gotoxy switch if do/while while
  • Come si chiama il linguaggio?
    Come faresti il calcolo sul foglio
    Fammi l esempio per il numero 33
  • Allora 33:
    33/16= 2 resto 1
    2/16= 0 resto 2
    il numero esadecimale è: 21

    Se vi posto un programma per farvi capire il linguaggio va bene?
  • Posta il codice che sei riuscito a scrivere ...
  • Tempo di arrivare a case e lo posto!
  • Sono proprio due righe buttate giù
    #include <math.h>
    #include <stdio.h>
    #include <conio.h>
    #include <conio2.h>
    #include <fstream>
    #include <string>
    #include <stdlib.h>
    #include <stdlib.h>
    #include <windows.h>
    
    
    
    
    int main()
    {
        int a,b,c,decimale;
        int r,r2,r1;
        
        
        do{
        printf("Inserisci il numero Decimale");
        scanf("%d",&decimale);
    }while(decimale<0 || decimale>255);
    
    a=decimale/16;
    r=decimale%16;
    
    b=a/16;
    r1=a%16;
    
    c=b/16;
    r2=c%16;
    
    printf("\n %d%d%d",r2,r1,r);
    getch();
    }
  • Cosa non va in quel codice?
  • Parte ma il problema è che passando da decimale a esadecimale ci sono le lettere
  • Esatto ... quindi per il risultato dovrai prevedere due variabili di tipo char. Chiamale ch1 e ch2

    Non servono tre passaggi con tre cifre perché un numero decimale tra 0 e 255 è convertito in un valore esadecimale a 2 cifre. Quindi

    char ch1, ch2;

    Dopo la parte
    
    	a = decimale / 16;
    	r = decimale % 16;
    
    	b = a / 16;
    	r1 = a % 16;
    
    ottiene i valori di ch1 e ch2 a partire da r1 e r
  • Potresti scusa l'ignoranza spiegarmelo meglio? Scusami
  • Tranquilli ragazzi ho smanettato un po' e mi è venuto!
Devi accedere o registrarti per scrivere nel forum
14 risposte