Advertisement
Guest User

Untitled

a guest
Jun 26th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. //Converteert een int naar een string via het passende getalstelsel en het gebruikte alfabet
  2. string DeBruijn::convertIntToString(int getal){
  3.     string converted;
  4.     cout << "int "<< getal << " van het " << aantalLetters << "-talig stelsel is string ";
  5.    
  6.     // van links naar rechts getal, digit per digit overlopen
  7.     for (int m = lengteParen-2; m > 0; m--){
  8.         int index = 0;
  9.         //de waarde van het kleinste getal tot deze digit mogelijk
  10.         int grondtal = totdemacht(aantalLetters, m);
  11.         // zolang het getal groter is dan het grondgetal -> aanpassen
  12.         while (getal >= grondtal){
  13.             index++;
  14.             getal -= grondtal;
  15.         }
  16.         // gevonden letter op index in de tabel
  17.         converted.append(string(1, alfabet[index]));
  18.     }
  19.    
  20.     // laatste macht speciaal behandelen
  21.     int index = 0;
  22.     while (getal > 0){
  23.         index++; getal--;
  24.     }
  25.     converted.append(string(1, alfabet[index]));
  26.  
  27.     cout << converted << endl;
  28.  
  29.     return converted;
  30. }
  31.  
  32. //Converteert een string naar een int in het passende getalstelsel
  33. int DeBruijn::convertStringToInt(string combinatie){
  34.     int totaal = 0;
  35.     int macht = 0;
  36.  
  37.     for(int i = combinatie.length(); i > 0 ; i--){
  38.         int waarde = charToInt[combinatie[i-1]];
  39.         totaal += waarde * totdemacht(aantalLetters, macht);
  40.         macht++;
  41.     }
  42.  
  43.     cout << "string " <<combinatie << " van het " << aantalLetters << "-talig stelsel is int " << totaal << endl;
  44.  
  45.     return totaal;
  46. }
  47.  
  48. int DeBruijn::totdemacht(int getal, int macht){
  49.     int totaal =1;
  50.     for (int i = 0; i < macht; i++) totaal *= getal;
  51.     return totaal;
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement