Добавил:
Fragga
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:лабораторки по ОС препод Челноков / 1семестр / wi1 / Emelyanov / lab1sam
.cpp#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;
}