Анализ алгоритма
Объявим два указателя на начало массива: i = j = 0. Двигаем указатель i по буквам строки. Для каждой буквы строки s, не равной ‘a’, скопируем s[i]
в s[j]
и подвинем указатель j на одну позицию вперед.
Реализация алгоритма
Объявим символьный массив.
char s[1001];
Читаем входную строку.
fgets(s, sizeof(s), stdin);
Буквы, отличные от ‘a’, передвигаем влево.
int j = 0; for (int i = 0; i < strlen(s); i++) if (s[i] != 'a') s[j++] = s[i];
В конце результирующей строки ставим 0 байт.
s[j] = 0;
Выводим результат.
puts(s);
Реализация алгоритма – С++
Читаем входную строку.
getline(cin, s);
Буквы, отличные от ‘a’, присоединяем к результирующей строке res.
for (int i = 0; i < s.length(); i++) if (s[i] != 'a') res = res + s[i];
Выводим результат.
cout << res;
Java реализация
import java.util.*; public class Main { public static void main(String[] args) { Scanner con = new Scanner(System.in); String s = con.nextLine(); String res = ""; for(int i = 0; i < s.length(); i++) if (s.charAt(i) != 'a') res = res + s.charAt(i); System.out.printf(res); con.close(); } }
Java реализация – replace
import java.util.*; public class Main { public static void main(String[] args) { Scanner con = new Scanner(System.in); String s = con.nextLine(); s = s.replace("a", ""); System.out.printf(s); con.close(); } }
Python реализация
s = input() print(s.replace('a', ''))