Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    25

    Problema Convertitore Binario Pseudocodice

    posto qui il mio programma in pseudo codice:
    linguaggio di progetto di un convertitore binario che Rappresenti un numero di massimo 4 bit (da 0 a 9 )
    da solo 4 zeri non capisco perchè :

    codice:
    leggi n
    
    resto <- 0
    primobit <- 0 
    secondobit <- 0
    terzobit <- 0
    quartobit <- 0
    
    se n < 0
    	 scrivi solo numeri maggiori 
    fine
    
    se n = 0
    	 scrivi 0 
    fine
    
    se n > 9
    	 scrivi solo numeri minori
    fine
    
    se n<9 
    	 fintantoche n = n/2
    		
    		 se(n/2) == round (n/2)
    			 n <- round(n/2)
    			 r <- r + 1
    			 primobit <- 1
    		 altrimenti
    			 n <- round(n/2)
    			 primobit <- 0
    		 fine
    
    		 se(n/2) == round (n/2)
    			 n <- round(n/2)
    			 r <- r + 1
    			 secondobit <- 1
    		 altrimenti
    			 n <- round(n/2)
    			 secondobit <- 0
    		 fine
    
    		 se(n/2) == round (n/2)
    			 n <- round(n/2)
    			 r <- r + 1
    			 terzobit <- 1
    		 altrimenti
    			 n <- round(n/2)
    			 terzobit <- 0
    		 fine
    
    		 se(n/2) == round (n/2)
    			 n <- round(n/2)
    			 r <- r + 1
    			 quartobit <- 1
    		 altrimenti
    			 n <- round(n/2)
    			 quartobit <- 0
    		 fine
    			
    		
    		
    	 fine
    fine
    scrivi primobit
    scrivi secondobit
    scrivi terzobit
    scrivi quartobit

  2. #2
    Qual'è la domanda?
    Comunque non capisco perché stai a scrivere tutto quel codice... in C farei semplicemente:
    codice:
    int numero;
    scanf("%d", &numero);
    for(int i=4; i>=0; i--)
        putchar((numero&(1<<i))?'1':'0');
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2012
    Messaggi
    25

    Problema Convertitore Binario Pseudocodice

    è in c ma io devo farlo in pseudo codice -.- ...

  4. #4
    In pseudocodice potrebbe essere:
    codice:
    leggi numero
    
    cicla i da 4 a 0:
        se ((2**i) AND numero) != 0:
            scrivi 1
        altrimenti:
            scrivi 0
    dove con ** indico l'elevamento a potenza. Poi ovviamente 2**i con gli operatori di bit shift diventa 1<<i, e l'AND binario in C è &.

    Per capire come funziona, ripassati il funzionamento degli operatori bitwise.
    Amaro C++, il gusto pieno dell'undefined behavior.

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