Добавил:
Fragga
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:лабораторки по ОС препод Челноков / 1семестр / wi1 / koval4uk / Oci / Unit1
.cpp//---------------------------------------------------------------------------
#include <clx.h>
#include <stdio.h>
#include <conio.h>
#pragma hdrstop
//---------------------------------------------------------------------------
#pragma argsused
int CTeneHb(int OcHoBaHue, int CTen);
int main(int argc, char* argv[])
{
char s[50];
int a[20],b[20];
int Lenght,i,j,x10;
int SS1,SS2;
printf("Vvedite nachalonoe osnovanie chisla: ");
scanf("%d",&SS1);
printf("\nVvedite nachalnoe chislo: ");
scanf("%s",&s);
printf("\nVvedite osnovanie novogo chisla: ");
scanf("%d",&SS2);
Lenght=strlen(s);
for(i=(Lenght-1);i>=0;i--)
{
switch(s[i])
{
case '1': a[i]=1; break;
case '2': a[i]=2; break;
case '3': a[i]=3; break;
case '4': a[i]=4; break;
case '5': a[i]=5; break;
case '6': a[i]=6; break;
case '7': a[i]=7; break;
case '8': a[i]=8; break;
case '9': a[i]=9; break;
case '0': a[i]=0; break;
case 'A': a[i]=10; break;
case 'B': a[i]=11; break;
case 'C': a[i]=12; break;
case 'D': a[i]=13; break;
case 'E': a[i]=14; break;
case 'F': a[i]=15; break;
}
}
getch();
x10=0;
for(i=(Lenght-1);i>=0;i--)
{
j=((Lenght-1)-i);
x10=(x10+a[i]*CTeneHb(SS1,j));
}
printf("Chislo v 10-oi SS: ");
printf("%d\n",x10);
i=0;
while(x10!=0)
{
i++;
b[i]=x10%SS2;
x10=x10/SS2;
}
printf("Chislo v novoi SS: ");
while(i>0)
{
printf("%d",b[i]);
i--;
}
getch();
return 0;
}
int CTeneHb(int OcHoBaHue, int CTen)
{
int i=1,k;
if (CTen==0)
{
return 1;
}
else
{
k=OcHoBaHue;
while(i<CTen)
{
i++;
k=k*OcHoBaHue;
}
}
return k;
}
//---------------------------------------------------------------------------