Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
26.05.2014
Размер:
1.15 Кб
Скачать
#include <stdio.h>
#include <stdlib.h>

int main()
{
int     ch; 
int     k;
int     i;
int     f; 
int     os;
int	a;
int	b;
int	d;
float	tmp;
float   ish;
float	ost;
int	c[255];
char	m[6]={'A','B','C','D','E','F'};

//system("tput clear");
printf("vvedite chislo:");
scanf("%f",&ish);
printf("vvedite osnovanie staroj SS:");
scanf("%i",&os);
f=1;
ch=0;
while (ish>0)
{
i=ish-(int(ish/10)*10);
ch=ch+i*f;
f=os*f;
ish=int(ish/10);
}
tmp=ch;
printf("Chislo v 10-oj");
printf("%ch", ch);

printf("vvedite osnovanie novoi sistemi schislenija:");
scanf("%i",&b);
if (b>16|b<=1)
{
	printf("error! osnovanie sistemi schislenija ot 1 do 16!\n");
	goto fin;
}
a=(int) tmp;
i=0;
while (a>0)
{
	c[i]=a%b;
	if (c[i]>9)
	{
		c[i]=m[c[i]-10];
	}
	a=(int)a/b;
	i=i++;
}
printf("chislo v etoj sisteme schislenija:");
for (d=i-1;d>=0;d--)
{
	if (c[d]>9)
	printf("%c",c[d]);
	else
	printf("%i",c[d]);
}
printf(".");
d=(int) tmp;
ost=tmp-d;

for (i=0;i<6;i++)
{
ost=ost*b;
d=(int)ost;
if (d<9)
printf("%d",d);
else
printf("%c",m[d-10]);
ost=ost-d;
}

printf("\n");
fin:return 1;
}

Соседние файлы в папке Emelyanov