Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2009, 12:02   #1
lamak
C++
Пользователь
 
Регистрация: 31.10.2009
Сообщений: 30
Сообщение Системы исчисления С++

Написал недавно программу, работает она корректно, но если ввести число 10,2 и переводить в 5-ую систему исчисления то получиться 20. просто, а если 10,4 то 20.14444444, хотя по правилам перевода должно быть 20.1 и 20.2 соответственно. Остальное работает нормально.
Может кто знает в чем проблема?
Исходный код:
Код:
#include <iostream.h>
#include <conio.h>
#include <string.h>
#include <stdlib.h>
int main()
{ char s[35];
  float num, drob; 
  int l,k,i;
  int sist;
  cout<<"Input number: "; cin>>num;
  cout<<"Input system: "; cin>>sist;
  itoa((int)num,s,sist);
  l=strlen(s);
  s[l]='.';
  drob=num-(int)num;
  for (i=l+1; i<(l+9); i++)
    if (drob == 0.0) 
      { s[i]='0'; 
            s[i+1]='\0'; 
                 break; }
    else { 
        int z;    
        float k=drob*sist;
        z=(int)k;
           switch(z)
             {case 0: break; break;
              case 10: s[i]='a'; break;
              case 11: s[i]='b'; break;
              case 12: s[i]='c'; break;
              case 13: s[i]='d'; break;
              case 14: s[i]='e'; break;
              case 15: s[i]='f'; break;
              default: s[i]=z+'0'; break;}
        drob=k-z;
         s[i+1]='\0';   
            } 
  cout<<s<<endl;
  getch();
      }
Верю в google...
lamak вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевод из одной системы исчисления в другую. Svop Помощь студентам 7 20.12.2010 19:00
Перевод в различные системы исчисления ~AngelOK~ Компоненты Delphi 1 11.10.2009 16:57
Системы исчисления - восьмеричная, десятиричная SASS Общие вопросы C/C++ 0 09.12.2008 16:00
перевод системы исчисления (16 ->10) adwaer Помощь студентам 5 15.06.2008 20:29