Есть ответ 👍

Program z2; var str: string; n: integer; b: byte; begin readln(str); for n: =1 to length(str) do begin b: =ordansi(str[n]); if (b< 192) and (b< > 32) then delete(str,n,1); end; writeln(str); end. выдает: ошибка времени выполнения: индекс находился вне границ массива. подскажите, , что не так

278
461
Посмотреть ответы 2

Ответы на вопрос:


"не так" тут не понятый до конца механизм работы цикла for. в соответствии с заголовком цикла for n: =1 to length(str) значение length(str) вычисляется перед первым входом в цикл и в дальнейшем не перевычисляется. вы же в теле цикла посредством delete(str,n,1); строку укорачиваете. вполне естественно, что в какой-то момент параметр цикла i в str[n] будет указывать за пределы её текущей длины.

a = (7 - 5) * 4 = 2 * 4 = 8;

b = a mod 3 + 15 = 8 mod 3 + 15 = 2 + 15 = 17;

a = b div 4 + 3 = 17 div 4 + 3 = 4 + 3 = 7.

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS