Главная /
Основы программирования - обучения основам /
Следующая программа вычисляет количество вхождений фрагмента "xyz" в последовательность символов: последовательность символов p; цел n; символ c1, c2, c3; . . . n := 0; // Инициализируем переменные c1, c2, c3 пробелами c1 = ' '; c2 = ' '; c3 = ' '; встать
Следующая программа вычисляет количество
вхождений фрагмента "xyz" в последовательность
символов:
последовательность символов p;
цел n;
символ c1, c2, c3;
. . .
n := 0;
// Инициализируем переменные c1, c2, c3 пробелами
c1 = ' '; c2 = ' '; c3 = ' ';
встать в начало последовательности p;
цикл пока есть непрочитанные элементы в посл-ти p
| c1 := c2; c2 := c3;
| прочесть очередной элемент посл-ти p в (вых: c3);
| если c1 == 'x' и c2 == 'y' и c3 == 'z'
| | то n := n + 1;
| конец если
конец цикла
ответ := n;
В ней используются четыре вспомогательные переменные
n
, c1
, c2
, c3
. Можно ли упростить
программу, использовав меньшее количество вспомогательных
переменных? (Последовательность разрешается читать только один раз.)
вопрос
Правильный ответ:
Можно.
Нельзя.
Сложность вопроса
91
Сложность курса: Основы программирования - обучения основам
50
Оценить вопрос
Комментарии:
Аноним
Кто ищет вот эти тесты по интуит? Это же крайне просто
22 апр 2017
Аноним
Какой человек гуглит данные вопросы с интуитом? Это же совсем для даунов
06 янв 2016
Другие ответы на вопросы из темы программирование интуит.
- # Рассмотрим следующий фрагмент программы: #include <string.h> #include <сtype.h> . . . int n, i; char a[32]; strcpy(a, "20e"); n = 0; i = 0; while (a[i] != 0) { n *= 16; if ('a' <= a[i] && a[i] <= 'f') { n += (a[i] - 'a') + 10; } else if (isdigit(a[i])) { n += a[i] - '0'; } ++i; } Чему будет равно значение переменной n в результате выполнения этого фрагмента?
- # Всегда ли равны выражения (x + y) + z, x + (y + z) для произвольных вещественных переменных x, y, z типа double?
- # Всегда ли равны выражения (x + y) + y, x + (y * 2.0) для произвольных вещественных переменных x, y типа double?
- # Что содержит регистр флагов?
- # Являются ли локальные переменные функции общими для разных нитей (threads), работающих параллельно в рамках одного процесса?