Очень не корректно поставлен вопрос. Что есть Текст? Это текстовый файл, строка, введенная пользователем, еще что-то? Думайте, прежде чем спросить, и, скорее всего, получите нормальный ответ.
Поэтому, поскольку нет конкретики, будем считать текстом строку, введенную пользователем.
Write('Введите текст : ');
ReadLn(S);
В переменной S теперь находится некоторый текст. Начнем с ним работать. Будем считать словом последовательность символов, ограниченных с обеих сторон пробелами. Сначала сделаем копию введенного текста.
S1 := ' ' + S + ' '; {чтобы не потерять первое и последнее слова}
А дальше,
N := 0; {счетчик слов Мама}
while Pos(' Мама ', S1) > 0 then begin
Delete(S1, Pos(' Мама ', S1)+1, 4);
N := N + 1;
end;
Поскольку может в тексте быть и "мама", то повторим
while Pos(' мама ', S1) > 0 then begin
Delete(S1, Pos(' мама ', S1)+1, 4);
N := N + 1;
end;
Вот и все. Осталось вывести результат.
WriteLn('Во ввденном тексте слово "мама" встречается ', N, ' раз');
Удачи!
PS Можно было бы не делать второй проход, если предварительно преобразовать введенный текст к одному регистру, а затем искать подстроку в этом регисте.
ответ:Доброго времени суток.
Очень не корректно поставлен вопрос. Что есть Текст? Это текстовый файл, строка, введенная пользователем, еще что-то? Думайте, прежде чем спросить, и, скорее всего, получите нормальный ответ.
Поэтому, поскольку нет конкретики, будем считать текстом строку, введенную пользователем.
Write('Введите текст : ');
ReadLn(S);
В переменной S теперь находится некоторый текст. Начнем с ним работать. Будем считать словом последовательность символов, ограниченных с обеих сторон пробелами. Сначала сделаем копию введенного текста.
S1 := ' ' + S + ' '; {чтобы не потерять первое и последнее слова}
А дальше,
N := 0; {счетчик слов Мама}
while Pos(' Мама ', S1) > 0 then begin
Delete(S1, Pos(' Мама ', S1)+1, 4);
N := N + 1;
end;
Поскольку может в тексте быть и "мама", то повторим
while Pos(' мама ', S1) > 0 then begin
Delete(S1, Pos(' мама ', S1)+1, 4);
N := N + 1;
end;
Вот и все. Осталось вывести результат.
WriteLn('Во ввденном тексте слово "мама" встречается ', N, ' раз');
Удачи!
PS Можно было бы не делать второй проход, если предварительно преобразовать введенный текст к одному регистру, а затем искать подстроку в этом регисте.
количество цветов в палитре определяется формулой хартли:
n=2^i (где n - количество цветов, i - "вес" 1 px в битах).
1. найдем количество пикселей в изображении: 256*256=2^8 * 2^8 = 2^16 px
2. определим "вес" всех рх, переведя кб в биты: 8*2^13 (бит) = 2^3 * 2^13 = 2^16 (бит)
3. разделим "вес" всего изображения на количество рх (то есть найдем "вес" 1 рх в битах): 1 рх = 2^16 / 2^16 = 1 бит
4. следовательно (см. начало), количество цветов n=2^1=2 (т.е. изображение двухцветное, скорее всего - ч/б.