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

Μετατροπή δυαδικού σε δεκαδικό στην C (was:help help ΒΟΗΘΕΙΑΑΑΑΑΑΑΑΑ)


absolut_user

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

Δημοσ.
γραψετε ενα προγραμμα στη c το οποιο θα διαβαζει ενα αριθμο του δυαδικου συστηματος αριθμησης και θα τον μετατρεπει σε ακεραιο αριθμο του δεκαδικου συστηματος αριθμησης.Δινεται ο εξης αλγοριθμος μετατροπης δυαδικου αριθμου σε δεκαδικο.Το 1ο απο τα δεξια bit πολλαπλασιαζεται επι το 2^0 και προστιθεται στο αθροισμα.Το 2ο απο τα δεξια bit πολλαπλασιαζεται επι το 2^1 και προστιθεται στο αθροισμα.Το 3ο απο τα δεξια bit πολλαπλασιζεται επι το 2^2 και προστιθεται στο αθροισμα.Επαναλαμβανουμε παρομοια βηματα και για τα υπολοιπα bitς.Για παραδειγμα ο δυαδικος αριθμος 110101 μετατρεπεται στο δεκαδικο 53.Σημειωση!!!!για την υλοποιηση αυτου του προγραμματος να χρησιμοποιησετε ενα μονοδιαστατο πινακα για να βαλετε τα ψηφια του δυδικου αριθμου τα οποια θα τα διβαζετε σαν χαραχτηρες ενα ενα.ο δυαδικος αριθμος εισοδου στο προγραμμα να εχει την εξης μορφη.:110101

 

ξερω οτι ζηταω πολλα αλλα ειναι αναγκη...οποιος μπορει ας με βοηθησει...

παρακληση..να ειναι απλο..μην το κανετε περυπλοκο..ευχαριστω πολυ!!!!

ακομα και στο google να μη ψαξεις' date=' αφου περιγραφεις ο ιδιος τη διαδικασια.....

εχεις τον δυαδικο σε ενα πινακα χαρακτηρων,

δηλαδη αν ειναι ο 110101 στον πινακα binary_array, τοτε θα εχουμε

binary_array[0']=1

binary_array[1]=1

binary_array[2]=0

binary_array[3]=1

binary_array[4]=0

binary_array[5]=1

τον πινακα αυτο τον φτιαχνεις ειτε στατικα μεσα στο προγραμμα, ειτε μπορεις να τον παρεις σαν ινπουτ απο τον χρηστη (αν δε καταλαβαινεις τι λεω ξαναρωτα)

 

Στη διαδικασια που περιγραφεις, το πρωτο απο δεξια bit του δυαδικου χαρακτηρα βρισκεται στο τελευταιο στοιχειο του πινακα δηλ στο binary_array[5]. Αν αυτο το μπιτ ειναι 1 τοτε προσθετεις στο τελικο αποτελεσμα (εστω decimal_result) το 2^0 (=1 by the way), ενω αν ειναι 0 τοτε δε προσθετεις τιποτε. Πας στο επομενο μπιτ, το binary_array[4]. Αν ειναι 1, προσθετεις στο decimal_result το 2^1

με δυο κουβεντες εχεις ενα loop που επαναλαμβανεται τοσες φορες οσες τα στοιχεις του πινακα (δηλ τα ψηφια του δυαδικου). Σε καθε επαναληψη προστιθεται στο αποτελεσμα (το decimal_result) η αντιστοιχη δυναμη του 2 αν το αντισοιχο βιτ ειναι 1. Στο τελος του βροχου, το decimal_result θα εχει το δεκαδικο ισοδυναμο του δυαδικου.

 

Κανε μια προσπαθεια, αντε ;-) .......

Δημοσ.
>
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>

#define MAX_BITS (sizeof(unsigned int)*CHAR_BIT)

unsigned int two_power(unsigned int n)
{
   if (n==0) return 1;
   return 2*two_power(n-1);
}

int main(void)
{
   int c;

   unsigned int bits[MAX_BITS];
   unsigned int number=0,num_bits=0;
   
   while ((c=getchar())!='\n' && num_bits<MAX_BITS)
   {
      switch(c)
      {
          case '0':
          case '1':
               bits[num_bits++]=c-'0';
               break;
          case EOF:
               return 0;
          default:
               fprintf(stderr,"Invalid binary number\n");
               exit(EXIT_SUCCESS);
      }
   }
   
   c=0;
   while (num_bits--)
       number+=bits[num_bits]*two_power(c++);
   
   printf("You entered number %u\n",number);

   return 0;
}

Δημοσ.
οχι δεν το πουλαω γιατι μου ανηκει η εργασια που εχω κανει με κωδικα μεσα στο περιβαλον αναπτηξεως του κομπαιλερ. το αλλο το πουλαω αμα θες (10 ευρο)

 

den mou les to xei agorasei kanenas etsi gia thn istoria?posa thymata eixes mpas kai arxisw na poulaw kai gw to hello world se java :-D :-D :-D

Δημοσ.
den mou les to xei agorasei kanenas etsi gia thn istoria?posa thymata eixes mpas kai arxisw na poulaw kai gw to hello world se java :-D :-D :-D

 

..θύματα εχει ο πολεμος, θύματα κανει η πινα στον 3ο κοσμο, θυματα γενα η μισαλοδοξεια, θυματα κατασκεβαζουν τα οπλα, θυματα δημιουργουν οι ισχηροι. Δεν κατεχω θυματα. Κατεχω γνωσεις. Κατεχω εγκεφαλικη και συνεσθηματικη αλγορυθμικη σκεψη για τον συνανθρωπο μου. Αλλα επηδη σεβομαι τη στύλη και τους ανθρωπους που καταβαλουν προσπαθιες να την διατειρησουν ζωντανη και αγνη ,δεν σου απαντω εκτεναιστερα. γεια σου φιλε μου

Δημοσ.
..θύματα εχει ο πολεμος, θύματα κανει η πινα στον 3ο κοσμο, θυματα γενα η μισαλοδοξεια, θυματα κατασκεβαζουν τα οπλα, θυματα δημιουργουν οι ισχηροι. Δεν κατεχω θυματα. Κατεχω γνωσεις. Κατεχω εγκεφαλικη και συνεσθηματικη αλγορυθμικη σκεψη για τον συνανθρωπο μου. Αλλα επηδη σεβομαι τη στύλη και τους ανθρωπους που καταβαλουν προσπαθιες να την διατειρησουν ζωντανη και αγνη ,δεν σου απαντω εκτεναιστερα. γεια σου φιλε μου

 

 

holy fuck esy den phges sxoleio 4 sure. 12 lexeis tis SKOTWSES gia ta kala.(den xerw an mou xefyge kamia).Go to school kai ase ton programmatismo gia tous allous.

πινα

γενα

μισαλοδοξεια

κατασκεβαζουν

στύλη

προσπαθιες

διατειρησουν

εκτεναιστερα

ισχηροι

συνεσθηματικη

αλγορυθμικη

επηδη

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

Επισκέπτης
Αυτό το θέμα είναι πλέον κλειστό για περαιτέρω απαντήσεις.
  • Δημιουργία νέου...