Native/C
Circular shift (left)
aucd29
2013. 10. 2. 18:49
/**********************************************************************
*
* 2005-04-12
* Circular shift (left)
*
***********************************************************************/
#include <stdio.h>
void main(void)
{
int num,i=0,len,n;
unsigned int x = 0x80000000;
scanf("%d%d",&num,&n);
printf("%d를 %d만큼 이동 ", num, n);
// 앞으로비교 unsigned int x를참조
len = sizeof(int)*8;
while(i<len)
{
if(i>=n) break;
if(num & x)
{
num <<= 1;
num++;
}
else
num <<= 1;
++i;
}
len--;
for(i=len;i>=0;i--)
printf("%d",num>>i & 1);
printf("\n");
}
*
* 2005-04-12
* Circular shift (left)
*
***********************************************************************/
#include <stdio.h>
void main(void)
{
int num,i=0,len,n;
unsigned int x = 0x80000000;
scanf("%d%d",&num,&n);
printf("%d를 %d만큼 이동 ", num, n);
// 앞으로비교 unsigned int x를참조
len = sizeof(int)*8;
while(i<len)
{
if(i>=n) break;
if(num & x)
{
num <<= 1;
num++;
}
else
num <<= 1;
++i;
}
len--;
for(i=len;i>=0;i--)
printf("%d",num>>i & 1);
printf("\n");
}