Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Капри
Сообщений: n/a
#1

Системы счисления - C++

16.12.2008, 14:00. Просмотров 834. Ответов 0
Метки нет (Все метки)

Есто прога перевод числа из 2-ой в 10-ую систему счисления и обратно.Есть проблема как сделать чтоб она ещё и переводила отрицательные и не целые числа.Может кто знает как это сделать?
Код
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
#include<string.h>

void main(void){
long int a,bb;
char str[65];
int i,k,v,tmp;
int N=65;

while(1){
clrscr();
printf("perevod iz 10 v 2 - 0\n"); //menu
printf("perevod iz 2 v 10 - 1\n");
printf("exit - 2\n");
scanf("%i",&v);
switch(v){
case 0:{ //perevod iz desytichnoi v dvoichnuy
printf("Vvedi chislo: ");
scanf("%li",&a);
for (i=0;i<N-1;++i) str[i]='0'; //zapolnenie stroki 0
str[N-1]='\0';
bb=a;
i=0;
while (bb!=0){
if ((abs(bb)%2)!=0) str[N-2-i]='1'; //esli ne delitsy na chelo zapisyvaem 1
++i;
bb=abs(bb)/2; //delim chuslo popolam
}
printf("V dvoichnoi: \n");
printf("%s\n",str); //vyvod poluchenogo chisla
getch();
break;
}
case 1:{ //perevod iz dvoichnoi v desytichnoi
printf("Vvedi chislo: ");
scanf("%li",&a);
tmp=0;
for (i=N-1;i>=0;i--){
tmp+=(a%10)*pow(2,N-1-i); //chislo stoychoe na N-1-i meste umnogaetsy na 2 v stepeni ego pozichii
a=a/10;
}
printf("V desytichnoi: \n");
printf("%i",tmp); //vyvod poluchenogo chisla
getch();
break;
}
case 2:{
exit(1);
}
default:{
printf("Vybran ne vernoe deistvie");
getch();
break;
}
}
}
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2008, 14:00     Системы счисления
Посмотрите здесь:

системы счисления C++
C++ системы счисления
C++ Системы счисления
C++ Системы счисления!!!!
Системы счисления C++
C++ Системы счисления
Системы счисления. C++ C++
системы счисления C++
C++ Системы счисления
Системы счисления C++
C++ Системы счисления
C++ Системы счисления

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru