Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: [C]decimale-binario

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43

    [C]decimale-binario

    salve raga..ho un problema su un maledetto programma.la questione è che devo trasformare in binario una serire di numeri che è possibile calcolare(infatti vi è una piccola funziona apposita),
    ma questi numeri mi servono diverse volte. ora ho provato a richiamare tutte le volte la funzione..ma non mi sembra la soluzione giusta.
    infatti se mi servono questi numeri(per es da 0 a 5)che devono prima stampati con una cosa poi con l altra e così via..io richiamo la funzione e trasforma ogni volta in binario.
    ora la domanda è:
    è possibile salvarmeli in qualche modo per poi richiamarli?per la trasformazione in binario utilizzo qst funzione(qui scritta nel main):
    codice:
    #include<stdio.h>
    
    void main()
    {
    	int i=0,n,bin[20];
    	printf("inserire numero da convertire=");
    	scanf("%d",&n);
    		while(n>1)
    	{
    		bin[i]=n%2;
    		n=n/2;
    		i++;
    	}
    bin[i]=n;
    for(;i>=0;i--)
    printf("%d",bin[i]);
    }
    non mi viene in mente nulla..e sono ore che sto provando di tutto.mi potreste dare qualche consiglio??ciao
    e grazie mille in anticipo

  2. #2
    Utente di HTML.it L'avatar di MrX87
    Registrato dal
    Jun 2007
    Messaggi
    500
    bhè a quanto ho capito ti serve memorizzare i numeri in un vettore...ma scusa non li hai già memorizzati nel vettore bin?? una volta che li hai lì dentro, puoi usarli sempre durante il programma!
    "Non può piovere per sempre" Il Corvo
    Forza Vigor!

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43
    si..in questo modo li ho già salvati nel vettore bin[i]..ma quando vado a utilizzare ogni numero ha un il suo vettore bin!
    io volevo fare come se ci fosse un pedice al vettore(cerco di rendere meglio l idea)
    volevo salvarli per es. bin[1][i]..bin[2][i]..e così via.
    in questo modo così come è fatta sta conversione..devo per forza richiamarla ogni volta cche mi serve il numero convertito..spero che sia chiaro,,
    ciauuz

  4. #4
    Utente di HTML.it L'avatar di MrX87
    Registrato dal
    Jun 2007
    Messaggi
    500
    bhè allora potresti fare una matrice di interi...dove le righe corrispondono ai numeri convertiti e le colonne ai bit dei numeri...uscirebbe una cosa simile:

    esempio inserendo questi numeri da convertire:
    15 12 5 9:

    riga 1-> 1111
    riga 2-> 1100
    riga 3-> 101
    riga 4-> 1001

    così se per esempio ti serve il terzo numero che hai convertito vai a stampare la 3 riga della matrice...non so se ti potrebbe essere utile come soluzione...fammi sapere!
    "Non può piovere per sempre" Il Corvo
    Forza Vigor!

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43
    può essere un ottima idea!
    vediamo un pò...che ne dite in questo modo potrebbe funzionare?
    codice:
    #include<stdio.h>
    
    void main()
    {
    	int MA[1][5];
    	int i=0,n,bin[20];
    	printf("inserire numero da convertire=");
    	scanf("%d",&n);
    		while(n>1)
    	{
    		bin[i]=n%2;
    		n=n/2;
    		i++;
    	}
    bin[i]=n;
    for(;i>=0;i--)
    scanf("%d",&MA[1][bin[i]]);
    printf("valore convertito è ");
    for(i=0;i<2;i++)
    printf("%d",MA[1][i]);
    }
    naturalmente lil numero di colonne/righe varierà in funzione di un determinato parametro..
    ma..non sono molto convinto di questo prog..secondo voi potrebbe funzionare?
    ho dei dubbi sulla riga
    codice:
    scanf("%d",&MA[1][bin[i]]);
    è possibile farlo??..mi da 0 errori ma non funziona...controlliamo un pò..

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43
    ma una matrice può avere lunghezza di righe diverse??
    se converto numeri da 1 a 5 per esempio
    si ha
    0
    1
    10
    11
    100
    101,,
    ma la prima ha la lunghezza di righe pari a 1..mentre la 5 ha una lunghezza paari a 3!
    secondo me da errore di scrittura..

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Hai ripreso il codice con la scanf che ti avevo gia' detto che era sbagliato (anzi, che non aveva senso).

    Ti avevo indicato di usare la matrice direttamente nel codice al posto del vettore bin ...

    Forse non mi sono spiegato bene ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43
    oregon..ma io ho fatto tutto ciò. solamente che mi da errore di scrittura..e io ho pensato che fosse per questo..cioè per la non regolarità della matrice..perchè ripensando been mi è venuto in mente questo..
    io ho messo una matrice, eliminato la scanf..insomma duro si ma non prorpio.de coccio..
    p.s. può essere questo tipo di errore???=?=?

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Vuoi inserire i dati in una matrice? Allora usa gli elementi della matrice direttamente ed elimina il vettore bin ... cancellalo proprio, non utilizzare bin ... ok?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    43
    ma questo lo già fatto!
    se devo convertire un numero e inserirlo in una matrice il problema non cè..
    il problema è per una serie di numeri da convertire..da 0 a3 ..da 5 a12
    mica posso fare una matrice con righe diverse!!!?chiaro????

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.