C:
/*ES2. Scrivere un programma in C che acquisisce una stringa s1 di
massimo 50 caratteri e un numero intero n. Il programma controlla se
n è maggiore di zero e minore della lunghezza della stringa. Se le
condizioni non sono verificate, continua a richiedere il valore. In
seguito il programma crea una nuova stringa s2 che contiene la
rotazione verso destra di s1 di n posizioni e la visualizza.
Esempio: s1="straniero" e n=2 -> s2="rostranie".*/
#include <stdio.h>
#include <string.h>
#define MAX 50
int main(){
char s1[MAX], s2[MAX];
int n, i, j, lung;
printf("inserire stringa\n");
scanf("%[^\n]", s1);
lung=strlen(s1);
printf("inserire valore rotazione\n");
do{
scanf("%d", &n);
}while(n<0 || n>lung);
j=0;
for(i=n; i<lung; i++){
s2[j]=s1[i];
j++;
}
for(i=0; i<n; i++){
s2[j]=s1[i];
j++;
}
s2[j] = '\0';
printf("%s\n", s2);
return 0;
}