per inciso ora il codice è
codice:
#include<stdio.h>
char rotate(char,int,int);
int main()
{
char lettera,x;
int spazi,dxosx;
printf("inserire una lettera: ");
scanf("%c",&lettera);
printf("\ndi quanti spazi deve ruotare: ");
scanf("%d",&spazi);
printf("\na destra (0) o a sinistra (1): ");
scanf("%d",&dxosx);
x=rotate(lettera,spazi,dxosx);
printf("\nrisultato= '%c'",x);
}
char rotate(char lettera, int spazi, int dxosx)
{
char mask=0,appoggio,shift,result;
if(dxosx==0)
{
mask=2^spazi-1;
appoggio=mask&lettera;
shift=lettera>>spazi;
result=appoggio^shift;
}
else
{
mask=(2^spazi-1)*(2^(8-spazi));
appoggio=mask&lettera;
shift=lettera<<spazi;
result=appoggio^shift;
}
printf("\n'%d'",mask);
return result;
}