[PYTHON] Programmation pour combattre dans le monde ~ 5-2

bit.py


#-*- coding:utf-8 -*-

class Bitutils():

    
    def getBit(self,num,i):
        return(num & (1 << i) !=0 )
    
    def setBit(self,num1,i):
        return (num | (1 << i))
    
    def clearBit(self,num,i):
        mask = ~(1 << i)
        return num & mask
    
    def clearBitsMSBthroughI(self,num,i):
        mask = (1 << i) -1
        return num & mask
    
    def clearBitsIthrough(self,num,i):
        mask = ~((1 << (i+1)) -1)
    
    def updateBit(self,nim,i,v):
        mask = ~(1 << i)
        return (num & mask) | (v << i)
    
    def updateBit(self,n,m,i,j): #5-1
        allOnes = ~0
        
        left = allOnes << (j + 1)
        
        right = ((1<<i) - 1)
        
        mask = left|right
        
        n_cleared = n & mask
        m_shifted = m << i
        
        return n_cleared | m_shifted
    
    def printBinary(self,num): #5-2
        if num >= 1 or num <= 0:
            return "Error"
        tmp_str = ""
        tmp_str += "0."
        
        while num > 0:
            if len(tmp_str) >= 33:
                return "Error"
            r = num * 2
            if r >= 1:
                tmp_str += "1"
                num = r - 1
            else:
                tmp_str+= "0"
                num = r
                
        return tmp_str
            
            
            
    

if __name__ == '__main__':
    N = 1024
    M = 19
    i = 2
    j = 6
    b = Bitutils()
    
    #5-1
    #c = b.updateBit(N,M,i,j)
    #print(bin(c))
    
    #5-2
    c = b.printBinary(0.75)
    print(c)
    
    c = b.printBinary(0.875)
    print (c)

Est-ce que tout va bien en python lors de l'ajout de nouveaux caractères à une chaîne existante? Est-ce que cela crée une chaîne de caractères complètement nouvelle?

Recommended Posts

Programmation pour combattre dans le monde ~ 5-1
Programmation pour combattre dans le monde ~ 5-5,5-6
Programmer pour combattre dans le monde 5-3
Programmation pour combattre dans le monde ~ 5-2
Programmation pour combattre dans le monde - Chapitre 4
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --1.3 URLify
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse au code Python - 2,6 fois
"Livre pour former des compétences en programmation pour combattre dans le monde" Exemple de réponse de code Python --2.4 Fractionnement de la liste
"Un livre pour former les compétences de programmation pour combattre dans le monde" Exemple de réponse de code Python --2.7 nœuds d'intersection
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse au code Python - Matrice de 1,8 "0"
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de solution de code Python --1.6 Compression de chaîne de caractères
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de solution de code Python --1.5 Conversion en une seule fois
"Un livre pour former les compétences de programmation pour combattre dans le monde" Exemple de réponse de code Python --3.1 Trois piles
"Livre pour former des compétences en programmation pour combattre dans le monde" Exemple de solution de code Python - 1.7 Rotation de matrice
"Un livre pour former des compétences en programmation pour combattre dans le monde" Exemple de réponse au code Python --1.4 Séquence de phrases
"Livre pour former les compétences de programmation pour combattre dans le monde" Exemple de réponse de code Python --- Éléments supprimés entre 2.3
"Livre pour former des compétences en programmation pour combattre dans le monde" Exemple de solution de code Python --2.1 Supprimer les éléments en double
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --1.9 Rotation de la chaîne de caractères
"Livre pour former des compétences en programmation pour combattre dans le monde" Exemple de solution de code Python --1.1 Chaîne de caractères en double
Dans la commande python, python pointe vers python3.8
Le brevet le plus cité au monde
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --2.2 Renvoyer Kth par l'arrière
"Livre pour former la capacité de programmation à se battre dans le monde" Exemple de réponse de code Python --1.2 Compter le nombre des mêmes caractères
Je veux connaître la population de chaque pays du monde.
Le langage de programmation le plus recherché en 2020
"Un livre pour former les compétences de programmation pour combattre dans le monde" Exemple de réponse de code Python --2.5 Somme de deux nombres affichés dans la liste
Dans Jupyter, ajoutez IPerl au noyau.
Dessiner des graphiques dans le langage de programmation Julia
Divers commentaires à écrire dans le programme
Comment afficher Hello World en python
Lignes directrices pour se réincarner dans le monde du développement de programmation Linux (langage C / C ++)
Programmation avec Python
Comment utiliser la bibliothèque C en Python
Connectez-vous à un serveur distant avec SSH
Client de streaming Twitter à apprécier dans le terminal
Pour remplacer dynamiquement la méthode suivante en python
Dites bonjour au monde avec Python avec IntelliJ
Dessinez des graphiques dans Julia ... Laissez les graphiques à Python
Conseils pour rédiger un aplatissement concis en python
Comment obtenir les fichiers dans le dossier [Python]
Connectez-vous avec json en utilisant pygogo.
Je veux afficher la progression en Python!
Comment récupérer la nième plus grande valeur en Python
J'ai essayé de représenter graphiquement les packages installés en Python
Comment obtenir le nom de la variable lui-même en python
Essayez de résoudre le livre des défis de programmation avec python3
Comment exécuter le module Ansible ajouté dans Ansible Tower
Le moyen le plus simple de configurer Last-Modified dans Flask
Ajouter un complément automatique à la programmation EV3 Micropyhon dans VS Code
Comment obtenir le nombre de chiffres en Python
L'histoire de la création de l'environnement Linux le plus rapide au monde
Comment connaître le répertoire actuel en Python dans Blender
S'il n'y avait pas de conteneurs DI dans le monde.
Convertissez l'image au format .zip en PDF avec Python
Définissez DateField du formulaire sur type = date dans Django
Comment utiliser la clause exist dans l'ensemble de requêtes Django
Je veux écrire en Python! (3) Utiliser des simulacres
J'ai utilisé Python pour découvrir les choix de rôle des 51 "Yachts" dans le monde.
La route vers Pythonista
Programmation Python avec Excel