Помогите пожалуйста переделать код с Pascal на С/С++ [требует правки]

261
20 ноября 2017, 20:20

По возможности избегать стандартных ф-ций (strlen), и типа данных string, строка обрабатывается как массив символов.

var
  CountSpace, CountLit: Integer;
  Index, i: Byte;
  Str: String;
begin
  CountSpace:=0; CountLit:=0;
  repeat
    write('Строка: ');
    readln(Str);
    if Str[1] = '!' then
      writeln('Первый символ - "!"!')
  until Str[1] <> '!';
  for i:=1 to Length(Str) do
    if Str[i] = '!' then
    begin
      Index:=i;
      Break;
    end;
  writeln('Первый "!" встречается на позиции: ', Index);
  write('Строка до первого "!": ');
  for i:=1 to Index do
  begin
    write(Str[i]);
    if Str[i] = ' ' then Inc(CountSpace);
    if Str[i] = 'ю' then Inc(CountLit);
  end;
  writeln;
  writeln('Кол-во пробелов: ', CountSpace);
  if CountLit <> 0 then
    writeln('Буква "ю" входит в последовательность!')
  else writeln('Буква "ю" не входит в последовательность!');
  if (pos('ш', Str)<>0) and (pos('и', Str)<>0) and (pos('н', Str)<>0) and (pos('а', Str)<>0) then
    writeln('В последовательности есть все буквы,входящие в слово "шина"!')
  else writeln('В последовательности не все буквы, входящие в слово "шина"!');
end.
READ ALSO
считывание массива из потока

считывание массива из потока

Нужно перегрузить оператор считывания из потока для шаблонного классаВ шаблонном классе Set есть поле - массив элементов другого шаблонного...

296
Правильна ли такая функция?

Правильна ли такая функция?

Всех приветствуюТолько начал разбираться с функциями

253
Итератор с шагом

Итератор с шагом

Собственно нужно сделать считывания из multimap c определённым шагом

216
std::string vs std::wstring в русскоязычном приложении

std::string vs std::wstring в русскоязычном приложении

Поскольку в свое время плавно переехал с чистого C на С++/Qt, то все проблемы unicode остались за кадром, скрытые внутри QStringТеперь при переходе...

248