Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [C++] Decimale->Binario

    Ciao sto facendo un programma in C++ per convertire un decimale in binario. La compilazione va bene ma quando lo eseguo, dopo aver inserito numero da convertire, mi da errore Windows.
    Questo è il codice, perfavore aiutatemi.

    Codice:

    //DecToBit2
    #include <iostream>
    #include <stdlib.h>

    using namespace std;

    int DecToBit(int,int *);

    int main()
    {
    int numero;
    int bin[100];
    int contatore;


    std::cout<<"Inserisci il numero decimale intero da convertire in binario"<<endl;
    std::cin>>numero;
    DecToBit(numero,bin);
    for(contatore=0;bin[contatore]!='\0';contatore++)
    {
    std::cout<<bin[contatore];
    }
    system("Pause");
    }


    int DecToBit(int num,int *binario)
    {
    int resto;
    for(int i=0;num!=0;i++)
    {
    num=num/2;
    resto=num%2;
    if(resto==0)
    {
    binario[i]=0;
    }
    if(resto!=0)
    {
    binario[i]=1;
    }
    }


    };
    Alessio_Programmer

  2. #2
    Utente di HTML.it L'avatar di bako
    Registrato dal
    Feb 2004
    Messaggi
    1,808
    codice:
    dectobin(int n){
    char sol[mettici un numero]
     while(n>=0){
     if (n%2==0) sol=sol+0 
     else sol=sol+1
     n=n/2;
     }
    
    }
    dovrebbe funzionare questa..

    sol=sol+0
    sol=sol+1
    nn si possono fare in c .. nn mi ricordo come si concatena un carattere ad una stringa..

  3. #3
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    codice:
    //DecToBit2
    #include <iostream>
    #include <stdlib.h>
    
    using namespace std;
    
    void DecToBit(int,int *);
    
    int main()
    {
        int numero;
        int bin[100];
        int contatore;
        int *pun;
        pun=bin;
        std::cout<<"Inserisci il numero decimale intero da convertire in binario"<<endl;
        std::cin>>numero;
        DecToBit(numero,pun);
    	std::cout <<endl <<endl;
    	//devi stampare bin[contatore], non contatore che è solo il puntatore
        for(contatore=0;bin[contatore]!= -1;contatore++)
        {
            std::cout<<bin[contatore];
        }
    	std::cout <<endl <<endl;
        system("Pause");
    	return 0;
     }  
        
        
    void DecToBit(int num,int *binario)
    {
        int resto;int i;
        for(i=0;num!=0;i++)
        {
        //devi prima calcolare il resto e poi dividi per due
        //se no il resto risulta quello dell'iterazione succesiva
    		resto=num%2;
            num=num/2;
            
            if(resto==0)
            {
                     binario[i]=0;
            }
            if(resto!=0)
            {
                     binario[i]=1;
            }
    		
        }
    //alafine utilizza -1 per segnare la fine del numero, no '\0' che vale
    //zero come intero e zero gia lo usi per indicare il bit zero
    	binario[i]=-1;
         
    };

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

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 © 2020 vBulletin Solutions, Inc. All rights reserved.