Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

γεια σας, μολις ξεκινησα μαθηματα προγραμματισμου με python 2,7 και δεν ξερω ποιο ειναι το λαθος στο παρακατω κωδικα. η ασκηση ειναι: αν έχουμε a = '001' και b = '011', πώς θα βρούμε το a+b στο δυαδικό σύστημα; στη λυση πρωτα μετατρεπω και τους 2 αριθμους στο δεκαδικο και μετα βρισκω το a+b σαν αριθμο και τον μετετρεπω σε δυαδικο συστημα αλλα το αποτελεσμα ειναι διαφορετικο απο αυτο που επρεπε. ο κωδικας μαζι με τα αποτελεσματα  :

  α='001'

  b='011'

  c=int(a,2)

  h=int(b,2)

  a+b 

'001011'

   k=001011

   bin(k)[2:]

'1000001001'

Δημοσ.

Μπορείς να προσθέσεις κατ' ευθείαν τους αριθμούς δεν χρειάζεται να τους κάνεις στο δεκαδικό

για 2αδικούς πρόθεμα 0b για οκταδικούς και δεκαεξαδικούς αν θες 0o, 0x

θα πάρεις αποτέλεσμα σε δεκαδικό το οποίο μετατρέπεις εύκολα σε δυαδικό με bin()

Πρέπει όμως να δεις και αυτό που σου λέει ο defacer 

βασικά και τα πιο κάτω που γράφεις στον κώδικα

Δημοσ.

 

Οκ;

a='001'
b='011'
a_int=int(a,2)
b_int=int(b,2)
sum_int=a+b
sum_str=bin(sum_int)

print sum_str 

 

Really??????? Έκλαψα. :lol: :lol: :lol: Να πάει στα ανέκδοτα γρήγορα.

  • Like 1
Δημοσ.

tzo21

α='001'

b='011'

c=int(a,2)

h=int(b,2)

ώς εδώ είσε εντάξει αν εξαιρέσεις ότι χρησιμοποιείς ελληνικό χαρακτήρα για το a που μετά δεν το ξαναχρησιμοποιείς

μετά πρέπει να χρησιμοποιήσεις τους ακέραιους για να πάρεις το άθροισμά σου

δηλαδή c+h 

nilosgr κάνεις το ίδιο λάθος

εναλλακτικά μπoρείς να κάνεις ανάθεση των ακεραίων στις ίδιες μεταβλητές 

δηλαδή

a=int(a,2)

b=int(b,2)

οπότε τώρα κολλάει το 

a+b

και μετά από τον ακέραιο c+h ή a+b μπορείς να πάρεις τον δυαδικό του 

δηλαδή bin(c+h)

Τα υπόλοιπα που κάνεις είναι λάθος

 

Ο σωστός όμως τρόπος για να προσθέσεις δυαδικούς είναι

athroisma = 0b011+0b001 

Το athroisma είναι ακέραιος και το μετατρέπεις σε δυαδικό με

athroisma_bin=bin(athroisma)

Δημοσ.

Τι δεν σου άρεσε αρχηγέ;

 

Ότι ας πούμε το λάθος ήταν στο πως ονομάζονται οι μεταβλητές. :P

Δημοσ.

Δεν έχετε χιούμορ κυριε k33theod... :-D :-D :-D :devil:

Απλά λόγω χαμηλού iq δεν καταλαβαίνω το χιόμουρ των άλλων.

Μετά την εξήγηση όμως το κατάλαβα και γέλασα και γώ :-(  

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...