masum-2011687
?>

Написать программу в pascal abc: "c клавиатуры вводится строка, состоящая из букв и цифр. вычислить количество букв в этой строке".

Информатика

Ответы

АлександрАлина
Const
  n = 50; {Максимальное количество чисел в последовательности}
  t = -77;{Число-ограничитель, означающее конец ввода}

type
  ta = array[1..n] of integer;

var
  a: ta; {массив членов последовательности}
  az: ta; {массив, содержащий номера нулей в последовательности}
  kz: integer; {количество членов в массиве az} 
  i, iz, p, n1, n2: integer;
  flag: boolean;

begin
  {Вводим числа и сразу же отслеживаем номера нулей в последовательности}
  Writeln('Вводите последовательность чисел, окончание ввода по -77');
  i := 0; iz := 0;
  repeat
    Read(p);
    if p <> t then begin
      i := i + 1;
      a[i] := p;
      if p = 0 then begin
        iz := iz + 1;
        az[iz] := i;
      end
    end
  until p = t;
  kz := iz;
  Writeln('Вывод последовательностей');
  {1. До первого встреченного нуля}
  for i := 1 to az[1] - 1 do Write(a[i], ' ');
  Writeln;
  {2. Остальные промежутки} 
  for iz := 1 to kz do
  begin
    for i := az[iz] + 1 to az[iz + 1] - 1 do Write(a[i], ' ');
    Writeln;
  end
end.

Тестовое решение:
Вводите последовательность чисел, окончание ввода по -77
1 2 3 0 5 6 7 0 0 10 11 12 13 0 15 16 17 18 19 20 -77
Вывод последовательностей
1 2 3
5 6 7

10 11 12 13
verkop9
Начнем расшифровку с конца. 58 - столько в алфавите нет букв, поэтому последняя буква имеет номер 8 и это "Ж". Остается 121182018105.
05 - такого быть не может, следовательно номер буквы 5 и это "Д". Остается 12118201810.
10 - это код буквы "И". Остается 121182018, расшифровали окончание "ИДЖ". Может быть, это слово "картридж"?
Далее, возможен код как 8, так и 18. 8 - это "Ж", 18 - это "Р". Окончание "ЖИДЖ" ничего не напоминает, окончание "РИДЖ" приближает решение к слову "картридж". Проверим первую букву.
Если первая буква номер 1, то это "А", но если номер 12 - это "К".
Попробуем, можно ли получить слово "картридж" с оставшихся кодов 11820.
1 - "А",  18 - "Р", 20 - "Т". Все получилось.
ответ: КАРТРИДЖ

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Написать программу в pascal abc: "c клавиатуры вводится строка, состоящая из букв и цифр. вычислить количество букв в этой строке".
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Евгеньевич Балиловна1398
Ohokio198336
Anastasiya
kormilitsynarita
vladimir72tatarkov1317
Наталья_Владимир708
vardartem876
Svetlana395
Kornilova
potap-ver20065158
yaart-klementiev29
Yevgenevich_Chipura-Nikolaeva
maksimforyou20
Sergeevich-Novikov
Ахади